From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout-p-202.mailbox.org (mout-p-202.mailbox.org [80.241.56.172]) by sourceware.org (Postfix) with ESMTPS id 694D53849AF6 for ; Sun, 14 Apr 2024 00:12:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 694D53849AF6 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=aarsen.me Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=aarsen.me ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 694D53849AF6 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=80.241.56.172 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713053564; cv=none; b=I72zlY/msAVZ0OsmNUfU3bibmrktbp8FyJOjTYoAwZ28ZOlqzkhOwObvH/LAreMolZULBx2X0YIPmEzQgWrAhYiuqvQFgMSaKTo55BSDzQ7l6EP405KNzmXza4bumvEAUQQKmOEcamKID+IcTtBO8EWQC61Mh83tS9mPMS/pnPg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713053564; c=relaxed/simple; bh=Ge8Bc+dnFxUn+wE6kdmMydpg5h+JNZuMX91MyDef1EQ=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=ZOHysBPY7sY73+94EKfDdOkUJIntIGSPFxSAloTQ108Krv7qILKG6Z736Iuu8oXKlT5wcWBNdxVpKdCzKrXK3195o4s7EH0Tk/01MpjuTLJgQJxCnJ1c2H+WG5QiuUiwooojqUwlUahqE8KkDqvifYyeLRhT9rJuIqVlewsY6YY= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from smtp202.mailbox.org (smtp202.mailbox.org [10.196.197.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-202.mailbox.org (Postfix) with ESMTPS id 4VH9jb37NJz9sR3; Sun, 14 Apr 2024 02:12:35 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aarsen.me; s=MBO0001; t=1713053555; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mqqk8LK1jKwd2RwVk8rS+n3nZ3VcIed7dgWDGYBpZtA=; b=JOuDZYNtKxTUelEbbim0QoUGgNAES99CGnc2hDzfISn+24UzwWR+q4hnwNyzbIU2VbjkbL JIDrR/ztddPHSn9ctWJexQPetkgVvp+fpMpvAC7h3ajK6r7kthLOvsg7BSEQpKJHKNFj3l UzTJ5wjsuWuu5NOiVQ/Rg9jDpSF1Fcz6oKVuWQFHhsgJo3OkAg2qVWo3g9WnefwgT3EmcF hlXNyZ7ba2ljytAMJt3OnDOdct9KA76zU8WZX9I0HlTo/w4RZJnn6XTde+k+3FEQoff198 I9eVcphvXZetLGrFhBGy5WOvVOpFeO3rMV1S06gfCya0D6AeiocEUoEPIm/i2w== From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= To: gcc-patches@gcc.gnu.org Cc: =?UTF-8?q?K=C3=A9vin=20Le=20Gouguec?= , =?UTF-8?q?Arsen=20Arsenovi=C4=87?= Subject: [PATCH 3/3] *: support in-tree libiconv again Date: Sat, 13 Apr 2024 23:58:04 +0200 Message-ID: <20240414001113.1698685-4-arsen@aarsen.me> In-Reply-To: <20240414001113.1698685-1-arsen@aarsen.me> References: <20240414001113.1698685-1-arsen@aarsen.me> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-10.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_INFOUSMEBIZ,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS,TXREP,WEIRD_QUOTING autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: ChangeLog: * Makefile.def: Inform gettext of our freshly-built libiconv. * Makefile.in: Regenerate. * configure: Regenerate. * configure.ac (LIBICONV_SIBLING): If an in-tree host libiconv is being built, set this variable to the path to libiconv.a (LTLIBICONV_SIBLING): If an in-tree host libiconv is being built, set this variable to the path to libiconv.la. (LIBICONV_EXTRA_CPPFLAGS): If an in-tree host libiconv is being, set this variable to the appropriate CPPFLAGS for using the new libiconv. (LIBICONV_CVS): If an in-tree host libiconv is being, set this variable to the cache variables that iconv.m4 uses that need to be specicified in order to use the related variables. config/ChangeLog: * iconv.m4: Restore modifications from GCC commit d485982286692075d175dbbcf17d00431106ce96 and co. gcc/ChangeLog: * configure: Regenerate. libcpp/ChangeLog: * configure: Regenerate. libstdc++-v3/ChangeLog: * configure: Regenerate. --- Makefile.def | 7 +- Makefile.in | 60 +++++------ config/iconv.m4 | 50 +++++++-- configure | 25 +++++ configure.ac | 21 ++++ gcc/configure | 240 +++++++++++++++++++++++++++++++---------- libcpp/configure | 206 ++++++++++++++++++++++++++++------- libstdc++-v3/configure | 121 ++++++++++++++++----- 8 files changed, 572 insertions(+), 158 deletions(-) diff --git a/Makefile.def b/Makefile.def index d25edb6ed76d..c37f78f2e1da 100644 --- a/Makefile.def +++ b/Makefile.def @@ -78,11 +78,16 @@ host_modules= { module= gettext; bootstrap=true; no_install=true; module_srcdir= "gettext/gettext-runtime"; // Don't override configure-discovered build arguments all_args_override=""; + // The toolchain build system overrides LDFLAGS that configure + // discovers, so specifying these flags as part of the + // configure arguments will not work. Instead, we need to + // export them at configure time as well as make time. + extra_exports='LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS;'; // We always build gettext with pic, because some packages (e.g. gdbserver) // need it in some configuratons, which is determined via nontrivial tests. // Always enabling pic seems to make sense for something tied to // user-facing output. - extra_configure_flags='--disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf'; + extra_configure_flags='--disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@'; missing= pdf; missing= html; missing= info; diff --git a/Makefile.in b/Makefile.in index f71f515b7aa1..d65b4b2994a7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -19856,7 +19856,7 @@ configure-gettext: s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(HOST_SUBDIR)/gettext/Makefile || exit 0; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ - $(HOST_EXPORTS) \ + $(HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring in $(HOST_SUBDIR)/gettext; \ cd "$(HOST_SUBDIR)/gettext" || exit 1; \ case $(srcdir) in \ @@ -19869,7 +19869,7 @@ configure-gettext: $$s/$$module_srcdir/configure \ --srcdir=$${topdir}/$$module_srcdir \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ - --target=${target_alias} --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf \ + --target=${target_alias} --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ \ || exit 1 @endif gettext @@ -19889,7 +19889,7 @@ configure-stage1-gettext: $(HOST_EXPORTS) \ CFLAGS="$(STAGE1_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE1_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage 1 in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -19905,7 +19905,7 @@ configure-stage1-gettext: --target=${target_alias} \ \ $(STAGE1_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stage2-gettext maybe-configure-stage2-gettext @@ -19923,7 +19923,7 @@ configure-stage2-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGE2_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE2_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage 2 in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -19939,7 +19939,7 @@ configure-stage2-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGE2_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stage3-gettext maybe-configure-stage3-gettext @@ -19957,7 +19957,7 @@ configure-stage3-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGE3_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE3_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage 3 in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -19973,7 +19973,7 @@ configure-stage3-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGE3_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stage4-gettext maybe-configure-stage4-gettext @@ -19991,7 +19991,7 @@ configure-stage4-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGE4_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE4_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage 4 in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -20007,7 +20007,7 @@ configure-stage4-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGE4_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stageprofile-gettext maybe-configure-stageprofile-gettext @@ -20025,7 +20025,7 @@ configure-stageprofile-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGEprofile_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEprofile_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage profile in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -20041,7 +20041,7 @@ configure-stageprofile-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEprofile_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stagetrain-gettext maybe-configure-stagetrain-gettext @@ -20059,7 +20059,7 @@ configure-stagetrain-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGEtrain_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEtrain_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGEtrain_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGEtrain_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage train in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -20075,7 +20075,7 @@ configure-stagetrain-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEtrain_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stagefeedback-gettext maybe-configure-stagefeedback-gettext @@ -20093,7 +20093,7 @@ configure-stagefeedback-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGEfeedback_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEfeedback_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage feedback in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -20109,7 +20109,7 @@ configure-stagefeedback-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEfeedback_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stageautoprofile-gettext maybe-configure-stageautoprofile-gettext @@ -20127,7 +20127,7 @@ configure-stageautoprofile-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGEautoprofile_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEautoprofile_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGEautoprofile_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGEautoprofile_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage autoprofile in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -20143,7 +20143,7 @@ configure-stageautoprofile-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEautoprofile_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap .PHONY: configure-stageautofeedback-gettext maybe-configure-stageautofeedback-gettext @@ -20161,7 +20161,7 @@ configure-stageautofeedback-gettext: $(POSTSTAGE1_HOST_EXPORTS) \ CFLAGS="$(STAGEautofeedback_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEautofeedback_CXXFLAGS)"; export CXXFLAGS; \ - LIBCFLAGS="$(STAGEautofeedback_CFLAGS)"; export LIBCFLAGS; \ + LIBCFLAGS="$(STAGEautofeedback_CFLAGS)"; export LIBCFLAGS; LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ echo Configuring stage autofeedback in $(HOST_SUBDIR)/gettext; \ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext; \ cd $(HOST_SUBDIR)/gettext || exit 1; \ @@ -20177,7 +20177,7 @@ configure-stageautofeedback-gettext: --target=${target_alias} \ --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEautofeedback_CONFIGURE_FLAGS) \ - --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf + --disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf CPPFLAGS="@LIBICONV_EXTRA_CPPFLAGS@ $$CPPFLAGS" @LIBICONV_CVS@ @endif gettext-bootstrap @@ -20195,7 +20195,7 @@ maybe-all-gettext: all-gettext all-gettext: configure-gettext @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(HOST_EXPORTS) \ + $(HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ (cd $(HOST_SUBDIR)/gettext && \ $(MAKE) $(BASE_FLAGS_TO_PASS) $(STAGE1_FLAGS_TO_PASS) \ $(TARGET-gettext)) @@ -20216,7 +20216,7 @@ all-stage1-gettext: configure-stage1-gettext @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGE1_TFLAGS)"; \ - $(HOST_EXPORTS) \ + $(HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20261,7 +20261,7 @@ all-stage2-gettext: configure-stage2-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGE2_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20304,7 +20304,7 @@ all-stage3-gettext: configure-stage3-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGE3_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20347,7 +20347,7 @@ all-stage4-gettext: configure-stage4-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGE4_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20390,7 +20390,7 @@ all-stageprofile-gettext: configure-stageprofile-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGEprofile_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20433,7 +20433,7 @@ all-stagetrain-gettext: configure-stagetrain-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGEtrain_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20476,7 +20476,7 @@ all-stagefeedback-gettext: configure-stagefeedback-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGEfeedback_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20519,7 +20519,7 @@ all-stageautoprofile-gettext: configure-stageautoprofile-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGEautoprofile_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ $$s/gcc/config/i386/$(AUTO_PROFILE) \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ @@ -20562,7 +20562,7 @@ all-stageautofeedback-gettext: configure-stageautofeedback-gettext s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ TFLAGS="$(STAGEautofeedback_TFLAGS)"; \ $(HOST_EXPORTS) \ - $(POSTSTAGE1_HOST_EXPORTS) \ + $(POSTSTAGE1_HOST_EXPORTS) LDFLAGS="@LTLIBICONV_SIBLING@ $$LDFLAGS"; export LDFLAGS; \ cd $(HOST_SUBDIR)/gettext && \ \ $(MAKE) $(BASE_FLAGS_TO_PASS) \ diff --git a/config/iconv.m4 b/config/iconv.m4 index ff5d52611397..cb07797ff218 100644 --- a/config/iconv.m4 +++ b/config/iconv.m4 @@ -6,6 +6,7 @@ dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. +dnl with modifications to support building with in-tree libiconv AC_PREREQ([2.64]) @@ -34,16 +35,15 @@ AC_DEFUN([AM_ICONV_LINK], dnl accordingly. AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) - dnl Add $INCICONV to CPPFLAGS before performing the following checks, - dnl because if the user has installed libiconv and not disabled its use - dnl via --without-libiconv-prefix, he wants to use it. The first - dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed. - am_save_CPPFLAGS="$CPPFLAGS" - AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) - AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [ am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no + dnl Add $INCICONV to CPPFLAGS before performing the following checks, + dnl because if the user has installed libiconv and not disabled its use + dnl via --without-libiconv-prefix, he wants to use it. The first + dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed. + am_save_CPPFLAGS="$CPPFLAGS" + AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ @@ -54,8 +54,39 @@ AC_DEFUN([AM_ICONV_LINK], iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);]])], [am_cv_func_iconv=yes]) + CPPFLAGS="$am_save_CPPFLAGS" + + if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then + for _libs in .libs _libs; do + am_save_CPPFLAGS="$CPPFLAGS" + am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS -I../libiconv/include" + LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a" + AC_TRY_LINK([#include +#include ], + [iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd);], + INCICONV="-I../libiconv/include" + LIBICONV='${top_builddir}'/../libiconv/lib/"$_libs"/libiconv.a + LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la + am_cv_lib_iconv=yes + # The setup above only works if expanded at make time, so we need to + # suppress various configure-time tests. + am_cv_func_iconv_works=yes + am_cv_func_iconv=yes) + CPPFLAGS="$am_save_CPPFLAGS" + LIBS="$am_save_LIBS" + if test "$am_cv_func_iconv" = "yes"; then + break + fi + done + fi + if test "$am_cv_func_iconv" != yes; then + am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" AC_LINK_IFELSE( [AC_LANG_PROGRAM( @@ -68,6 +99,7 @@ AC_DEFUN([AM_ICONV_LINK], iconv_close(cd);]])], [am_cv_lib_iconv=yes] [am_cv_func_iconv=yes]) + CPPFLAGS="$am_save_CPPFLAGS" LIBS="$am_save_LIBS" fi ]) @@ -219,12 +251,10 @@ AC_DEFUN([AM_ICONV_LINK], [Define if you have the iconv() function and it works.]) fi if test "$am_cv_lib_iconv" = yes; then + AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) AC_MSG_CHECKING([how to link with libiconv]) AC_MSG_RESULT([$LIBICONV]) else - dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV - dnl either. - CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi diff --git a/configure b/configure index 02b435c1163b..39771554ee27 100755 --- a/configure +++ b/configure @@ -679,6 +679,10 @@ RPATH_ENVVAR target_configargs host_configargs build_configargs +LIBICONV_CVS +LTLIBICONV_SIBLING +LIBICONV_SIBLING +LIBICONV_EXTRA_CPPFLAGS BUILD_CONFIG LDFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET @@ -9978,6 +9982,27 @@ case " ${configdirs} " in ;; esac +# Check whether we should inject an in-tree libiconv into our subconfigures. +LIBICONV_EXTRA_CPPFLAGS= +LIBICONV_SIBLING= +LTLIBICONV_SIBLING= +LIBICONV_CVS= +case " ${configdirs} " in + *\ libiconv\ *) + # For out-of-tree dependencies that might use libiconv (e.g. gettext). + # https://lists.gnu.org/archive/html/bug-gettext/2023-11/msg00056.html + LIBICONV_EXTRA_CPPFLAGS="-I`${PWDCMD-pwd}`/\$(HOST_SUBDIR)/libiconv/include" + LIBICONV_SIBLING="`${PWDCMD-pwd}`/\$(HOST_SUBDIR)/libiconv/lib/.libs/libiconv.a" + LTLIBICONV_SIBLING="`${PWDCMD-pwd}`/\$(HOST_SUBDIR)/libiconv/lib/.libs/libiconv.la" + # Cache vars used for tricking iconv.m4. + LIBICONV_CVS="am_cv_func_iconv=yes am_cv_lib_iconv=no am_cv_func_iconv_works=yes" + ;; +esac + + + + + # Strip out unwanted targets. # While at that, we remove Makefiles if we were started for recursive diff --git a/configure.ac b/configure.ac index 1a19c07a27b8..991aa8eb441c 100644 --- a/configure.ac +++ b/configure.ac @@ -3097,6 +3097,27 @@ case " ${configdirs} " in ;; esac +# Check whether we should inject an in-tree libiconv into our subconfigures. +LIBICONV_EXTRA_CPPFLAGS= +LIBICONV_SIBLING= +LTLIBICONV_SIBLING= +LIBICONV_CVS= +case " ${configdirs} " in + *\ libiconv\ *) + # For out-of-tree dependencies that might use libiconv (e.g. gettext). + # https://lists.gnu.org/archive/html/bug-gettext/2023-11/msg00056.html + LIBICONV_EXTRA_CPPFLAGS="-I`${PWDCMD-pwd}`/\$(HOST_SUBDIR)/libiconv/include" + LIBICONV_SIBLING="`${PWDCMD-pwd}`/\$(HOST_SUBDIR)/libiconv/lib/.libs/libiconv.a" + LTLIBICONV_SIBLING="`${PWDCMD-pwd}`/\$(HOST_SUBDIR)/libiconv/lib/.libs/libiconv.la" + # Cache vars used for tricking iconv.m4. + LIBICONV_CVS="am_cv_func_iconv=yes am_cv_lib_iconv=no am_cv_func_iconv_works=yes" + ;; +esac +AC_SUBST([LIBICONV_EXTRA_CPPFLAGS]) +AC_SUBST([LIBICONV_SIBLING]) +AC_SUBST([LTLIBICONV_SIBLING]) +AC_SUBST([LIBICONV_CVS]) + # Strip out unwanted targets. # While at that, we remove Makefiles if we were started for recursive diff --git a/gcc/configure b/gcc/configure index 266ab8f84b2a..40fadb13737e 100755 --- a/gcc/configure +++ b/gcc/configure @@ -11792,31 +11792,6 @@ fi - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 $as_echo_n "checking for iconv... " >&6; } if ${am_cv_func_iconv+:} false; then : @@ -11825,6 +11800,30 @@ else am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no + am_save_CPPFLAGS="$CPPFLAGS" + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -11846,8 +11845,52 @@ if ac_fn_cxx_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + + if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then + for _libs in .libs _libs; do + am_save_CPPFLAGS="$CPPFLAGS" + am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS -I../libiconv/include" + LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + INCICONV="-I../libiconv/include" + LIBICONV='${top_builddir}'/../libiconv/lib/"$_libs"/libiconv.a + LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la + am_cv_lib_iconv=yes + # The setup above only works if expanded at make time, so we need to + # suppress various configure-time tests. + am_cv_func_iconv_works=yes + am_cv_func_iconv=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + LIBS="$am_save_LIBS" + if test "$am_cv_func_iconv" = "yes"; then + break + fi + done + fi + if test "$am_cv_func_iconv" != yes; then + am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -11871,6 +11914,7 @@ if ac_fn_cxx_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" LIBS="$am_save_LIBS" fi @@ -12047,12 +12091,34 @@ $as_echo "#define HAVE_ICONV 1" >>confdefs.h fi if test "$am_cv_lib_iconv" = yes; then + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 $as_echo_n "checking how to link with libiconv... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 $as_echo "$LIBICONV" >&6; } else - CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi @@ -14013,31 +14079,6 @@ $as_echo "$ac_res" >&6; } - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 $as_echo_n "checking for iconv... " >&6; } if ${am_cv_func_iconv+:} false; then : @@ -14046,6 +14087,30 @@ else am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no + am_save_CPPFLAGS="$CPPFLAGS" + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -14067,8 +14132,52 @@ if ac_fn_cxx_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + + if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then + for _libs in .libs _libs; do + am_save_CPPFLAGS="$CPPFLAGS" + am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS -I../libiconv/include" + LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + INCICONV="-I../libiconv/include" + LIBICONV='${top_builddir}'/../libiconv/lib/"$_libs"/libiconv.a + LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la + am_cv_lib_iconv=yes + # The setup above only works if expanded at make time, so we need to + # suppress various configure-time tests. + am_cv_func_iconv_works=yes + am_cv_func_iconv=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + LIBS="$am_save_LIBS" + if test "$am_cv_func_iconv" = "yes"; then + break + fi + done + fi + if test "$am_cv_func_iconv" != yes; then + am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -14092,6 +14201,7 @@ if ac_fn_cxx_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" LIBS="$am_save_LIBS" fi @@ -14268,12 +14378,34 @@ $as_echo "#define HAVE_ICONV 1" >>confdefs.h fi if test "$am_cv_lib_iconv" = yes; then + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 $as_echo_n "checking how to link with libiconv... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 $as_echo "$LIBICONV" >&6; } else - CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi @@ -21569,7 +21701,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 21572 "configure" +#line 21704 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -21675,7 +21807,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 21678 "configure" +#line 21810 "configure" #include "confdefs.h" #if HAVE_DLFCN_H diff --git a/libcpp/configure b/libcpp/configure index 8a38c0546e3e..e704853b768a 100755 --- a/libcpp/configure +++ b/libcpp/configure @@ -7654,31 +7654,6 @@ $as_echo "$ac_res" >&6; } - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 $as_echo_n "checking for iconv... " >&6; } if ${am_cv_func_iconv+:} false; then : @@ -7687,6 +7662,30 @@ else am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no + am_save_CPPFLAGS="$CPPFLAGS" + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -7708,8 +7707,52 @@ if ac_fn_c_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + + if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then + for _libs in .libs _libs; do + am_save_CPPFLAGS="$CPPFLAGS" + am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS -I../libiconv/include" + LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + INCICONV="-I../libiconv/include" + LIBICONV='${top_builddir}'/../libiconv/lib/"$_libs"/libiconv.a + LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la + am_cv_lib_iconv=yes + # The setup above only works if expanded at make time, so we need to + # suppress various configure-time tests. + am_cv_func_iconv_works=yes + am_cv_func_iconv=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + LIBS="$am_save_LIBS" + if test "$am_cv_func_iconv" = "yes"; then + break + fi + done + fi + if test "$am_cv_func_iconv" != yes; then + am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -7733,6 +7776,7 @@ if ac_fn_c_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" LIBS="$am_save_LIBS" fi @@ -7909,12 +7953,34 @@ $as_echo "#define HAVE_ICONV 1" >>confdefs.h fi if test "$am_cv_lib_iconv" = yes; then + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 $as_echo_n "checking how to link with libiconv... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 $as_echo "$LIBICONV" >&6; } else - CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi @@ -8694,7 +8760,15 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu - am_save_CPPFLAGS="$CPPFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 +$as_echo_n "checking for iconv... " >&6; } +if ${am_cv_func_iconv+:} false; then : + $as_echo_n "(cached) " >&6 +else + + am_cv_func_iconv="no, consider installing GNU libiconv" + am_cv_lib_iconv=no + am_save_CPPFLAGS="$CPPFLAGS" for element in $INCICONV; do haveit= @@ -8718,15 +8792,6 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu fi done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 -$as_echo_n "checking for iconv... " >&6; } -if ${am_cv_func_iconv+:} false; then : - $as_echo_n "(cached) " >&6 -else - - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8748,8 +8813,52 @@ if ac_fn_cxx_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + + if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then + for _libs in .libs _libs; do + am_save_CPPFLAGS="$CPPFLAGS" + am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS -I../libiconv/include" + LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + INCICONV="-I../libiconv/include" + LIBICONV='${top_builddir}'/../libiconv/lib/"$_libs"/libiconv.a + LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la + am_cv_lib_iconv=yes + # The setup above only works if expanded at make time, so we need to + # suppress various configure-time tests. + am_cv_func_iconv_works=yes + am_cv_func_iconv=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + LIBS="$am_save_LIBS" + if test "$am_cv_func_iconv" = "yes"; then + break + fi + done + fi + if test "$am_cv_func_iconv" != yes; then + am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8773,6 +8882,7 @@ if ac_fn_cxx_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" LIBS="$am_save_LIBS" fi @@ -8949,12 +9059,34 @@ $as_echo "#define HAVE_ICONV 1" >>confdefs.h fi if test "$am_cv_lib_iconv" = yes; then + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 $as_echo_n "checking how to link with libiconv... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 $as_echo "$LIBICONV" >&6; } else - CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 21abaeb07788..0d72b95c0ab2 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -26968,31 +26968,6 @@ fi - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 $as_echo_n "checking for iconv... " >&6; } if ${am_cv_func_iconv+:} false; then : @@ -27001,6 +26976,30 @@ else am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no + am_save_CPPFLAGS="$CPPFLAGS" + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + if test x$gcc_no_link = xyes; then as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5 fi @@ -27025,8 +27024,55 @@ if ac_fn_c_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + + if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then + for _libs in .libs _libs; do + am_save_CPPFLAGS="$CPPFLAGS" + am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS -I../libiconv/include" + LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a" + if test x$gcc_no_link = xyes; then + as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5 +fi +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + INCICONV="-I../libiconv/include" + LIBICONV='${top_builddir}'/../libiconv/lib/"$_libs"/libiconv.a + LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la + am_cv_lib_iconv=yes + # The setup above only works if expanded at make time, so we need to + # suppress various configure-time tests. + am_cv_func_iconv_works=yes + am_cv_func_iconv=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" + LIBS="$am_save_LIBS" + if test "$am_cv_func_iconv" = "yes"; then + break + fi + done + fi + if test "$am_cv_func_iconv" != yes; then + am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" if test x$gcc_no_link = xyes; then as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5 @@ -27053,6 +27099,7 @@ if ac_fn_c_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$am_save_CPPFLAGS" LIBS="$am_save_LIBS" fi @@ -27229,12 +27276,34 @@ $as_echo "#define HAVE_ICONV 1" >>confdefs.h fi if test "$am_cv_lib_iconv" = yes; then + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 $as_echo_n "checking how to link with libiconv... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 $as_echo "$LIBICONV" >&6; } else - CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi -- 2.44.0