Hello everyone, I have a problem with openssl-0.9.7k and 0.9.7l; I am not using FIPS (and the default also is to disable it). On some platforms, I build the static libs only, and not the shared libs. At least on these platforms I had problems when doing "make install" in the to-level directory, because it tries to install nonexistent files:
--snip-- ... installing fips-1.0... making install in fips/sha... making install in fips/rand... making install in fips/des... making install in fips/aes... making install in fips/dsa... making install in fips/rsa... making install in fips/dh... making install in fips/hmac... installing fipsld cp: cannot stat `fipscanister.o': No such file or directory cp: cannot stat `fipscanister.o.sha1': No such file or directory *** Error code 1 make: Fatal error: Command failed for target `install' Current working directory /home/martin/SRC/work/openssl-0.9.7l/fips-1.0 *** Error code 1 make: Fatal error: Command failed for target `install_sw' (exit 1) --snip-- The attached (ugly) patch fixes the problem by testing the install target like it tests the build target (by checking for #define OPENSSL_FIPS). Am I the only user who observes this problem? Martin -- <[EMAIL PROTECTED]> | Fujitsu Siemens Fon: +49-89-636-46021, FAX: +49-89-636-48332 | 81730 Munich, Germany
diff --exclude=config.log --exclude='*.o' --exclude='*.a' --exclude='*~' --exclude=cscope.out -burp openssl-0.9.7l.orig/fips-1.0/Makefile openssl-0.9.7l/fips-1.0/Makefile --- openssl-0.9.7l.orig/fips-1.0/Makefile 2006-03-28 14:10:37.000000000 +0200 +++ openssl-0.9.7l/fips-1.0/Makefile 2006-09-29 12:03:37.699261000 +0200 @@ -159,28 +159,30 @@ fips_test: top tests done; install: - @headerlist="$(EXHEADER)"; for i in $$headerlist ;\ + @if egrep 'define OPENSSL_FIPS' $(TOP)/include/openssl/opensslconf.h > /dev/null; then \ + headerlist="$(EXHEADER)"; for i in $$headerlist ;\ do \ (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \ chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \ - done; - @for i in $(FDIRS) ;\ + done && \ + for i in $(FDIRS) ;\ do \ (cd $$i && echo "making install in fips/$$i..." && \ $(MAKE) CC='$(CC)' CFLAG='${CFLAG}' INSTALL_PREFIX='${INSTALL_PREFIX}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' install ); \ - done; - @for i in $(EXE) ; \ + done && \ + for i in $(EXE) ; \ do \ echo "installing $$i"; \ cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$i.new; \ chmod 755 $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$i.new; \ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$i.new $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$i; \ - done - @cp -p -f fipscanister.o fipscanister.o.sha1 fips_premain.c \ - $(INSTALL_PREFIX)$(INSTALLTOP)/lib/; \ + done && \ + cp -p -f fipscanister.o fipscanister.o.sha1 fips_premain.c \ + $(INSTALL_PREFIX)$(INSTALLTOP)/lib/ && \ strings fipscanister.o | grep "HMAC-SHA1(fips_premain\\.c)" > \ - $(INSTALL_PREFIX)$(INSTALLTOP)/lib/fips_premain.c.sha1; \ - chmod 0444 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/fips* + $(INSTALL_PREFIX)$(INSTALLTOP)/lib/fips_premain.c.sha1 && \ + chmod 0444 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/fips*; \ + fi # if fips lint: @for i in $(FDIRS) ;\