Arvind Srinivasan wrote: > > One of the ongoing discussions > (http://mail.opensolaris.org/pipermail/webstack-discuss/2007-August/thread.html#190) > on the webstack-discuss mailing list is about addressing the problem of > concurrent bitness of Apache installations [32- vs. 64- bit]. Specifically, > the issue is about the 'include' and 'build' directories, whose contents > differ depending on whether we built a 32-bit vs. 64-bit server. Downstream > modules need to use the 'include' & 'build' directory that corresponds to > whether they are building a 32-bit vs. 64-bit module. > > AFAIK, there are no established naming conventions or directory hierarchies > in Solaris, for putting header files and build rules etc for 32-bit vs. > 64-bit in separate directories. > > Are there any components in SFW that have addressed this problem (or a > similar one)? > If not, then I'd be interested in hearing your views on how we should proceed?
We had a similar problem for the ksh93-integration project (which integrated into OS/Net but the same solution should work for SFW) where lots of the library headers are machine-generated (e.g. not easily editable without lots of pain for anyone who wants to update the code later) and differ slightly between 32bit and 64bit. The solution was to add an intermediate step during header installation which filters both 32bit and 64bit headers through something like $ /usr/bin/diff -D<64bitsymbol> 32bitfile.h 64bitfile.h # which creates one unified header for both 32bit and 64bit binaries - see http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/Makefile.asthdr for the Makefile machinery which does that stuff (note that some files cannot be propperly processed via $ /usr/bin/diff -D<64bitsymbol> # because it injects #ifdef/#else/#endif constructs without being aware of the syntax within the file - "Makefile.asthdr" contains a "blacklist" for that case which puts both versions of the file 1:1 into the header, seperated by a "#ifdef <64bitsymbol> ... #else ... #endif"-sequence). ---- Bye, Roland -- __ . . __ (o.\ \/ /.o) roland.mainz at nrubsig.org \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer /O /==\ O\ TEL +49 641 7950090 (;O/ \/ \O;)
