On Wed, Apr 04, 2001 at 01:36:21PM +0200, Richard Levitte - VMS Whacker wrote:
> From: Janne Blomqvist <[EMAIL PROTECTED]>
>
> jebl> aCC or aC++ is HP's C++ compiler. The RogueWave Standard C++
> jebl> Library 2.2.1 is bundled with HP aC++ 01.27. To use it you have
> jebl> to specify -AA, include paths are changed to include_std and
> jebl> libraries are libstd_v2 and libCsup_v2. The macro
> jebl> -D_RWSTD_MULTI_THREAD is used instead of -D_THREAD_SAFE when
> jebl> using threadsafe version of libstd_v2.
>
> Aha. I'm guessing that -AA also causes name-mangling (which is the
> only known way to keep type info as part of the symbol, which is
> needed when linking C++ programs, or function overloading would be
> impossible).
>
> jebl> Unfortunately objects and libraries compiled with -AA are binary
> jebl> incompatible with objects and libraries compiled without -AA.
>
> Name mangling...
>
> jebl> I've edited the Configure script and added an option for
> jebl> aCC. Some files compiles successfully while others results in
> jebl> this:
> jebl>
> jebl> Error 212: "mem_dbg.c", line 305 # Argument type 'unsigned long
>(app_mem_info_st
> jebl> *)' does not match expected parameter type
> jebl> 'unsigned long (*)()'.
> jebl> if ((amih=lh_new(app_info_hash,app_info_cmp)) == NULL)
>
> You probably want to look at snapshots of 0.9.7-dev, that version has
> a large number of changes having to do with exactly that problem.
I have just done some research on docs.hp.com. They do offer some
compatibility statements.
With respect to
http://docs.hp.com/hpux/onlinedocs/dev/aCC/a_01_27/otherlangs.htm
it should be no problem to interface aCC programs (no special flags
are listed, so it should be valid for -AA, too) to ANSI-C programs.
I just tried with 0.9.7-dev and ran into:
aCC -I. -I.. -I../include +Z -DOPENSSL_THREADS -D_REENTRANT -DDSO_DL
-DOPENSSL_NO_KRB5 -D_REENTRANT +DAportable -AA +ESlit -DB_ENDIAN -DBN_DIV2W
-DMD32_XARRAY -c ex_data.c
Error 212: "ex_data.c", line 145 # Argument type 'void *' does not match
expected parameter type 'char *'.
sk_set(ad->sk,idx,val);
^^^
Error 203: "ex_data.c", line 176 # Cannot assign 'char *' with 'void *'.
from_d=CRYPTO_get_ex_data(from,i);
^^^^^^^^^^^^^^^^^^^^^^^^^^
So I would say, there is at least some way to go before OpenSSL can be
compiled with aCC.
I would rather say it seems to be more promising to compile OpenSSL
with a generic ANSI compiler (the original poster said that he has
at least gcc, I recommend HP's compiler because the problem of needing
libgcc does not arise) and try to sort out incompatibilities in the
interfacing...
Best regards,
Lutz
--
Lutz Jaenicke [EMAIL PROTECTED]
BTU Cottbus http://www.aet.TU-Cottbus.DE/personen/jaenicke/
Lehrstuhl Allgemeine Elektrotechnik Tel. +49 355 69-4129
Universitaetsplatz 3-4, D-03044 Cottbus Fax. +49 355 69-4153
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]