From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1521) id E1DBF3851C01; Wed, 26 Jan 2022 09:19:29 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E1DBF3851C01 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Michael Frysinger To: newlib-cvs@sourceware.org Subject: [newlib-cygwin] newlib: switch to multilib.am X-Act-Checkin: newlib-cygwin X-Git-Author: Mike Frysinger X-Git-Refname: refs/heads/master X-Git-Oldrev: 08a55a233d8a90914270a898360f806f7f8f2bdd X-Git-Newrev: ee3ed2b65e28fa5cd9c23e8361cae701973129cf Message-Id: <20220126091929.E1DBF3851C01@sourceware.org> Date: Wed, 26 Jan 2022 09:19:29 +0000 (GMT) X-BeenThere: newlib-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Newlib GIT logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Jan 2022 09:19:30 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3Dee3ed2b65e2= 8fa5cd9c23e8361cae701973129cf commit ee3ed2b65e28fa5cd9c23e8361cae701973129cf Author: Mike Frysinger Date: Sun Jan 23 20:04:59 2022 -0500 newlib: switch to multilib.am =20 We use the common config-ml.in for configure, so switch the makefile over to the common multilib.am. It's almost exactly the same code, but there are two differences: * Common code hooks install-exec-local for install-multi, but newlib doesn't currently install any executables, so that doesn't fire. Newlib already has install-data-local that inlined install-multi, so switch that to the common install-multi. * Common code doesn't provide a check-multi at all. Keep ours for now. Some day common code might get it. Or not. Who knows. Diff: --- newlib/Makefile.am | 36 +++------------------ newlib/Makefile.in | 91 ++++++++++++++++++++++++++++----------------------= ---- 2 files changed, 53 insertions(+), 74 deletions(-) diff --git a/newlib/Makefile.am b/newlib/Makefile.am index 6a28215d3..6edc9abc2 100644 --- a/newlib/Makefile.am +++ b/newlib/Makefile.am @@ -7,14 +7,6 @@ ACLOCAL_AMFLAGS =3D -I . -I .. -I ../config PHONY =3D noinst_DATA =3D =20 -# Multilib support variables. -MULTISRCTOP =3D -MULTIBUILDTOP =3D -MULTIDIRS =3D -MULTISUBDIR =3D -MULTIDO =3D true -MULTICLEAN =3D true - LIBTOOL_VERSION_INFO =3D 0:0:0 =20 # The newlib hardware floating-point routines have been disabled due to @@ -312,13 +304,15 @@ stmp-targ-include: config.status =20 CLEANFILES =3D stmp-targ-include =20 -install-data-local: install-toollibLIBRARIES +## We hook install-multi because this Makefile doesn't have any exec targe= ts, +## only data targets. If that ever changes, this should be removed and the +## install-exec-local in ../multilib.am will kick in. +install-data-local: install-toollibLIBRARIES install-multi if USE_LIBTOOL else rm -f $(DESTDIR)$(toollibdir)/libg.a ln $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a >/dev/nu= ll 2>/dev/null || cp $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)= /libg.a endif - $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dinstall multi-do # $(MAKE) -if [ -z "$(MULTISUBDIR)" ]; then \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include; \ for i in $(srcdir)/libc/include/*.h; do \ @@ -442,30 +436,10 @@ install-man: =20 CONFIG_STATUS_DEPENDENCIES =3D $(newlib_basedir)/configure.host =20 -# Multilib support. -PHONY +=3D all-multi check-multi mostlyclean-multi clean-multi distclean-m= ulti \ - maintainer-clean-multi - -all-recursive: all-multi -check-recursive: check-multi -mostlyclean-recursive: mostlyclean-multi -clean-recursive: clean-multi -distclean-recursive: distclean-multi -maintainer-clean-recursive: maintainer-clean-multi +include ../multilib.am =20 -# The $(MAKE) comments below are to enable parallel building. -all-multi: - $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dall multi-do # $(MAKE) check-multi: $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dcheck multi-do # $(MAKE) -mostlyclean-multi: - $(MULTICLEAN) $(AM_MAKEFLAGS) DO=3Dmostlyclean multi-clean # $(MAKE) -clean-multi: - $(MULTICLEAN) $(AM_MAKEFLAGS) DO=3Dclean multi-clean # $(MAKE) -distclean-multi: - $(MULTICLEAN) $(AM_MAKEFLAGS) DO=3Ddistclean multi-clean # $(MAKE) -maintainer-clean-multi: - $(MULTICLEAN) $(AM_MAKEFLAGS) DO=3Dmaintainer-clean multi-clean # $(MAKE) =20 MAKEOVERRIDES=3D =20 diff --git a/newlib/Makefile.in b/newlib/Makefile.in index a365218a5..2ea83d858 100644 --- a/newlib/Makefile.in +++ b/newlib/Makefile.in @@ -416,20 +416,9 @@ AUTOMAKE_OPTIONS =3D dejagnu ACLOCAL_AMFLAGS =3D -I . -I .. -I ../config =20 # Variables that will accumulate in subdirs. - -# Multilib support. -PHONY =3D all-multi check-multi mostlyclean-multi clean-multi \ - distclean-multi maintainer-clean-multi $(am__append_4) +PHONY =3D $(am__append_4) noinst_DATA =3D stmp-targ-include $(am__append_1) $(am__append_2) \ $(am__append_3) - -# Multilib support variables. -MULTISRCTOP =3D=20 -MULTIBUILDTOP =3D=20 -MULTIDIRS =3D=20 -MULTISUBDIR =3D=20 -MULTIDO =3D true -MULTICLEAN =3D true LIBTOOL_VERSION_INFO =3D 0:0:0 @NEWLIB_HW_FP_FALSE@MATHDIR =3D math =20 @@ -545,6 +534,12 @@ libc_la_LDFLAGS =3D -version-info $(LIBTOOL_VERSION_IN= FO) -release newlib -no-unde @USE_LIBTOOL_TRUE@libc_la_DEPENDENCIES =3D libc-libtool-objectlist CLEANFILES =3D stmp-targ-include CONFIG_STATUS_DEPENDENCIES =3D $(newlib_basedir)/configure.host +MULTISRCTOP =3D=20 +MULTIBUILDTOP =3D=20 +MULTIDIRS =3D=20 +MULTISUBDIR =3D=20 +MULTIDO =3D true +MULTICLEAN =3D true MAKEOVERRIDES =3D=20 =20 # dejagnu support @@ -557,7 +552,7 @@ all: newlib.h _newlib_version.h .SUFFIXES: .c .lo .o .obj am--refresh: Makefile @: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcd= ir)/doc/local.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcd= ir)/../multilib.am $(srcdir)/doc/local.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -579,7 +574,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.= status echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfil= es_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_mayb= e);; \ esac; -$(srcdir)/doc/local.mk $(am__empty): +$(srcdir)/../multilib.am $(srcdir)/doc/local.mk $(am__empty): =20 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEP= ENDENCIES) $(SHELL) ./config.status --recheck @@ -855,7 +850,7 @@ check-am: all-am $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU check: check-recursive all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(DATA) newlib.h \ - _newlib_version.h + _newlib_version.h all-local installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)" "$(DESTDIR= )$(toollibdir)"; do \ @@ -902,7 +897,7 @@ distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-DEJAGNU distclean-compile \ distclean-generic distclean-hdr distclean-libtool \ - distclean-tags + distclean-local distclean-tags =20 dvi: dvi-recursive =20 @@ -923,7 +918,7 @@ install-dvi: install-dvi-recursive =20 install-dvi-am: =20 -install-exec-am: +install-exec-am: install-exec-local =20 install-html: install-html-recursive =20 @@ -947,12 +942,13 @@ maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic +maintainer-clean-am: distclean-am maintainer-clean-generic \ + maintainer-clean-local =20 mostlyclean: mostlyclean-recursive =20 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool + mostlyclean-libtool mostlyclean-local =20 pdf: pdf-recursive =20 @@ -967,24 +963,25 @@ uninstall-am: uninstall-toollibDATA uninstall-toollib= LIBRARIES \ =20 .MAKE: $(am__recursive_targets) all check-am install-am install-strip =20 -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \ am--refresh check check-DEJAGNU check-am clean clean-cscope \ clean-generic clean-libtool clean-local clean-toollibLIBRARIES \ clean-toollibLTLIBRARIES cscope cscopelist-am ctags ctags-am \ distclean distclean-DEJAGNU distclean-compile \ distclean-generic distclean-hdr distclean-libtool \ - distclean-tags dvi dvi-am html html-am info info-am install \ - install-am install-data install-data-am install-data-local \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-toollibDATA \ - install-toollibLIBRARIES install-toollibLTLIBRARIES \ - installcheck installcheck-am installdirs installdirs-am \ - maintainer-clean maintainer-clean-generic mostlyclean \ + distclean-local distclean-tags dvi dvi-am html html-am info \ + info-am install install-am install-data install-data-am \ + install-data-local install-dvi install-dvi-am install-exec \ + install-exec-am install-exec-local install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip install-toollibDATA install-toollibLIBRARIES \ + install-toollibLTLIBRARIES installcheck installcheck-am \ + installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic maintainer-clean-local mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ - uninstall-toollibDATA uninstall-toollibLIBRARIES \ + mostlyclean-local pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am uninstall-toollibDATA uninstall-toollibLIBRARIES \ uninstall-toollibLTLIBRARIES =20 .PRECIOUS: Makefile @@ -1145,10 +1142,9 @@ stmp-targ-include: config.status $(MAKE) targ-include/newlib.h touch $@ =20 -install-data-local: install-toollibLIBRARIES +install-data-local: install-toollibLIBRARIES install-multi @USE_LIBTOOL_FALSE@ rm -f $(DESTDIR)$(toollibdir)/libg.a @USE_LIBTOOL_FALSE@ ln $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibd= ir)/libg.a >/dev/null 2>/dev/null || cp $(DESTDIR)$(toollibdir)/libc.a $(DE= STDIR)$(toollibdir)/libg.a - $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dinstall multi-do # $(MAKE) -if [ -z "$(MULTISUBDIR)" ]; then \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include; \ for i in $(srcdir)/libc/include/*.h; do \ @@ -1270,18 +1266,13 @@ install-man: fi; \ done =20 -all-recursive: all-multi -check-recursive: check-multi -mostlyclean-recursive: mostlyclean-multi -clean-recursive: clean-multi -distclean-recursive: distclean-multi -maintainer-clean-recursive: maintainer-clean-multi - -# The $(MAKE) comments below are to enable parallel building. +# GNU Make needs to see an explicit $(MAKE) variable in the command it +# runs to enable its job server during parallel builds. Hence the +# comments below. all-multi: $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dall multi-do # $(MAKE) -check-multi: - $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dcheck multi-do # $(MAKE) +install-multi: + $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dinstall multi-do # $(MAKE) mostlyclean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=3Dmostlyclean multi-clean # $(MAKE) clean-multi: @@ -1291,6 +1282,20 @@ distclean-multi: maintainer-clean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=3Dmaintainer-clean multi-clean # $(MAKE) =20 +.MAKE .PHONY: all-multi clean-multi distclean-multi install-am \ + install-multi maintainer-clean-multi mostlyclean-multi + +install-exec-local: install-multi + +all-local: all-multi +mostlyclean-local: mostlyclean-multi +clean-local: clean-multi +distclean-local: distclean-multi +maintainer-clean-local: maintainer-clean-multi + +check-multi: + $(MULTIDO) $(AM_MAKEFLAGS) DO=3Dcheck multi-do # $(MAKE) + site.exp: Makefile @echo 'Making a new site.exp file...' @test ! -f site.bak || rm -f site.bak