no-async needs -DOPENSSL_NO_ASYNC nonetheless?

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Steffen Nurpmeso-2
Hello, and fyi.

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.)

--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)
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Matt Caswell-2


On 17/10/2018 13:12, Steffen Nurpmeso wrote:

> Hello, and fyi.
>
> 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?

Matt

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Nicola
In reply to this post by Steffen Nurpmeso-2

On Wed, 17 Oct 2018 at 15:12, Steffen Nurpmeso <[hidden email]> wrote:
Hello, and fyi.

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.)

--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)
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Steffen Nurpmeso-2
In reply to this post by Matt Caswell-2
Matt Caswell wrote in <[hidden email]>:
 |
 |
 |On 17/10/2018 13:12, Steffen Nurpmeso wrote:
 |> Hello, and fyi.
 |>
 |> 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@essex code.arena]$ MAKE=make make openssl-blade MYPREFIX=$HOME/$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; \
  { git clean -fxd; git reset --hard HEAD;\
  git checkout arena-manager-null; } >/dev/null
  Operating system: x86_64-whatever-linux2
  Configuring OpenSSL version 1.1.1 (0x1010100fL) for linux-x86_64-clang
  Using os-specific seed configuration
  Creating configdata.pm
  Creating Makefile
 
  **********************************************************************
  ***                                                                ***
  ***   If you want to report a building issue, please include the   ***
  ***   output from this command:                                    ***
  ***                                                                ***
  ***     perl configdata.pm --dump                                  ***
  ***                                                                ***
  **********************************************************************
  make[1]: Entering directory '/home/steffen/code.arena/openssl.git'
  /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
      "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h
  /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
      "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h
  /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
      "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
  make depend && make _all
  make[2]: Entering directory '/home/steffen/code.arena/openssl.git'
  make[2]: Leaving directory '/home/steffen/code.arena/openssl.git'
  make[2]: Entering directory '/home/steffen/code.arena/openssl.git'
  clang [...]
  clang  -I. -Icrypto/include -Iinclude -fPIC -pthread -m64 -Wa,--noexecstack -Qunused-arguments -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl-1.1.1/ssl\"" -DENGINESDIR="\"/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl-1.1.1/lib/engines-1.1\"" -DZLIB -DZLIB_SHARED -DNDEBUG -DOPENSSL_API_COMPAT=0x10100000L  -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -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'

--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)
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Matt Caswell-2


On 17/10/2018 13:43, Steffen Nurpmeso wrote:

> Matt Caswell wrote in <[hidden email]>:
>  |
>  |
>  |On 17/10/2018 13:12, Steffen Nurpmeso wrote:
>  |> Hello, and fyi.
>  |>
>  |> 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@essex code.arena]$ MAKE=make make openssl-blade MYPREFIX=$HOME/$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; \
>   { git clean -fxd; git reset --hard HEAD;\
>   git checkout arena-manager-null; } >/dev/null
>   Operating system: x86_64-whatever-linux2
>   Configuring OpenSSL version 1.1.1 (0x1010100fL) for linux-x86_64-clang
>   Using os-specific seed configuration
>   Creating configdata.pm
>   Creating Makefile
>  
>   **********************************************************************
>   ***                                                                ***
>   ***   If you want to report a building issue, please include the   ***
>   ***   output from this command:                                    ***
>   ***                                                                ***
>   ***     perl configdata.pm --dump                                  ***
>   ***                                                                ***
>   **********************************************************************
>   make[1]: Entering directory '/home/steffen/code.arena/openssl.git'
>   /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
>       "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h
>   /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
>       "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h
>   /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
>       "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
>   make depend && make _all
>   make[2]: Entering directory '/home/steffen/code.arena/openssl.git'
>   make[2]: Leaving directory '/home/steffen/code.arena/openssl.git'
>   make[2]: Entering directory '/home/steffen/code.arena/openssl.git'
>   clang [...]
>   clang  -I. -Icrypto/include -Iinclude -fPIC -pthread -m64 -Wa,--noexecstack -Qunused-arguments -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl-1.1.1/ssl\"" -DENGINESDIR="\"/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl-1.1.1/lib/engines-1.1\"" -DZLIB -DZLIB_SHARED -DNDEBUG -DOPENSSL_API_COMPAT=0x10100000L  -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -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.

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.

Perhaps some kind of setup issue on your machine?

