I'm sorry and thanks for your patience: there's a bug in the patch:
Replace the $$(ENGINE) in the line
@set -e; if [ "X$$(ENGINES)" != "X" ]; then \
by $(ENGINE) (no "$$" instead just a single "$").
The new line is
@set -e; if [ "X$(ENGINES)" != "X" ]; then \
(plus a tab and some additional whitespace in front).
The wrong "X$$(ENGINES)" is reduced by make into "X$(ENGINES)" which
doesn't make sense in shell. The "X$$ENGINES" in your suggested echo
line is reduced to "X$ENGINES" and since there's no shell variable named
ENGINES set, this is reduced by the shell to "X". But I want
"X$(ENGINES)" in my patch: make reduces this to "X", because the make
variable ENGINES has an empty value and that's what we want to test in
the new "if".
Regards,
Rainer
Am 21.03.2016 um 00:05 schrieb Kiyoshi KANAZAWA via RT:
Hello,
Tried your openssl-install-engines.patch, but have the same result.
% make install_engines
*** Installing engines
/bin/sh: syntax error at line 2: `;' unexpected
Makefile:251: recipe for target 'install_engines' failed
make: *** [install_engines] Error 2
I think it should work, and added, for double check,
@echo "XENGINES="X$$ENGINES
after the line
@echo "*** Installing engines".
% make install_engines
*** Installing engines
XENGINES=X
/bin/sh: syntax error at line 2: `;' unexpected
Makefile:251: recipe for target 'install_engines' failed
make: *** [install_engines] Error 2
Regards,
--- Kiyoshi <yoi_no_myou...@yahoo.co.jp>
----- Original Message -----
From: Rainer Jung via RT <r...@openssl.org>
To: yoi_no_myou...@yahoo.co.jp
Cc: openssl-dev@openssl.org
Date: 2016/3/21, Mon 01:16
Subject: Re: [openssl-dev] [openssl.org #4459] openssl-1.1.0-pre4: make install
fals on solaris64-x86_64-gcc.
Am 20.03.2016 um 16:46 schrieb Kiyoshi KANAZAWA via RT:
Hello,
Yes, ENGINES in the top level Makefile is empty.
22: LIBS=libcrypto.a libssl.a
23: SHLIBS=
24: ENGINES=
25: PROGRAMS=apps/openssl
OK, that explains the error, because the install_engines target then
contains a shell snippet
for e in ; do
($(ENGINES) is empty, but since it is not used as a shell variable but
instead as a make variable, that is the resulting for loop). That results in
/bin/sh: syntax error at line 1: `;' unexpected
at least for /bin/sh on Solaris.
So we need to add special handling in $(ENGINES) is empty.
You could try the attached patch.
Regards,
Rainer
--
Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4459
Please log in as guest with password guest if prompted
--
openssl-dev mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev