[OGo-Developer] sope and lib64

Sebastian Reitenbach developer@opengroupware.org
Mon, 14 Jan 2008 02:06:40 +0100


Hi,

when running this command in the sope sources:
find . -name "*.m" -exec grep -l lib64 {} \;

these files show up:
./sope-gdl1/GDLAccess/EOAdaptor.m
./sope-xml/SaxObjC/SaxXMLReaderFactory.m
./sope-appserver/NGObjWeb/Templates/WOApplication+Builders.m
./sope-appserver/NGObjWeb/SoObjects/SoProductLoader.m
./sope-appserver/NGObjWeb/SoObjects/SoProductRegistry.m

To install into FHS, the library directory is hardcoded, in the files above 
there are statements like this:

=================================================================
  tmp = [NSString stringWithFormat:
#if CONFIGURE_64BIT
                    @"/lib64/sope-%i.%i/dbadaptors",
#else
                    @"/lib/sope-%i.%i/dbadaptors",
#endif
                    SOPE_MAJOR_VERSION, SOPE_MINOR_VERSION];

#ifdef FHS_INSTALL_ROOT
  [ma addObject:[FHS_INSTALL_ROOT stringByAppendingPathComponent:tmp]];
#endif
===================================================================

this will break on OpenBSD 64Bit architectures, and I think on any other 
*BSD too, maybe there are also Linuxes around, that do not have these lib64 
woes. 

Instead of passing the define CONFIGURE_64BIT I'd go change it and just pass 
either lib or lib64 at compile time directly. I'd detect it when running 
configure and write it into config.make. Then only grab the value from that 
central place?

any objections about that?

kind regards
Sebastian