Ralf S. Engelschall wrote:
On Fri, Dec 02, 2005, Doug Summers wrote:


Using OpenPKG 2.5, HPUX 11.23/IA64...
binutils-2.16.1-2.5.0
bison-2.1-2.5.0
db-4.3.29.0-2.5.0
flex-2.5.31-2.5.0
gcc-4.0.2-2.5.0
libiconv-9.99.99-2.5.0 (empty package, couldn't compile)
m4-1.4.3-2.5.0
make-3.80-2.5.0
openpkg-2.5.0-2.5.0
openpkg-registry-0.2.5-20051129
openpkg-tools-0.8.47-2.5.0
perl-5.8.7-2.5.0

Trying to compile OpenSSL w/threads (for use with Cfengine):

making all in crypto...
( echo "#ifndef MK1MF_BUILD"; \
echo '  /* auto-generated by crypto/Makefile for crypto/cversion.c */'; \
echo '  #define CFLAGS "cc -DOPENSSL_THREADS  -fPIC -D_REENTRANT -Ae
+DD64 +O3 +Olit=all -z -DB_ENDIAN -D_REENTRANT -DSHA1_ASM -DSHA256_ASM
-DSHA512_ASM -DAES_ASM"'; \
echo '  #define PLATFORM "hpux64-ia64-cc"'; \
echo "  #define DATE \"`LC_ALL=C LC_TIME=C date`\""; \
echo '#endif' ) >buildinf.h
cc -I. -I.. -I../include -DOPENSSL_THREADS  -fPIC -D_REENTRANT -Ae +DD64
+O3 +Olit=all -z -DB_ENDIAN -D_REENTRANT -DSHA1_ASM -DSHA256_ASM
-DSHA512_ASM -DAES_ASM   -c -o cryptlib.o cryptlib.c
cc: +DD64: No such file or directory
cc: +O3: No such file or directory
cc: +Olit=all: No such file or directory
<command line>:1:2: error: missing '(' after predicate
make[1]: *** [cryptlib.o] Error 1
make: *** [build_crypto] Error 1


The problem here is that OpenSSL's "config" script under HPUX thinks the
"cc" is the vendor compiler and hence applies options which are valid
for this compiler only. GCC breaks on them. We must patch this script to
teach it something different...

                                       Ralf S. Engelschall
                                       [EMAIL PROTECTED]
                                       www.engelschall.com
I was able to successfully build openssl on HPUX IA64 by making the following changes to the .spec file:

    ./Configure hpux-ia64-gcc \ # removed /.config to force usage of gcc
        --prefix=%{l_prefix} \
        --openssldir=%{l_prefix}/etc/openssl \
        $options
    %{l_shtool} subst \
-e 's;AES_ASM_OBJ= aes-ia64.o;AES_ASM_OBJ= aes_core.o aes_cbc.o aes-ia64.o;' \
        Makefile  # this was necessary to build AES_cbc_encrypt function
    %{l_make} %{l_mflags}

Doug
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
User Communication List                      openpkg-users@openpkg.org

Reply via email to