[PATCH v1] libstdc++-v3: Update VTV vars for libtool link commands [PR99172]
Caroline Tice
cmtice@google.com
Thu Mar 11 15:31:18 GMT 2021
Adding the libstdc++ mailing list to the patch.
-- Caroline
cmtice@google.com
On Wed, Mar 10, 2021 at 8:50 PM Caroline Tice <cmtice@google.com> wrote:
>
> This patch is to fix PR 99172.
>
> Currently when GCC is configured with --enable-vtable-verify, the
> libstdc++-v3 Makefiles add "-fvtable-verify=std
> -Wl,-u_vtable_map_vars_start,-u_vtable_map_vars_end" to libtool link
> commands. The "-fvtable-verify=std" piece causes alternate versions of
> libtool (such as slibtool) to fail, unable to find "-lvtv" (GNU
> libtool just removes that piece).
>
> This patch updates the libstdc++-v3 Makefiles to not pass
> "-fvtable-verify=std" to the libtool link commands, while continuing
> to pass the rest of the VTV flags (which are necessary for VTV to
> work).
>
> I tested this by configuring with --enable-vtable-verify, boostrapping
> the compiler, and running all the regression testsuites (including
> libvtv & libstdc++) without any regressions. I only ran it on a linux
> system, on an x86_64 machine.
>
> I also gave a copy of the patch to the person who reported the bug,
> and they verified that the patch fixes their issue.
>
> Is this ok to commit?
>
> -- Caroline Tice
> cmtice@google.com
>
> libstdc++-v3/ChangeLog
>
> 2021-03-10 Caroline Tice <cmtice@google.com>
>
> PR libstdc++/99172
> * Makefile.in: Regenerate.
> * acinclude.m4: Add definitions for VTV_CXXFLAGS_LT.
> * configure: Regenerate.
> * doc/Makefile.in: Regenerate.
> * include/Maefile.in: Regenerate.
> * libsupc++/Makefile.in: Regenerate.
> * po/Makefile.in: Regenerate.
> * python/Makefile.in: Regenerate.
> * src/Makefile.am (AM_CXXFLAGS_LT): New definition.
> (CXXLINK): Update to use AM_CXXFLAGS_LT instead of AM_CXXFLAGS.
> * src/Makefile.in: Regenerate.
> * src/c++11/Makefile.in: Regenerate.
> * src/c++17/Makefile.in: Regenerate.
> * src/c++20/Makefile.in: Regenerate.
> * src/c++98/Makefile.in: Regenerate.
> * src/filesystem/Makefile.in: Regenerate.
> * testsuite/Makefile.in: Regenerate.
More information about the Libstdc++
mailing list