From 3b31a906085899ffea090ef9945ffda785dcad78 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Tue, 11 Dec 2018 23:04:39 +0000 Subject: [PATCH] re PR ada/88429 (libada build fails with --disable-shared) libada/ PR ada/88429 * configure.ac (default_gnatlib_target): Set to gnatlib instead of gnatlib-plain if --disable-shared. * configure: Regenerate. * Makefile.in (all): Replace gnatlib prerequisite with libada. (ADA_RTS_SUBDIR): Delete. (libada): New target, renamed from... (gnatlib): ...this. Merge with other library targets. (gnatlib-plain): Delete. (install-gnatlib): Rename to... (install-libada): ...this. (install): Replace install-gnatlib prerequisite with install-libada. gcc/ada/ PR ada/88429 * gcc-interface/Makefile.in (./stamp-gnatlib1-$(RTSDIR)): Also pass MULTISUBDIR to sub-make and add quotes around $(THREAD_KIND). (gnatlib-shared-dual): Also pass PICFLAG_FOR_TARGET to sub-make. (gnatlib-sjlj): Also pass MULTISUBDIR to sub-make, but do not pass PICFLAG_FOR_TARGET. (gnatlib-zcx): Likewise. From-SVN: r267034 --- gcc/ChangeLog | 2 +- gcc/ada/ChangeLog | 13 +++++++++++-- gcc/ada/gcc-interface/Makefile.in | 23 +++++++++++++++-------- libada/ChangeLog | 15 +++++++++++++++ libada/Makefile.in | 23 +++++++---------------- libada/configure | 2 +- libada/configure.ac | 2 +- 7 files changed, 51 insertions(+), 29 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 94c7ca7..566f560 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -10,7 +10,7 @@ error when stack pointer is clobbered. (expand_asm_stmt): Refactor clobber check in separate function. -2018-12-11 Eric Botcazou +2018-12-11 Eric Botcazou * config/rs6000/vxworks.h (RS6000_STARTING_FRAME_OFFSET): Define, accounting for STACK_BOUNDARY 128. diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index c0ba34a..f04a052 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,7 +1,16 @@ +2018-12-11 Eric Botcazou + + PR ada/88429 + * gcc-interface/Makefile.in (./stamp-gnatlib1-$(RTSDIR)): Also pass + MULTISUBDIR to sub-make and add quotes around $(THREAD_KIND). + (gnatlib-shared-dual): Also pass PICFLAG_FOR_TARGET to sub-make. + (gnatlib-sjlj): Also pass MULTISUBDIR to sub-make, but do not pass + PICFLAG_FOR_TARGET. + (gnatlib-zcx): Likewise. + 2018-12-11 Piotr Trojanek - * libgnat/a-calend.ads: Add "Global => null" contracts to pure - routines. + * libgnat/a-calend.ads: Add "Global => null" contract to pure routines. 2018-12-11 Hristian Kirtchev diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in index 07dc1e5..4e74252 100644 --- a/gcc/ada/gcc-interface/Makefile.in +++ b/gcc/ada/gcc-interface/Makefile.in @@ -1,5 +1,5 @@ # Makefile for GNU Ada Compiler (GNAT). -# Copyright (C) 1994-2017 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. #This file is part of GCC. @@ -564,7 +564,7 @@ install-gnatlib: ../stamp-gnatlib-$(RTSDIR) install-gcc-specs $(RM) ../stamp-gnatlib-$(RTSDIR) ../stamp-gnatlib1-$(RTSDIR): Makefile ../stamp-gnatlib2-$(RTSDIR) - $(MAKE) THREAD_KIND=$(THREAD_KIND) setup-rts + $(MAKE) MULTISUBDIR="$(MULTISUBDIR)" THREAD_KIND="$(THREAD_KIND)" setup-rts # Copy tsystem.h $(CP) $(srcdir)/tsystem.h $(RTSDIR) $(RM) ../stamp-gnatlib-$(RTSDIR) @@ -688,6 +688,7 @@ gnatlib-shared-dual: GNATLIBFLAGS="$(GNATLIBFLAGS)" \ GNATLIBCFLAGS="$(GNATLIBCFLAGS)" \ GNATLIBCFLAGS_FOR_C="$(GNATLIBCFLAGS_FOR_C)" \ + PICFLAG_FOR_TARGET="$(PICFLAG_FOR_TARGET)" \ MULTISUBDIR="$(MULTISUBDIR)" \ THREAD_KIND="$(THREAD_KIND)" \ gnatlib-shared-default @@ -804,8 +805,11 @@ gnatlib-shared: # commenting the pragma instead of deleting the line, as the latter might # result in getting multiple blank lines, hence possible style check errors. gnatlib-sjlj: - $(MAKE) $(FLAGS_TO_PASS) EH_MECHANISM="" \ - THREAD_KIND="$(THREAD_KIND)" ../stamp-gnatlib1-$(RTSDIR) + $(MAKE) $(FLAGS_TO_PASS) \ + EH_MECHANISM="" \ + MULTISUBDIR="$(MULTISUBDIR)" \ + THREAD_KIND="$(THREAD_KIND)" \ + ../stamp-gnatlib1-$(RTSDIR) sed \ -e 's/Frontend_Exceptions.*/Frontend_Exceptions : constant Boolean := True;/' \ -e 's/ZCX_By_Default.*/ZCX_By_Default : constant Boolean := False;/' \ @@ -819,11 +823,14 @@ gnatlib-sjlj: FORCE_DEBUG_ADAFLAGS="$(FORCE_DEBUG_ADAFLAGS)" \ MULTISUBDIR="$(MULTISUBDIR)" \ THREAD_KIND="$(THREAD_KIND)" \ - PICFLAG_FOR_TARGET="$(PICFLAG_FOR_TARGET)" gnatlib + gnatlib gnatlib-zcx: - $(MAKE) $(FLAGS_TO_PASS) EH_MECHANISM="-gcc" \ - THREAD_KIND="$(THREAD_KIND)" ../stamp-gnatlib1-$(RTSDIR) + $(MAKE) $(FLAGS_TO_PASS) \ + EH_MECHANISM="-gcc" \ + MULTISUBDIR="$(MULTISUBDIR)" \ + THREAD_KIND="$(THREAD_KIND)" \ + ../stamp-gnatlib1-$(RTSDIR) sed \ -e 's/Frontend_Exceptions.*/Frontend_Exceptions : constant Boolean := False;/' \ -e 's/ZCX_By_Default.*/ZCX_By_Default : constant Boolean := True;/' \ @@ -837,7 +844,7 @@ gnatlib-zcx: FORCE_DEBUG_ADAFLAGS="$(FORCE_DEBUG_ADAFLAGS)" \ MULTISUBDIR="$(MULTISUBDIR)" \ THREAD_KIND="$(THREAD_KIND)" \ - PICFLAG_FOR_TARGET="$(PICFLAG_FOR_TARGET)" gnatlib + gnatlib # Compiling object files from source files. diff --git a/libada/ChangeLog b/libada/ChangeLog index 1dcc1b5..e6f186c 100644 --- a/libada/ChangeLog +++ b/libada/ChangeLog @@ -1,3 +1,18 @@ +2018-12-11 Eric Botcazou + + PR ada/88429 + * configure.ac (default_gnatlib_target): Set to gnatlib instead of + gnatlib-plain if --disable-shared. + * configure: Regenerate. + * Makefile.in (all): Replace gnatlib prerequisite with libada. + (ADA_RTS_SUBDIR): Delete. + (libada): New target, renamed from... + (gnatlib): ...this. Merge with other library targets. + (gnatlib-plain): Delete. + (install-gnatlib): Rename to... + (install-libada): ...this. + (install): Replace install-gnatlib prerequisite with install-libada. + 2018-10-31 Joseph Myers PR bootstrap/82856 diff --git a/libada/Makefile.in b/libada/Makefile.in index a2f6afe..aa6c327 100644 --- a/libada/Makefile.in +++ b/libada/Makefile.in @@ -16,7 +16,7 @@ # . # Default target; must be first. -all: gnatlib +all: libada $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE) .PHONY: all @@ -70,7 +70,6 @@ target_noncanonical:=@target_noncanonical@ version := $(shell @get_gcc_base_ver@ $(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 @@ -96,20 +95,12 @@ LIBADA_FLAGS_TO_PASS = \ "GCC_FOR_TARGET=$(CC)" \ "CFLAGS=$(CFLAGS)" -# Rules to build gnatlib. -.PHONY: gnatlib gnatlib-plain gnatlib-sjlj gnatlib-zcx gnatlib-shared osconstool -gnatlib: @default_gnatlib_target@ +.PHONY: libada gnatlib gnatlib-shared gnatlib-sjlj gnatlib-zcx osconstool -gnatlib-plain: osconstool $(GCC_DIR)/ada/Makefile - test -f stamp-libada || \ - $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) gnatlib \ - && touch stamp-libada - -rm -rf adainclude - -rm -rf adalib - $(LN_S_RECURSIVE) $(ADA_RTS_DIR) adainclude - $(LN_S_RECURSIVE) $(ADA_RTS_DIR) adalib +# Rules to build and install libada. +libada: @default_gnatlib_target@ -gnatlib-sjlj gnatlib-zcx gnatlib-shared: osconstool $(GCC_DIR)/ada/Makefile +gnatlib gnatlib-shared gnatlib-sjlj gnatlib-zcx: osconstool $(GCC_DIR)/ada/Makefile test -f stamp-libada || \ $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) $@ \ && touch stamp-libada @@ -121,7 +112,7 @@ gnatlib-sjlj gnatlib-zcx gnatlib-shared: osconstool $(GCC_DIR)/ada/Makefile osconstool: $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) ./bldtools/oscons/xoscons -install-gnatlib: $(GCC_DIR)/ada/Makefile +install-libada: $(GCC_DIR)/ada/Makefile $(MAKE) -C $(GCC_DIR)/ada $(LIBADA_FLAGS_TO_PASS) install-gnatlib # Check uninstalled version. @@ -148,7 +139,7 @@ TAGS: .PHONY: check installcheck info dvi pdf html # Installation rules. -install: install-gnatlib +install: install-libada $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE) install-strip: install diff --git a/libada/configure b/libada/configure index 1b056ac..743f98a 100755 --- a/libada/configure +++ b/libada/configure @@ -3264,7 +3264,7 @@ fi if test ${enable_shared} = yes; then default_gnatlib_target="gnatlib-shared" else - default_gnatlib_target="gnatlib-plain" + default_gnatlib_target="gnatlib" fi diff --git a/libada/configure.ac b/libada/configure.ac index 6c7aca0..6c0bb8b 100644 --- a/libada/configure.ac +++ b/libada/configure.ac @@ -129,7 +129,7 @@ AC_PROG_LN_S if test ${enable_shared} = yes; then default_gnatlib_target="gnatlib-shared" else - default_gnatlib_target="gnatlib-plain" + default_gnatlib_target="gnatlib" fi AC_SUBST([default_gnatlib_target]) -- 2.7.4