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.
This commit is contained in:
Tristan Gingold 2009-09-01 13:38:26 +00:00
parent e06ae0d430
commit fb7924623e
5 changed files with 144 additions and 52 deletions

View File

@ -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.

View 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

View 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
$ 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.h
$ write outfile "#include ""tc-''arch'.h"""
$ close outfile
$! Target specific information
$ 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

View 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

View File

@ -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]
$ 'MAKE "ARCH=ALPHA" "OPT=''OPT'"
$ @build
$ set def [-.libiberty]
$ 'MAKE "ARCH=ALPHA" "OPT=''OPT'"
$ @build
$ set def [-.opcodes]
$ 'MAKE "ARCH=ALPHA" "OPT=''OPT'"
$ @build
$ set def [-.binutils]
$ 'MAKE "ARCH=ALPHA" "OPT=''OPT'"
$ @build
$ set def [-.gas]
$ 'MAKE "ARCH=ALPHA" "OPT=''OPT'"
$ @build
$ set def [-]
$ endif
$ endif
$ if P1 .EQS. "MAKE"
$ then
$ ARCH=F$GETSYI("ARCH_NAME")
$ ARCH=F$EDIT(arch,"UPCASE")
$ set def [.bfd]
$ 'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
$ set def [-.libiberty]
$ 'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
$ set def [-.opcodes]
$ 'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
$ set def [-.binutils]
$ 'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
$ set def [-.gas]
$ 'MAKE "ARCH=''ARCH'" "OPT=''OPT'"
$ set def [-]
$ endif