X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=libada%2FMakefile.in;h=2b778e0c98e045acc9eb0772e35611321a60bf5a;hb=540d7a7787a8a9b00418296ccf4a80d90ef61bdb;hp=8375078e7489bfb2ec5f9dd0c11eba047585ac35;hpb=00189cc66f3ac47447e46f03a62fd706fcf4c09c;p=thirdparty%2Fgcc.git diff --git a/libada/Makefile.in b/libada/Makefile.in index 8375078e7489..2b778e0c98e0 100644 --- a/libada/Makefile.in +++ b/libada/Makefile.in @@ -1,9 +1,9 @@ # Makefile for libada. -# Copyright 2003, 2004 Free Software Foundation, Inc. +# Copyright 2003, 2004, 2009, 2010, 2011 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -12,96 +12,108 @@ # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# along with this program; see the file COPYING3. If not see +# . # Default target; must be first. all: gnatlib + $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE) + +.PHONY: all + +## Multilib support variables. +MULTISRCTOP = +MULTIBUILDTOP = +MULTIDIRS = +MULTISUBDIR = +MULTIDO = true +MULTICLEAN = true # Standard autoconf-set variables. SHELL = @SHELL@ srcdir = @srcdir@ +libdir = @libdir@ build = @build@ target = @target@ prefix = @prefix@ # Nonstandard autoconf-set variables. enable_shared = @enable_shared@ + LN_S=@LN_S@ +AWK=@AWK@ # Variables for the user (or the top level) to override. objext=.o -GNATLIBFLAGS= -W -Wall -gnatpg THREAD_KIND=native TRACE=no LDFLAGS= # The tedious process of getting CFLAGS right. CFLAGS=-g -LOOSE_WARN = -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -GCC_WARN_CFLAGS = $(LOOSE_WARN) $(NOCOMMON_FLAG) - -ADA_CFLAGS= -T_ADA_CFLAGS= -# HPPA is literally the only target which sets X_ADA_CFLAGS -X_ADA_CFLAGS=@x_ada_cflags@ -ALL_ADA_CFLAGS=$(X_ADA_CFLAGS) $(T_ADA_CFLAGS) $(ADA_CFLAGS) +PICFLAG = @PICFLAG@ +GNATLIBFLAGS= -W -Wall -gnatpg -nostdinc +GNATLIBCFLAGS= -g -O2 +GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) \ + -fexceptions -DIN_RTS @have_getipinfo@ -# For finding the GCC build dir, which is used far too much host_subdir = @host_subdir@ -GCC_DIR=../../$(host_subdir)/gcc -# Include fragment generated by GCC configure. -include $(GCC_DIR)/libada-mk - -TARGET_LIBGCC2_CFLAGS= -GNATLIBCFLAGS= -g -O2 -# Get target-specific overrides for TARGET_LIBGCC2_CFLAGS -# and possibly GNATLIBCFLAGS. Currently this uses files -# in gcc/config. The 'subst' call is used to rerelativize them -# from their gcc locations. This is hackery, but there isn't -# yet a better way to do this. -tmake_file=$(subst /config,/../gcc/config,$(gcc_tmake_file)) -ifneq ($(tmake_file),) -include $(tmake_file) -endif - -FLAGS_TO_PASS = \ +GCC_DIR=$(MULTIBUILDTOP)../../$(host_subdir)/gcc + +target_noncanonical:=@target_noncanonical@ +version := $(shell cat $(srcdir)/../gcc/BASE-VER) +libsubdir := $(libdir)/gcc/$(target_noncanonical)/$(version)$(MULTISUBDIR) +ADA_RTS_DIR=$(GCC_DIR)/ada/rts$(subst /,_,$(MULTISUBDIR)) +ADA_RTS_SUBDIR=./rts$(subst /,_,$(MULTISUBDIR)) + +# 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 +LIBADA_FLAGS_TO_PASS = \ "MAKEOVERRIDES=" \ "LDFLAGS=$(LDFLAGS)" \ "LN_S=$(LN_S)" \ "SHELL=$(SHELL)" \ - "exeext=$(exeext)" \ + "GNATLIBFLAGS=$(GNATLIBFLAGS) $(MULTIFLAGS)" \ + "GNATLIBCFLAGS=$(GNATLIBCFLAGS) $(MULTIFLAGS)" \ + "GNATLIBCFLAGS_FOR_C=$(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS)" \ + "PICFLAG_FOR_TARGET=$(PICFLAG)" \ + "THREAD_KIND=$(THREAD_KIND)" \ + "TRACE=$(TRACE)" \ + "MULTISUBDIR=$(MULTISUBDIR)" \ + "libsubdir=$(libsubdir)" \ "objext=$(objext)" \ "prefix=$(prefix)" \ - "CC=$(host_cc_for_libada)" \ + "exeext=.exeext.should.not.be.used " \ + 'CC=the.host.compiler.should.not.be.needed' \ "GCC_FOR_TARGET=$(CC)" \ - "CFLAGS=$(CFLAGS) $(WARN_CFLAGS)" + "CFLAGS=$(CFLAGS)" # Rules to build gnatlib. -.PHONY: gnatlib gnatlib-plain gnatlib-sjlj gnatlib-zcx gnatlib-shared +.PHONY: gnatlib gnatlib-plain gnatlib-sjlj gnatlib-zcx gnatlib-shared osconstool gnatlib: @default_gnatlib_target@ gnatlib-plain: $(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 + -rm -rf adainclude + -rm -rf adalib + $(LN_S) $(ADA_RTS_DIR) adainclude + $(LN_S) $(ADA_RTS_DIR) adalib gnatlib-sjlj gnatlib-zcx gnatlib-shared: $(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 + -rm -rf adainclude + -rm -rf adalib + $(LN_S) $(ADA_RTS_DIR) adainclude + $(LN_S) $(ADA_RTS_DIR) adalib + +install-gnatlib: $(GCC_DIR)/ada/Makefile + $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) install-gnatlib # Check uninstalled version. check: @@ -124,8 +136,13 @@ html: # Build TAGS (none here). TAGS: +.PHONY: check installcheck info dvi pdf html + # Installation rules. -install: +install: install-gnatlib + $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE) + +install-strip: install install-info: @@ -133,16 +150,23 @@ install-pdf: install-html: +.PHONY: install install-strip install-info install-pdf install-html + # Cleaning rules. mostlyclean: + $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE) clean: + $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE) distclean: + $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE) $(RM) Makefile config.status config.log maintainer-clean: +.PHONY: mostlyclean clean distclean maintainer-clean + # Rules for rebuilding this Makefile. Makefile: $(srcdir)/Makefile.in config.status CONFIG_FILES=$@ ; \ @@ -152,8 +176,15 @@ Makefile: $(srcdir)/Makefile.in config.status config.status: $(srcdir)/configure $(SHELL) ./config.status --recheck -$(srcdir)/configure: @MAINT@ $(srcdir)/configure.ac - cd $(srcdir) && autoconf +AUTOCONF = autoconf +configure_deps = \ + $(srcdir)/configure.ac \ + $(srcdir)/../config/acx.m4 \ + $(srcdir)/../config/override.m4 \ + $(srcdir)/../config/multi.m4 + +$(srcdir)/configure: @MAINT@ $(configure_deps) + cd $(srcdir) && $(AUTOCONF) # Don't export variables to the environment, in order to not confuse # configure.