From c412299f000f1134e73180623e9a3954f8ec4973 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 29 Jan 1998 19:48:18 +0000 Subject: [PATCH] Thu Jan 29 14:42:44 1998 Pat Rankin * Makefile.am (CONFIG_OBJS): New variable, containing part of old OBJS variable. (GENERIC_OBJS): New variable, with the rest of the old OBJS variable. (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS). ($(srcdir)/make-gas.com): Rename from make-gas.com. (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS). (EXTRA_DIST): Define. * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules explicitly rather than via the list of object files. (gcc-as.opt): New file created when make-gas.com is run. * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h, itbl-cpu.h} to #include appropriate file rather than copying that file. * config/vms-conf.h: Synchronize with current config.in. * Makefile.in: Rebuild. --- gas/ChangeLog | 19 ++++++++++ gas/Makefile.am | 64 +++++++++++++++++++++++++------- gas/Makefile.in | 85 ++++++++++++++++++++++++++++++++++--------- gas/config-gas.com | 57 ++++++++++++++--------------- gas/config/vms-conf.h | 38 +++++++++++++++++-- gas/vmsconf.sh | 33 ++++++++++++++++- 6 files changed, 230 insertions(+), 66 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 19559c4647..2273c2c308 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,22 @@ +Thu Jan 29 14:42:44 1998 Ian Lance Taylor + + * Makefile.am (CONFIG_OBJS): New variable, containing part of old + OBJS variable. + (GENERIC_OBJS): New variable, with the rest of the old OBJS + variable. + (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS). + ($(srcdir)/make-gas.com): Rename from make-gas.com. + (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS). + (EXTRA_DIST): Define. + * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules + explicitly rather than via the list of object files. + (gcc-as.opt): New file created when make-gas.com is run. + * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h, + itbl-cpu.h} to #include appropriate file rather than copying that + file. + * config/vms-conf.h: Synchronize with current config.in. + * Makefile.in: Rebuild. + start-sanitize-m32rx Wed Jan 28 16:27:27 1998 Nick Clifton diff --git a/gas/Makefile.am b/gas/Makefile.am index b1b61c95e1..948ea73b91 100644 --- a/gas/Makefile.am +++ b/gas/Makefile.am @@ -33,6 +33,7 @@ IT_OBJS=itbl-parse.o itbl-lex.o itbl-ops.o CPU_TYPES = \ a29k \ alpha \ + arc \ arm \ d10v \ h8300 \ @@ -178,6 +179,7 @@ HFILES = \ TARGET_CPU_CFILES = \ config/tc-a29k.c \ config/tc-alpha.c \ + config/tc-arc.c \ config/tc-arm.c \ config/tc-d10v.c \ config/tc-h8300.c \ @@ -205,6 +207,7 @@ TARGET_CPU_CFILES = \ TARGET_CPU_HFILES = \ config/tc-a29k.h \ config/tc-alpha.h \ + config/tc-arc.h \ config/tc-arm.h \ config/tc-d10v.h \ config/tc-h8300.h \ @@ -296,10 +299,13 @@ MULTI_CFILES = \ config/e-mipsecoff.c \ config/e-mipself.c -OBJS = \ +CONFIG_OBJS = \ $(TARG_CPU_O) \ $(OBJ_FORMAT_O) \ $(ATOF_TARG_O) \ + $(extra_objects) + +GENERIC_OBJS = \ app.o \ as.o \ atof-generic.o \ @@ -325,18 +331,21 @@ OBJS = \ ecoff.o \ stabs.o \ sb.o \ - macro.o \ - $(extra_objects) + macro.o + +OBJS = $(CONFIG_OBJS) $(GENERIC_OBJS) noinst_PROGRAMS = as-new gasp-new noinst_SCRIPTS = .gdbinit -make-gas.com: stamp-mk.com +$(srcdir)/make-gas.com: stamp-mk.com stamp-mk.com: vmsconf.sh Makefile - sh $(srcdir)/vmsconf.sh $(OBJS) > new-make.com + sh $(srcdir)/vmsconf.sh $(GENERIC_OBJS) > new-make.com $(SHELL) $(srcdir)/../move-if-change new-make.com $(srcdir)/make-gas.com touch stamp-mk.com +EXTRA_DIST = make-gas.com + # Now figure out from those variables how to compile and link. BASEDIR = $(srcdir)/.. @@ -356,7 +365,7 @@ INCLUDES = -D_GNU_SOURCE -I. -I$(srcdir) -I../bfd -I$(srcdir)/config -I$(INCDIR) GASLIBS = @OPCODES_LIB@ @BFDLIB@ ../libiberty/libiberty.a # Files to be copied away after each stage in building. -STAGESTUFF = *.o $(bin_PROGRAMS) +STAGESTUFF = *.o $(noinst_PROGRAMS) $(OBJS): @ALL_OBJ_DEPS@ @@ -457,7 +466,7 @@ e-i386elf.o: $(srcdir)/config/e-i386elf.c # The m68k operand parser. -EXTRA_as_new_SOURCES = m68k-parse.y +EXTRA_as_new_SOURCES = config/m68k-parse.y m68k-parse.c: $(srcdir)/config/m68k-parse.y $(SHELL) $(YLWRAP) "$(YACC)" $(srcdir)/config/m68k-parse.y y.tab.c m68k-parse.c -- @@ -529,23 +538,23 @@ install-exec-local: $(noinst_PROGRAMS) bootstrap: as-new $(MAKE) stage1 rm -f stage && ln -s stage1 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) stage2 rm -f stage && ln -s stage2 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) comparison against=stage2 bootstrap2: rm -f stage && ln -s stage1 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) stage2 rm -f stage && ln -s stage2 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) comparison against=stage2 bootstrap3: rm -f stage && ln -s stage2 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) comparison against=stage2 # Copy the object files from a particular stage into a subdirectory. @@ -818,7 +827,6 @@ subsegs.o: subsegs.c subsegs.h $(INCDIR)/obstack.h symbols.o: symbols.c $(INCDIR)/obstack.h subsegs.h write.o: write.c subsegs.h $(INCDIR)/obstack.h output-file.h gasp.o: gasp.c sb.h macro.h -itbl-ops.o: itbl-ops.c itbl-ops.h e-i386coff.o: $(srcdir)/config/e-i386coff.c emul.h \ emul-target.h e-i386elf.o: $(srcdir)/config/e-i386elf.c emul.h emul-target.h @@ -851,6 +859,14 @@ TCDEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ TCDEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h \ subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/alpha.h \ $(srcdir)/config/atof-vax.c +TCDEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h \ + $(INCDIR)/elf/arc.h +TCDEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ + $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ + $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h subsegs.h \ + $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h $(INCDIR)/elf/arc.h TCDEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \ $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h TCDEP_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \ @@ -1043,10 +1059,13 @@ TCDEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h \ $(INCDIR)/obstack.h $(srcdir)/../opcodes/w65-opc.h +TCDEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h TCDEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h \ - $(INCDIR)/obstack.h + $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h TCDEP_z8k_coff = $(srcdir)/../opcodes/z8k-opc.h $(srcdir)/config/obj-coff.h \ $(srcdir)/config/tc-z8k.h $(INCDIR)/coff/internal.h \ $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h @@ -1082,6 +1101,13 @@ OBJDEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/obstack.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \ $(INCDIR)/aout/aout64.h OBJDEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h +OBJDEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + $(INCDIR)/obstack.h subsegs.h +OBJDEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ + $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ + $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h subsegs.h \ + $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h OBJDEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \ $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \ $(INCDIR)/obstack.h @@ -1271,6 +1297,9 @@ OBJDEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h \ $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h +OBJDEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + $(INCDIR)/obstack.h subsegs.h OBJDEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h \ @@ -1304,6 +1333,11 @@ DEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h DEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h +DEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h +DEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ + $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ + $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h DEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \ $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h DEP_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \ @@ -1446,6 +1480,8 @@ DEP_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h \ DEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h +DEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h DEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h diff --git a/gas/Makefile.in b/gas/Makefile.in index 49302c9c1f..b19c85d657 100644 --- a/gas/Makefile.in +++ b/gas/Makefile.in @@ -5,7 +5,7 @@ # gives unlimited permission to copy, distribute and modify it. -SHELL = /bin/sh +SHELL = @SHELL@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ @@ -107,6 +107,7 @@ IT_OBJS=itbl-parse.o itbl-lex.o itbl-ops.o CPU_TYPES = \ a29k \ alpha \ + arc \ arm \ d10v \ h8300 \ @@ -252,6 +253,7 @@ HFILES = \ TARGET_CPU_CFILES = \ config/tc-a29k.c \ config/tc-alpha.c \ + config/tc-arc.c \ config/tc-arm.c \ config/tc-d10v.c \ config/tc-h8300.c \ @@ -279,6 +281,7 @@ TARGET_CPU_CFILES = \ TARGET_CPU_HFILES = \ config/tc-a29k.h \ config/tc-alpha.h \ + config/tc-arc.h \ config/tc-arm.h \ config/tc-d10v.h \ config/tc-h8300.h \ @@ -370,10 +373,13 @@ MULTI_CFILES = \ config/e-mipsecoff.c \ config/e-mipself.c -OBJS = \ +CONFIG_OBJS = \ $(TARG_CPU_O) \ $(OBJ_FORMAT_O) \ $(ATOF_TARG_O) \ + $(extra_objects) + +GENERIC_OBJS = \ app.o \ as.o \ atof-generic.o \ @@ -399,12 +405,15 @@ OBJS = \ ecoff.o \ stabs.o \ sb.o \ - macro.o \ - $(extra_objects) + macro.o + +OBJS = $(CONFIG_OBJS) $(GENERIC_OBJS) noinst_PROGRAMS = as-new gasp-new noinst_SCRIPTS = .gdbinit +EXTRA_DIST = make-gas.com + # Now figure out from those variables how to compile and link. BASEDIR = $(srcdir)/.. @@ -424,7 +433,7 @@ INCLUDES = -D_GNU_SOURCE -I. -I$(srcdir) -I../bfd -I$(srcdir)/config -I$(INCDIR) GASLIBS = @OPCODES_LIB@ @BFDLIB@ ../libiberty/libiberty.a # Files to be copied away after each stage in building. -STAGESTUFF = *.o $(bin_PROGRAMS) +STAGESTUFF = *.o $(noinst_PROGRAMS) as_new_SOURCES = $(GAS_CFILES) as_new_LDADD = $(TARG_CPU_O) $(OBJ_FORMAT_O) $(ATOF_TARG_O) \ @@ -446,7 +455,7 @@ RUNTESTFLAGS= # The m68k operand parser. -EXTRA_as_new_SOURCES = m68k-parse.y +EXTRA_as_new_SOURCES = config/m68k-parse.y # stand-alone itbl assembler & disassembler @@ -498,6 +507,14 @@ TCDEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ TCDEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h \ subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/alpha.h \ $(srcdir)/config/atof-vax.c +TCDEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h \ + $(INCDIR)/elf/arc.h +TCDEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ + $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ + $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h subsegs.h \ + $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h $(INCDIR)/elf/arc.h TCDEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \ $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h TCDEP_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \ @@ -690,10 +707,13 @@ TCDEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h \ $(INCDIR)/obstack.h $(srcdir)/../opcodes/w65-opc.h +TCDEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h TCDEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h \ - $(INCDIR)/obstack.h + $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h TCDEP_z8k_coff = $(srcdir)/../opcodes/z8k-opc.h $(srcdir)/config/obj-coff.h \ $(srcdir)/config/tc-z8k.h $(INCDIR)/coff/internal.h \ $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h @@ -729,6 +749,13 @@ OBJDEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/obstack.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \ $(INCDIR)/aout/aout64.h OBJDEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h +OBJDEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + $(INCDIR)/obstack.h subsegs.h +OBJDEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ + $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ + $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h subsegs.h \ + $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h OBJDEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \ $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \ $(INCDIR)/obstack.h @@ -918,6 +945,9 @@ OBJDEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h \ $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h +OBJDEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \ + $(INCDIR)/obstack.h subsegs.h OBJDEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h \ @@ -951,6 +981,11 @@ DEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h DEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h +DEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h +DEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ + $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ + $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h DEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \ $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h DEP_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \ @@ -1093,6 +1128,8 @@ DEP_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h \ DEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h +DEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \ + $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h DEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \ $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h @@ -1141,8 +1178,8 @@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) LINK = $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ DIST_COMMON = README COPYING ChangeLog Makefile.am Makefile.in NEWS \ -acconfig.h acinclude.m4 aclocal.m4 config.in configure configure.in \ -gdbinit.in itbl-lex.c itbl-parse.c m68k-parse.c stamp-h.in +acconfig.h acinclude.m4 aclocal.m4 config.in config/m68k-parse.c \ +configure configure.in gdbinit.in itbl-lex.c itbl-parse.c stamp-h.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) @@ -1155,7 +1192,7 @@ OBJECTS = $(itbl_test_OBJECTS) $(as_new_OBJECTS) $(gasp_new_OBJECTS) default: all .SUFFIXES: -.SUFFIXES: .c .h .l .lo .o .y +.SUFFIXES: .S .c .h .l .lo .o .s .y $(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile @@ -1202,6 +1239,12 @@ distclean-noinstPROGRAMS: maintainer-clean-noinstPROGRAMS: +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + .c.o: $(COMPILE) -c $< @@ -1218,6 +1261,13 @@ maintainer-clean-compile: .c.lo: $(LIBTOOL) --mode=compile $(COMPILE) -c $< +# These are just copies of the above rule. +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + mostlyclean-libtool: rm -f *.lo @@ -1468,9 +1518,9 @@ installdirs mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean -make-gas.com: stamp-mk.com +$(srcdir)/make-gas.com: stamp-mk.com stamp-mk.com: vmsconf.sh Makefile - sh $(srcdir)/vmsconf.sh $(OBJS) > new-make.com + sh $(srcdir)/vmsconf.sh $(GENERIC_OBJS) > new-make.com $(SHELL) $(srcdir)/../move-if-change new-make.com $(srcdir)/make-gas.com touch stamp-mk.com @@ -1607,23 +1657,23 @@ install-exec-local: $(noinst_PROGRAMS) bootstrap: as-new $(MAKE) stage1 rm -f stage && ln -s stage1 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) stage2 rm -f stage && ln -s stage2 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) comparison against=stage2 bootstrap2: rm -f stage && ln -s stage1 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) stage2 rm -f stage && ln -s stage2 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) comparison against=stage2 bootstrap3: rm -f stage && ln -s stage2 stage - $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(bin_PROGRAMS) + $(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(noinst_PROGRAMS) $(MAKE) comparison against=stage2 # Copy the object files from a particular stage into a subdirectory. @@ -1887,7 +1937,6 @@ subsegs.o: subsegs.c subsegs.h $(INCDIR)/obstack.h symbols.o: symbols.c $(INCDIR)/obstack.h subsegs.h write.o: write.c subsegs.h $(INCDIR)/obstack.h output-file.h gasp.o: gasp.c sb.h macro.h -itbl-ops.o: itbl-ops.c itbl-ops.h e-i386coff.o: $(srcdir)/config/e-i386coff.c emul.h \ emul-target.h e-i386elf.o: $(srcdir)/config/e-i386elf.c emul.h emul-target.h diff --git a/gas/config-gas.com b/gas/config-gas.com index 0533d12e49..cf5248af5d 100644 --- a/gas/config-gas.com +++ b/gas/config-gas.com @@ -1,40 +1,36 @@ -$! +$!config-gas.com $! This file sets things up to build gas on a VMS system to generate object $! files for a VMS system. We do not use the configure script, since we $! do not have /bin/sh to execute it. $! $! -$gas_host="vms" -$! -$arch_indx = 1 + ((f$getsyi("CPU").ge.128).and.1) ! vax==1, alpha==2 -$arch = f$element(arch_indx,"|","|VAX|Alpha|") -$if arch .eqs. "VAX" -$then -$cpu_type="vax" -$obj_format="vms" -$atof="vax" -$else -$ cpu_type="alpha" -$ obj_format="evax" -$ atof="ieee" -$endif -$ -$emulation="generic" +$ gas_host="vms" +$ arch_indx = 1 + ((f$getsyi("CPU").ge.128).and.1) ! vax==1, alpha==2 +$ arch = f$element(arch_indx,"|","|VAX|Alpha|") +$ if arch.eqs."VAX" +$ then +$ cpu_type="vax" +$ obj_format="vms" +$ atof="vax" +$ else +$ cpu_type="alpha" +$ obj_format="evax" +$ atof="ieee" +$ endif +$ emulation="generic" $! $ DELETE = "delete/noConfirm" $ ECHO = "write sys$output" $! $! Target specific information -$call link targ-cpu.c [.config]tc-'cpu_type'.c -$call link targ-cpu.h [.config]tc-'cpu_type'.h -$call link targ-env.h [.config]te-'emulation'.h +$ call make "targ-cpu.h" "[.config]tc-''cpu_type'.h" +$ call make "targ-env.h" "[.config]te-''emulation'.h" $! $! Code to handle the object file format. -$call link obj-format.h [.config]obj-'obj_format'.h -$call link obj-format.c [.config]obj-'obj_format'.c +$ call make "obj-format.h" "[.config]obj-''obj_format'.h" $! -$! Code to handle floating point. -$call link atof-targ.c [.config]atof-'atof'.c +$! (not currently used for vax or alpha) +$ call make "itbl-cpu.h" "[.config]itbl-''cpu_type'.h" $! $! $! Create the file version.opt, which helps identify the executable. @@ -179,9 +175,12 @@ $ type []config.status $exit $! $! -$link: -$subroutine +$make: subroutine $ if f$search(p1).nes."" then DELETE 'p1';* -$ copy 'p2' 'p1' -$ ECHO "Copied ''f$edit(p2,"LOWERCASE")' to ''f$edit(p1,"LOWERCASE")'." -$endsubroutine +$ create 'p1' +$ if f$trnlnm("IFILE$").nes."" then close/noLog ifile$ +$ open/Append ifile$ 'p1' +$ write ifile$ "#include ""''f$string(p2 - "[.config]")'""" +$ close ifile$ +$ ECHO "Created ''p1' for ''p2'." +$endsubroutine !make diff --git a/gas/config/vms-conf.h b/gas/config/vms-conf.h index c29cd3b070..da722a0a06 100644 --- a/gas/config/vms-conf.h +++ b/gas/config/vms-conf.h @@ -28,12 +28,21 @@ /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ #define STACK_DIRECTION (-1) +/* Define if lex declares yytext as a char * by default, not a char[]. */ +#undef YYTEXT_POINTER + +/* Name of package. */ +#undef PACKAGE + +/* Version of package. */ +#undef VERSION + /* Should gas use high-level BFD interfaces? */ #undef BFD_ASSEMBLER @@ -57,17 +66,27 @@ #define TARGET_OS "vms" #define TARGET_VENDOR "dec" +/* Sometimes the system header files don't declare strstr. */ +#undef NEED_DECLARATION_STRSTR + /* Sometimes the system header files don't declare malloc and realloc. */ #undef NEED_DECLARATION_MALLOC /* Sometimes the system header files don't declare free. */ #undef NEED_DECLARATION_FREE +/* Sometimes the system header files don't declare sbrk. */ +#undef NEED_DECLARATION_SBRK + /* Sometimes errno.h doesn't declare errno itself. */ #undef NEED_DECLARATION_ERRNO #undef MANY_SEGMENTS +/* The configure script defines this for some targets based on the + target name used. It is not always defined. */ +#undef TARGET_BYTES_BIG_ENDIAN + /* Needed only for some configurations that can produce multiple output formats. */ #undef DEFAULT_EMULATION @@ -90,9 +109,22 @@ #undef M68KCOFF #undef M88KCOFF +/* Using cgen code? */ +#undef USING_CGEN + +/* Needed only for sparc configuration. */ +#undef DEFAULT_ARCH + +/* Needed only for PowerPC Solaris. */ +#undef TARGET_SOLARIS_COMMENT + +/* Needed only for SCO 5. */ +#undef SCO_ELF + /* Define if you have the remove function. */ #define HAVE_REMOVE +/* Define if you have the sbrk function. */ /* sbrk() is available, but we don't want gas to use it. */ #undef HAVE_SBRK diff --git a/gas/vmsconf.sh b/gas/vmsconf.sh index 4ae20e05a4..014538a154 100644 --- a/gas/vmsconf.sh +++ b/gas/vmsconf.sh @@ -1,6 +1,7 @@ #!/bin/sh cat << 'EOF' +$!make-gas.com $! Set the def dir to proper place for use in batch. Works for interactive to. $flnm = f$enviroment("PROCEDURE") ! get current procedure name $set default 'f$parse(flnm,,,"DEVICE")''f$parse(flnm,,,"DIRECTORY")' @@ -31,6 +32,23 @@ $ !write sys$output "constant variables are handled. Failure to include this" $ !write sys$output "will result in linker warning messages about mismatched $ !write sys$output "psect attributes." $! +$ gas_host="vms" +$ arch_indx = 1 + ((f$getsyi("CPU").ge.128).and.1) ! vax==1, alpha==2 +$ arch = f$element(arch_indx,"|","|VAX|Alpha|") +$ if arch.eqs."VAX" +$ then +$ cpu_type="vax" +$ obj_format="vms" +$ atof="vax" +$ else +$ cpu_type="alpha" +$ obj_format="evax" +$ atof="ieee" +$ endif +$ emulation="generic" +$! +$ COPY = "copy/noLog" +$! $ C_DEFS :="""VMS""" $! C_DEFS :="""VMS""","""const=""" $ C_INCLUDES = "/Include=([],[.config],[-.include],[-.include.aout])" @@ -58,6 +76,9 @@ $assign 'opcode_dir' opcode/tran=conc $! $ set verify $! +$ gcc 'c_flags'/Define=('C_DEFS')/Object=[]tc-'cpu_type'.obj [.config]tc-'cpu_type'.c +$ gcc 'c_flags'/Define=('C_DEFS')/Object=[]obj-'obj_format'.obj [.config]obj-'obj_format'.c +$ gcc 'c_flags'/Define=('C_DEFS')/Object=[]atof-'atof'.obj [.config]atof-'atof'.c EOF cfiles="`echo $* | sed -e 's/\.o/.c/g' -e 's!../\([^ /]*\)/\([^ /]*\.c\)![-.\1]\2!g'`" @@ -77,11 +98,16 @@ done cat << 'EOF' $link: $!'f$verify(0)' -$ set verify=(Proc,noImag) -$ link/noMap/Exec=gcc-as version.opt/Opt+sys$input:/Opt +$ if f$trnlnm("IFILE$").nes."" then close/noLog ifile$ +$ create gcc-as.opt ! ! Linker options file for GNU assembler ! +$ open/Append ifile$ gcc-as.opt +$ write ifile$ "tc-''cpu_type'.obj" +$ write ifile$ "obj-''obj_format'.obj" +$ write ifile$ "atof-''atof'.obj" +$ COPY sys$input: ifile$: EOF for obj in $* ; do @@ -94,6 +120,9 @@ cat << 'EOF' gnu_cc:[000000]gcclib.olb/Lib,sys$library:vaxcrtl.olb/Lib ! Tell linker exactly what psect attributes we want -- match VAXCRTL. psect_attr=ENVIRON,long,pic,ovr,rel,gbl,noshr,noexe,rd,wrt +$ close ifile$ +$ set verify=(Proc,noImag) +$ link/noMap/Exec=gcc-as.exe gcc-as.opt/Opt,version.opt/Opt $! $bail: exit $status + 0*f$verify(v) !'f$verify(0)' EOF