> ben> > - nuke all #ifdef in *.h, so that we won't get any API mismatches
> ben> > between libraries and user binaries.
> ben>
> ben> I guess the really correct solution to this is the one the GNOME uses
> ben> (and probably other stuff) - a utility that produces the correct -Ds for
> ben> the user's compile. There's no way we can fix this problem by blowing
> ben> away the ifdefs!
> ben>
> ben> I'd certainly be up for the GNOME-like solution, though.
>
> I think I'd prefer the current solution with opensslconf.h.
But that's exactly what they are not happy with. What they basically
want is a single opensslconf.h that suits all (their?) OS-es. They most
likely want to run './config' only once and then 'make' multiple times
on different platforms. If this is really the case, then they very
likely run './config no-asm' sacrificing a handful of performance. If
one wants to get rid of no-asm, then one would have to make Makefiles
platform-aware. By means equivalent to #if in C *or* by running a
program/script that would reinvoke 'make' with platform dependent
arguments. The latter whould effectively move './config' phase to 'make'
phase. But it would not eliminate #if-s in opensslconf.h, but more
likely *add* them (as we would have to have for example #if
defined(OPENSSL_SYSNAME_NETBSD)(*) or something).
(*) Well, in most cases it's possible to figure it out from macros
passed down by compiler driver (e.g. "#if defined(__GNUC__) &&
defined(__i386)\n#define BN_LLONG\n#endif"), but I can imagine it would
more easier to maintain if we had OS-specific macros even if most of 'em
would look more or less identical.
Andy.
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]