Allow building applications against static libraries with Makefile.shared.
[openssl.git] / test / Makefile.ssl
index 2b30c7ac76e6296973e0b28e0ad6c29c7a94ca86..26ae0dcb6f3752a3679270395658a8d97a9ebef9 100644 (file)
@@ -11,10 +11,14 @@ INSTALL_PREFIX=
 OPENSSLDIR=     /usr/local/ssl
 INSTALLTOP=    /usr/local/ssl
 MAKEFILE=      Makefile.ssl
-MAKE=          make -f $(MAKEFILE)
+NEWMAKE=       make
+MAKE=          $(NEWMAKE) -f $(MAKEFILE)
 MAKEDEPPROG=   makedepend
 MAKEDEPEND=    $(TOP)/util/domd $(TOP) -MD $(MAKEDEPPROG)
 PERL=          perl
+# KRB5 stuff
+KRB5_INCLUDES=
+LIBKRB5=
 
 PEX_LIBS=
 EX_LIBS= #-lnsl -lsocket
@@ -124,14 +128,13 @@ apps:
        @(cd ..; $(MAKE) DIRS=apps all)
 
 SET_SO_PATHS=LIBPATH="`cd ..; pwd`"; LD_LIBRARY_PATH="$$LIBPATH"; DYLD_LIBRARY_PATH="$$LIBPATH"; SHLIB_PATH="$$LIBPATH"; \
-               if [ "$(PLATFORM)" = "DJGPP" ]; then PATH="$$LIBPATH\;$$PATH";  \
-               elif [ "$(PLATFORM)" = "Cygwin" ]; then PATH="$${LIBPATH}:$$PATH"; fi; \
+               if [ "$(PLATFORM)" = "Cygwin" ]; then PATH="$${LIBPATH}:$$PATH"; fi; \
                export LD_LIBRARY_PATH DYLD_LIBRARY_PATH SHLIB_PATH LIBPATH PATH
 
 alltests: \
        test_des test_idea test_sha test_md4 test_md5 test_hmac \
        test_md2 test_mdc2 \
-       test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast test_rd \
+       test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast test_aes \
        test_rand test_bn test_ec test_ecdsa test_ecdh \
        test_enc test_x509 test_rsa test_crl test_sid \
        test_gen test_req test_pkcs7 test_verify test_dh test_dsa \
@@ -274,9 +277,9 @@ test_ca:
          sh ./testca; \
        fi
 
-test_rd: #$(RDTEST)
+test_aes: #$(AESTEST)
 #      @echo "test Rijndael"
-#      $(SET_SO_PATHS); ./$(RDTEST)
+#      $(SET_SO_PATHS); ./$(AESTEST)
 
 lint:
        lint -DLINT $(INCLUDES) $(SRC)>fluff
