Support for shared libraries on Unixware-7 and OpenUNIX-8
authorLutz Jänicke <jaenicke@openssl.org>
Thu, 6 Sep 2001 12:39:00 +0000 (12:39 +0000)
committerLutz Jänicke <jaenicke@openssl.org>
Thu, 6 Sep 2001 12:39:00 +0000 (12:39 +0000)
(Boyd Lynn Gerber <gerberb@zenez.com>).

CHANGES
Configure
Makefile.org
config

diff --git a/CHANGES b/CHANGES
index b7a3b12..9d0492c 100644 (file)
--- a/CHANGES
+++ b/CHANGES
          *) applies to 0.9.6a/0.9.6b/0.9.6c and 0.9.7
          +) applies to 0.9.7 only
 
+  +) Add support for shared libraries for Unixware-7 and support including
+     shared libraries for OpenUNIX-8 (Boyd Lynn Gerber <gerberb@zenez.com>).
+     [Lutz Jaenicke]
+
   *) Improve RSA_padding_check_PKCS1_OAEP() check again to avoid
      'wristwatch attack' using huge encoding parameters (cf.
      James H. Manger's CRYPTO 2001 paper).  Note that the
index 050587a..ff6175c 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -401,9 +401,15 @@ my %table=(
 "unixware-2.1-p6","cc:-O -DFILIO_H -Kp6::-Kthread::-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 
 # UnixWare 7
-"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
-"unixware-7-pentium","cc:-O -DFILIO_H -Kalloca -Kpentium::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
-"unixware-7-pentium_pro","cc:-O -DFILIO_H -Kalloca -Kpentium_pro::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
+"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-Kpic:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+"unixware-7-pentium","cc:-O -DFILIO_H -Kalloca -Kpentium::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-Kpic:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+"unixware-7-pentium_pro","cc:-O -DFILIO_H -Kalloca -Kpentium_pro::-Kthread::-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-Kpic.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+
+# OpenUNIX 8
+"OpenUNIX-8","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-Kpic:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+"OpenUNIX-8-gcc","gcc:-O -DFILIO_H -fomit-frame-pointer::-pthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+"OpenUNIX-8-pentium","cc:-O -DFILIO_H -Kalloca -Kpentium::-Kthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-Kpic:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+"OpenUNIX-8-pentium_pro","cc:-O -DFILIO_H -Kalloca -Kpentium_pro::-Kthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::::::::::dlfcn:svr5-shared:-Kpic:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 
 # IBM's AIX.
 "aix-cc",   "cc:-O -DB_ENDIAN -qmaxmem=16384::(unknown):AIX::BN_LLONG RC4_CHAR:::",
index 5c01d07..f3bc965 100644 (file)
@@ -313,6 +313,17 @@ do_solaris-shared:
        libs="$$libs -l$$i"; \
        done
 
+# UnixWare 7 and OpenUNIX 8 native compilers used
+do_svr5-shared:
+       libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+       touch lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+       ( PATH=/usr/ccs/bin:$$PATH ; export PATH; \
+         set -x; ${CC}  -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+               -h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+               -z allextract lib$$i.a $$libs ${EX_LIBS} ) || exit 1; \
+       libs="$$libs -l$$i"; \
+       done
+
 # This assumes that GNU utilities are *not* used
 do_irix-shared:
        libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
diff --git a/config b/config
index 7d4e99c..0caa393 100755 (executable)
--- a/config
+++ b/config
@@ -93,6 +93,11 @@ if [ "x$XREL" != "x" ]; then
            4.2)
                echo "whatever-whatever-unixware1"; exit 0
                ;;
+           OpenUNIX)
+               if [ "`echo x$VERSION | sed -e 's/\..*//'`" = "x8" ]; then
+                   echo "${MACHINE}-unknown-OpenUNIX${VERSION}"; exit 0
+               fi
+               ;;
            5)
                if [ "`echo x$VERSION | sed -e 's/\..*//'`" = "x7" ]; then
                    echo "${MACHINE}-sco-unixware7"; exit 0
@@ -221,6 +226,10 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
        echo "${MACHINE}-whatever-openbsd"; exit 0
        ;;
 
+    OpenUNIX:*)
+       echo "${MACHINE}-unknown-OpenUNIX${VERSION}"; exit 0
+       ;;
+
     OSF1:*:*:*alpha*)
        OSFMAJOR=`echo ${RELEASE}| sed -e 's/^V\([0-9]*\)\..*$/\1/'`
        case "$OSFMAJOR" in