Don't set the two top bits to one when generating a random number < q.:wq
[openssl.git] / Makefile.org
index 3d718c0..f93913f 100644 (file)
@@ -11,6 +11,7 @@ SHLIB_MAJOR=
 SHLIB_MINOR=
 PLATFORM=dist
 OPTIONS=
+CONFIGURE_ARGS=
 SHLIB_TARGET=
 
 # INSTALL_PREFIX is for package builders so that they can configure
@@ -160,7 +161,7 @@ SHLIBDIRS= crypto ssl
 
 # dirs in crypto to build
 SDIRS=  \
-       md2 md5 sha mdc2 hmac ripemd \
+       md2 md4 md5 sha mdc2 hmac ripemd \
        des rc2 rc4 rc5 idea bf cast \
        bn rsa dsa dh dso \
        buffer bio stack lhash rand err objects \
@@ -207,7 +208,7 @@ all: Makefile.ssl
                $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' 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}' SDIRS='${SDIRS}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \
        fi; \
        done; \
-       if $$need_shlib && [ "$(SHLIB_TARGET)" != "" ]; then :; else \
+       if $$need_shlib && [ "$(SHLIB_MARK1)" != "" -o "$(SHLIB_MARK1)" != "" ]; then \
                $(MAKE) $(SHARED_LIBS); \
        fi
 
@@ -229,14 +230,22 @@ sub_all:
                $(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}' all ) || exit 1; \
        fi; \
        done; \
-       if $$need_shlib && [ "$(SHLIB_TARGET)" != "" ]; then :; else \
+       if $$need_shlib && [ "$(SHLIB_MARK1)" != "" -o "$(SHLIB_MARK1)" != "" ]; then \
                $(MAKE) $(SHARED_LIBS); \
        fi
 
 libcrypto.so: libcrypto.a
-       $(MAKE) $(SHLIB_TARGET)
+       @if [ "$(SHLIB_TARGET)" != "" ]; then \
+               $(MAKE) SHLIBDIRS=crypto $(SHLIB_TARGET); \
+       else \
+               echo "There's no support for shared libraries on this platform" >&2; \
+       fi
 libssl.so: libcrypto.so libssl.a
-       $(MAKE) $(SHLIB_TARGET)
+       @if [ "$(SHLIB_TARGET)" != "" ]; then \
+               $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-L. -lcrypto' $(SHLIB_TARGET); \
+       else \
+               echo "There's no support for shared libraries on this platform" >&2; \
+       fi
 
 clean-shared:
        for i in ${SHLIBDIRS}; do \
@@ -246,29 +255,44 @@ clean-shared:
        done
 
 linux-shared:
-       libs=; for i in ${SHLIBDIRS}; do \
+       libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
        rm -f lib$$i.so \
                lib$$i.so.${SHLIB_MAJOR} \
                lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
        ( set -x; ${CC}  -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                -Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \
                -Wl,--whole-archive lib$$i.a \
-               -Wl,--no-whole-archive -lc $$libs ) || exit 1; \
+               -Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
        libs="$$libs -L. -l$$i"; \
        ( set -x; \
                ln -s lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                        lib$$i.so.${SHLIB_MAJOR}; \
                ln -s lib$$i.so.${SHLIB_MAJOR} lib$$i.so ); \
-       done;
+       done
 
 # This assumes that GNU utilities are *not* used
 true64-shared:
-       libs=; for i in ${SHLIBDIRS}; do \
+       libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
        ( set -x; ${CC}  -shared -no_archive -o lib$$i.so \
                -set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
-               -all lib$$i.a -none -lc $$libs ) || exit 1; \
+               -all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
        libs="$$libs -L. -l$$i"; \
-       done;
+       done
+
+# This assumes that GNU utilities are *not* used
+solaris-shared:
+       libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+       rm -f lib$$i.so \
+               lib$$i.so.${SHLIB_MAJOR} \
+               lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
+       ( set -x; ${CC}  -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+               -h lib$$i.so.${SHLIB_MAJOR} \
+               -z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
+       libs="$$libs -L. -l$$i"; \
+       ln -s lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+               lib$$i.so.${SHLIB_MAJOR}; \
+       ln -s lib$$i.so.${SHLIB_MAJOR} lib$$i.so; \
+       done
 
 Makefile.ssl: Makefile.org
        @echo "Makefile.ssl is older than Makefile.org."