Matt
`


--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Steffen Nurpmeso-2
Matt Caswell wrote in <[hidden email]>:
 |On 17/10/2018 13:43, Steffen Nurpmeso wrote:
 |> Matt Caswell wrote in <[hidden email]>:
 |>|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@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)
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Matt Caswell-2


On 17/10/2018 14:09, Steffen Nurpmeso wrote:

> Matt Caswell wrote in <[hidden email]>:
>  |On 17/10/2018 13:43, Steffen Nurpmeso wrote:
>  |> Matt Caswell wrote in <[hidden email]>:
>  |>|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@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.

This is definitely an environmental issue. I just installed an Alpine
Linux VM. I got the above error consistently when using clang as the
compiler (whether or not I added "-DOPENSSL_NO_ASYNC"). I got a
successful build if I used gcc instead of clang.

With clang I was able to build successfully after this:

$ apk add clang-dev

Matt


--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Steffen Nurpmeso-2
Good evening.

Matt Caswell wrote in <[hidden email]>:
 |On 17/10/2018 14:09, Steffen Nurpmeso wrote:
 |> Matt Caswell wrote in <[hidden email]>:
 |>|On 17/10/2018 13:43, Steffen Nurpmeso wrote:
 |>|> Matt Caswell wrote in <[hidden email]\
 |>|> >:
 |>|>|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@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/.os\
 |>|>   sl\
 |>|>   -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 functionali\
 |>|ty.
 |>
 |> 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.
 |
 |This is definitely an environmental issue. I just installed an Alpine
 |Linux VM. I got the above error consistently when using clang as the
 |compiler (whether or not I added "-DOPENSSL_NO_ASYNC"). I got a
 |successful build if I used gcc instead of clang.
 |
 |With clang I was able to build successfully after this:
 |
 |$ apk add clang-dev

Well.  I have reported that no-async alone does not disable
inclusion of (finally) stdatomic.h even though the build does not
need it.  If i add -DOPENSSL_NO_ASYNC on top of the no-async that
i have chosen, it builds fine.
Maybe the subject was to offensive or misleading, for which
i hereby apologize.

--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)
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Matt Caswell-2


On 17/10/2018 22:07, Steffen Nurpmeso wrote:

>  |
>  |This is definitely an environmental issue. I just installed an Alpine
>  |Linux VM. I got the above error consistently when using clang as the
>  |compiler (whether or not I added "-DOPENSSL_NO_ASYNC"). I got a
>  |successful build if I used gcc instead of clang.
>  |
>  |With clang I was able to build successfully after this:
>  |
>  |$ apk add clang-dev
>
> Well.  I have reported that no-async alone does not disable
> inclusion of (finally) stdatomic.h even though the build does not
> need it.

The async feature and the inclusion of stdatomic.h are entirely
independent of each other. I would not expect no-async to disable the
inclusion of stdatomic.h.

The build does not *need* stdatomic.h, but you will get better
performance if you do. The build is supposed to detect whether the
compiler has support for it automatically and only include it if it
does. It seems to me that the default Alpine clang package is slightly
broken in this respect, in that it has the defines to indicate
stdatomic.h support, but actually you need to install another package to
get it.

>  If i add -DOPENSSL_NO_ASYNC on top of the no-async that
> i have chosen, it builds fine.

This bit I do not understand at all. It makes no sense to me - and I did
not see it in my testing on Alpine. Are you sure you're not building
with gcc in that build? It's the only thing I can think of. If that's
not the case then I have no clue.

> Maybe the subject was to offensive or misleading, for which
> i hereby apologize.

I'm not sure what you are apologising for? No offence has been taken
(did I say something to suggest that it had...if so then *I* apologise!).

Matt

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
Reply | Threaded
Open this post in threaded view
|

Re: no-async needs -DOPENSSL_NO_ASYNC nonetheless?

Steffen Nurpmeso-2
Matt Caswell wrote in <[hidden email]>:
 |On 17/10/2018 22:07, Steffen Nurpmeso wrote:
 |>|
 |>|This is definitely an environmental issue. I just installed an Alpine
 |>|Linux VM. I got the above error consistently when using clang as the
 |>|compiler (whether or not I added "-DOPENSSL_NO_ASYNC"). I got a
 |>|successful build if I used gcc instead of clang.
 |>|
 |>|With clang I was able to build successfully after this:
 |>|
 |>|$ apk add clang-dev
 |>
 |> Well.  I have reported that no-async alone does not disable
 |> inclusion of (finally) stdatomic.h even though the build does not
 |> need it.
 |
 |The async feature and the inclusion of stdatomic.h are entirely
 |independent of each other. I would not expect no-async to disable the
 |inclusion of stdatomic.h.
 |
 |The build does not *need* stdatomic.h, but you will get better
 |performance if you do. The build is supposed to detect whether the
 |compiler has support for it automatically and only include it if it
 |does. It seems to me that the default Alpine clang package is slightly
 |broken in this respect, in that it has the defines to indicate
 |stdatomic.h support, but actually you need to install another package to
 |get it.
 |
 |>  If i add -DOPENSSL_NO_ASYNC on top of the no-async that
 |> i have chosen, it builds fine.
 |
 |This bit I do not understand at all. It makes no sense to me - and I did
 |not see it in my testing on Alpine. Are you sure you're not building
 |with gcc in that build? It's the only thing I can think of. If that's
 |not the case then I have no clue.

  clang  -I. -Icrypto/include -Iinclude -fPIC -pthread -m64 -Wa,--noexecstack -Qunused-arguments -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl-1.1.1/ssl\"" -DENGINESDIR="\"/home/steffen/usr-essex-alpine-linux-x86_64/opt/.ossl-1.1.1/lib/engines-1.1\"" -DZLIB -DZLIB_SHARED -DNDEBUG -DOPENSSL_API_COMPAT=0x10100000L -DOPENSSL_NO_ASYNC -MMD -MF crypto/asn1/a_sign.d.tmp -MT crypto/asn1/a_sign.o -c -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'

Thanks for your contiguous support.

 |> Maybe the subject was to offensive or misleading, for which
 |> i hereby apologize.
 |
 |I'm not sure what you are apologising for? No offence has been taken
 |(did I say something to suggest that it had...if so then *I* apologise!).

I am refreshing my apoligize, but transpose it to a different
topic.  Thank you.

--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)
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users