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 <hain...@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  <hain...@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  <hain...@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>
> 
> 

Reply via email to