[openssl-dev] [openssl.org #4444] [openssl-1.1.0-pre4] Make fails with "recipe for target 'depend' failed" on solaris64-x86_64
Rainer Jung
rainer.jung at kippdata.de
Fri Mar 18 16:33:49 UTC 2016
I had the same problem. /bin/sh on Solaris does not understand the "-nt"
operator used in the definition of the "depend" target in the top-level
Makefile, e.g. in line
if [ Makefile -nt Makefile ] ...
and elsewhere.
From "man test" on Solaris:
...
file1 -nt file2 True if file1 exists and is newer
than file2. (Not available in sh.)
...
Also normative standards documents as
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html
indicate, that "-nt" can't be expected. Quoting: "Some additional
primaries newly invented or from the KornShell appeared in an early
proposal as part of the conditional command ([[]]): s1 > s2, s1 < s2,
str = pattern, str != pattern, f1 -nt f2, f1 -ot f2, and f1 -ef f2. They
were not carried forward into the test utility when the conditional
command was removed from the shell because they have not been included
in the test utility built into historical implementations of the sh
utility."
I added a line
SHELL=/bin/ksh
to the Makefile on Solaris, because I was afraid that more non-standard
shell stuff might be in the Makefile now or in the future. It would be
better though to replace the non-standard stuff, but I didn't have the
time to work on a full patch. Using the SHELL=/bin/ksh workaround should
allow you to proceed building on Solaris. "make" then uses the Korn
Shell for shell constructs contained in the Makefile.
Regards,
Rainer
Am 18.03.2016 um 08:51 schrieb Kiyoshi KANAZAWA via RT:
> % ./config --prefix=/opt/openssl
> Operating system: i86pc-whatever-solaris2
> Configuring for solaris64-x86_64-gcc
> Configuring OpenSSL version 1.1.0-pre4 (0x0x10100004L)
> no-crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG (skip dir)
> no-crypto-mdebug-backtrace [forced] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE (skip dir)
> no-dynamic-engine [forced]
> no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
> no-egd [default] OPENSSL_NO_EGD (skip dir)
> no-heartbeats [default] OPENSSL_NO_HEARTBEATS (skip dir)
> no-md2 [default] OPENSSL_NO_MD2 (skip dir)
> no-rc5 [default] OPENSSL_NO_RC5 (skip dir)
> no-sctp [default] OPENSSL_NO_SCTP (skip dir)
> no-shared [default]
> no-ssl-trace [default] OPENSSL_NO_SSL_TRACE (skip dir)
> no-ssl3 [default] OPENSSL_NO_SSL3 (skip dir)
> no-ssl3-method [default] OPENSSL_NO_SSL3_METHOD (skip dir)
> no-unit-test [default] OPENSSL_NO_UNIT_TEST (skip dir)
> no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS (skip dir)
> no-zlib [default]
> no-zlib-dynamic [default]
> Configuring for solaris64-x86_64-gcc
> IsMK1MF =no
> CC =gcc
> CFLAG =-m64 -Wall -DL_ENDIAN -O3 -pthread -DFILIO_H -Wa,--noexecstack
> SHARED_CFLAG =-fPIC
> DEFINES =DSO_DLFCN HAVE_DLFCN_H OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM
> LFLAG =
> PLIB_LFLAG =
> EX_LIBS =-lresolv -lsocket -lnsl -ldl
> APPS_OBJ =
> CPUID_OBJ =x86_64cpuid.o
> UPLINK_OBJ =
> BN_ASM =asm/x86_64-gcc.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o
> EC_ASM =ecp_nistz256.o ecp_nistz256-x86_64.o
> DES_ENC =des_enc.o fcrypt_b.o
> AES_ENC =aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o aesni-sha1-x86_64.o aesni-sha256-x86_64.o aesni-mb-x86_64.o
> BF_ENC =bf_enc.o
> CAST_ENC =c_enc.o
> RC4_ENC =rc4-x86_64.o rc4-md5-x86_64.o
> RC5_ENC =rc5_enc.o
> MD5_OBJ_ASM =md5-x86_64.o
> SHA1_OBJ_ASM =sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o sha1-mb-x86_64.o sha256-mb-x86_64.o
> RMD160_OBJ_ASM=
> CMLL_ENC =cmll-x86_64.o cmll_misc.o
> MODES_OBJ =ghash-x86_64.o aesni-gcm-x86_64.o
> PADLOCK_OBJ =e_padlock-x86_64.o
> CHACHA_ENC =chacha-x86_64.o
> POLY1305_OBJ =poly1305-x86_64.o
> BLAKE2_OBJ =
> PROCESSOR =
> RANLIB =/usr/ccs/bin/ranlib
> ARFLAGS =
> PERL =/opt/perl5/bin/perl
>
> SIXTY_FOUR_BIT_LONG mode
>
> Configured for solaris64-x86_64-gcc.
>
>
> % make
> :
> make[1]: Leaving directory '/tmp/openssl-1.1.0-pre4'
> /opt/perl5/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
> "-oMakefile" apps/CA.pl.in > "apps/CA.pl"
> chmod a+x apps/CA.pl
> /opt/perl5/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
> "-oMakefile" tools/c_rehash.in > "tools/c_rehash"
> chmod a+x tools/c_rehash
> Makefile:170: recipe for target 'depend' failed
> make: *** [depend] Error 1
>
>
>
> Other information
> OS: Solaris10 x86/64
>
> perl version:v5.22.1
> gcc version: 4.8.5
> ld: /usr/ccs/bin/ld
>
>
> Best Regards,
>
>
> --- Kiyoshi <yoi_no_myoujou at yahoo.co.jp>
More information about the openssl-dev
mailing list