[Nexus-developers] NeXus Makefiles

Ray Osborn ROsborn at anl.gov
Tue Oct 28 17:33:36 GMT 2003


Firstly, let me say that I support the autoconf route just for compatibility
with the rest of the open source world.  People are used to ./configure,
make install etc., and it would make NeXus seem less of a hack.  I certainly
thought that Michael Aivazis' portinfo solution was more elegant than the
autoconf implementations that I have seen, because I feel uncomfortable
having to put in more complex ifdefs into the main header file.  If I need
to make changes in order to get the NeXus library to run on the latest
version of Mac OS X, I don't want to risk breaking every other version by
putting in the wrong ifdefs.  However, we don't have the resources to
maintain a portinfo library ourselves, so, unless Michael's scheme gets
adopted more widely, it may be a dangerous route.

Is there some way we can get the best of both worlds, i.e., allow autoconf
to worry about keeping up to date with major operating system changes, but
encapsulating potential operating system vagaries in, e.g., a separate
header file?  

I support the idea of having separate libraries for the C, F77, and F90
versions, although I had hoped that they could be standalone, i.e., you
would only link to libnexus.a in C, libnexusf77.a in F77 etc.  In other
words, it would be good if the entire NeXus library were in each, and name
mangling would only be necessary for the Fortran versions.  However, if this
could break NeXus implementation in more complex applications, then I can
accept Freddie's solution.

Ray 
-- 
Dr Ray Osborn                Tel: +1 (630) 252-9011
Materials Science Division   Fax: +1 (630) 252-7777
Argonne National Laboratory  E-mail: ROsborn at anl.gov
Argonne, IL 60439-4845




More information about the NeXus-developers mailing list