[openssl-users] no-async needs -DOPENSSL_NO_ASYNC nonetheless?
Steffen Nurpmeso
steffen at sdaoden.eu
Wed Oct 17 13:09:18 UTC 2018
Matt Caswell wrote in <bf5f388d-1964-24c8-753b-0251a7412642 at openssl.org>:
|On 17/10/2018 13:43, Steffen Nurpmeso wrote:
|> Matt Caswell wrote in <cf8b85a3-af41-ba9c-92c4-f744666c7c76 at openssl.org>:
|>|On 17/10/2018 13:12, Steffen Nurpmeso wrote:
|>|> I have built final 1.1.1 yesterday on AlpineLinux musl after
|>|> running a prelease from end of May before. My makefile rule for
|>|> this box is (excerpt)
|>|>
|>|> ./config --prefix=$(MYPREFIX) zlib-dynamic no-hw shared \
|>|> no-deprecated no-async no-tests \
|>|> -DOPENSSL_NO_ASYNC \
|>|> -Wl,-rpath,'$(LIBRPATH)' &&\
|>|> make &&\
|>|> $(SUDO) make install_sw && $(SUDO) make install_ssldirs; \
|>|>
|>|> The -DOPENSSL_NO_ASYNC i had to add yesterday, no-async alone was
|>|> not enough. (I have forgotten whether this was necessary in May,
|>|> but most likely not.)
|>|
|>|This shouldn't be necessary. What errors do you get if you don't include
|>|that?
|>
|> #?0[steffen at essex code.arena]$ MAKE=make make openssl-blade MYPREFIX=$H\
|> OME/$USR/opt/.ossl-1.1.1
|> cd openssl.git &&\
|> if [ -f NULL ]; then git checkout `cat NULL`; fi &&\
|> ./config --prefix=/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl\
|> -1.1.1 zlib-dynamic no-hw shared \
|> no-deprecated no-async no-tests \
|> -Wl,-rpath,'' &&\
|> make &&\
|> make install_sw && make install_ssldirs; \
..
|> -o crypto/asn1/a_sign.o crypto/asn1/a_sign.c
|> In file included from crypto/asn1/a_sign.c:22:
|> In file included from crypto/include/internal/evp_int.h:11:
|> include/internal/refcount.h:21:12: fatal error: 'stdatomic.h' file \
|> not found
|> # include <stdatomic.h>
|> ^~~~~~~~~~~~~
|> 1 error generated.
|> make[2]: *** [Makefile:955: crypto/asn1/a_sign.o] Error 1
|> make[2]: Leaving directory '/home/steffen/code.arena/openssl.git'
|> make[1]: *** [Makefile:171: all] Error 2
|> make[1]: Leaving directory '/home/steffen/code.arena/openssl.git'
|> Previous HEAD position was 1708e3e85b Prepare for 1.1.1 release
|> Switched to branch 'arena-manager-null'
|
|And that problem goes away by specifying "-DOPENSSL_NO_ASYNC" to
|config????? That issue seems to have absolutely nothing to do with that
|define. None of the .c or .h files indicated in the error above
|reference it, nor do they have anything to do with the async functionality.
Yes, that is what i did! I looked into the AlpineLinux abuild
package system, and how they get it done, and after adding this
define the building succeeded.
|This problem seems to be environmental. The code in question looks like
|this:
|
|# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L \
| && !defined(__STDC_NO_ATOMICS__)
|# include <stdatomic.h>
|# define HAVE_C11_ATOMICS
|# endif
|
|stdatomic.h is part of C11. A C11 compliant compiler should provide it
|unless it also define __STDC_NO_ATOMICS__. Your compiler appears to be
|claiming to be C11 compliant and has not defined __STC_NO_ATOMICS__ -
|and yet the header file cannot be found.
Yes, no such on musl i think. But i do not know.
|Perhaps some kind of setup issue on your machine?
But then not on my alone. The testing/openssl1.1/APKBUILD does
perl ./Configure $_target --prefix=/usr \
--libdir=lib \
--openssldir=/etc/ssl \
shared zlib $_optflags \
-DOPENSSL_NO_ASYNC \
$CPPFLAGS $CFLAGS $LDFLAGS -Wa,--noexecstack
It is likely that i copied that -Define from there back in May
too, but it was a prerelease, and i did not fixate the fix, and
then have forgotten about it.
--steffen
|
|Der Kragenbaer, The moon bear,
|der holt sich munter he cheerfully and one by one
|einen nach dem anderen runter wa.ks himself off
|(By Robert Gernhardt)
More information about the openssl-users
mailing list