From: Olivier Hainque <hainque@adacore.com>
To: libstdc++ <libstdc++@gcc.gnu.org>
Cc: Olivier Hainque <hainque@adacore.com>,
gcc-patches <gcc-patches@gcc.gnu.org>
Subject: Re: [patch] configury support for VxWorks shared libraries
Date: Mon, 10 Oct 2022 20:05:27 +0200 [thread overview]
Message-ID: <55793BF8-3BBA-4CF4-A41C-8A6BFA47F272@adacore.com> (raw)
In-Reply-To: <E1CD1BBE-3782-4712-846D-B5A877630BE7@adacore.com>
Sorry, I forgot to cc libstdc++ on
https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603182.html
which includes a regen of libstdc++-v3/configure after an update
libtool.m4.
Not committed yet.
With Kind Regards,
Olivier
> On 10 Oct 2022, at 19:05, Olivier Hainque <hainque@adacore.com> wrote:
>
> Hello,
>
> This change introduces configury infrastructure allowing the
> production of shared libraries for VxWorks, amenable to use with
> non-static rtps (linked with "-non-static").
>
> The ability to produce PIC code is not a given on all VxWorks
> configurations, so activating this has to be explicitly requested
> by configuring with --enable-shared
> (https://gcc.gnu.org/pipermail/gcc-patches/2022-September/602523.html).
>
> This requirement is then leveraged to factorize the configuration
> processing in a mostly cpu independant manner, which makes maintenance
> a lot easier.
>
> When activated, shared libs are built for the rtp mode only
> (the only kind of entity for which they are supported by the
> VxWorks environment), for code model != large at this stage as
> large and PIC still don't play well together.
>
> We have been using this for about a year with gcc-11 based toolchains,
> with support activated for aarch64, x86_64 and ppc64-vxworks7r2, and
> not activated for the corresponding 32bit variants (arm, i686, ppc).
> Aarch64 proved an interesting challenge with the gcc/gcc_eh split
> for lse features.
>
> I obtained good test results with a gcc-12 based compiler for ppc64
> and could get a successful sanity check build with mainline for that
> cpu as well.
>
> Will commit to mainline shortly.
>
> Cheers,
>
> Olivier
>
> 2022-10-09 Olivier Hainque <hainque@adacore.com>
>
> gcc/
> * config.gcc (*vxworks*): Add t-slibgcc fragment
> if enable_shared.
>
> libgcc/
> * config.host (*vxworks*): When enable_shared, add
> libgcc and crtstuff "shared" fragments for rtp except
> large code model.
> (aarch64*-wrs-vxworks7*): Remove t-slibgcc-libgcc from
> the list of fragments.
>
> toplevel/
> * libtool.m4 (*vxworks*): When enable_shared, set dynamic_linker
> and friends for rtp !large. Assume the linker has the required
> abilities and set lt_cv_deplibs_check_method.
>
>
> Then, regenerating configure scripts to reflect the libtool.m4 update.
>
> 2022-10-09 Olivier Hainque <hainque@adacore.com>
>
> gcc/
> * configure: Regenerate.
>
> libatomic/
> * configure: Regenerate.
>
> libbacktrace/
> * configure: Regenerate.
>
> libcc1/
> * configure: Regenerate.
>
> libffi/
> * configure: Regenerate.
>
> libgfortran/
> * configure: Regenerate.
>
> libgomp/
> * configure: Regenerate.
>
> libitm/
> * configure: Regenerate.
>
> libobjc/
> * configure: Regenerate.
>
> liboffloadmic/
> * configure: Regenerate.
>
> liboffloadmic/
> * plugin/configure: Regenerate.
>
> libphobos/
> * configure: Regenerate.
>
> libquadmath/
> * configure: Regenerate.
>
> libsanitizer/
> * configure: Regenerate.
>
> libssp/
> * configure: Regenerate.
>
> libstdc++-v3/
> * configure: Regenerate.
>
> libvtv/
> * configure: Regenerate.
>
> lto-plugin/
> * configure: Regenerate.
>
> zlib/
> * configure: Regenerate.
>
> <0002-Generic-configury-support-for-shared-libs-on-VxWorks.patch>
>
>
next parent reply other threads:[~2022-10-10 18:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E1CD1BBE-3782-4712-846D-B5A877630BE7@adacore.com>
2022-10-10 18:05 ` Olivier Hainque [this message]
2022-10-10 19:38 ` Jonathan Wakely
2022-10-11 7:26 ` Olivier Hainque
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=55793BF8-3BBA-4CF4-A41C-8A6BFA47F272@adacore.com \
--to=hainque@adacore.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=libstdc++@gcc.gnu.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).