summaryrefslogtreecommitdiff
path: root/readme.vms
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2004-05-16 19:16:52 +0000
committerPaul Smith <psmith@gnu.org>2004-05-16 19:16:52 +0000
commit08c8105c5468ff743d2f2ff2fdf3b77a6313b53e (patch)
tree51954f0469a6d70c1b58fd30a5955aa5e4b65c86 /readme.vms
parente334942e573ea8a4416eca0afafcaf45c3bba06f (diff)
downloadmake-git-08c8105c5468ff743d2f2ff2fdf3b77a6313b53e.tar.gz
Various enhancements
- OS/2 Patches - OpenVMS updates - Sanitize the handling of -include/sinclude with and without -k - Fix the setting of $< for order-only rules.
Diffstat (limited to 'readme.vms')
-rw-r--r--readme.vms51
1 files changed, 51 insertions, 0 deletions
diff --git a/readme.vms b/readme.vms
index d4a9667c..6e1436f1 100644
--- a/readme.vms
+++ b/readme.vms
@@ -1,3 +1,54 @@
+This is the VMS version of GNU Make, updated by Hartmut Becker
+
+Changes are based on GNU make 3.80. Latest changes are for OpenVMS/I64
+and new VMS CRTLs.
+
+This version was tested on OpenVMS/I64 V8.2 (field test) with hp C
+X7.1-024 OpenVMS/Alpha V7.3-2 with Compaq C V6.5-001 and OpenVMS/VAX 7.1
+with Compaq C V6.2-003 There are still some warning and informational
+message issued by the compilers.
+
+Build instructions
+Make a 1st version
+ $ @makefile.com
+ $ rena make.exe 1st-make.exe
+Use the 1st version to generate a 2nd version
+ $ mc sys$disk:[]1st-make clean
+ $ mc sys$disk:[]1st-make
+Verify your 2nd version
+ $ rena make.exe 2nd-make.exe
+ $ mc sys$disk:[]2nd-make clean
+ $ mc sys$disk:[]2nd-make
+
+Changes:
+
+. In default.c define variable ARCH as IA64 for VMS on Itanium systems.
+
+. In makefile.vms avoid name collision for glob and globfree.
+
+In newer version of the VMS CRTL there are glob and globfree implemented.
+Compiling and linking may result in
+
+ %ILINK-W-MULDEFLNKG, symbol DECC$GLOBFREE has subsequent linkage definition
+ in module DECC$SHR file SYS$COMMON:[SYSLIB]DECC$SHR.EXE;1
+ %ILINK-W-MULDEF, symbol DECC$GLOBFREE multiply defined
+ in module DECC$SHR file SYS$COMMON:[SYSLIB]DECC$SHR.EXE;1
+
+linker messages (and similar for DECC$GLOB). The messages just say, that
+globfree is a known CRTL whose name was mapped by the compiler to
+DECC$GLOBFREE. This is done in glob.c as well, so this name is defined
+twice. One possible solution is to use the VMS versions of glob and
+globfree. However, then the build environment needs to figure out if
+there is a new CRTL supporting these or not. This adds complexity. Even
+more, these functions return VMS file specifications, which is not
+expected by the other make sources. There is a switch at run time (a VMS
+logical DECC$GLOB_UNIX_STYLE), which can be set to get Unix style
+names. This may conflict with other software. The recommended solution
+for this is to set this switch just prior to calling main: in an
+initialization routine. This adds more complexity and more VMS specific
+code. It is easier to tell the compiler NOT to map the routine names
+with a simple change in makefile.vms.
+
This is the VMS port of GNU Make done by Hartmut.Becker@compaq.com.
It is based on the specific version 3.77k and on 3.78.1. 3.77k was done