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
pgpsxCNdWZCqb.pgp
Description: PGP signature
_______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
