diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-01-30 12:19:17 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-01-30 12:19:17 +0000 |
commit | 62b2aa7d1e23fa59b488e0d721dc6b1207bdac59 (patch) | |
tree | 210f427afc10b6fae5e4e671b2dc786b7ecbc2ed /gcc/ada/gcc-interface/Makefile.in | |
parent | 9deff0440802c41fcd72b87c06d9e1fb3e00a773 (diff) | |
download | gcc-62b2aa7d1e23fa59b488e0d721dc6b1207bdac59.tar.gz |
2012-01-30 Nicolas Roche <roche@adacore.com>
* gcc-interface/Make-lang.in: Update dependencies.
* gcc-interface/Makefile.in: Use system-vxworks-system-ppc-mils.ads
when needed.
Remove Linker_Options -crtbe when building sjlj run-time.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183715 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/gcc-interface/Makefile.in')
-rw-r--r-- | gcc/ada/gcc-interface/Makefile.in | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in index f8e1fd6afce..98b4c1eb08b 100644 --- a/gcc/ada/gcc-interface/Makefile.in +++ b/gcc/ada/gcc-interface/Makefile.in @@ -674,7 +674,7 @@ ifeq ($(strip $(filter-out e500% powerpc% wrs vxworksmils,$(targ))),) s-thread.adb<s-thread-ae653.adb \ s-tpopsp.adb<s-tpopsp-vxworks.adb \ s-vxwork.ads<s-vxwork-ppc.ads \ - system.ads<system-vxworks-ppc.ads \ + system.ads<system-vxworks-ppc-mils.ads \ $(ATOMICS_TARGET_PAIRS) \ $(ATOMICS_BUILTINS_TARGET_PAIRS) \ $(DUMMY_SOCKETS_TARGET_PAIRS) @@ -2765,11 +2765,18 @@ gnatlib-shared: PICFLAG_FOR_TARGET="$(PICFLAG_FOR_TARGET)" \ $(GNATLIB_SHARED) +# When building a SJLJ runtime for VxWorks, in addition to forcing +# ZCX_By_default to True, we need to ensure that -crtbe linker options +# is not passed. Otherwise we will end with weak symbols on +# __register_frame_info and __deregister_frame_info. The VxWorks 5.x +# will issue an error on weak symbols. gnatlib-sjlj: $(MAKE) $(FLAGS_TO_PASS) EH_MECHANISM="" \ THREAD_KIND="$(THREAD_KIND)" ../stamp-gnatlib1-$(RTSDIR) sed -e 's/ZCX_By_Default.*/ZCX_By_Default : constant Boolean := False;/' $(RTSDIR)/system.ads > $(RTSDIR)/s.ads - $(MV) $(RTSDIR)/s.ads $(RTSDIR)/system.ads + cat $(RTSDIR)/s.ads | grep -v "Linker_Options.*-crtbe" > $(RTSDIR)/s2.ads + $(RM) $(RTSDIR)/s.ads + $(MV) $(RTSDIR)/s2.ads $(RTSDIR)/system.ads $(MAKE) $(FLAGS_TO_PASS) \ EH_MECHANISM="" \ GNATLIBFLAGS="$(GNATLIBFLAGS)" \ |