From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1851) id A2D4C3853821; Thu, 14 Jul 2022 07:52:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A2D4C3853821 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Martin Liska To: gcc-cvs@gcc.gnu.org Subject: [gcc(refs/users/marxin/heads/PR106156-fix-riscv64-lto-plugin-v3)] lto-plugin: use -pthread only for detected targets X-Act-Checkin: gcc X-Git-Author: Martin Liska X-Git-Refname: refs/users/marxin/heads/PR106156-fix-riscv64-lto-plugin-v3 X-Git-Oldrev: e9cad1e582950d129aba3465b65c2231f94bb6c0 X-Git-Newrev: bf0e9635086b5b3f88a40bab9839b2c438eed831 Message-Id: <20220714075252.A2D4C3853821@sourceware.org> Date: Thu, 14 Jul 2022 07:52:52 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Jul 2022 07:52:52 -0000 https://gcc.gnu.org/g:bf0e9635086b5b3f88a40bab9839b2c438eed831 commit bf0e9635086b5b3f88a40bab9839b2c438eed831 Author: Martin Liska Date: Thu Jul 14 09:51:33 2022 +0200 lto-plugin: use -pthread only for detected targets Use -pthread only if we are going to use pthread functionality. PR bootstrap/106156 lto-plugin/ChangeLog: * Makefile.am: Append -pthread to LDFLAGS if LTO_PLUGIN_USE_PTHREAD. * configure.ac: Use AM_CONDITIONAL for LTO_PLUGIN_USE_PTHREAD. * Makefile.in: Regenerate. * configure: Regenerate. Diff: --- lto-plugin/Makefile.am | 7 +++++-- lto-plugin/Makefile.in | 5 +++-- lto-plugin/configure | 19 +++++++++++++++++-- lto-plugin/configure.ac | 2 ++ 4 files changed, 27 insertions(+), 6 deletions(-) diff --git a/lto-plugin/Makefile.am b/lto-plugin/Makefile.am index 482946e4dd5..ce51e8e173e 100644 --- a/lto-plugin/Makefile.am +++ b/lto-plugin/Makefile.am @@ -9,12 +9,15 @@ libexecsubdir := $(libexecdir)/gcc/$(real_target_noncanonical)/$(gcc_version)$(a AM_CPPFLAGS = -I$(top_srcdir)/../include $(DEFS) AM_CFLAGS = @ac_lto_plugin_warn_cflags@ $(CET_HOST_FLAGS) -DBASE_VERSION='"$(gcc_version)"' -# The plug-in depends on pthreads. -AM_LDFLAGS = -pthread @ac_lto_plugin_ldflags@ +AM_LDFLAGS = @ac_lto_plugin_ldflags@ AM_LIBTOOLFLAGS = --tag=disable-static override CFLAGS := $(filter-out -fsanitize=address -fsanitize=hwaddress,$(CFLAGS)) override LDFLAGS := $(filter-out -fsanitize=address -fsanitize=hwaddress,$(LDFLAGS)) +if LTO_PLUGIN_USE_PTHREAD +override LDFLAGS := $(LDFLAGS) -pthread +endif + libexecsub_LTLIBRARIES = liblto_plugin.la gcc_build_dir = @gcc_build_dir@ in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), $(gcc_build_dir)/$(lib)) diff --git a/lto-plugin/Makefile.in b/lto-plugin/Makefile.in index 9453bc7d607..c323b6a51de 100644 --- a/lto-plugin/Makefile.in +++ b/lto-plugin/Makefile.in @@ -344,8 +344,7 @@ gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) libexecsubdir := $(libexecdir)/gcc/$(real_target_noncanonical)/$(gcc_version)$(accel_dir_suffix) AM_CPPFLAGS = -I$(top_srcdir)/../include $(DEFS) AM_CFLAGS = @ac_lto_plugin_warn_cflags@ $(CET_HOST_FLAGS) -DBASE_VERSION='"$(gcc_version)"' -# The plug-in depends on pthreads. -AM_LDFLAGS = -pthread @ac_lto_plugin_ldflags@ +AM_LDFLAGS = @ac_lto_plugin_ldflags@ AM_LIBTOOLFLAGS = --tag=disable-static libexecsub_LTLIBRARIES = liblto_plugin.la in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), $(gcc_build_dir)/$(lib)) @@ -685,6 +684,8 @@ uninstall-am: uninstall-libexecsubLTLIBRARIES override CFLAGS := $(filter-out -fsanitize=address -fsanitize=hwaddress,$(CFLAGS)) override LDFLAGS := $(filter-out -fsanitize=address -fsanitize=hwaddress,$(LDFLAGS)) +@LTO_PLUGIN_USE_PTHREAD_TRUE@override LDFLAGS := $(LDFLAGS) -pthread + all-local: $(in_gcc_libs) $(in_gcc_libs) : $(gcc_build_dir)/%: % diff --git a/lto-plugin/configure b/lto-plugin/configure index 870e49b2e62..bf7c4d064ee 100755 --- a/lto-plugin/configure +++ b/lto-plugin/configure @@ -650,6 +650,8 @@ LD FGREP SED LIBTOOL +LTO_PLUGIN_USE_PTHREAD_FALSE +LTO_PLUGIN_USE_PTHREAD_TRUE LTO_PLUGIN_USE_SYMVER_SUN_FALSE LTO_PLUGIN_USE_SYMVER_SUN_TRUE LTO_PLUGIN_USE_SYMVER_GNU_FALSE @@ -6033,6 +6035,15 @@ fi fi + if test "x$use_locking" = xyes; then + LTO_PLUGIN_USE_PTHREAD_TRUE= + LTO_PLUGIN_USE_PTHREAD_FALSE='#' +else + LTO_PLUGIN_USE_PTHREAD_TRUE='#' + LTO_PLUGIN_USE_PTHREAD_FALSE= +fi + + case `pwd` in *\ * | *\ *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 @@ -12104,7 +12115,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12107 "configure" +#line 12118 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12210,7 +12221,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12213 "configure" +#line 12224 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12693,6 +12704,10 @@ if test -z "${LTO_PLUGIN_USE_SYMVER_SUN_TRUE}" && test -z "${LTO_PLUGIN_USE_SYMV as_fn_error $? "conditional \"LTO_PLUGIN_USE_SYMVER_SUN\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${LTO_PLUGIN_USE_PTHREAD_TRUE}" && test -z "${LTO_PLUGIN_USE_PTHREAD_FALSE}"; then + as_fn_error $? "conditional \"LTO_PLUGIN_USE_PTHREAD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 diff --git a/lto-plugin/configure.ac b/lto-plugin/configure.ac index 18eb4f60b0a..6ff5071c423 100644 --- a/lto-plugin/configure.ac +++ b/lto-plugin/configure.ac @@ -104,6 +104,8 @@ if test x$use_locking = xyes; then [AC_DEFINE(HAVE_PTHREAD_LOCKING, 1, [Define if the system provides pthread locking mechanism.])]) fi +AM_CONDITIONAL(LTO_PLUGIN_USE_PTHREAD, [test "x$use_locking" = xyes]) + AM_PROG_LIBTOOL ACX_LT_HOST_FLAGS AC_SUBST(target_noncanonical)