@@ -298,217 +301,478 @@ $(DLIBCRYPTO):
        (cd ..; $(MAKE) DIRS=crypto all)
 
 $(RSATEST): $(RSATEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(RSATEST) $(CFLAGS) $(RSATEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(RSATEST) $(CFLAGS) $(RSATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(RSATEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(RSATEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(BNTEST): $(BNTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(BNTEST) $(CFLAGS) $(BNTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(BNTEST) $(CFLAGS) $(BNTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(BNTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(BNTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(ECTEST): $(ECTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(ECTEST) $(CFLAGS) $(ECTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(ECTEST) $(CFLAGS) $(ECTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(ECTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(ECTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(EXPTEST): $(EXPTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(EXPTEST) $(CFLAGS) $(EXPTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(EXPTEST) $(CFLAGS) $(EXPTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(EXPTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(EXPTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(IDEATEST): $(IDEATEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(IDEATEST) $(CFLAGS) $(IDEATEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(IDEATEST) $(CFLAGS) $(IDEATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(IDEATEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(IDEATEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(MD2TEST): $(MD2TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(MD2TEST) $(CFLAGS) $(MD2TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(MD2TEST) $(CFLAGS) $(MD2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(MD2TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(MD2TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(SHATEST): $(SHATEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(SHATEST) $(CFLAGS) $(SHATEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(SHATEST) $(CFLAGS) $(SHATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(SHATEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(SHATEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(SHA1TEST): $(SHA1TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(SHA1TEST) $(CFLAGS) $(SHA1TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(SHA1TEST) $(CFLAGS) $(SHA1TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(SHA1TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(SHA1TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(RMDTEST): $(RMDTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(RMDTEST) $(CFLAGS) $(RMDTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(RMDTEST) $(CFLAGS) $(RMDTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(RMDTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(RMDTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(MDC2TEST): $(MDC2TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(MDC2TEST) $(CFLAGS) $(MDC2TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(MDC2TEST) $(CFLAGS) $(MDC2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(MDC2TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(MDC2TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(MD4TEST): $(MD4TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(MD4TEST) $(CFLAGS) $(MD4TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(MD4TEST) $(CFLAGS) $(MD4TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(MD4TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(MD4TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(MD5TEST): $(MD5TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(MD5TEST) $(CFLAGS) $(MD5TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(MD5TEST) $(CFLAGS) $(MD5TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(MD5TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(MD5TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(HMACTEST): $(HMACTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(HMACTEST) $(CFLAGS) $(HMACTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(HMACTEST) $(CFLAGS) $(HMACTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(HMACTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(HMACTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(RC2TEST): $(RC2TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(RC2TEST) $(CFLAGS) $(RC2TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(RC2TEST) $(CFLAGS) $(RC2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(RC2TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(RC2TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(BFTEST): $(BFTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(BFTEST) $(CFLAGS) $(BFTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(BFTEST) $(CFLAGS) $(BFTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(BFTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(BFTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(CASTTEST): $(CASTTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(CASTTEST) $(CFLAGS) $(CASTTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(CASTTEST) $(CFLAGS) $(CASTTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(CASTTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(CASTTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(RC4TEST): $(RC4TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(RC4TEST) $(CFLAGS) $(RC4TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(RC4TEST) $(CFLAGS) $(RC4TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(RC4TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(RC4TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(RC5TEST): $(RC5TEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(RC5TEST) $(CFLAGS) $(RC5TEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(RC5TEST) $(CFLAGS) $(RC5TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(RC5TEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(RC5TEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(DESTEST): $(DESTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(DESTEST) $(CFLAGS) $(DESTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(DESTEST) $(CFLAGS) $(DESTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(DESTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(DESTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(RANDTEST): $(RANDTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(RANDTEST) $(CFLAGS) $(RANDTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(RANDTEST) $(CFLAGS) $(RANDTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(RANDTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(RANDTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(DHTEST): $(DHTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(DHTEST) $(CFLAGS) $(DHTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(DHTEST) $(CFLAGS) $(DHTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(DHTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(DHTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(DSATEST): $(DSATEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(DSATEST) $(CFLAGS) $(DSATEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(DSATEST) $(CFLAGS) $(DSATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(DSATEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(DSATEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(METHTEST): $(METHTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(METHTEST) $(CFLAGS) $(METHTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(METHTEST) $(CFLAGS) $(METHTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(METHTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(METHTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(SSLTEST): $(SSLTEST).o $(DLIBSSL) $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(SSLTEST) $(CFLAGS) $(SSLTEST).o $(PEX_LIBS) $(DLIBSSL) $(LIBKRB5) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBSSL) $(LIBKRB5) $(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(SSLTEST) $(CFLAGS) $(SSLTEST).o $(PEX_LIBS) $(LIBSSL) $(LIBKRB5) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBSSL) $(LIBKRB5) $(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(SSLTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(SSLTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(ENGINETEST): $(ENGINETEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(ENGINETEST) $(CFLAGS) $(ENGINETEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(ENGINETEST) $(CFLAGS) $(ENGINETEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(ENGINETEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(ENGINETEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(EVPTEST): $(EVPTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(EVPTEST) $(CFLAGS) $(EVPTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(EVPTEST) $(CFLAGS) $(EVPTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(EVPTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(EVPTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(ECDSATEST): $(ECDSATEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(ECDSATEST) $(CFLAGS) $(ECDSATEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(ECDSATEST) $(CFLAGS) $(ECDSATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(ECDSATEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(ECDSATEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 $(ECDHTEST): $(ECDHTEST).o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o $(ECDHTEST) $(CFLAGS) $(ECDHTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o $(ECDHTEST) $(CFLAGS) $(ECDHTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
-
-#$(RDTEST).o: $(RDTEST).c
-#      $(CC) -c $(CFLAGS) -DINTERMEDIATE_VALUE_KAT -DTRACE_KAT_MCT $(RDTEST).c
-
-#$(RDTEST): $(RDTEST).o $(DLIBCRYPTO)
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=$(ECDHTEST) LDFLAGS="$(CFLAGS)" \
+               OBJECTS="$(ECDHTEST).o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
+
+#$(AESTEST).o: $(AESTEST).c
+#      $(CC) -c $(CFLAGS) -DINTERMEDIATE_VALUE_KAT -DTRACE_KAT_MCT $(AESTEST).c
+
+#$(AESTEST): $(AESTEST).o $(DLIBCRYPTO)
 #      if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-#        $(CC) -o $(RDTEST) $(CFLAGS) $(RDTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+#        $(CC) -o $(AESTEST) $(CFLAGS) $(AESTEST).o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
 #      else \
-#        $(CC) -o $(RDTEST) $(CFLAGS) $(RDTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
+#        $(CC) -o $(AESTEST) $(CFLAGS) $(AESTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
 #      fi
 
 dummytest: dummytest.o $(DLIBCRYPTO)
-       if [ "$(SHLIB_TARGET)" = "hpux-shared" -o "$(SHLIB_TARGET)" = "darwin-shared" ] ; then \
-         $(CC) -o dummytest $(CFLAGS) dummytest.o $(PEX_LIBS) $(DLIBCRYPTO) $(EX_LIBS) ; \
+       shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
+               shlib_target="$(SHLIB_TARGET)"; \
+       fi; \
+       if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
+         LIBRARIES="$(DLIBCRYPTO)"; \
        else \
-         $(CC) -o dummytest $(CFLAGS) dummytest.o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS) ; \
-       fi
+         LIBRARIES="$(LIBCRYPTO)"; \
+       fi; \
+       $(NEWMAKE) -f $(TOP)/Makefile.shared \
+               APPNAME=dummytest LDFLAGS="$(CFLAGS)" \
+               OBJECTS="dummytest.o" \
+               LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
+               LIBRPATH=$(INSTALLTOP)/lib \
+               link_app.$${shlib_target}
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.