From: Patrice D. <per...@fr...> - 2008-08-01 12:55:44
|
On Fri, Aug 01, 2008 at 08:09:12AM -0400, Jennifer Adams wrote: > Dear Experts, > > I've been pecking away at the configure scripts and thinking about the > logic in them. There's a lot of cruft in there -- support of > "historical" stuff that is no longer relevant, and outdated platform > dependencies. Do you see that in configure.in/acinclude.m4 from, for example, grads-2.0.a2, or in the macros used with --enable-dyn-supplibs in opengrads? I don't see that in configure.in/acinclude.m4. It is present in opengrads, but it is not an issue, in my opinion. On the contrary, it allows to build grads against old libdods, for example, which is possible and should not be dropped in my opinion. Also those macros in fact come from other sources and should be kept synchronized with these sources (mostly opendap). > It seems to me that the default behavior should be to look > for a directory called "supplibs" (in ./ and ../) and if not found then > go hunting in the system for the required libraries, creating a > dynamically linked executable. To create a more portable build, the Does this means that --enable-dyn-supplibs is the default unless a ./supplib or ../supplib directory exists, and if a ./supplib or ../supplib directory exists one has to add --enable-dyn-supplibs to link against system libraries? It it is what you meant, this seems reasonnable to me. > configure flag "--disable-shared" will stick with what's in the > "supplibs" directory and use the "-L/ga_supplb_path/libname.a" syntax > instead of -L/path -lname" . That is not clear to me. What would the difference be between a build with "--disable-shared" and a build with a ./supplib or ../supplib directory present would be? > The "--with-PACKAGE" configure options will > be used to guide the hunting for a specific library, something like > --with-hdf=/opt/local (and then it will look for > /opt/local/lib/libmfhdf.a and /opt/local/include/mfhdf.h) Agreed. It could even be used to use some supplibs but not all. --without-* could still be used to disable a feature. I don't understand clearly, however, if you want to use the same macros to detect the system libraries and the supplib libraries. If it is the case it won't be that easy to achieve, because linking staticaly against a supplib means supplying the path of the static library or enclose the static link in -Wl,-static -lname -Wl,-dy (for gcc, at least). This wouldn't easily be done with the system library detection macros. -- Pat |