Avoid emacs backup files when making a snapshot
[openssl.git] / Makefile.org
index 0427ce9647a9d6612aa61d61a7148f3eb4955a1c..550ed5135c8eb209f2d3c2e26fed3c15ad1ee3c6 100644 (file)
@@ -166,7 +166,7 @@ SHLIBDIRS= crypto ssl
 SDIRS=  \
        md2 md4 md5 sha mdc2 hmac ripemd \
        des rc2 rc4 rc5 idea bf cast \
-       bn ec rsa dsa dh dso engine aes \
+       bn ec rsa dsa ecdsa dh dso engine aes \
        buffer bio stack lhash rand err objects \
        evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp ocsp ui krb5
 
@@ -211,11 +211,11 @@ sub_all:
        do \
        if [ -d "$$i" ]; then \
                (cd $$i && echo "making all in $$i..." && \
-               $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' SHLIB_EXT='${SHLIB_EXT}' all ) || exit 1; \
+               $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' all ) || exit 1; \
        else \
                $(MAKE) $$i; \
        fi; \
-       done; \
+       done;
 
 libcrypto$(SHLIB_EXT): libcrypto.a
        @if [ "$(SHLIB_TARGET)" != "" ]; then \
@@ -223,6 +223,7 @@ libcrypto$(SHLIB_EXT): libcrypto.a
        else \
                echo "There's no support for shared libraries on this platform" >&2; \
        fi
+
 libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
        @if [ "$(SHLIB_TARGET)" != "" ]; then \
                $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
@@ -239,19 +240,22 @@ clean-shared:
                        done; \
                fi; \
                ( set -x; rm -f lib$$i$(SHLIB_EXT) ); \
+               if [ "$(PLATFORM)" = "Cygwin" ]; then \
+                       ( set -x; rm -f cyg$$i$(SHLIB_EXT) lib$$i$(SHLIB_EXT).a ); \
+               fi; \
        done
 
 link-shared:
-       @for i in $(SHLIBDIRS); do \
-               prev=lib$$i$(SHLIB_EXT); \
-               if [ -n "$(SHARED_LIBS_LINK_EXTS)" ]; then \
-                       tmp="$(SHARED_LIBS_LINK_EXTS)"; \
+       @if [ -n "$(SHARED_LIBS_LINK_EXTS)" ]; then \
+               tmp="$(SHARED_LIBS_LINK_EXTS)"; \
+               for i in $(SHLIBDIRS); do \
+                       prev=lib$$i$(SHLIB_EXT); \
                        for j in $${tmp:-x}; do \
                                ( set -x; ln -f -s $$prev lib$$i$$j ); \
                                prev=lib$$i$$j; \
                        done; \
-               fi; \
-       done
+               done; \
+       fi
 
 build-shared: clean-shared do_$(SHLIB_TARGET) link-shared
 
