diff options
author | Ian Lance Taylor <ian@airs.com> | 1998-07-02 18:55:33 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1998-07-02 18:55:33 +0000 |
commit | 8e6950e33b47cfabbccb91aa4149b91addc80955 (patch) | |
tree | 0408045e7567171fd7e93117d9f216c70c8ad88d /gas/makefile.vms | |
parent | cf6e014de7b0212478bff479df0230d5e3fadd07 (diff) | |
download | gdb-8e6950e33b47cfabbccb91aa4149b91addc80955.zip gdb-8e6950e33b47cfabbccb91aa4149b91addc80955.tar.gz gdb-8e6950e33b47cfabbccb91aa4149b91addc80955.tar.bz2 |
Thu Jul 2 14:06:22 1998 Klaus Kaempf <kkaempf@rmi.de>
* obj-vms.c: Add C++ support with ctors/dtors sections. Add weak
symbol definitions.
(Ctors_Symbols, Dtors_Symbols): New symbol chains.
(ps_CTORS, ps_DTORS): New section types.
(vms_fixup_xtors_section): New function
(Ctors_Psect, Dtors_Psect): Define.
(IS_GXX_XTOR): Define
(global_symbol_directory): Change check of gxx_bug_fixed to 0.
Filter static constructors/destructors and add to
Ctors_Symbols/Dtors_Symbols chain.
(vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
appropriate section.
* tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
* makefile.vms: Merge vax/vms support.
Diffstat (limited to 'gas/makefile.vms')
-rw-r--r-- | gas/makefile.vms | 65 |
1 files changed, 57 insertions, 8 deletions
diff --git a/gas/makefile.vms b/gas/makefile.vms index 4075cc6..f4c30d4 100644 --- a/gas/makefile.vms +++ b/gas/makefile.vms @@ -3,7 +3,8 @@ # # Created by Klaus K"ampf, kkaempf@progis.de # - +CC=gcc +ifeq ($(ARCH),ALPHA) ifeq ($(CC),gcc) DEFS= CFLAGS=/include=([],[-.bfd],[.config],[-.include],[-])$(DEFS) @@ -19,40 +20,85 @@ LFLAGS= LIBS=,sys$$library:vaxcrtl.olb/lib endif +else # ARCH not ALPHA + +ifeq ($(CC),gcc) +DEFS= +CFLAGS=/include=([],[.config],[-.include],[-])$(DEFS) +LFLAGS= +LIBS=,GNU_CC_LIBRARY:libgcc/lib,sys$$library:vaxcrtl.olb/lib,GNU_CC_LIBRARY:crtbegin.obj,GNU_CC_LIBRARY:crtend.obj +#LIBS=,gnu_cc:[000000]gcclib.olb/lib,sys$$library:vaxcrtl.olb/lib +else +error DECC is broken on VAX +DEFS=/define=("table_size_of_flonum_powers_of_ten"="tabsiz_flonum_powers_of_ten","const=") +CFLAGS=/noopt/debug/include=([],[.config],[-.include],[-])$(DEFS)\ +/warnings=disable=(missingreturn,implicitfunc,ptrmismatch,undefescap,longextern,duptypespec) +LFLAGS= +LIBS=,sys$$library:vaxcrtl.olb/lib +endif +endif + + OBJS=targ-cpu.obj,obj-format.obj,atof-targ.obj,app.obj,as.obj,atof-generic.obj,\ bignum-copy.obj,cond.obj,depend.obj,expr.obj,flonum-konst.obj,flonum-copy.obj,\ flonum-mult.obj,frags.obj,hash.obj,input-file.obj,input-scrub.obj,\ literal.obj,messages.obj,output-file.obj,read.obj,subsegs.obj,symbols.obj,\ - write.obj,listing.obj,ecoff.obj,ehopt.obj,stabs.obj,sb.obj,macro.obj + write.obj,listing.obj,ecoff.obj,stabs.obj,sb.obj,macro.obj,ehopt.obj GASPOBJS = gasp.obj,macro.obj,sb.obj,hash.obj LIBIBERTY = [-.libiberty]libiberty.olb + +ifeq ($(ARCH),ALPHA) LIBBFD = [-.bfd]libbfd.olb LIBOPCODES = [-.opcodes]libopcodes.olb +BFDDEP = [-.bfd]bfd.h +else +LIBBFD = +LIBOPCODES = +BFDDEP = +endif -all: config.status [-.bfd]bfd.h as.exe gasp.exe +all: config.status $(BFDDEP) as.exe gasp.exe as.exe: $(OBJS) $(LIBOPCODES) $(LIBBFD) $(LIBIBERTY) +ifeq ($(ARCH),ALPHA) link$(LFLAGS)/exe=$@ $(OBJS),$(LIBOPCODES)/lib,$(LIBBFD)/lib,$(LIBIBERTY)/lib$(LIBS) +else + link$(LFLAGS)/exe=$@ $(OBJS),$(LIBIBERTY)/lib$(LIBS) +endif gasp.exe: $(GASPOBJS) $(LIBBFD) $(LIBIBERTY) +ifeq ($(ARCH),ALPHA) link$(LFLAGS)/exe=$@ $(GASPOBJS),$(LIBBFD)/lib,$(LIBIBERTY)/lib$(LIBS) +else + link$(LFLAGS)/exe=$@ $(GASPOBJS),$(LIBIBERTY)/lib$(LIBS) +endif config.status: $$ @config-gas -targ-cpu.c: [.config]tc-alpha.c +ifeq ($(ARCH),ALPHA) +CPU=alpha +OBJFORMAT=evax +FLTFORMAT=ieee +else +CPU=vax +OBJFORMAT=vms +FLTFORMAT=vax +endif + +targ-cpu.c: [.config]tc-$(CPU).c copy $< $@ -targ-cpu.h: [.config]tc-alpha.h +targ-cpu.h: [.config]tc-$(CPU).h copy $< $@ targ-env.h: [.config]te-generic.h copy $< $@ -obj-format.h: [.config]obj-evax.h +obj-format.h: [.config]obj-$(OBJFORMAT).h copy $< $@ -obj-format.c: [.config]obj-evax.c +obj-format.c: [.config]obj-$(OBJFORMAT).c copy $< $@ -atof-targ.c: [.config]atof-ieee.c +atof-targ.c: [.config]atof-$(FLTFORMAT).c copy $< $@ targ-cpu.obj: targ-cpu.c targ-cpu.h [.config]atof-vax.c @@ -62,6 +108,9 @@ targ-cpu.obj: targ-cpu.c targ-cpu.h [.config]atof-vax.c gmake -f makefile.vms "CC=$(CC)" $(CD) [-.gas] +install: as.exe gasp.exe + $(CP) $^ GNU_ROOT\:[BIN] + clean: $$ purge $(RM) *.obj; |