Adrien Pierard pierarda@iro.umontreal.ca writes:
The package installation system on Debian doesn't touch /usr/local/.
BSDs install all third party software in /usr/local
Not at all. We (pkgsrc, NetBSD) install all third party software in /usr/pkg on all BSDs and not only on BSDs (Solaris, HP-UX &c). But I agree with you, the world is more diverse.
Gambit Manual Section 3.4.1 on compiler options are unnecessary, and so are -lm -ldl -lutil. Everything just works.
It doesn't work on BSD. Debian probably uses implicit flags.
Sure.
It's already pretty good. Most of the "fix" will just complicate things for the rest of us packagers.
I don't think so, though.
I've included a couple of patches below to give you an idea of what's involved. The first one shows how the soname is created, and is something that might be good to add to the Gambit-C source.
I've patched the whole source at mine already to install it properly, and I kind of know the makefiles as well as my first name now...
-- KBK
Final sample summary:
$prefix/$gambit-version-short-pre/$gambit-version-long-pre/{lib,info,include...}/$gambit-version-short-post/$gambit-version-long-post/
suggested values for short is gambitc-v4 long is gambitc-v4.2.9 One can even think of medium as gambitc-v4.2
"Old way install" is ./configure --prefix=/usr --gambit-version-long-pre=v4.2.9
"BSD way install with concurrent versions" is ./configure --prefix=/usr/local --gambit-version-long-post=gambit-c/v4.2.9 --gsi=gambci-4.2.9
"Suggested Debian way install" is ./configure --prefix=/usr/ --libdir-short=/usr/libgambc4 --infodir=/usr/doc/gambc/info
Apart from making the one writing those makefiles (aka me) swear a couple of times, all users (including maintainers) should benefit from this scheme, shouldn't they ?
Adrian
-- "I am not a Church numeral; I am a free variable!" (The Scheme Underground) For every complex problem, there is a solution that is simple, neat, and wrong.
BTW, speaking of installation improvements. Could you: 1. Rename "bin/scheme-r5rs" to anything more meaningful and different, this conflicts with Scheme48 and isn't distinguishable from any other Scheme. Same for other variants. 2. Not remove anything at installation time, see the diff against 4.2.8:
--- makefile.in.orig 2008-05-17 08:43:44.000000000 -0400 +++ makefile.in @@ -174,10 +174,10 @@ publish-release: fake_target install-pre:
install-post: all - rm -f $(prefix)/current $(prefix)/current.lnk - if test "@bat@" = ""; then \ - (cd $(prefix) && $(LN_S) .$(PACKAGE_SUBDIR) current); \ - fi +# rm -f $(prefix)/current $(prefix)/current.lnk +# if test "@bat@" = ""; then \ +# (cd $(prefix) && $(LN_S) .$(PACKAGE_SUBDIR) current); \ +# fi
uninstall-pre: