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

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

index 52232d730521ebdda6272770e9fce0fea6671a8c..052504970fe9d7bf5293daa6f590780a64bf8349 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-09-01  Tristan Gingold  <gingold@adacore.com>
+
+       * setup.com: Ported to Itanium VMS.  Can also build using DCL scripts.
+       Remove logical names.
+
 2009-08-31  Dave Korn  <dave.korn.cygwin@gmail.com>
 
        * ltmain.sh (func_normal_abspath): New function.
index de02970404a0b5f04b66bba145ec4a2014929e45..a9a461f28bba479a814f15434dec85e587bcfd0e 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 7d02cf38b7c67d87d0e8ce8e2ef62b8b2f1d2d54..611b142014df87f3457ded47c3eb44a1a5a2a692 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 b645b59b412f4d0e7677e49217f221830fe09399..a34f4a1f1a2258fd5b0d8173ce6892c8048a8bb6 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
 
index 9067f3677e923a3f2acaeb1268ec6b2e51eddb82..b80fbe3565f517be7305ee5434662bb6707a654a 100644 (file)
--- a/setup.com
+++ b/setup.com
@@ -1,38 +1,51 @@
-$! setup files for openVMS/Alpha
 $!
-$ define aout [-.INCLUDE.AOUT]
-$ define coff [-.INCLUDE.COFF]
-$ define elf [-.INCLUDE.ELF]
-$ define nlm [-.INCLUDE.NLM]
-$ define opcode [-.INCLUDE.OPCODE]
+$! Build procedure
 $!
-$! Build procedures
-$!
-$! Note: you need make 3.76
-$ MAKE="gmake_3_76"
-$ OPT=
+$! Note: you need a DCL-compatible gnu make.
+$ MAKE="make381"
+$ OPT=""
 $!
 $ if (P1 .EQS. "CONFIGURE") .OR. (P1 .EQS. "ALL")
 $ then
 $    set def [.bfd]
 $    @configure
+$    set def [-.libiberty]
+$    @configure
+$    set def [-.opcodes]
+$    @configure
 $    set def [-.binutils]
 $    @configure
 $    set def [-.gas]
 $    @configure
 $    set def [-]
 $ endif
-$ if (P1 .EQS. "MAKE") .OR. (P1 .EQS. "ALL")
+$ if (P1 .EQS. "BUILD") .OR. (P1 .EQS. "ALL")
+$ then
+$   set def [.bfd]
+$   @build
+$   set def [-.libiberty]
+$   @build
+$   set def [-.opcodes]
+$   @build
+$   set def [-.binutils]
+$   @build
+$   set def [-.gas]
+$   @build
+$   set def [-]
+$ endif
+$ if P1 .EQS. "MAKE"
 $ then
+$   ARCH=F$GETSYI("ARCH_NAME")
+$   ARCH=F$EDIT(arch,"UPCASE")
 $   set def [.bfd]
-$   'MAKE "ARCH=ALPHA" "OPT=''OPT'"
+$   'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
 $   set def [-.libiberty]
-$   'MAKE "ARCH=ALPHA" "OPT=''OPT'"
+$   'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
 $   set def [-.opcodes]
-$   'MAKE "ARCH=ALPHA" "OPT=''OPT'"
+$   'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
 $   set def [-.binutils]
-$   'MAKE "ARCH=ALPHA" "OPT=''OPT'"
+$   'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
 $   set def [-.gas]
-$   'MAKE "ARCH=ALPHA" "OPT=''OPT'"
+$   'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
 $   set def [-]
-$ endif
\ No newline at end of file
+$ endif