@@ -262,6 +266,7 @@ do_gnu-shared:
        ( set -x; ${CC} ${SHARED_LDFLAGS} \
                -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                -Wl,-soname=lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+               -Wl,-Bsymbolic \
                -Wl,--whole-archive lib$$i.a \
                -Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
        libs="$$libs -l$$i"; \
@@ -285,6 +290,16 @@ do_darwin-shared:
        echo "" ; \
        done
 
+do_cygwin-shared:
+       libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+       ( set -x; ${CC}  -shared -o cyg$$i.dll \
+               -Wl,-Bsymbolic \
+               -Wl,--whole-archive lib$$i.a \
+               -Wl,--out-implib,lib$$i.dll.a \
+               -Wl,--no-whole-archive $$libs ) || exit 1; \
+       libs="$$libs -l$$i"; \
+       done
+
 # This assumes that GNU utilities are *not* used
 do_alpha-osf1-shared:
        if ${DETECT_GNU_LD}; then \
@@ -348,6 +363,25 @@ do_solaris-shared:
                done; \
        fi
 
+# OpenServer 5 native compilers used
+do_svr3-shared:
+       if ${DETECT_GNU_LD}; then \
+               $(MAKE) do_gnu-shared; \
+       else \
+               libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+               ( PATH=/usr/ccs/bin:$$PATH ; export PATH; \
+                 find . -name "*.o" -print > allobjs ; \
+                 OBJS= ; export OBJS ; \
+                 for obj in `ar t lib$$i.a` ; do \
+                   OBJS="$${OBJS} `grep $$obj allobjs`" ; \
+                 done ; \
+                 set -x; ${CC}  -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+                       -h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+                       $${OBJS} $$libs ${EX_LIBS} ) || exit 1; \
+               libs="$$libs -l$$i"; \
+               done; \
+       fi
+
 # UnixWare 7 and OpenUNIX 8 native compilers used
 do_svr5-shared:
        if ${DETECT_GNU_LD}; then \
@@ -464,6 +498,20 @@ do_aix-shared:
        libs="$$libs -l$$i"; \
        done
 
+do_reliantunix-shared:
+       libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+       tmpdir=/tmp/openssl.$$$$ ; rm -rf $$tmpdir ; \
+       ( set -x; \
+         ( Opwd=`pwd` ; mkdir $$tmpdir || exit 1; \
+           cd $$tmpdir || exit 1 ; ar x $$Opwd/lib$$i.a ; \
+           ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} *.o \
+         ) || exit 1; \
+         cp $$tmpdir/lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} . ; \
+       ) || exit 1; \
+       rm -rf $$tmpdir ; \
+       libs="$$libs -l$$i"; \
+       done
+
 Makefile.ssl: Makefile.org
        @echo "Makefile.ssl is older than Makefile.org."
        @echo "Reconfigure the source tree (via './config' or 'perl Configure'), please."
@@ -574,6 +622,7 @@ tags:
 
 errors:
        $(PERL) util/mkerr.pl -recurse -write
+       (cd crypto/engine; $(MAKE) PERL=$(PERL) errors)
 
 stacks:
        $(PERL) util/mkstack.pl -write
@@ -606,7 +655,7 @@ tar:
 
 tar-snap:
        @$(TAR) $(TARFLAGS) -cvf - \
-               `find * \! -path CVS/\* \! -path \*/CVS/\* \! -name CVS \! -name .cvsignore \! -name STATUS \! -name TABLE \! -name '*.o' \! -name '*.a' \! -name '*.so' \! -name '*.so.*'  \! -name 'openssl' \! -name '*test' \! -name '.#*' | sort` |\
+               `find * \! -path CVS/\* \! -path \*/CVS/\* \! -name CVS \! -name .cvsignore \! -name STATUS \! -name TABLE \! -name '*.o' \! -name '*.a' \! -name '*.so' \! -name '*.so.*'  \! -name 'openssl' \! -name '*test' \! -name '.#*' \! -name '*~' | sort` |\
        tardy --user_number=0  --user_name=openssl \
              --group_number=0 --group_name=openssl \
              --prefix=openssl-$(VERSION) - > ../$(TARFILE);\
@@ -654,10 +703,18 @@ install: all install_docs
                tmp="$(SHARED_LIBS)"; \
                for i in $${tmp:-x}; \
                do \
-                       if [ -f "$$i" ]; then \
+                       if [ -f "$$i" -o -f "$$i.a" ]; then \
                        (       echo installing $$i; \
-                               cp -f $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
-                               chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \
+                               if [ "$(PLATFORM)" != "Cygwin" ]; then \
+                                       cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
+                                       chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i; \
+                               else \
+                                       c=`echo $$i | sed 's/^lib/cyg/'`; \
+                                       cp $$c $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c; \
+                                       chmod 755 $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c; \
+                                       cp $$i.a $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.a; \
+                                       chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.a; \
+                               fi ); \
                        fi \
                done; \
                (       here="`pwd`"; \