OSDN Git Service

2009-09-01 Tristan Gingold <gingold@adacore.com>
authorgingold <gingold>
Tue, 1 Sep 2009 13:37:00 +0000 (13:37 +0000)
committergingold <gingold>
Tue, 1 Sep 2009 13:37:00 +0000 (13:37 +0000)
* makefile.vms: Adjust include pathes.  Remove useless vaxctrl
library.
* configure.com: Ported to Itanium VMS.  Create build.com DCL script.
Make edit silent.

gas/ChangeLog
gas/configure.com
gas/makefile.vms

index de02970..a9a461f 100644 (file)
@@ -1,3 +1,10 @@
+2009-09-01  Tristan Gingold  <gingold@adacore.com>
+
+       * makefile.vms: Adjust include pathes.  Remove useless vaxctrl
+       library.
+       * configure.com: Ported to Itanium VMS.  Create build.com DCL script.
+       Make edit silent.
+
 2009-09-01  Jie Zhang  <jie.zhang@analog.com>
 
        * config/bfin-parse.y (asm_1): Only PREG and DREG are allowed
index 7d02cf3..611b142 100644 (file)
@@ -4,27 +4,55 @@ $! files for a VMS system.  We do not use the configure script, since we
 $! do not have /bin/sh to execute it.
 $!
 $!
-$ arch_indx = 1 + ((f$getsyi("CPU").ge.128).and.1)     ! vax==1, alpha==2
-$ arch = f$element(arch_indx,"|","|VAX|Alpha|")
-$!
-$ if arch.eqs."Alpha"
+$ arch=F$GETSYI("ARCH_NAME")
+$ arch=F$EDIT(arch,"LOWERCASE")
+$ if arch.eqs."alpha"
+$ then
+$   format = "evax"
+$   target_alias = "alpha-dec-openvms"
+$   target_canonical = "alpha-dec-openvms"
+$ endif
+$ if arch.eqs."ia64"
 $ then
+$   format = "elf"
+$   target_alias = "ia64-openvms"
+$   target_canonical = "ia64-unknown-openvms"
+$ endif
+$!
+$!
+$ write sys$output "Generate targ-cpu.[ch]"
+$!
+$! Target specific information
+$ open/write outfile targ-cpu.h
+$ write outfile "#include ""tc-''arch'.h"""
+$ close outfile
 $! Target specific information
-$   create targ-cpu.h
-#include "tc-alpha.h"
-$   create targ-cpu.c
-#include "tc-alpha.c"
-$   create targ-env.h
-#define TE_VMS
-#include "obj-format.h"
-$
+$ open/write outfile targ-cpu.c
+$ write outfile "#include ""tc-''arch'.c"""
+$ close outfile
+$!
+$ write sys$output "Generate targ-env.h"
+$!
+$ create targ-env.h
+#include "te-generic.h"
+$!
+$ write sys$output "Generate obj-format.[ch]"
+$!
 $! Code to handle the object file format.
-$  create obj-format.h
-#include "obj-evax.h"
-$  create obj-format.c
-#include "obj-evax.c"
-$  create atof-targ.c
+$ open/write outfile obj-format.h
+$ write outfile "#include ""obj-''format'.h"""
+$ close outfile
+$ open/write outfile obj-format.c
+$ write outfile "#include ""obj-''format'.c"""
+$ close outfile
+$!
+$ write sys$output "Generate atof-targ.c"
+$!
+$ create atof-targ.c
 #include "atof-ieee.c"
+$!
+$ write sys$output "Generate gas/config.h"
+$!
 $  create config-vms.in
 /* config.h.  Generated by configure.com.  */
 /* Define to 1 if using `alloca.c'. */
@@ -51,6 +79,9 @@ $  create config-vms.in
 #include <builtins.h>
 #define C_alloca(x) __ALLOCA(x)
 
+/* Define to 1 if you have the `basename' function. */
+#define HAVE_DECL_BASENAME 1
+
 /* Is the prototype for getopt in <unistd.h> in the expected format? */
 #define HAVE_DECL_GETOPT 1
 
@@ -119,15 +150,6 @@ $  create config-vms.in
 /* Define to 1 if you have the ANSI C header files. */
 #define STDC_HEADERS 1
 
-/* Target alias. */
-#define TARGET_ALIAS "alpha-dec-openvms"
-
-/* Canonical target. */
-#define TARGET_CANONICAL "alpha-dec-openvms"
-
-/* Target CPU. */
-#define TARGET_CPU "alpha"
-
 /* Target OS. */
 #define TARGET_OS "openvms"
 
@@ -143,13 +165,12 @@ $  create config-vms.in
 #undef YYTEXT_POINTER
 
 /* Version number of package */
-$
-$ endif
 $!
 $! Get VERSION from ../bfd/configure.in
 $!
 $ edit/tpu/nojournal/nosection/nodisplay/command=sys$input
 $DECK
+   set (success, off);
    mfile := CREATE_BUFFER("mfile", "[-.bfd]configure.in");
    match_pos := SEARCH_QUIETLY('AM_INIT_AUTOMAKE(bfd, ', FORWARD, EXACT, mfile);
    IF match_pos <> 0 THEN;
@@ -167,6 +188,56 @@ $DECK
    COPY_TEXT("""");
    WRITE_FILE(file, "config.h");
    QUIT
-$  EOD
+$EOD
 $del/nolog config-vms.in;
+$ open/append outfile config.h
+$  write outfile ""
+$  write outfile "/* Target alias. */"
+$  write outfile "#define TARGET_ALIAS ""''target_alias'"""
+$  write outfile ""
+$  write outfile "/* Canonical target. */"
+$  write outfile "#define TARGET_CANONICAL ""''target_canonical'"""
+$  write outfile ""
+$  write outfile "/* Target CPU. */"
+$  write outfile "#define TARGET_CPU ""'arch'"""
+$ close outfile
+$!
+$ write sys$output "Generate gas/build.com"
+$!
+$ create build.com
+$DECK
+$ DEFS=""
+$ OPT="/noopt/debug"
+$ CFLAGS=OPT + "/include=([],""../include"",[-.bfd],""../"",[.config])" +-
+ "/name=(as_is,shortened)" +-
+ "/prefix=(all,exc=(""getopt"",""optarg"",""optopt"",""optind"",""opterr""))"
+$ FILES="obj-format,atof-targ,app,as,atof-generic,cond,depend,"+-
+  "expr,flonum-konst,flonum-copy,flonum-mult,frags,hash,input-file,"+-
+  "input-scrub,literal,messages,output-file,read,subsegs,symbols,write,"+-
+  "listing,ecoff,stabs,sb,macro,ehopt,dw2gencfi,dwarf2dbg,remap"
+$ LIBBFD = ",[-.bfd]libbfd.olb/lib"
+$ LIBIBERTY = ",[-.libiberty]libiberty.olb/lib"
+$ LIBOPCODES = ",[-.opcodes]libopcodes.olb/lib"
+$!
+$ write sys$output "CFLAGS=",CFLAGS
+$ if p1.nes."LINK"
+$ then
+$   write sys$output "Compiling targ-cpu.c (/noopt)"
+$   cc 'CFLAGS /noopt targ-cpu
+$   NUM = 0
+$   LOOP:
+$     F = F$ELEMENT(NUM,",",FILES)
+$     IF F.EQS."," THEN GOTO END
+$     write sys$output "Compiling ", F, ".c"
+$     cc 'CFLAGS 'F.c
+$     NUM = NUM + 1
+$     GOTO LOOP
+$   END:
+$ endif
+$ purge
+$!
+$ write sys$output "Building as.exe"
+$ AS_OBJS="targ-cpu," + FILES + LIBOPCODES +  LIBBFD +  LIBIBERTY
+$ link/exe=as 'AS_OBJS
 $exit
+
index b645b59..a34f4a1 100644 (file)
@@ -5,7 +5,6 @@
 #
 #CC=gcc
 CC=cc
-ARCH=ALPHA
 
 ifeq ($(CC),gcc)
 DEFS=
@@ -16,10 +15,9 @@ else
 #DEFS=/define=("VMS_DEBUG","DEBUG2","DEBUG3","DEBUG5","DEBUG_SYMS","DEBUG_ALPHA")
 OPT=/noopt/debug
 CFLAGS=/names=(as_is,shortened)\
- /include=([],[-.bfd],[.config],[-.include],[-])$(DEFS)$(OPT)\
+ /include=([],[-.bfd],[.config],"../include","../")$(DEFS)$(OPT)\
  /prefix=(all,except=("getopt","optarg","optopt","optind","opterr"))
 #LFLAGS=/debug/map=as.map
-LIBS=,sys$$library:vaxcrtl.olb/lib
 endif
 
 OBJS=targ-cpu.obj,obj-format.obj,atof-targ.obj,app.obj,as.obj,atof-generic.obj,\
@@ -30,10 +28,8 @@ OBJS=targ-cpu.obj,obj-format.obj,atof-targ.obj,app.obj,as.obj,atof-generic.obj,\
   macro.obj,ehopt.obj,dw2gencfi.obj,dwarf2dbg.obj,remap.obj
 
 LIBIBERTY = [-.libiberty]libiberty.olb
-
 LIBBFD = [-.bfd]libbfd.olb
 LIBOPCODES = [-.opcodes]libopcodes.olb
-BFDDEP = [-.bfd]bfd.h
 
 all: as.exe