Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Korsgaard <peter@korsgaard.com>
To: Arnout Vandecappelle <arnout@mind.be>
Cc: buildroot@buildroot.org
Subject: Re: [Buildroot] [git commit] utils/genrandconfig: disable libopenssl without atomics
Date: Thu, 29 Sep 2022 15:54:53 +0200	[thread overview]
Message-ID: <87mtai8evm.fsf@dell.be.48ers.dk> (raw)
In-Reply-To: <20220918134912.03172851A2@busybox.osuosl.org> (Arnout Vandecappelle's message of "Sun, 18 Sep 2022 15:36:36 +0200")

>>>>> "Arnout" == Arnout Vandecappelle <arnout@mind.be> writes:

 > commit: https://git.buildroot.net/buildroot/commit/?id=af494d92d3d065a8939f0567bfbf312d177048f2
 > branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

 > libopenssl needs atomic or the build will fail (e.g. on sparcv8 without
 > libatomic):

 > ${LDCMD:-/nvmedata/autobuild/instance-7/output-1/host/bin/sparc-buildroot-linux-uclibc-gcc}  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O0 -g2  -g2  -L.   \
 > 	-o apps/openssl apps/asn1pars.o apps/ca.o apps/ciphers.o apps/cms.o apps/crl.o apps/crl2p7.o apps/dgst.o apps/dhparam.o apps/dsa.o apps/dsaparam.o apps/ec.o apps/ecparam.o apps/enc.o apps/engine.o apps/errstr.o apps/gendsa.o apps/genpkey.o apps/genrsa.o apps/nseq.o apps/ocsp.o apps/openssl.o apps/passwd.o apps/pkcs12.o apps/pkcs7.o apps/pkcs8.o apps/pkey.o apps/pkeyparam.o apps/pkeyutl.o apps/prime.o apps/rand.o apps/rehash.o apps/req.o apps/rsa.o apps/rsautl.o apps/s_client.o apps/s_server.o apps/s_time.o apps/sess_id.o apps/smime.o apps/speed.o apps/spkac.o apps/srp.o apps/storeutl.o apps/ts.o apps/verify.o apps/version.o apps/x509.o \
 > 	 apps/libapps.a -lssl -lcrypto -ldl
 > /nvmedata/autobuild/instance-7/output-1/host/lib/gcc/sparc-buildroot-linux-uclibc/10.3.0/../../../../sparc-buildroot-linux-uclibc/bin/ld: ./libssl.so: undefined reference to `__atomic_fetch_sub_4'

 > It should be noted that openssl3 has added OPENSSL_DEV_NO_ATOMICS but
 > "this is intended for internal development only, to check the
 > refcounting is properly coded.  It should never become a configuration
 > option, hence the name of the macro.":
 > https://github.com/openssl/openssl/commit/503d4745a115b82db01c1fb22baaddb153d27cdb

 > Atomics are not available in Buildroot if:
 >  - architecture is 32 bit and something other than ARM or xtensa, and
 >  - GCC < 4.8 or no threads or FLAT.

 > The nothreads case can theoretically happen in many different
 > situations, but in practice nobody disables threads. So the only
 > interesting case is the FLAT case. Since ARM and RISC-V 64 both have
 > atomics intrinsics, that leaves just m68k NOMMU as FLAT. So this is
 > truly a corner case.

 > The proper solution would be to patch GCC to also provide libatomic in
 > those cases.
 > - For nothreads, atomics are in fact not needed, so libatomic can simply
 >   be implemented as stubs.
 > - For FLAT, it's probably just a matter of having a match to uclinux in
 >   libatomic/configure.tgt.

 > Again, though, this happens only in such niche cases that it's not worth
 > working on it.

 > Fixes:
 >  - http://autobuild.buildroot.org/results/bce526d538f43a541fdfbc0c9b4a7cecebbbc539

 > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
 > Signed-off-by: Arnout Vandecappelle <arnout@mind.be>

Committed to 2022.08.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

      parent reply	other threads:[~2022-09-29 13:55 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-18 13:36 [Buildroot] [git commit] utils/genrandconfig: disable libopenssl without atomics Arnout Vandecappelle
2022-09-18 15:18 ` Yann E. MORIN
2022-09-29 13:54 ` Peter Korsgaard [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87mtai8evm.fsf@dell.be.48ers.dk \
    --to=peter@korsgaard.com \
    --cc=arnout@mind.be \
    --cc=buildroot@buildroot.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox