From patchwork Sun Oct 15 17:17:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mike Frysinger X-Patchwork-Id: 77809 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A5381385842E for ; Sun, 15 Oct 2023 17:17:49 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) by sourceware.org (Postfix) with ESMTP id EBE0C3858D37 for ; Sun, 15 Oct 2023 17:17:35 +0000 (GMT) ARC-Filter: OpenARC Filter v1.0.0 sourceware.org EBE0C3858D37 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2001:470:ea4a:1:5054:ff:fec7:86e4 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1697390257; cv=none; b=RQaFXn/IGfBLKWuSF99F52nevI1R/oDMALPJWW+TdrUxg7XrpCcIJEDDmIMMb1xJQIaibEjGII8/uqfSh0ofP6Jtl5YyePH+U5j2dkSW80qX7Az4meFFYDZgVgmN0wLefFlVIlWh1dcxaE95VxFaYO1t9+ePHQMV/BkfBkOWmus= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1697390257; c=relaxed/simple; bh=nqecgAfYfBcfLRfXvOMr8WeKbzvZXQyb3b6JUhnhHmo=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=jAFx7a/7Jjf4ZQtjno1RiqEIX8RvRBdyLhcrFYCQX7sVdzTXWOrDxMM5KNk1Sl/io8zU8aCTEYYVIQOZXTXnNdfH7EmL+dvnrXwC+RMV1aSthTl6lREQ/lMVe/GlQ7eD1FoxD2t31Q5gHuaV5oqwJ0V6QFTpCNxJOeboqVvIXlg= ARC-Authentication-Results: i=1; server2.sourceware.org DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org EBE0C3858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gentoo.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gentoo.org Received: by smtp.gentoo.org (Postfix, from userid 559) id 4C14E335CCD; Sun, 15 Oct 2023 17:17:35 +0000 (UTC) From: Mike Frysinger To: gdb-patches@sourceware.org Subject: [PATCH 2/3] gnulib: enable a --build setup for sim [PR sim/30882] Date: Sun, 15 Oct 2023 23:02:27 +0545 Message-ID: <20231015171728.30138-2-vapier@gentoo.org> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20231015171728.30138-1-vapier@gentoo.org> References: <20231015171728.30138-1-vapier@gentoo.org> MIME-Version: 1.0 X-Spam-Status: No, score=-11.1 required=5.0 tests=BAYES_00, GIT_PATCH_0, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org The sim tree has some build-time programs for generating source files that are a bit complicated and expect a POSIX-compatible system. Use the existing gnulib project to provide missing APIs. --- Makefile.def | 2 ++ Makefile.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++ configure | 5 +++++ configure.ac | 5 +++++ 4 files changed, 71 insertions(+) diff --git a/Makefile.def b/Makefile.def index 15c068e4ac40..3e477fe073e0 100644 --- a/Makefile.def +++ b/Makefile.def @@ -27,6 +27,7 @@ AutoGen definitions Makefile.tpl; build_modules= { module= libiberty; }; build_modules= { module= bison; }; build_modules= { module= flex; }; +build_modules= { module= gnulib; }; build_modules= { module= m4; }; build_modules= { module= texinfo; }; build_modules= { module= fixincludes; }; @@ -585,6 +586,7 @@ dependencies = { module=install-strip-sid; on=install-strip-tcl; }; dependencies = { module=install-sid; on=install-tk; }; dependencies = { module=install-strip-sid; on=install-strip-tk; }; +dependencies = { module=configure-sim; on=all-build-gnulib; }; dependencies = { module=configure-sim; on=all-gnulib; }; dependencies = { module=configure-sim; on=configure-intl; }; dependencies = { module=all-sim; on=all-intl; }; diff --git a/Makefile.in b/Makefile.in index efe3565a6e5e..4f58b288a9c0 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1199,6 +1199,7 @@ all: all-build: maybe-all-build-libiberty all-build: maybe-all-build-bison all-build: maybe-all-build-flex +all-build: maybe-all-build-gnulib all-build: maybe-all-build-m4 all-build: maybe-all-build-texinfo all-build: maybe-all-build-fixincludes @@ -3300,6 +3301,63 @@ all-build-flex: configure-build-flex +.PHONY: configure-build-gnulib maybe-configure-build-gnulib +maybe-configure-build-gnulib: +@if gcc-bootstrap +configure-build-gnulib: stage_current +@endif gcc-bootstrap +@if build-gnulib +maybe-configure-build-gnulib: configure-build-gnulib +configure-build-gnulib: + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + test ! -f $(BUILD_SUBDIR)/gnulib/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/gnulib; \ + $(BUILD_EXPORTS) \ + echo Configuring in $(BUILD_SUBDIR)/gnulib; \ + cd "$(BUILD_SUBDIR)/gnulib" || exit 1; \ + case $(srcdir) in \ + /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ + *) topdir=`echo $(BUILD_SUBDIR)/gnulib/ | \ + sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \ + esac; \ + module_srcdir=gnulib; \ + rm -f no-such-file || : ; \ + CONFIG_SITE=no-such-file $(SHELL) \ + $$s/$$module_srcdir/configure \ + --srcdir=$${topdir}/$$module_srcdir \ + $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \ + --target=${target_alias} \ + || exit 1 +@endif build-gnulib + + + + + +.PHONY: all-build-gnulib maybe-all-build-gnulib +maybe-all-build-gnulib: +@if gcc-bootstrap +all-build-gnulib: stage_current +@endif gcc-bootstrap +@if build-gnulib +TARGET-build-gnulib=all +maybe-all-build-gnulib: all-build-gnulib +all-build-gnulib: configure-build-gnulib + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(BUILD_EXPORTS) \ + (cd $(BUILD_SUBDIR)/gnulib && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \ + $(TARGET-build-gnulib)) +@endif build-gnulib + + + + + .PHONY: configure-build-m4 maybe-configure-build-m4 maybe-configure-build-m4: @if gcc-bootstrap @@ -66801,6 +66859,7 @@ install-sid: maybe-install-tcl install-strip-sid: maybe-install-strip-tcl install-sid: maybe-install-tk install-strip-sid: maybe-install-strip-tk +configure-sim: maybe-all-build-gnulib configure-sim: maybe-all-gnulib configure-sim: maybe-all-readline all-fastjar: maybe-all-build-texinfo diff --git a/configure.ac b/configure.ac index 01cfd017273a..23290ddaa6fc 100644 --- a/configure.ac +++ b/configure.ac @@ -3076,6 +3076,11 @@ case " ${configdirs} " in configdirs="${configdirs} gnulib" ;; esac +case " ${configdirs} " in + *\ sim\ *) + build_configdirs="${build_configdirs} gnulib" + ;; +esac # Strip out unwanted targets.