summaryrefslogtreecommitdiff
path: root/makefile.vms
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2000-01-22 05:43:03 +0000
committerPaul Smith <psmith@gnu.org>2000-01-22 05:43:03 +0000
commit5577cdc2616262ae89c28cda49b5dd5449be472d (patch)
tree9e5b67f4754ce5a2d64bad43d28a7eaf093b6274 /makefile.vms
parentb7b83d6398e8e552dd1b9d70d18d7262753e03d4 (diff)
downloadgunmake-5577cdc2616262ae89c28cda49b5dd5449be472d.tar.gz
* Merge VMS patches by Hartmut Becker.
Diffstat (limited to 'makefile.vms')
-rw-r--r--makefile.vms41
1 files changed, 32 insertions, 9 deletions
diff --git a/makefile.vms b/makefile.vms
index 9b8208a..9a780d8 100644
--- a/makefile.vms
+++ b/makefile.vms
@@ -2,7 +2,8 @@
# This file is part of GNU Make.
#
# VMS extensions from GNU Make 3.60 imported by
-# Klaus Kämpf (kkaempf@progis.de) of proGIS Software, Aachen, Germany
+# Klaus Kämpf (kkaempf@rmi.de)
+# Modified for version 3.78.1 by Hartmut.Becker@compaq.com.
#
# GNU Make is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -19,7 +20,7 @@
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
-CC = cc/warn
+CC = cc
CP = copy
%.obj: %.c
@@ -28,11 +29,23 @@ CP = copy
# Makefile for GNU Make
#
-CFLAGS = $(defines) /debug/noopt/include=([],[.glob])
+ifeq ($(CC),cc)
+CFLAGS = $(defines) /include=([],[.glob])/prefix=all/standard=relaxed
+else
+CFLAGS = $(defines) /include=([],[.glob])
+endif
#LDFLAGS = /deb
LDFLAGS =
+ifeq ($(CC),cc)
defines = /define=("unlink=remove","HAVE_CONFIG_H","VMS","allocated_variable_expand_for_file=alloc_var_expand_for_file")
+else
+ifeq ($(ARCH),VAX)
+defines = /define=("HAVE_CONFIG_H","GCC_IS_NATIVE","VAX")
+else
+defines = /define=("HAVE_CONFIG_H","GCC_IS_NATIVE")
+endif
+endif
LOAD_AVG = /define="NO_LDAV"
@@ -44,12 +57,17 @@ ARCHIVES_SRC = ar.c arscan.c
# System V probably need -lPW for alloca.
# if on vax, uncomment the following line
#LOADLIBES = ,c.opt/opt
-LOADLIBES =,sys$$library:vaxcrtl.olb/lib
+ifeq ($(CC),cc)
+#LOADLIBES =,sys$$library:vaxcrtl.olb/lib
+CRT0 =
+else
+LOADLIBES =,gnu_cc_library:libgcc.olb/lib
+endif
# If your system doesn't have alloca, or the one provided is bad,
# get it from the Emacs distribution and define these.
-ALLOCA = ,alloca.obj
-ALLOCASRC = alloca.c
+#ALLOCA = ,alloca.obj
+#ALLOCASRC = alloca.c
# If there are remote execution facilities defined,
# enable them with switches here (see remote-*.c).
@@ -86,11 +104,14 @@ doc: make.info make.dvi
make.exe: $(objs)
- $(LD)$(LDFLAGS)/exe=$@ $^$(LOADLIBES)
+ $(LD)$(LDFLAGS)/exe=$@ $^$(LOADLIBES)$(CRT0)
.PHONY: clean realclean
clean:
- -$(RM) make.exe;,*.obj;*
+ $$ purge [...]
+ -$(RM) make.exe;,*.obj;
+ -$(RM) *.opt;
+ -$(RM) [.glob]*.obj;
# Automatically generated dependencies.
commands.obj: commands.c make.h dep.h commands.h filedef.h variable.h job.h
@@ -108,7 +129,7 @@ variable.obj: variable.c make.h commands.h variable.h dep.h filedef.h
expand.obj: expand.c make.h commands.h filedef.h variable.h
function.obj: function.c make.h variable.h dep.h commands.h job.h
vpath.obj: vpath.c make.h filedef.h variable.h
-version.obj: version.c
+version.obj: version.c config.h
arscan.obj: arscan.c
ar.obj: ar.c make.h filedef.h
signame.obj: signame.c
@@ -117,6 +138,8 @@ remote-stub.obj: remote-stub.c
[.glob]fnmatch.obj: [.glob]fnmatch.c
getopt.obj: getopt.c
getopt1.obj: getopt1.c
+vmsfunctions.obj: vmsfunctions.c make.h vmsdir.h
+vmsify.obj: vmsify.c make.h
config.h: config.h-vms
$(CP) $< $@