]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
gnulib: enable a --build setup for sim [PR sim/30882]
authorMike Frysinger <vapier@gentoo.org>
Sun, 15 Oct 2023 16:45:32 +0000 (22:30 +0545)
committerMike Frysinger <vapier@gentoo.org>
Mon, 1 Jan 2024 23:23:28 +0000 (18:23 -0500)
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
Makefile.in
configure
configure.ac

index 662e50fdc1812082d58fd8976907c743e10dd9c1..719163f486b240eb61b22795b75200ade673b880 100644 (file)
@@ -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; };
@@ -600,6 +601,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-gettext; };
 dependencies = { module=all-sim; on=all-gettext; };
index 48320bb549e976adc677dc982b6e0a122a9255c4..7d3c73d8d20a264874fcc4a7d79f998f32d5e974 100644 (file)
@@ -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
@@ -66659,6 +66717,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
index be73a3daee9037865b3120c03b5f42a14e28a5fa..5dcfd0b9377e5e72d46cac02ffe3e5b43d2ad69f 100755 (executable)
--- a/configure
+++ b/configure
@@ -9957,6 +9957,11 @@ case " ${configdirs} " in
     configdirs="${configdirs} gnulib"
     ;;
 esac
+case " ${configdirs} " in
+  *\ sim\ *)
+    build_configdirs="${build_configdirs} gnulib"
+    ;;
+esac
 
 # Strip out unwanted targets.
 
index 76d36e7b35836a060baeba31944d2835e776f34a..ee0415856e6b455029d8778ca1a29402330106b9 100644 (file)
@@ -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.