On Mon, Jul 14, 2008 at 6:01 PM, Ivan Raikov <[EMAIL PROTECTED]> wrote: > 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.
This sounds good so far. So an egg could include a custom setup script, or else it would be auto-generated from the .meta file at installation time and therefore the egg is not required to provide it, right? On Tue, Jul 15, 2008 at 12:11 AM, Peter Bex <[EMAIL PROTECTED]> wrote: > 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 That could be a last-ditch way to solve problems but I would hope most users wouldn't need to do that for most eggs. Is there anything wrong with putting extra -I's and -L's in the meta file, with some possible guesses the egg developer can think of, where a particular library or include might be located? And chicken-setup could append the usual suspects automatically, like /usr/include, /usr/local/include etc. (library foo-wrapper (version 1.4) (make (foo-wrapper.scm) (compile -O2 -d0 -s foo-wrapper.scm -L/usr/lib/foo -L/usr/include/foo -ldl -lfoo -lchicken)))) One problem I could think of is the case where the user has multiple versions of the same library, or is cross-compiling, in which case the default paths, or the paths suggested in the meta file, could be misleading. I guess he'd have to specify the -I and -L somehow, as you suggest. If the user does that, then chicken-setup would not include the default paths, or at least would put the provided paths first. Or somehow the meta file could suggest that libfoo.so might be located in a directory called foo-1.0, somewhere, and chicken-setup could expand that to -L/usr/lib/foo-1.0 -L/usr/local/lib/foo-1.0 etc. But the ability to cross-compile eggs is something I need to test soon; sounds like it's pretty cool already. I'm working on a bitbake recipe for chicken for OpenMoko (I'm still a newbie with that) and am wondering if it's going to be possible to get bitbake to compile all the eggs too, and make ipk's for all of them, hopefully either semi-automatically or I can come up with a way to generate recipes automatically from the meta files, or something. _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
