This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[Ada][PATCH] More libada/Makefile.in factoring before multilib
- From: Laurent GUERBY <laurent at guerby dot net>
- To: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Cc: Arnaud Charlet <charlet at adacore dot com>, Paolo Bonzini <bonzini at gnu dot org>
- Date: Fri, 29 Aug 2008 15:40:37 +0200
- Subject: [Ada][PATCH] More libada/Makefile.in factoring before multilib
The following patch add a few common definitions and one target (unused
for now) and factors duplicate machinery in libada/Makefile.in.
Preapproved by Paolo, commited after bootstrap and check installed
compiler on x86_64-linux.
Laurent
2008-08-29 Laurent Guerby <laurent@guerby.net>
* Makefile.in (FLAGS_TO_PASS): renamed to LIBADA_FLAGS_TO_PASS to
avoid conflicts. Factor more flags to pass.
(libsubdir): New variable.
(install-gnatlib): New target.
Index: libada/Makefile.in
===================================================================
--- libada/Makefile.in (revision 139765)
+++ libada/Makefile.in (working copy)
@@ -51,15 +51,25 @@
GCC_DIR=../../$(host_subdir)/gcc
include $(GCC_DIR)/libgcc.mvars
+target_noncanonical:=@target_noncanonical@
+version := $(shell cat $(srcdir)/../gcc/BASE-VER)
+libsubdir := $(libdir)/gcc/$(target_noncanonical)/$(version)
+
# exeext should not be used because it's the *host* exeext. We're building
# a *target* library, aren't we?!? Likewise for CC. Still, provide bogus
# definitions just in case something slips through the safety net provided
# by recursive make invocations in gcc/ada/Makefile.in
-FLAGS_TO_PASS = \
+LIBADA_FLAGS_TO_PASS = \
"MAKEOVERRIDES=" \
"LDFLAGS=$(LDFLAGS)" \
"LN_S=$(LN_S)" \
"SHELL=$(SHELL)" \
+ "GNATLIBFLAGS=$(GNATLIBFLAGS)" \
+ "GNATLIBCFLAGS=$(GNATLIBCFLAGS)" \
+ "TARGET_LIBGCC2_CFLAGS=$(TARGET_LIBGCC2_CFLAGS)" \
+ "THREAD_KIND=$(THREAD_KIND)" \
+ "TRACE=$(TRACE)" \
+ "libsubdir=$(libsubdir)" \
"objext=$(objext)" \
"prefix=$(prefix)" \
"exeext=.exeext.should.not.be.used " \
@@ -73,30 +83,20 @@
gnatlib-plain: oscons $(GCC_DIR)/ada/Makefile
test -f stamp-libada || \
- $(MAKE) -C $(GCC_DIR)/ada $(FLAGS_TO_PASS) \
- GNATLIBFLAGS="$(GNATLIBFLAGS)" \
- GNATLIBCFLAGS="$(GNATLIBCFLAGS)" \
- TARGET_LIBGCC2_CFLAGS="$(TARGET_LIBGCC2_CFLAGS)" \
- THREAD_KIND="$(THREAD_KIND)" \
- TRACE="$(TRACE)" \
- gnatlib \
+ $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) gnatlib \
&& touch stamp-libada
gnatlib-sjlj gnatlib-zcx gnatlib-shared: oscons $(GCC_DIR)/ada/Makefile
test -f stamp-libada || \
- $(MAKE) -C $(GCC_DIR)/ada $(FLAGS_TO_PASS) \
- GNATLIBFLAGS="$(GNATLIBFLAGS)" \
- GNATLIBCFLAGS="$(GNATLIBCFLAGS)" \
- TARGET_LIBGCC2_CFLAGS="$(TARGET_LIBGCC2_CFLAGS)" \
- THREAD_KIND="$(THREAD_KIND)" \
- TRACE="$(TRACE)" \
- $@ \
+ $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) $@ \
&& touch stamp-libada
oscons:
- $(MAKE) -C $(GCC_DIR) THREAD_KIND="$(THREAD_KIND)" \
- $(FLAGS_TO_PASS) ada/s-oscons.ads
+ $(MAKE) -C $(GCC_DIR) $(LIBADA_FLAGS_TO_PASS) ada/s-oscons.ads
+install-gnatlib: $(GCC_DIR)/ada/Makefile
+ $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) install-gnatlib
+
# Check uninstalled version.
check: