Some seasoned makes fail to build. For reference. I had problem with Irix
authorAndy Polyakov <appro@openssl.org>
Tue, 30 Dec 2008 13:26:26 +0000 (13:26 +0000)
committerAndy Polyakov <appro@openssl.org>
Tue, 30 Dec 2008 13:26:26 +0000 (13:26 +0000)
make which doesn't tolerate empty targets, and fips/Makefile ends up with
one when FIPSCANLIB is empty. Build failed as early as 'make links' phase.

Makefile.org

index 0a2964f88f62dcabc8a7af4987184818c76221bd..4be7dad7d67766b6c5de82857843451e751e8a23 100644 (file)
@@ -219,7 +219,8 @@ BUILDENV=   PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
                SHA1_ASM_OBJ='${SHA1_ASM_OBJ}'                  \
                MD5_ASM_OBJ='${MD5_ASM_OBJ}'                    \
                RMD160_ASM_OBJ='${RMD160_ASM_OBJ}'              \
-               FIPSLIBDIR='${FIPSLIBDIR}' FIPSCANLIB='${FIPSCANLIB}' \
+               FIPSLIBDIR='${FIPSLIBDIR}'                      \
+               FIPSCANLIB="$${FIPSCANLIB:-$(FIPSCANLIB)}"      \
                FIPSCANISTERINTERNAL='${FIPSCANISTERINTERNAL}'  \
                FIPS_EX_OBJ='${FIPS_EX_OBJ}'    \
                THIS=$${THIS:-$@} MAKEFILE=Makefile MAKEOVERRIDES=
@@ -240,7 +241,8 @@ BUILDENV=   PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
 # subdirectories defined in $(DIRS).  It requires that the target
 # is given through the shell variable `target'.
 BUILD_CMD=  if [ -d "$$dir" ]; then \
-           (   cd $$dir && echo "making $$target in $$dir..." && \
+           (   [ $$target != all -a -z "$(FIPSCANLIB)" ] && FIPSCANLIB=/dev/null; \
+               cd $$dir && echo "making $$target in $$dir..." && \
                $(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. DIR=$$dir $$target \
            ) || exit 1; \
            fi