[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] chicken-setup
From: |
Peter Bex |
Subject: |
Re: [Chicken-users] chicken-setup |
Date: |
Tue, 15 Jul 2008 09:11:20 +0200 |
User-agent: |
Mutt/1.4.2.3i |
On Tue, Jul 15, 2008 at 10:01:52AM +0900, Ivan Raikov wrote:
> The frontend would also have a list of default installation
> locations for each type of file (library, program, etc.). Using these
> defaults, the frontend could for example generate the following
> installation script:
>
> ((source-locations "." "/home/user/tmp/chicken-4-user-downloads"
> "ftp://call/cc.org/eggs/4")
> (installation-locations ((library "/usr/lib/chicken/4")
> (program "/usr/bin/")
> (doc "/usr/share/doc")))
> (library treap
> (make (treap.scm) ;; source files
> (compile -O2 -d0 -s treap.scm -ldl -lchicken))))
> ;; compilation commands
>
> This specification would be passed to the interpreter, along with
> commands such as "compile" "install" "uninstall", etc.
>
> The idea is basically to isolate all of the general procedures for
> e.g. installation and compilation, which once written would probably
> stay relatively unchanged, and only modify the frontend as
> chicken-setup policies evolve. We could also think about having
> different frontends, e.g. for use with different package building
> tools.
Sounds good so far!
One other thing that needs consideration is how to handle
system-specific things like include/library paths and possibly names
of libraries, for building bindings to C libraries.
I don't think this can be solved automatically (unless we want to
recreate Autotools or CMake) so what is needed is a way to override or
add to existing search paths by passing switches to chicken-setup,
which it then can pass on to the compiler. Example:
chicken-setup foo.egg -I /opt/foo/include -L /opt/foo/lib
Or possibly something slightly smarter that knows about lpaths and
rpaths for libraries.
This makes it easier to install eggs on systems without having to hardcode
paths in setup files. This means it would not be necessary anymore to
untar an egg file, go in and hack the setup file and then rebuild, making
the process of installing egg files much more natural and user-friendly.
Cheers,
Peter
--
http://sjamaan.ath.cx
--
"The process of preparing programs for a digital computer
is especially attractive, not only because it can be economically
and scientifically rewarding, but also because it can be an aesthetic
experience much like composing poetry or music."
-- Donald Knuth
pgpsfra9LPcdb.pgp
Description: PGP signature
- Re: Chicken-setup redesign (was: Re: [Chicken-users] Re: getopt, getopt_long?), (continued)
- Re: Chicken-setup redesign (was: Re: [Chicken-users] Re: getopt, getopt_long?), felix winkelmann, 2008/07/11
- Re: Chicken-setup redesign (was: Re: [Chicken-users] Re: getopt, getopt_long?), felix winkelmann, 2008/07/11
- [Chicken-users] Re: Chicken-setup redesign, Alex Sandro Queiroz e Silva, 2008/07/11
- Re: [Chicken-users] Re: getopt, getopt_long?, Ivan Raikov, 2008/07/10
- Re: [Chicken-users] Re: getopt, getopt_long?, felix winkelmann, 2008/07/11
- Re: [Chicken-users] Re: getopt, getopt_long?, Ivan Raikov, 2008/07/11
- Re: [Chicken-users] Re: getopt, getopt_long?, felix winkelmann, 2008/07/14
- Re: [Chicken-users] chicken-setup, Ivan Raikov, 2008/07/14
- Re: [Chicken-users] chicken-setup,
Peter Bex <=
- Re: [Chicken-users] chicken-setup, Mario Domenech Goulart, 2008/07/15
- Re: [Chicken-users] chicken-setup, felix winkelmann, 2008/07/15
- Re: [Chicken-users] chicken-setup, Mario Domenech Goulart, 2008/07/15
- Re: [Chicken-users] chicken-setup, Hans Bulfone, 2008/07/15
- Re: [Chicken-users] chicken-setup, Shawn Rutledge, 2008/07/15
- Re: [Chicken-users] chicken-setup, minh thu, 2008/07/15
- Re: [Chicken-users] chicken-setup, Peter Bex, 2008/07/16
- Re: [Chicken-users] chicken-setup, Elf, 2008/07/16
- [Chicken-users] Re: getopt, getopt_long?, William Xu, 2008/07/10
- Re: [Chicken-users] Re: getopt, getopt_long?, Shawn Rutledge, 2008/07/10