 Committing in .

 Update makefiles for VMS due to obsolete files

 Modified Files:
 	Mesa/src/descrip.mms Mesa/src/mms_depend
 ----------------------------------------------------------------------

# Makefile for core library for VMS
# contributed by Jouk Jansen  joukj@crys.chem.uva.nl
# Last revision : 3 May 1999

.first
	define gl [-.include.gl]

.include [-]mms-config.

##### MACROS #####

VPATH = RCS

INCDIR = [-.include]
LIBDIR = [-.lib]
CFLAGS = /include=($(INCDIR),[])/define=(FBIND=1)

CORE_SOURCES = accum.c alpha.c alphabuf.c attrib.c \
bitmap.c blend.c clip.c colortab.c context.c copypix.c depth.c \
dispatch.c \
dlist.c drawpix.c enable.c eval.c feedback.c fog.c \
get.c hash.c image.c imaging.c light.c lines.c logic.c masking.c matrix.c \
mem.c glapi.c glapinoop.c \
glmisc.c mmath.c mthreads.c pb.c pixel.c points.c polygon.c \
quads.c rastpos.c readpix.c rect.c scissor.c shade.c span.c \
stencil.c teximage.c texobj.c texstate.c texture.c translate.c triangle.c \
varray.c winpos.c vb.c vbcull.c vbfill.c vbrender.c vbxform.c xform.c \
zoom.c bbox.c cva.c vector.c vbindirect.c config.c enums.c extensions.c \
pipeline.c stages.c vertices.c [.x86]x86.c

DRIVER_SOURCES = [.x]glxapi.c [.x]fakeglx.c [.x]xfonts.c \
[.x]xmesa1.c [.x]xmesa2.c [.x]xmesa3.c [.x]xmesa4.c \
[.osmesa]osmesa.c \
[.svga]svgamesa.c \
[.fx]fxapi.c [.fx]fxdd.c [.fx]fxddtex.c [.fx]fxvsetup.c [.fx]fxsetup.c \
[.fx]fxtrifuncs.c \
[.fx]fxrender.c [.fx]fxtexman.c [.fx]fxddspan.c [.fx]fxcva.c

ASM_SOURCES =

OBJECTS =\
accum.obj,alpha.obj,alphabuf.obj,attrib.obj,\
bitmap.obj,blend.obj,clip.obj,colortab.obj,context.obj,copypix.obj,depth.obj,\
dlist.obj,drawpix.obj,enable.obj,eval.obj,feedback.obj,fog.obj

OBJECTS3=get.obj,hash.obj,image.obj,light.obj,lines.obj,logic.obj,masking.obj,\
matrix.obj,glapi.obj,glapinoop.obj,dispatch.obj,imaging.obj,mem.obj,\
glmisc.obj,mmath.obj,mthreads.obj,pb.obj,pixel.obj,points.obj

OBJECTS7=polygon.obj,\
quads.obj,rastpos.obj,readpix.obj,rect.obj,scissor.obj,shade.obj,span.obj

OBJECTS4=stencil.obj,teximage.obj,texobj.obj,texstate.obj,texture.obj,translate.obj,\
triangle.obj,varray.obj,winpos.obj,vb.obj,vbcull.obj,vbfill.obj,vbrender.obj

OBJECTS6=vbxform.obj,xform.obj,zoom.obj,bbox.obj,cva.obj,vector.obj,vbindirect.obj,\
	config.obj,enums.obj,extensions.obj,pipeline.obj,stages.obj,\
	vertices.obj,[.x86]x86.obj

OBJECTS2=[.x]glxapi.obj,[.x]fakeglx.obj,[.x]xfonts.obj,\
[.x]xmesa1.obj,[.x]xmesa2.obj,[.x]xmesa3.obj,[.x]xmesa4.obj,\
[.osmesa]osmesa.obj,\
[.svga]svgamesa.obj

OBJECTS5=[.fx]fxapi.obj,[.fx]fxdd.obj,[.fx]fxddtex.obj,[.fx]fxvsetup.obj,\
[.fx]fxsetup.obj,\
[.fx]fxtrifuncs.obj,\
[.fx]fxrender.obj,[.fx]fxtexman.obj,[.fx]fxddspan.obj,[.fx]fxcva.obj

##### RULES #####

VERSION=Mesa V3.1

##### TARGETS #####
# Make the library
$(LIBDIR)$(GL_LIB) : $(OBJECTS),$(OBJECTS2) $(OBJECTS3) $(OBJECTS4)\
	$(OBJECTS5) $(OBJECTS7) $(OBJECTS6)
.ifdef SHARE
  @ WRITE_ SYS$OUTPUT "  generating mesagl1.opt"
  @ OPEN_/WRITE FILE  mesagl1.opt
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "! mesagl1.opt generated by DESCRIP.$(MMS_EXT)"
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "IDENTIFICATION=""$(VERSION)"""
  @ WRITE_ FILE "GSMATCH=LEQUAL,3,1
  @ WRITE_ FILE "$(OBJECTS)"
  @ WRITE_ FILE "$(OBJECTS3)"
  @ WRITE_ FILE "$(OBJECTS4)"
  @ WRITE_ FILE "$(OBJECTS7)"
  @ WRITE_ FILE "$(OBJECTS6)"
  @ WRITE_ FILE "$(OBJECTS2)"
  @ WRITE_ FILE "$(OBJECTS5)"
  @ WRITE_ FILE "SYS$SHARE:DECW$XEXTLIBSHR/SHARE"
  @ WRITE_ FILE "SYS$SHARE:DECW$XLIBSHR/SHARE"
  @ CLOSE_ FILE
  @ WRITE_ SYS$OUTPUT "  generating mesagl.map ..."
  @ LINK_/NODEB/NOSHARE/NOEXE/MAP=mesagl.map/FULL mesagl1.opt/OPT
  @ WRITE_ SYS$OUTPUT "  analyzing mesagl.map ..."
  @ @[-.vms]ANALYZE_MAP.COM mesagl.map mesagl.opt
  @ WRITE_ SYS$OUTPUT "  linking $(GL_LIB) ..."
  @ LINK_/NODEB/SHARE=$(GL_LIB)/MAP=mesagl.map/FULL mesagl1.opt/opt,mesagl.opt/opt
.else
  @ $(MAKELIB) $(GL_LIB) $(OBJECTS)
  @ library $(GL_LIB) $(OBJECTS2)
  @ library $(GL_LIB) $(OBJECTS3)
  @ library $(GL_LIB) $(OBJECTS4)
  @ library $(GL_LIB) $(OBJECTS5)
  @ library $(GL_LIB) $(OBJECTS7)
  @ library $(GL_LIB) $(OBJECTS6)
.endif
  @ rename $(GL_LIB)* $(LIBDIR)

clean :
	purge
	delete *.obj;*

triangle.obj : triangle.c

[.x86]x86.obj : [.x86]x86.c
	$(CC) $(CFLAGS) /obj=[.x86]x86.obj [.x86]x86.c
[.x]glxapi.obj : [.x]glxapi.c
	$(CC) $(CFLAGS) /obj=[.x]glxapi.obj [.x]glxapi.c
[.x]fakeglx.obj : [.x]fakeglx.c
	$(CC) $(CFLAGS) /obj=[.x]fakeglx.obj [.x]fakeglx.c
[.x]xfonts.obj : [.x]xfonts.c
	$(CC) $(CFLAGS) /obj=[.x]xfonts.obj [.x]xfonts.c
[.x]xmesa1.obj : [.x]xmesa1.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa1.obj [.x]xmesa1.c
[.x]xmesa2.obj : [.x]xmesa2.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa2.obj [.x]xmesa2.c
[.x]xmesa3.obj : [.x]xmesa3.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa3.obj [.x]xmesa3.c
[.x]xmesa4.obj : [.x]xmesa4.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa4.obj [.x]xmesa4.c
[.osmesa]osmesa.obj : [.osmesa]osmesa.c
	$(CC) $(CFLAGS) /obj=[.osmesa]osmesa.obj [.osmesa]osmesa.c
[.svga]svgamesa.obj : [.svga]svgamesa.c
	$(CC) $(CFLAGS) /obj=[.svga]svgamesa.obj [.svga]svgamesa.c
[.fx]fxapi.obj : [.fx]fxapi.c
	$(CC) $(CFLAGS) /obj=[.fx]fxapi.obj [.fx]fxapi.c
[.fx]fxcva.obj : [.fx]fxcva.c
	$(CC) $(CFLAGS) /obj=[.fx]fxcva.obj [.fx]fxcva.c
[.fx]fxdd.obj : [.fx]fxdd.c
	$(CC) $(CFLAGS) /obj=[.fx]fxdd.obj [.fx]fxdd.c
[.fx]fxddtex.obj : [.fx]fxddtex.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddtex.obj [.fx]fxddtex.c
[.fx]fxvsetup.obj : [.fx]fxvsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxvsetup.obj [.fx]fxvsetup.c
[.fx]fxsetup.obj : [.fx]fxsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxsetup.obj [.fx]fxsetup.c
[.fx]fxtrifuncs.obj : [.fx]fxtrifuncs.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtrifuncs.obj [.fx]fxtrifuncs.c
[.fx]fxrender.obj : [.fx]fxrender.c
	$(CC) $(CFLAGS) /obj=[.fx]fxrender.obj [.fx]fxrender.c
[.fx]fxtexman.obj : [.fx]fxtexman.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtexman.obj [.fx]fxtexman.c
[.fx]fxddspan.obj : [.fx]fxddspan.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddspan.obj [.fx]fxddspan.c

.include mms_depend.

# Makefile for core library for VMS
# contributed by Jouk Jansen  joukj@crys.chem.uva.nl
# Last revision : 3 May 1999

.first
	define gl [-.include.gl]

.include [-]mms-config.

##### MACROS #####

VPATH = RCS

INCDIR = [-.include]
LIBDIR = [-.lib]
CFLAGS = /include=($(INCDIR),[])/define=(FBIND=1)

CORE_SOURCES = accum.c alpha.c alphabuf.c attrib.c \
bitmap.c blend.c clip.c colortab.c context.c copypix.c depth.c \
dispatch.c \
dlist.c drawpix.c enable.c eval.c feedback.c fog.c \
get.c hash.c image.c imaging.c light.c lines.c logic.c masking.c matrix.c \
mem.c glapi.c glapinoop.c \
glmisc.c mmath.c mthreads.c pb.c pixel.c points.c polygon.c \
quads.c rastpos.c readpix.c rect.c scissor.c shade.c span.c \
stencil.c teximage.c texobj.c texstate.c texture.c translate.c triangle.c \
varray.c winpos.c vb.c vbcull.c vbfill.c vbrender.c vbxform.c xform.c \
zoom.c bbox.c cva.c vector.c vbindirect.c config.c enums.c extensions.c \
pipeline.c stages.c vertices.c [.x86]x86.c

DRIVER_SOURCES = [.x]glxapi.c [.x]fakeglx.c [.x]realglx.c [.x]xfonts.c \
[.x]xmesa1.c [.x]xmesa2.c [.x]xmesa3.c [.x]xmesa4.c \
[.osmesa]osmesa.c \
[.svga]svgamesa.c \
[.fx]fxapi.c [.fx]fxdd.c [.fx]fxddtex.c [.fx]fxvsetup.c [.fx]fxsetup.c \
[.fx]fxtrifuncs.c \
[.fx]fxrender.c [.fx]fxtexman.c [.fx]fxddspan.c [.fx]fxcva.c

ASM_SOURCES =

OBJECTS =\
accum.obj,alpha.obj,alphabuf.obj,attrib.obj,\
bitmap.obj,blend.obj,clip.obj,colortab.obj,context.obj,copypix.obj,depth.obj,\
dlist.obj,drawpix.obj,enable.obj,eval.obj,feedback.obj,fog.obj

OBJECTS3=get.obj,hash.obj,image.obj,light.obj,lines.obj,logic.obj,masking.obj,\
matrix.obj,glapi.obj,glapinoop.obj,dispatch.obj,imaging.obj,mem.obj,\
glmisc.obj,mmath.obj,mthreads.obj,pb.obj,pixel.obj,points.obj

OBJECTS7=polygon.obj,\
quads.obj,rastpos.obj,readpix.obj,rect.obj,scissor.obj,shade.obj,span.obj

OBJECTS4=stencil.obj,teximage.obj,texobj.obj,texstate.obj,texture.obj,translate.obj,\
triangle.obj,varray.obj,winpos.obj,vb.obj,vbcull.obj,vbfill.obj,vbrender.obj

OBJECTS6=vbxform.obj,xform.obj,zoom.obj,bbox.obj,cva.obj,vector.obj,vbindirect.obj,\
	config.obj,enums.obj,extensions.obj,pipeline.obj,stages.obj,\
	vertices.obj,[.x86]x86.obj

OBJECTS2=[.x]glxapi.obj,[.x]fakeglx.obj,[.x]realglx.obj,[.x]xfonts.obj,\
[.x]xmesa1.obj,[.x]xmesa2.obj,[.x]xmesa3.obj,[.x]xmesa4.obj,\
[.osmesa]osmesa.obj,\
[.svga]svgamesa.obj

OBJECTS5=[.fx]fxapi.obj,[.fx]fxdd.obj,[.fx]fxddtex.obj,[.fx]fxvsetup.obj,\
[.fx]fxsetup.obj,\
[.fx]fxtrifuncs.obj,\
[.fx]fxrender.obj,[.fx]fxtexman.obj,[.fx]fxddspan.obj,[.fx]fxcva.obj

##### RULES #####

VERSION=Mesa V3.1

##### TARGETS #####
# Make the library
$(LIBDIR)$(GL_LIB) : $(OBJECTS),$(OBJECTS2) $(OBJECTS3) $(OBJECTS4)\
	$(OBJECTS5) $(OBJECTS7) $(OBJECTS6)
.ifdef SHARE
  @ WRITE_ SYS$OUTPUT "  generating mesagl1.opt"
  @ OPEN_/WRITE FILE  mesagl1.opt
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "! mesagl1.opt generated by DESCRIP.$(MMS_EXT)"
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "IDENTIFICATION=""$(VERSION)"""
  @ WRITE_ FILE "GSMATCH=LEQUAL,3,1
  @ WRITE_ FILE "$(OBJECTS)"
  @ WRITE_ FILE "$(OBJECTS3)"
  @ WRITE_ FILE "$(OBJECTS4)"
  @ WRITE_ FILE "$(OBJECTS7)"
  @ WRITE_ FILE "$(OBJECTS6)"
  @ WRITE_ FILE "$(OBJECTS2)"
  @ WRITE_ FILE "$(OBJECTS5)"
  @ WRITE_ FILE "SYS$SHARE:DECW$XEXTLIBSHR/SHARE"
  @ WRITE_ FILE "SYS$SHARE:DECW$XLIBSHR/SHARE"
  @ CLOSE_ FILE
  @ WRITE_ SYS$OUTPUT "  generating mesagl.map ..."
  @ LINK_/NODEB/NOSHARE/NOEXE/MAP=mesagl.map/FULL mesagl1.opt/OPT
  @ WRITE_ SYS$OUTPUT "  analyzing mesagl.map ..."
  @ @[-.vms]ANALYZE_MAP.COM mesagl.map mesagl.opt
  @ WRITE_ SYS$OUTPUT "  linking $(GL_LIB) ..."
  @ LINK_/NODEB/SHARE=$(GL_LIB)/MAP=mesagl.map/FULL mesagl1.opt/opt,mesagl.opt/opt
.else
  @ $(MAKELIB) $(GL_LIB) $(OBJECTS)
  @ library $(GL_LIB) $(OBJECTS2)
  @ library $(GL_LIB) $(OBJECTS3)
  @ library $(GL_LIB) $(OBJECTS4)
  @ library $(GL_LIB) $(OBJECTS5)
  @ library $(GL_LIB) $(OBJECTS7)
  @ library $(GL_LIB) $(OBJECTS6)
.endif
  @ rename $(GL_LIB)* $(LIBDIR)

clean :
	purge
	delete *.obj;*

triangle.obj : triangle.c

[.x86]x86.obj : [.x86]x86.c
	$(CC) $(CFLAGS) /obj=[.x86]x86.obj [.x86]x86.c
[.x]glxapi.obj : [.x]glxapi.c
	$(CC) $(CFLAGS) /obj=[.x]glxapi.obj [.x]glxapi.c
[.x]fakeglx.obj : [.x]fakeglx.c
	$(CC) $(CFLAGS) /obj=[.x]fakeglx.obj [.x]fakeglx.c
[.x]realglx.obj : [.x]realglx.c
	$(CC) $(CFLAGS) /obj=[.x]realglx.obj [.x]realglx.c
[.x]xfonts.obj : [.x]xfonts.c
	$(CC) $(CFLAGS) /obj=[.x]xfonts.obj [.x]xfonts.c
[.x]xmesa1.obj : [.x]xmesa1.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa1.obj [.x]xmesa1.c
[.x]xmesa2.obj : [.x]xmesa2.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa2.obj [.x]xmesa2.c
[.x]xmesa3.obj : [.x]xmesa3.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa3.obj [.x]xmesa3.c
[.x]xmesa4.obj : [.x]xmesa4.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa4.obj [.x]xmesa4.c
[.osmesa]osmesa.obj : [.osmesa]osmesa.c
	$(CC) $(CFLAGS) /obj=[.osmesa]osmesa.obj [.osmesa]osmesa.c
[.svga]svgamesa.obj : [.svga]svgamesa.c
	$(CC) $(CFLAGS) /obj=[.svga]svgamesa.obj [.svga]svgamesa.c
[.fx]fxapi.obj : [.fx]fxapi.c
	$(CC) $(CFLAGS) /obj=[.fx]fxapi.obj [.fx]fxapi.c
[.fx]fxcva.obj : [.fx]fxcva.c
	$(CC) $(CFLAGS) /obj=[.fx]fxcva.obj [.fx]fxcva.c
[.fx]fxdd.obj : [.fx]fxdd.c
	$(CC) $(CFLAGS) /obj=[.fx]fxdd.obj [.fx]fxdd.c
[.fx]fxddtex.obj : [.fx]fxddtex.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddtex.obj [.fx]fxddtex.c
[.fx]fxvsetup.obj : [.fx]fxvsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxvsetup.obj [.fx]fxvsetup.c
[.fx]fxsetup.obj : [.fx]fxsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxsetup.obj [.fx]fxsetup.c
[.fx]fxtrifuncs.obj : [.fx]fxtrifuncs.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtrifuncs.obj [.fx]fxtrifuncs.c
[.fx]fxrender.obj : [.fx]fxrender.c
	$(CC) $(CFLAGS) /obj=[.fx]fxrender.obj [.fx]fxrender.c
[.fx]fxtexman.obj : [.fx]fxtexman.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtexman.obj [.fx]fxtexman.c
[.fx]fxddspan.obj : [.fx]fxddspan.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddspan.obj [.fx]fxddspan.c

.include mms_depend.


Save changes before switch to fix WILDCARD bug.

!++
!   MMK_PCSI.MMS
!
!   Description file for generating PCSI product description files.
!
!   Copyright (c) 2013, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   25-FEB-2011 V1.0    Sneddon     Initial coding.
!--
PRODUCER = $(MG_PRODUCER)
PRODUCT  = MMK
VERSION  = $(MMK_VERSION)

ECHO = WRITE SYS$OUTPUT
.IF MMSALPHA
ARCH = AXPVMS
.ELSIF MMSIA64
ARCH = I64VMS
.ELSIF MMSVAX
ARCH = VAXVMS
.ENDIF
!DAYTIME != SHOW DAYTIME
!DATE = $(WORD 1,$(DAYTIME))
GEN = 20130226

BINDIR = MG_BIN:[MMK]
KITDIR = MG_KIT:[MMK]

A = $(FOREACH FILE,$(1),  file $(NOTDIR $(FILE)) generation $(GEN) archive ;)

DESCRIPTION :
    @ $(ECHO) "product $(PRODUCER) $(ARCH) $(PRODUCT) $(VERSION) full ;"
    @ $(ECHO) "$(WILDCARD $(BINDIR)*.EXE)"
    @ $(ECHO) "$(CALL A,$(WILDCARD $(BINDIR)*.EXE))"
    @ $(ECHO) "end product ;"
    @ CONTINUE

TEXT :
    @ CONTINUE

!++
!   MMK_PCSI.MMS
!
!   Description file for generating PCSI product description files.
!
!   Copyright (c) 2013, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   25-FEB-2011 V1.0    Sneddon     Initial coding.
!--
PRODUCER = $(MG_PRODUCER)
PRODUCT  = MMK
VERSION  = $(MMK_VERSION)

ECHO = WRITE SYS$OUTPUT
.IF MMSALPHA
ARCH = AXPVMS
.ELSIF MMSIA64
ARCH = I64VMS
.ELSIF MMSVAX
ARCH = VAXVMS
.ENDIF
DAYTIME != SHOW DAYTIME
DATE = $(WORD 1,$(DAYTIME))

A = $(FOREACH FILE,$(1),  file $(NOTDIR $(FILE)) generation $(GEN) archive ;)

DESCRIPTION :
    @ $(ECHO) "product $(PRODUCER) $(ARCH) $(PRODUCT) $(VERSION) full ;"
    @ $(ECHO) "$(CALL A,$(WILDCARD $(KITDIR)*.EXE))"
    @ $(ECHO) "end product ;"
    @ CONTINUE

TEXT :
    @ CONTINUE


Fix file attributes so this is a STMLF file.

!++
!   GENERATE_SYMBOLS.MMS
!
!   Description file for generating version symbols from newly build
!   MMK for use in building documentation.
!
!   Copyright (c) 2012, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   06-AUG-2012 V1.0    Sneddon     Initial coding.
!--
ECHO = WRITE SYS$OUTPUT

GENERATE_SYMBOLS :
    @ months = "/January/February/March/April/May/June/July/August/September/October/November/December"
    @ now = F$CVTIME (, "ABSOLUTE")
    @ year = F$CVTIME  (now,, "YEAR")
    @ mon  = F$INTEGER (F$CVTIME (now,, "MONTH"))
    @ month = F$ELEMENT (mon, "/", months)
    @ amonth = F$CVTIME (now, "ABSOLUTE", "MONTH")
    @ day = F$CVTIME (now,, "DAY")
    @ $(ECHO) "<DEFINE_SYMBOL>(COPYYEAR\''year')"
    @ $(ECHO) "<DEFINE_SYMBOL>(RELDATE\''day'-''amonth'-''year')"
    @ $(ECHO) "<DEFINE_SYMBOL>(RELMONTH\''month', ''year')"
    @ $(ECHO) "<DEFINE_SYMBOL>(PRTDATE\''day' ''month' ''year')"
    @ $(ECHO) "<DEFINE_SYMBOL>(VER\$(MMK_VERSION))"
    @ $(ECHO) "<DEFINE_SYMBOL>(KITVER\$(MMK_MAJOR_VERSION)$(MMK_MINOR_VERSION))"

!++!   GENERATE_SYMBOLS.MMS!D!   Description file for generating version symbols from newly build*!   MMK for use in building documentation.!3!   Copyright (c) 2012, Endless Software Solutions.!!   All rights reserved.!F!   Redistribution and use in source and binary forms, with or withoutF!   modification, are permitted provided that the following conditions!   are met:!>!       * Redistributions of source code must retain the aboveE!         copyright notice, this list of conditions and the following!         disclaimer.A!       * Redistributions in binary form must reproduce the aboveE!         copyright notice, this list of conditions and the followingI!         disclaimer in the documentation and/or other materials provided !         with the distribution.F!       * Neither the name of the copyright owner nor the names of anyG!         other contributors may be used to endorse or promote productsC!         derived from this software without specific prior written!         permission.!G!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORSE!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOTI!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FORH!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHTI!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,D!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOTI!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,I!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANYG!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORTI!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USEH!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.!3!   06-AUG-2012 V1.0    Sneddon     Initial coding.!--ECHO = WRITE SYS$OUTPUTGENERATE_SYMBOLS :g    @ months = "/January/February/March/April/May/June/July/August/September/October/November/December"#    @ now = F$CVTIME (, "ABSOLUTE")%    @ year = F$CVTIME  (now,, "YEAR")1    @ mon  = F$INTEGER (F$CVTIME (now,, "MONTH"))*    @ month = F$ELEMENT (mon, "/", months)2    @ amonth = F$CVTIME (now, "ABSOLUTE", "MONTH")"    @ day = F$CVTIME (now,, "DAY")1    @ $(ECHO) "<DEFINE_SYMBOL>(COPYYEAR\''year')"A    @ $(ECHO) "<DEFINE_SYMBOL>(RELDATE\''day'-''amonth'-''year')";    @ $(ECHO) "<DEFINE_SYMBOL>(RELMONTH\''month', ''year')"@    @ $(ECHO) "<DEFINE_SYMBOL>(PRTDATE\''day' ''month' ''year')"3    @ $(ECHO) "<DEFINE_SYMBOL>(VER\$(MMK_VERSION))"P    @ $(ECHO) "<DEFINE_SYMBOL>(KITVER\$(MMK_MAJOR_VERSION)$(MMK_MINOR_VERSION))"


Replace a poor message with one that isn't misleading. See SF bug #699323.

# Bare bones description file (Makefile) for OpenVMS

PACKAGE = expat
VERSION = 1.95.3
EXPAT_MAJOR_VERSION=1
EXPAT_MINOR_VERSION=95
EXPAT_EDIT=3

O = .obj
OLB = .olb

LIBRARY = expat$(OLB)
LIBDIR = [.lib]
SOURCES = $(LIBDIR)xmlparse.c $(LIBDIR)xmltok.c $(LIBDIR)xmlrole.c
OBJECTS = xmlparse$(O) xmltok$(O) xmlrole$(O)

TEMPLATES = xmltok_impl.c xmltok_ns.c
APIHEADER = $(LIBDIR)expat.h
HEADERS = $(LIBDIR)ascii.h $(LIBDIR)iasciitab.h $(LIBDIR)utf8tab.h $(LIBDIR)xmltok.h \
	$(LIBDIR)asciitab.h $(LIBDIR)latin1tab.h \
	$(LIBDIR)nametab.h $(LIBDIR)xmldef.h $(LIBDIR)xmlrole.h $(LIBDIR)xmltok_impl.h

CONFIG_HEADER = expat_config.h
INCLUDES = /INCLUDE=([],[.lib])
DEFS = /DEFINE=(PACKAGE="""$(PACKAGE)""",VERSION="""$(PACKAGE)_$(VERSION)""")
LIBREVISION = 0
LIBCURRENT  = 1
LIBAGE      = 0
#
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
#
# DISTFILES = $(DIST_COMMON) $(SOURCES) $(TEMPLATES) $(APIHEADER) $(HEADERS)
#
# TAR = gtar
# GZIP_ENV = --best
#
.FIRST :
       IF F$SEARCH("$(LIBRARY)") .EQS. "" THEN $(LIBR) /CREATE /OBJECT $(LIBRARY)

all : $(LIBRARY)
        @ write sys$output "All made."

.SUFFIXES :
.SUFFIXES : $(OLB) $(O) .C .H

.c$(O) :
       $(COMPILE) $(MMS$SOURCE)

$(O)$(OLB) :
        @ IF F$SEARCH("$(MMS$TARGET)") .EQS. "" -
                THEN LIBRARY/CREATE/LOG $(MMS$TARGET)
        @ LIBRARY /REPLACE /LOG $(MMS$TARGET) $(MMS$SOURCE)

clean :
       DELETE $(LIBRARY);*,*$(O);*

$(LIBRARY) : $(LIBRARY)( $(OBJECTS) )
       $(LIBR) /COMPRESS $(MMS$TARGET)

$(CONFIG_HEADER) : [.vms]expat_config.h
        COPY/LOG $(MMS$SOURCE) $(MMS$TARGET)

xmlparse$(O) : $(LIBDIR)xmlparse.c $(LIBDIR)expat.h $(LIBDIR)xmlrole.h $(LIBDIR)xmltok.h $(CONFIG_HEADER)

xmlrole$(O) : $(LIBDIR)xmlrole.c $(LIBDIR)ascii.h $(LIBDIR)xmlrole.h $(CONFIG_HEADER)

xmltok$(O) : $(LIBDIR)xmltok.c $(LIBDIR)xmltok_impl.c $(LIBDIR)xmltok_ns.c \
        $(LIBDIR)ascii.h $(LIBDIR)asciitab.h $(LIBDIR)iasciitab.h $(LIBDIR)latin1tab.h \
	$(LIBDIR)nametab.h $(LIBDIR)utf8tab.h $(LIBDIR)xmltok.h $(LIBDIR)xmltok_impl.h $(CONFIG_HEADER)

# Bare bones description file (Makefile) for OpenVMS

PACKAGE = expat
VERSION = 1.95.3
EXPAT_MAJOR_VERSION=1
EXPAT_MINOR_VERSION=95
EXPAT_EDIT=3

O = .obj
OLB = .olb

LIBRARY = expat$(OLB)
LIBDIR = [.lib]
SOURCES = $(LIBDIR)xmlparse.c $(LIBDIR)xmltok.c $(LIBDIR)xmlrole.c
OBJECTS = xmlparse$(O) xmltok$(O) xmlrole$(O)

TEMPLATES = xmltok_impl.c xmltok_ns.c
APIHEADER = $(LIBDIR)expat.h
HEADERS = $(LIBDIR)ascii.h $(LIBDIR)iasciitab.h $(LIBDIR)utf8tab.h $(LIBDIR)xmltok.h \
	$(LIBDIR)asciitab.h $(LIBDIR)latin1tab.h \
	$(LIBDIR)nametab.h $(LIBDIR)xmldef.h $(LIBDIR)xmlrole.h $(LIBDIR)xmltok_impl.h

CONFIG_HEADER = expat_config.h
INCLUDES = /INCLUDE=([],[.lib])
DEFS = /DEFINE=(PACKAGE="""$(PACKAGE)""",VERSION="""$(PACKAGE)_$(VERSION)""")
LIBREVISION = 0
LIBCURRENT  = 1
LIBAGE      = 0
#
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
#
# DISTFILES = $(DIST_COMMON) $(SOURCES) $(TEMPLATES) $(APIHEADER) $(HEADERS)
#
# TAR = gtar
# GZIP_ENV = --best
#
.FIRST :
       IF F$SEARCH("$(LIBRARY)") .EQS. "" THEN $(LIBR) /CREATE /OBJECT $(LIBRARY)

all : $(LIBRARY)

.SUFFIXES :
.SUFFIXES : $(OLB) $(O) .C .H

.c$(O) :
       $(COMPILE) $(MMS$SOURCE)

$(O)$(OLB) :
        @ IF F$SEARCH("$(MMS$TARGET)") .EQS. "" -
                THEN LIBRARY/CREATE/LOG $(MMS$TARGET)
        @ LIBRARY /REPLACE /LOG $(MMS$TARGET) $(MMS$SOURCE)

clean :
       DELETE $(LIBRARY);*,*$(O);*

$(LIBRARY) : $(LIBRARY)( $(OBJECTS) )
       $(LIBR) /COMPRESS $(MMS$TARGET)

$(CONFIG_HEADER) : [.vms]expat_config.h
        COPY/LOG $(MMS$SOURCE) $(MMS$TARGET)

xmlparse$(O) : $(LIBDIR)xmlparse.c $(LIBDIR)expat.h $(LIBDIR)xmlrole.h $(LIBDIR)xmltok.h $(CONFIG_HEADER)

xmlrole$(O) : $(LIBDIR)xmlrole.c $(LIBDIR)ascii.h $(LIBDIR)xmlrole.h $(CONFIG_HEADER)

xmltok$(O) : $(LIBDIR)xmltok.c $(LIBDIR)xmltok_impl.c $(LIBDIR)xmltok_ns.c \
        $(LIBDIR)ascii.h $(LIBDIR)asciitab.h $(LIBDIR)iasciitab.h $(LIBDIR)latin1tab.h \
	$(LIBDIR)nametab.h $(LIBDIR)utf8tab.h $(LIBDIR)xmltok.h $(LIBDIR)xmltok_impl.h $(CONFIG_HEADER)


updated source files

updated source files

# Makefile for core library for VMS
# contributed by Jouk Jansen  joukj@crys.chem.uva.nl
# Last revision : 3 May 1999

.first
	define gl [-.include.gl]

.include [-]mms-config.

##### MACROS #####

VPATH = RCS

INCDIR = [-.include]
LIBDIR = [-.lib]
CFLAGS = /include=($(INCDIR),[])/define=(FBIND=1)

CORE_SOURCES = accum.c alpha.c alphabuf.c attrib.c \
bitmap.c blend.c buffers.c clip.c colortab.c context.c copypix.c depth.c \
dispatch.c \
dlist.c drawpix.c enable.c eval.c feedback.c fog.c \
get.c hash.c hint.c image.c imaging.c light.c lines.c logic.c masking.c matrix.c \
mem.c glapi.c glapinoop.c \
mmath.c mthreads.c pb.c pixel.c points.c polygon.c \
quads.c rastpos.c readpix.c rect.c scissor.c shade.c span.c \
stencil.c teximage.c texobj.c texstate.c texture.c translate.c triangle.c \
varray.c winpos.c vb.c vbcull.c vbfill.c vbrender.c vbxform.c xform.c \
zoom.c bbox.c cva.c vector.c vbindirect.c config.c enums.c extensions.c \
pipeline.c stages.c state.c vertices.c [.x86]x86.c

DRIVER_SOURCES = [.x]glxapi.c [.x]fakeglx.c [.x]xfonts.c \
[.x]xmesa1.c [.x]xmesa2.c [.x]xmesa3.c [.x]xmesa4.c \
[.osmesa]osmesa.c \
[.svga]svgamesa.c \
[.fx]fxapi.c [.fx]fxdd.c [.fx]fxddtex.c [.fx]fxvsetup.c [.fx]fxsetup.c \
[.fx]fxtrifuncs.c \
[.fx]fxrender.c [.fx]fxtexman.c [.fx]fxddspan.c [.fx]fxcva.c

ASM_SOURCES =

OBJECTS =\
accum.obj,alpha.obj,alphabuf.obj,attrib.obj,\
bitmap.obj,blend.obj,buffers.obj,clip.obj,colortab.obj,context.obj,copypix.obj,depth.obj,\
dlist.obj,drawpix.obj,enable.obj,eval.obj,feedback.obj,fog.obj

OBJECTS3=get.obj,hash.obj,hint.obj,image.obj,light.obj,lines.obj,logic.obj,masking.obj,\
matrix.obj,glapi.obj,glapinoop.obj,dispatch.obj,imaging.obj,mem.obj,\
mmath.obj,mthreads.obj,pb.obj,pixel.obj,points.obj

OBJECTS7=polygon.obj,\
quads.obj,rastpos.obj,readpix.obj,rect.obj,scissor.obj,shade.obj,span.obj

OBJECTS4=stencil.obj,teximage.obj,texobj.obj,texstate.obj,texture.obj,translate.obj,\
triangle.obj,varray.obj,winpos.obj,vb.obj,vbcull.obj,vbfill.obj,vbrender.obj

OBJECTS6=vbxform.obj,xform.obj,zoom.obj,bbox.obj,cva.obj,vector.obj,vbindirect.obj,\
	config.obj,enums.obj,extensions.obj,pipeline.obj,stages.obj,state.obj\
	vertices.obj,[.x86]x86.obj

OBJECTS2=[.x]glxapi.obj,[.x]fakeglx.obj,[.x]xfonts.obj,\
[.x]xmesa1.obj,[.x]xmesa2.obj,[.x]xmesa3.obj,[.x]xmesa4.obj,\
[.osmesa]osmesa.obj,\
[.svga]svgamesa.obj

OBJECTS5=[.fx]fxapi.obj,[.fx]fxdd.obj,[.fx]fxddtex.obj,[.fx]fxvsetup.obj,\
[.fx]fxsetup.obj,\
[.fx]fxtrifuncs.obj,\
[.fx]fxrender.obj,[.fx]fxtexman.obj,[.fx]fxddspan.obj,[.fx]fxcva.obj

##### RULES #####

VERSION=Mesa V3.1

##### TARGETS #####
# Make the library
$(LIBDIR)$(GL_LIB) : $(OBJECTS),$(OBJECTS2) $(OBJECTS3) $(OBJECTS4)\
	$(OBJECTS5) $(OBJECTS7) $(OBJECTS6)
.ifdef SHARE
  @ WRITE_ SYS$OUTPUT "  generating mesagl1.opt"
  @ OPEN_/WRITE FILE  mesagl1.opt
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "! mesagl1.opt generated by DESCRIP.$(MMS_EXT)"
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "IDENTIFICATION=""$(VERSION)"""
  @ WRITE_ FILE "GSMATCH=LEQUAL,3,1
  @ WRITE_ FILE "$(OBJECTS)"
  @ WRITE_ FILE "$(OBJECTS3)"
  @ WRITE_ FILE "$(OBJECTS4)"
  @ WRITE_ FILE "$(OBJECTS7)"
  @ WRITE_ FILE "$(OBJECTS6)"
  @ WRITE_ FILE "$(OBJECTS2)"
  @ WRITE_ FILE "$(OBJECTS5)"
  @ WRITE_ FILE "SYS$SHARE:DECW$XEXTLIBSHR/SHARE"
  @ WRITE_ FILE "SYS$SHARE:DECW$XLIBSHR/SHARE"
  @ CLOSE_ FILE
  @ WRITE_ SYS$OUTPUT "  generating mesagl.map ..."
  @ LINK_/NODEB/NOSHARE/NOEXE/MAP=mesagl.map/FULL mesagl1.opt/OPT
  @ WRITE_ SYS$OUTPUT "  analyzing mesagl.map ..."
  @ @[-.vms]ANALYZE_MAP.COM mesagl.map mesagl.opt
  @ WRITE_ SYS$OUTPUT "  linking $(GL_LIB) ..."
  @ LINK_/NODEB/SHARE=$(GL_LIB)/MAP=mesagl.map/FULL mesagl1.opt/opt,mesagl.opt/opt
.else
  @ $(MAKELIB) $(GL_LIB) $(OBJECTS)
  @ library $(GL_LIB) $(OBJECTS2)
  @ library $(GL_LIB) $(OBJECTS3)
  @ library $(GL_LIB) $(OBJECTS4)
  @ library $(GL_LIB) $(OBJECTS5)
  @ library $(GL_LIB) $(OBJECTS7)
  @ library $(GL_LIB) $(OBJECTS6)
.endif
  @ rename $(GL_LIB)* $(LIBDIR)

clean :
	purge
	delete *.obj;*

triangle.obj : triangle.c

[.x86]x86.obj : [.x86]x86.c
	$(CC) $(CFLAGS) /obj=[.x86]x86.obj [.x86]x86.c
[.x]glxapi.obj : [.x]glxapi.c
	$(CC) $(CFLAGS) /obj=[.x]glxapi.obj [.x]glxapi.c
[.x]fakeglx.obj : [.x]fakeglx.c
	$(CC) $(CFLAGS) /obj=[.x]fakeglx.obj [.x]fakeglx.c
[.x]xfonts.obj : [.x]xfonts.c
	$(CC) $(CFLAGS) /obj=[.x]xfonts.obj [.x]xfonts.c
[.x]xmesa1.obj : [.x]xmesa1.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa1.obj [.x]xmesa1.c
[.x]xmesa2.obj : [.x]xmesa2.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa2.obj [.x]xmesa2.c
[.x]xmesa3.obj : [.x]xmesa3.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa3.obj [.x]xmesa3.c
[.x]xmesa4.obj : [.x]xmesa4.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa4.obj [.x]xmesa4.c
[.osmesa]osmesa.obj : [.osmesa]osmesa.c
	$(CC) $(CFLAGS) /obj=[.osmesa]osmesa.obj [.osmesa]osmesa.c
[.svga]svgamesa.obj : [.svga]svgamesa.c
	$(CC) $(CFLAGS) /obj=[.svga]svgamesa.obj [.svga]svgamesa.c
[.fx]fxapi.obj : [.fx]fxapi.c
	$(CC) $(CFLAGS) /obj=[.fx]fxapi.obj [.fx]fxapi.c
[.fx]fxcva.obj : [.fx]fxcva.c
	$(CC) $(CFLAGS) /obj=[.fx]fxcva.obj [.fx]fxcva.c
[.fx]fxdd.obj : [.fx]fxdd.c
	$(CC) $(CFLAGS) /obj=[.fx]fxdd.obj [.fx]fxdd.c
[.fx]fxddtex.obj : [.fx]fxddtex.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddtex.obj [.fx]fxddtex.c
[.fx]fxvsetup.obj : [.fx]fxvsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxvsetup.obj [.fx]fxvsetup.c
[.fx]fxsetup.obj : [.fx]fxsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxsetup.obj [.fx]fxsetup.c
[.fx]fxtrifuncs.obj : [.fx]fxtrifuncs.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtrifuncs.obj [.fx]fxtrifuncs.c
[.fx]fxrender.obj : [.fx]fxrender.c
	$(CC) $(CFLAGS) /obj=[.fx]fxrender.obj [.fx]fxrender.c
[.fx]fxtexman.obj : [.fx]fxtexman.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtexman.obj [.fx]fxtexman.c
[.fx]fxddspan.obj : [.fx]fxddspan.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddspan.obj [.fx]fxddspan.c

.include mms_depend.

# Makefile for core library for VMS
# contributed by Jouk Jansen  joukj@crys.chem.uva.nl
# Last revision : 3 May 1999

.first
	define gl [-.include.gl]

.include [-]mms-config.

##### MACROS #####

VPATH = RCS

INCDIR = [-.include]
LIBDIR = [-.lib]
CFLAGS = /include=($(INCDIR),[])/define=(FBIND=1)

CORE_SOURCES = accum.c alpha.c alphabuf.c attrib.c \
bitmap.c blend.c clip.c colortab.c context.c copypix.c depth.c \
dispatch.c \
dlist.c drawpix.c enable.c eval.c feedback.c fog.c \
get.c hash.c image.c imaging.c light.c lines.c logic.c masking.c matrix.c \
mem.c glapi.c glapinoop.c \
glmisc.c mmath.c mthreads.c pb.c pixel.c points.c polygon.c \
quads.c rastpos.c readpix.c rect.c scissor.c shade.c span.c \
stencil.c teximage.c texobj.c texstate.c texture.c translate.c triangle.c \
varray.c winpos.c vb.c vbcull.c vbfill.c vbrender.c vbxform.c xform.c \
zoom.c bbox.c cva.c vector.c vbindirect.c config.c enums.c extensions.c \
pipeline.c stages.c vertices.c [.x86]x86.c

DRIVER_SOURCES = [.x]glxapi.c [.x]fakeglx.c [.x]xfonts.c \
[.x]xmesa1.c [.x]xmesa2.c [.x]xmesa3.c [.x]xmesa4.c \
[.osmesa]osmesa.c \
[.svga]svgamesa.c \
[.fx]fxapi.c [.fx]fxdd.c [.fx]fxddtex.c [.fx]fxvsetup.c [.fx]fxsetup.c \
[.fx]fxtrifuncs.c \
[.fx]fxrender.c [.fx]fxtexman.c [.fx]fxddspan.c [.fx]fxcva.c

ASM_SOURCES =

OBJECTS =\
accum.obj,alpha.obj,alphabuf.obj,attrib.obj,\
bitmap.obj,blend.obj,clip.obj,colortab.obj,context.obj,copypix.obj,depth.obj,\
dlist.obj,drawpix.obj,enable.obj,eval.obj,feedback.obj,fog.obj

OBJECTS3=get.obj,hash.obj,image.obj,light.obj,lines.obj,logic.obj,masking.obj,\
matrix.obj,glapi.obj,glapinoop.obj,dispatch.obj,imaging.obj,mem.obj,\
glmisc.obj,mmath.obj,mthreads.obj,pb.obj,pixel.obj,points.obj

OBJECTS7=polygon.obj,\
quads.obj,rastpos.obj,readpix.obj,rect.obj,scissor.obj,shade.obj,span.obj

OBJECTS4=stencil.obj,teximage.obj,texobj.obj,texstate.obj,texture.obj,translate.obj,\
triangle.obj,varray.obj,winpos.obj,vb.obj,vbcull.obj,vbfill.obj,vbrender.obj

OBJECTS6=vbxform.obj,xform.obj,zoom.obj,bbox.obj,cva.obj,vector.obj,vbindirect.obj,\
	config.obj,enums.obj,extensions.obj,pipeline.obj,stages.obj,\
	vertices.obj,[.x86]x86.obj

OBJECTS2=[.x]glxapi.obj,[.x]fakeglx.obj,[.x]xfonts.obj,\
[.x]xmesa1.obj,[.x]xmesa2.obj,[.x]xmesa3.obj,[.x]xmesa4.obj,\
[.osmesa]osmesa.obj,\
[.svga]svgamesa.obj

OBJECTS5=[.fx]fxapi.obj,[.fx]fxdd.obj,[.fx]fxddtex.obj,[.fx]fxvsetup.obj,\
[.fx]fxsetup.obj,\
[.fx]fxtrifuncs.obj,\
[.fx]fxrender.obj,[.fx]fxtexman.obj,[.fx]fxddspan.obj,[.fx]fxcva.obj

##### RULES #####

VERSION=Mesa V3.1

##### TARGETS #####
# Make the library
$(LIBDIR)$(GL_LIB) : $(OBJECTS),$(OBJECTS2) $(OBJECTS3) $(OBJECTS4)\
	$(OBJECTS5) $(OBJECTS7) $(OBJECTS6)
.ifdef SHARE
  @ WRITE_ SYS$OUTPUT "  generating mesagl1.opt"
  @ OPEN_/WRITE FILE  mesagl1.opt
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "! mesagl1.opt generated by DESCRIP.$(MMS_EXT)"
  @ WRITE_ FILE "!"
  @ WRITE_ FILE "IDENTIFICATION=""$(VERSION)"""
  @ WRITE_ FILE "GSMATCH=LEQUAL,3,1
  @ WRITE_ FILE "$(OBJECTS)"
  @ WRITE_ FILE "$(OBJECTS3)"
  @ WRITE_ FILE "$(OBJECTS4)"
  @ WRITE_ FILE "$(OBJECTS7)"
  @ WRITE_ FILE "$(OBJECTS6)"
  @ WRITE_ FILE "$(OBJECTS2)"
  @ WRITE_ FILE "$(OBJECTS5)"
  @ WRITE_ FILE "SYS$SHARE:DECW$XEXTLIBSHR/SHARE"
  @ WRITE_ FILE "SYS$SHARE:DECW$XLIBSHR/SHARE"
  @ CLOSE_ FILE
  @ WRITE_ SYS$OUTPUT "  generating mesagl.map ..."
  @ LINK_/NODEB/NOSHARE/NOEXE/MAP=mesagl.map/FULL mesagl1.opt/OPT
  @ WRITE_ SYS$OUTPUT "  analyzing mesagl.map ..."
  @ @[-.vms]ANALYZE_MAP.COM mesagl.map mesagl.opt
  @ WRITE_ SYS$OUTPUT "  linking $(GL_LIB) ..."
  @ LINK_/NODEB/SHARE=$(GL_LIB)/MAP=mesagl.map/FULL mesagl1.opt/opt,mesagl.opt/opt
.else
  @ $(MAKELIB) $(GL_LIB) $(OBJECTS)
  @ library $(GL_LIB) $(OBJECTS2)
  @ library $(GL_LIB) $(OBJECTS3)
  @ library $(GL_LIB) $(OBJECTS4)
  @ library $(GL_LIB) $(OBJECTS5)
  @ library $(GL_LIB) $(OBJECTS7)
  @ library $(GL_LIB) $(OBJECTS6)
.endif
  @ rename $(GL_LIB)* $(LIBDIR)

clean :
	purge
	delete *.obj;*

triangle.obj : triangle.c

[.x86]x86.obj : [.x86]x86.c
	$(CC) $(CFLAGS) /obj=[.x86]x86.obj [.x86]x86.c
[.x]glxapi.obj : [.x]glxapi.c
	$(CC) $(CFLAGS) /obj=[.x]glxapi.obj [.x]glxapi.c
[.x]fakeglx.obj : [.x]fakeglx.c
	$(CC) $(CFLAGS) /obj=[.x]fakeglx.obj [.x]fakeglx.c
[.x]xfonts.obj : [.x]xfonts.c
	$(CC) $(CFLAGS) /obj=[.x]xfonts.obj [.x]xfonts.c
[.x]xmesa1.obj : [.x]xmesa1.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa1.obj [.x]xmesa1.c
[.x]xmesa2.obj : [.x]xmesa2.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa2.obj [.x]xmesa2.c
[.x]xmesa3.obj : [.x]xmesa3.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa3.obj [.x]xmesa3.c
[.x]xmesa4.obj : [.x]xmesa4.c
	$(CC) $(CFLAGS) /obj=[.x]xmesa4.obj [.x]xmesa4.c
[.osmesa]osmesa.obj : [.osmesa]osmesa.c
	$(CC) $(CFLAGS) /obj=[.osmesa]osmesa.obj [.osmesa]osmesa.c
[.svga]svgamesa.obj : [.svga]svgamesa.c
	$(CC) $(CFLAGS) /obj=[.svga]svgamesa.obj [.svga]svgamesa.c
[.fx]fxapi.obj : [.fx]fxapi.c
	$(CC) $(CFLAGS) /obj=[.fx]fxapi.obj [.fx]fxapi.c
[.fx]fxcva.obj : [.fx]fxcva.c
	$(CC) $(CFLAGS) /obj=[.fx]fxcva.obj [.fx]fxcva.c
[.fx]fxdd.obj : [.fx]fxdd.c
	$(CC) $(CFLAGS) /obj=[.fx]fxdd.obj [.fx]fxdd.c
[.fx]fxddtex.obj : [.fx]fxddtex.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddtex.obj [.fx]fxddtex.c
[.fx]fxvsetup.obj : [.fx]fxvsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxvsetup.obj [.fx]fxvsetup.c
[.fx]fxsetup.obj : [.fx]fxsetup.c
	$(CC) $(CFLAGS) /obj=[.fx]fxsetup.obj [.fx]fxsetup.c
[.fx]fxtrifuncs.obj : [.fx]fxtrifuncs.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtrifuncs.obj [.fx]fxtrifuncs.c
[.fx]fxrender.obj : [.fx]fxrender.c
	$(CC) $(CFLAGS) /obj=[.fx]fxrender.obj [.fx]fxrender.c
[.fx]fxtexman.obj : [.fx]fxtexman.c
	$(CC) $(CFLAGS) /obj=[.fx]fxtexman.obj [.fx]fxtexman.c
[.fx]fxddspan.obj : [.fx]fxddspan.c
	$(CC) $(CFLAGS) /obj=[.fx]fxddspan.obj [.fx]fxddspan.c

.include mms_depend.


 Committing in .

 Updated OpenVMS compile support (define tnl for include files)
 Modified Files:
 	Mesa/src/mesa/drivers/common/descrip.mms
 ----------------------------------------------------------------------

# Makefile for core library for VMS
# contributed by Jouk Jansen  joukj@hrem.nano.tudelft.nl
# Last revision : 2 November 2005

.first
	define gl [----.include.gl]
	define math [--.math]
	define tnl [--.tnl]
	define swrast [--.swrast]

.include [----]mms-config.

##### MACROS #####

VPATH = RCS

INCDIR = [----.include],[--.main],[--.glapi],[--.shader]
LIBDIR = [----.lib]
CFLAGS = /include=($(INCDIR),[])/define=(PTHREADS=1)/name=(as_is,short)/float=ieee/ieee=denorm

SOURCES = driverfuncs.c

OBJECTS =driverfuncs.obj

##### RULES #####

VERSION=Mesa V3.4

##### TARGETS #####
# Make the library
$(LIBDIR)$(GL_LIB) : $(OBJECTS)
  @ library $(LIBDIR)$(GL_LIB) $(OBJECTS)

clean :
	purge
	delete *.obj;*

driverfuncs.obj : driverfuncs.c

# Makefile for core library for VMS
# contributed by Jouk Jansen  joukj@hrem.stm.tudelft.nl
# Last revision : 16 June 2003

.first
	define gl [----.include.gl]
	define math [--.math]
	define swrast [--.swrast]

.include [----]mms-config.

##### MACROS #####

VPATH = RCS

INCDIR = [----.include],[--.main],[--.glapi],[--.shader]
LIBDIR = [----.lib]
CFLAGS = /include=($(INCDIR),[])/define=(PTHREADS=1)/name=(as_is,short)/float=ieee/ieee=denorm

SOURCES = driverfuncs.c

OBJECTS =driverfuncs.obj

##### RULES #####

VERSION=Mesa V3.4

##### TARGETS #####
# Make the library
$(LIBDIR)$(GL_LIB) : $(OBJECTS)
  @ library $(LIBDIR)$(GL_LIB) $(OBJECTS)

clean :
	purge
	delete *.obj;*

driverfuncs.obj : driverfuncs.c


Now building the OpenVMS VAX and common kit components.

!++
!   DESCRIP.MMS
!
!   Description file for building MMK.
!   Copyright (c) 2008, Matthew Madison.
!   Copyright (c) 2012, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   28-SEP-1993	V1.0	Madison	    Initial commenting.
!   25-JUL-1994	V1.1	Madison	    Update for V3.2.
!   27-DEC-1998	V1.2	Madison	    Update for V3.8.
!   03-MAY-2004 V1.3    Madison     Integrate IA64 support.
!   03-MAR-2008 V2.0    Madison     Cleanup for open-source release.
!   05-JUL-2009 V2.1    Sneddon     Added HTML documentation.
!   16-APR-2010 V2.2	Sneddon     New modules, etc.
!   06-AUG-2010 V2.3	Sneddon     Add release notes, plus SDML dynamic
!				     symbols.
!--

.IFDEF ARCH
.ELSE
.IFDEF MMS$ARCH_NAME
ARCH = $(MMS$ARCH_NAME)
.ELSE
.ERROR You must define the ARCH macro as one of: VAX, ALPHA, IA64
.ENDIF
.ENDIF

.SUFFIXES : .PS .PDF
.PS.PDF :
    < DEFINE/USER GS_LIB SYS$SYSDEVICE:[GS.LIB],SYS$SYSDEVICE:[GS.FONTS]
    < GS == "$SYS$SYSDEVICE:[GS.BIN]GS.EXE_$(MMSARCH_NAME)"
    - PIPE GS "-sDEVICE=pdfwrite" "-dBATCH" "-dNOPAUSE" "-sOutputFile=$(MMS$TARGET)" $(MMS$SOURCE) > $(MMS$TARGET:.pdf=.gs_out)
    > TYPE $(MMS$TARGET:.pdf=.gs_out)
    > IF F$SEARCH("$(MMS$TARGET:.pdf=.gs_out)") .NES. "" THEN DELETE/NOLOG $(MMS$TARGET:.pdf=.gs_out);*
    > DELETE/SYMBOL/GLOBAL GS
    > IF F$SEARCH("_TEMP_*.*") .NES. "" THEN DELETE/NOLOG _TEMP_*.*;*

.IFDEF __MADGOAT_BUILD__
MG_FACILITY = MMK
SRCDIR = MG_SRC:[MMK]
BINDIR = MG_BIN:[MMK]
ETCDIR = MG_ETC:[MMK]
KITDIR = MG_KIT:[MMK]
.ELSE
SRCDIR = SYS$DISK:[]
BINDIR = SYS$DISK:[.BIN-$(ARCH)]
ETCDIR = SYS$DISK:[.ETC-$(ARCH)]
KITDIR = SYS$DISK:[.KIT-$(ARCH)]
.ENDIF
.FIRST
    @ IF F$PARSE("$(BINDIR)") .EQS. "" THEN CREATE/DIR $(BINDIR)
    @ DEFINE/NOLOG BIN_DIR $(BINDIR)
    @ IF F$PARSE("$(ETCDIR)") .EQS. "" THEN CREATE/DIR $(ETCDIR)
    @ DEFINE/NOLOG ETC_DIR $(ETCDIR)
    @ IF F$PARSE("$(KITDIR)") .EQS. "" THEN CREATE/DIR $(KITDIR)
    @ DEFINE/NOLOG KIT_DIR $(KITDIR)
    @ DEFINE/NOLOG SRC_DIR $(SRCDIR)
    @ IF F$TRNLNM("MMK_SDL_SETUP") .NES. "" -
	THEN @MMK_SDL_SETUP:

OPT = .$(ARCH)_OPT
MMKCOPT = MMK_COMPILE_RULES$(OPT)

SDL = SDL/VAX

.IFDEF DBG
CFLAGS = $(CFLAGS)/DEBUG/NOOPT/LIST=$(ETCDIR)
.IFDEF __VAX__
CFLAGS = $(CFLAGS)/MACHINE=AFTER
.ELSE
CFLAGS = $(CFLAGS)/MACHINE
.ENDIF
LINKFLAGS = $(LINKFLAGS)/TRACEBACK
.ENDIF

!
! Modules for building MMK
!
OBJECTS = MMK=$(BINDIR)MMK.OBJ,FILEIO=$(BINDIR)FILEIO.OBJ,-
          MEM=$(BINDIR)MEM.OBJ,GET_RDT=$(BINDIR)GET_RDT.OBJ,-
          SP_MGR=$(BINDIR)SP_MGR.OBJ,MISC=$(BINDIR)MISC.OBJ,-
          OBJECTS=$(BINDIR)OBJECTS.OBJ,SYMBOLS=$(BINDIR)SYMBOLS.OBJ,-
          READDESC=$(BINDIR)READDESC.OBJ,-
          BUILD_TARGET=$(BINDIR)BUILD_TARGET.OBJ,-
          PARSE_DESCRIP=$(BINDIR)PARSE_DESCRIP.OBJ,-
          CMS_INTERFACE=$(BINDIR)CMS_INTERFACE.OBJ,-
          PARSE_OBJECTS=$(BINDIR)PARSE_OBJECTS.OBJ,-
          PARSE_TABLES=$(BINDIR)PARSE_TABLES.OBJ,-
          MMK_MSG=$(BINDIR)MMK_MSG.OBJ,MMK_CLD=$(BINDIR)MMK_CLD.OBJ,-
          DEFAULT_RULES=$(BINDIR)DEFAULT_RULES.OBJ
!
! Modules for building the rules compiler
!
MMKCMODS = FILEIO=$(BINDIR)FILEIO.OBJ,MEM=$(BINDIR)MEM.OBJ,-
           MISC=$(BINDIR)MISC.OBJ,OBJECTS=$(BINDIR)OBJECTS.OBJ,-
           SYMBOLS=$(BINDIR)SYMBOLS.OBJ,-
           READDESC=$(BINDIR)READDESC.OBJ,-
           PARSE_DESCRIP=$(BINDIR)PARSE_DESCRIP.OBJ,-
           PARSE_OBJECTS=$(BINDIR)PARSE_OBJECTS.OBJ,-
           PARSE_TABLES=$(BINDIR)PARSE_TABLES.OBJ,-
           MMK_MSG=$(BINDIR)MMK_MSG.OBJ

CFLAGS = /NODEBUG$(CFLAGS)$(DEFINE)
LINKFLAGS = /NOTRACEBACK/NODEBUG$(LINKFLAGS)

$(BINDIR)MMK.EXE : $(BINDIR)MMK.OLB($(OBJECTS)),$(SRCDIR)MMK$(OPT)
    $(LIBR)/COMPRESS/OUTPUT=$(BINDIR)MMK.OLB $(BINDIR)MMK.OLB
    $(LINK)$(LINKFLAGS) $(SRCDIR)MMK$(OPT)/OPT

MMK_H	    	    	    = $(SRCDIR)MMK.H, $(ETCDIR)MMK_MSG.H

$(BINDIR)MMK.OBJ            : $(SRCDIR)MMK.C,$(MMK_H) $(SRCDIR)VERSION.H
$(BINDIR)MEM.OBJ            : $(SRCDIR)MEM.C,$(MMK_H)
$(BINDIR)SP_MGR.OBJ         : $(SRCDIR)SP_MGR.C,$(MMK_H)
$(BINDIR)FILEIO.OBJ         : $(SRCDIR)FILEIO.C,$(MMK_H)
$(BINDIR)GET_RDT.OBJ	    : $(SRCDIR)GET_RDT.C,$(MMK_H)

$(BINDIR)SYMBOLS.OBJ        : $(SRCDIR)SYMBOLS.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)OBJECTS.OBJ        : $(SRCDIR)OBJECTS.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)MISC.OBJ           : $(SRCDIR)MISC.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)READDESC.OBJ       : $(SRCDIR)READDESC.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)BUILD_TARGET.OBJ   : $(SRCDIR)BUILD_TARGET.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)PARSE_DESCRIP.OBJ  : $(SRCDIR)PARSE_DESCRIP.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)PARSE_OBJECTS.OBJ  : $(SRCDIR)PARSE_OBJECTS.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)CMS_INTERFACE.OBJ  : $(SRCDIR)CMS_INTERFACE.C,-
                              $(MMK_H),$(SRCDIR)CMSDEF.H,$(SRCDIR)GLOBALS.H
$(BINDIR)PARSE_TABLES.OBJ   : $(SRCDIR)PARSE_TABLES.MAR
    $(MACRO)$(MFLAGS) SYS$LIBRARY:ARCH_DEFS.MAR+$(SRCDIR)PARSE_TABLES.MAR

$(BINDIR)DEFAULT_RULES.OBJ  : $(SRCDIR)DEFAULT_RULES.C,$(MMK_H),$(SRCDIR)GLOBALS.H,-
                              $(ETCDIR)MMK_DEFAULT_RULES.H

$(BINDIR)MMK_MSG.OBJ        : $(SRCDIR)MMK_MSG.MSG
$(BINDIR)MMK_CLD.OBJ        : $(SRCDIR)MMK_CLD.CLD

$(ETCDIR)MMK_MSG.H	    : $(SRCDIR)MMK_MSG.MSG
    $(MESSAGE)/NOOBJECT/SDL=$(ETCDIR)MMK_MSG.SDL $(MMS$SOURCE)
    $(SDL)/LANGUAGE=CC=$(MMS$TARGET) $(ETCDIR)MMK_MSG.SDL

$(ETCDIR)MMK_DEFAULT_RULES.H : $(SRCDIR)MMK_DEFAULT_RULES_$(ARCH).MMS, $(BINDIR)MMK_COMPILE_RULES.EXE
    MMKC := $$(BINDIR)MMK_COMPILE_RULES.EXE
    MMKC/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE)

MMKCOBJ = $(BINDIR)MMK_COMPILE_RULES.OBJ,$(BINDIR)GENSTRUC.OBJ,$(BINDIR)MMK_COMPILE_RULES_CLD.OBJ

$(BINDIR)MMK_COMPILE_RULES_CLD.OBJ : $(SRCDIR)MMK_COMPILE_RULES_CLD.CLD

$(BINDIR)MMK_COMPILE_RULES.EXE : $(MMKCOBJ),$(BINDIR)MMK.OLB($(MMKCMODS)),$(MMKCOPT)
    $(LINK)$(LINKFLAGS) $(MMKCOBJ),$(SRCDIR)$(MMKCOPT)/opt

$(BINDIR)MMK_COMPILE_RULES.OBJ	: $(SRCDIR)MMK_COMPILE_RULES.C,$(MMK_H)
$(BINDIR)GENSTRUC.OBJ	       	: $(SRCDIR)GENSTRUC.C,$(MMK_H),$(SRCDIR)GLOBALS.H

!
! The help file
!
$(KITDIR)MMK_HELP.HLP : $(SRCDIR)MMK_HELP.RNH

!
! Documentation
!
DOCS : $(KITDIR)MMK_DOC.PS,$(KITDIR)MMK_DOC.TXT,$(KITDIR)MMK_DOC.HTML,-
	$(KITDIR)MMK_HELP.HLP,$(KITDIR)MMK.RELEASE_NOTES $(KITDIR)MMK_DOC.PDF
$(KITDIR)MMK_DOC.PS : $(SRCDIR)MMK_DOC.SDML,$(SRCDIR)MMK_DEFAULT_RULES_VAX.MMS,-
                      $(SRCDIR)MMK_DEFAULT_RULES_ALPHA.MMS,$(SRCDIR)MMK_DEFAULT_RULES_IA64.MMS,-
		      $(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/CONTENTS/NOPRINT/DEVICE=BLANK_PAGES/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE) SOFTWARE.REFERENCE PS
$(KITDIR)MMK_DOC.PDF : $(KITDIR)MMK_DOC.PS
$(KITDIR)MMK_DOC.TXT : $(SRCDIR)MMK_DOC.SDML,$(SRCDIR)MMK_DEFAULT_RULES_VAX.MMS,-
                       $(SRCDIR)MMK_DEFAULT_RULES_ALPHA.MMS,$(SRCDIR)MMK_DEFAULT_RULES_IA64.MMS,-
		       $(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/CONTENTS/NOPRINT/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE) SOFTWARE.REFERENCE MAIL
$(KITDIR)MMK_DOC.HTML : $(SRCDIR)MMK_DOC.SDML,$(SRCDIR)MMK_DEFAULT_RULES_VAX.MMS,-
			$(SRCDIR)MMK_DEFAULT_RULES_ALPHA.MMS,$(SRCDIR)MMK_DEFAULT_RULES_IA64.MMS,-
			$(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/CONTENTS/OUTPUT=$(KITDIR) $(MMS$SOURCE) SOFTWARE.REFERENCE HTML
$(KITDIR)MMK.RELEASE_NOTES : $(SRCDIR)RELEASE_NOTES.SDML,$(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/DEVICE=BLANK_PAGES/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE) SOFTWARE.REFERENCE MAIL/CONTENTS
$(ETCDIR)DYNAMIC_SYMBOLS.SDML   : $(BINDIR)MMK.EXE,$(SRCDIR)GENERATE_SYMBOLS.MMS
    MCR $(MMS$SOURCE) /DESCRIPTION=$(SRCDIR)GENERATE_SYMBOLS.MMS -
		/OUTPUT=$(MMS$TARGET)

CLEAN :
    - DELETE $(ETCDIR)*.*;*
    - DELETE $(BINDIR)*.*;*

REALCLEAN : CLEAN
    - DELETE $(KITDIR)*.*;*

.IFDEF ZIP
.ELSE
ZIP = ZIP
.ENDIF

ALWAYS_MAKE : ! fake target to trigger make on every pass

.IFNDEF KITBUILDER

!
! Build new MMK version number...
!
TMP != PIPE TMP="$(MMK_MAJOR_VERSION)" ; IF F$LENGTH(TMP) .EQ 1 THEN TMP="0"+TMP ; WRITE/SYMBOL SYS$OUTPUT TMP
KITNAME = $(COLLAPSE $(MG_FACILITY)$(TMP)$(MMK_MINOR_VERSION))

KIT : $(BINDIR)MMK.EXE
    MCR $(BINDIR)MMK.EXE /MACRO=(KITBUILDER=1,KITNAME=$(KITNAME)) VMSINSTAL

.ELSE

!
! MMK VMSINSTAL Kit Lettering...
!
! A = KITINSTAL, documentation
! B = VAX images
! C = Alpha images
! D = I64 images
! E = Source code
!
BACKUP = BAC/INT/BL=8192

VMSINSTAL : $(KITDIR)$(KITNAME).A,$(KITDIR)$(KITNAME).B,$(KITDIR)$(KITNAME).E
    @ WRITE SYS$OUTPUT "%I, MMK VMSINSTAL kit built"

$(KITDIR)$(KITNAME).RELEASE_NOTES : $(KITDIR)MMK.RELEASE_NOTES
    COPY $(MMS$SOURCE) $(MMS$TARGET)

$(KITDIR)$(KITNAME).A : KITINSTAL.COM,$(KITDIR)$(KITNAME).RELEASE_NOTES,-
			$(KITDIR)MMK_DOC_LIST.DAT
    - PURGE/NOLOG $(MMS$SOURCE_LIST),-
	MG_KIT:[MMK]*.PDF,*.PS,*.HTML,*.TXT
    SET PROTECTION=W:RE $(MMS$SOURCE_LIST),-
	MG_KIT:[MMK]*.PDF,*.PS,*.HTML,*.TXT
    $(BACKUP) $(MMS$SOURCE_LIST),MG_KIT:[MMK]*.PDF,*.PS,*.HTML,*.TXT -
	$(MMS$TARGET)/SA

$(KITDIR)MMK_DOC_LIST.DAT : MAKE_MMK_DOC_LIST.COM,DOCS
    -@ DELETE/NOLOG $(MMS$TARGET);*
    @MAKE_MMK_DOC_LIST

$(KITDIR)$(KITNAME).B : MG_BIN_VAX:[MMK]MMK.EXE
    - PURGE/NOLOG $(MMS$SOURCE_LIST)
    SET PROTECTION=W:RE $(MMS$SOURCE_LIST)
    $(BACKUP) $(MMS$SOURCE_LIST) $(MMS$TARGET)/SA

$(KITDIR)$(KITNAME).E : $(KITDIR)$(KITNAME)_SOURCE.ZIP
    - PURGE/NOLOG $(MMS$SOURCE_LIST)
    SET PROTECTION=W:RE $(MMS$SOURCE_LIST)
    $(BACKUP) $(MMS$SOURCE_LIST) $(MMS$TARGET)/SA

$(KITDIR)$(KITNAME)_SOURCE.ZIP : ALWAYS_MAKE
    - DELETE/NOLOG $(MMS$TARGET);*
    wget --no-check-certificate --output-document=$(MMS$TARGET) -
	"https://github.com/endlesssoftware/mmk/zipball/master"

.IFDEF OLDKIT
KIT : $(KITDIR)MMK.ZIP
    @ !

$(KITDIR)MMK_INSTALLING_VERSION.DAT : $(SRCDIR)INSTALLING_VERSION.MMS,-
				      $(BINDIR)MMK.EXE
    MCR $(BINDIR)MMK.EXE /DESCRIPTION=$(MMS$SOURCE)/OUTPUT=$(MMS$TARGET)

$(KITDIR)MMK.ZIP : DISTRIBUTION, SOURCE
    IF F$SEARCH("$(MMS$TARGET)") .NES. "" THEN DELETE $(MMS$TARGET);*
    olddef = F$ENV("DEFAULT")
    SET DEFAULT DIST_ROOT:[DIST]
    - PURGE *.*
    $(ZIP)/VMS DIST_ROOT:[000000]MMK.ZIP *.*;
    SET DEFAULT 'olddef'
    - DELETE DIST_ROOT:[DIST]*.*;*
    - SET PROTECTION=O:RWED $(KITDIR)DIST.DIR;
    - DELETE $(KITDIR)DIST.DIR;

DISTRIBUTION : $(SRCDIR)AAAREADME.DOC,AAAREADME.TOO,AAAREADME.INSTALL,LICENSE.TXT
    olddef = F$ENV("DEFAULT")
    IF "$(KITDIR)" .NES. "" THEN SET DEFAULT $(KITDIR)
    IF F$SEARCH("DIST.DIR") .NES. "" THEN DELETE [.DIST]*.*;*
    IF F$SEARCH("DIST.DIR") .NES. "" THEN SET PROTECTION=O:RWED DIST.DIR
    IF F$SEARCH("DIST.DIR") .NES. "" THEN DELETE DIST.DIR;
    CREATE/DIRECTORY [.DIST]
    SET DEFAULT 'olddef
    ROOT = F$PARSE("$(KITDIR)DIST.DIR",,,"DEVICE","NO_CONCEAL")+F$PARSE("$(KITDIR)DIST.DIR",,,"DIRECTORY","NO_CONCEAL")-"]["-"]"+".]"
    DEFINE DIST_ROOT 'ROOT'/TRANSLATION=CONCEAL
    PURGE $(MMS$SOURCE_LIST)
    BACKUP $(MMS$SOURCE_LIST) DIST_ROOT:[DIST]/OWNER=PARENT

SOURCE : $(SRCDIR)MMK.C,FILEIO.C,MEM.C,GET_RDT.C,SP_MGR.C,-
    	 MISC.C,OBJECTS.C,SYMBOLS.C,READDESC.C,BUILD_TARGET.C,PARSE_DESCRIP.C,-
    	 PARSE_OBJECTS.C,PARSE_TABLES.MAR,MMK_MSG.MSG,MMK_CLD.CLD,-
    	 MMK.H,GLOBALS.H,MMK_MSG.H,CMSDEF.H,CMS_INTERFACE.C,-
    	 CLIDEFS.H,DESCRIP.MMS,MMK.VAX_OPT,MMK.ALPHA_OPT,-
         MMK.IA64_OPT,MMK_COMPILE_RULES.IA64_OPT,MMK_DEFAULT_RULES_IA64.MMS,-
    	 MMK_COMPILE_RULES.C,GENSTRUC.C,DEFAULT_RULES.C,MMK_COMPILE_RULES.VAX_OPT,-
    	 MMK_COMPILE_RULES.ALPHA_OPT,MMK_COMPILE_RULES_CLD.CLD,-
    	 MMK_DEFAULT_RULES_VAX.MMS,MMK_DEFAULT_RULES_ALPHA.MMS,-
    	 MMK_HELP.RNH,MMK_DOC.SDML,COMPILE.COM
    PURGE $(MMS$SOURCE_LIST)
    BACKUP $(MMS$SOURCE_LIST) DIST_ROOT:[DIST]/OWNER=PARENT

.ENDIF

!++
!   DESCRIP.MMS
!
!   Description file for building MMK.
!   Copyright (c) 2008, Matthew Madison.
!   Copyright (c) 2012, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   28-SEP-1993	V1.0	Madison	    Initial commenting.
!   25-JUL-1994	V1.1	Madison	    Update for V3.2.
!   27-DEC-1998	V1.2	Madison	    Update for V3.8.
!   03-MAY-2004 V1.3    Madison     Integrate IA64 support.
!   03-MAR-2008 V2.0    Madison     Cleanup for open-source release.
!   05-JUL-2009 V2.1    Sneddon     Added HTML documentation.
!   16-APR-2010 V2.2	Sneddon     New modules, etc.
!   06-AUG-2010 V2.3	Sneddon     Add release notes, plus SDML dynamic
!				     symbols.
!--

.IFDEF ARCH
.ELSE
.IFDEF MMS$ARCH_NAME
ARCH = $(MMS$ARCH_NAME)
.ELSE
.ERROR You must define the ARCH macro as one of: VAX, ALPHA, IA64
.ENDIF
.ENDIF

.SUFFIXES : .PS .PDF
.PS.PDF :
    < DEFINE/USER GS_LIB SYS$SYSDEVICE:[GS.LIB],SYS$SYSDEVICE:[GS.FONTS]
    < GS == "$SYS$SYSDEVICE:[GS.BIN]GS.EXE_$(MMSARCH_NAME)"
    - PIPE GS "-sDEVICE=pdfwrite" "-dBATCH" "-dNOPAUSE" "-sOutputFile=$(MMS$TARGET)" $(MMS$SOURCE) > $(MMS$TARGET:.pdf=.gs_out)
    > TYPE $(MMS$TARGET:.pdf=.gs_out)
    > IF F$SEARCH("$(MMS$TARGET:.pdf=.gs_out)") .NES. "" THEN DELETE/NOLOG $(MMS$TARGET:.pdf=.gs_out);*
    > DELETE/SYMBOL/GLOBAL GS
    > IF F$SEARCH("_TEMP_*.*") .NES. "" THEN DELETE/NOLOG _TEMP_*.*;*

.IFDEF __MADGOAT_BUILD__
MG_FACILITY = MMK
SRCDIR = MG_SRC:[MMK]
BINDIR = MG_BIN:[MMK]
ETCDIR = MG_ETC:[MMK]
KITDIR = MG_KIT:[MMK]
.ELSE
SRCDIR = SYS$DISK:[]
BINDIR = SYS$DISK:[.BIN-$(ARCH)]
ETCDIR = SYS$DISK:[.ETC-$(ARCH)]
KITDIR = SYS$DISK:[.KIT-$(ARCH)]
.ENDIF
.FIRST
    @ IF F$PARSE("$(BINDIR)") .EQS. "" THEN CREATE/DIR $(BINDIR)
    @ DEFINE/NOLOG BIN_DIR $(BINDIR)
    @ IF F$PARSE("$(ETCDIR)") .EQS. "" THEN CREATE/DIR $(ETCDIR)
    @ DEFINE/NOLOG ETC_DIR $(ETCDIR)
    @ IF F$PARSE("$(KITDIR)") .EQS. "" THEN CREATE/DIR $(KITDIR)
    @ DEFINE/NOLOG KIT_DIR $(KITDIR)
    @ DEFINE/NOLOG SRC_DIR $(SRCDIR)
    @ IF F$TRNLNM("MMK_SDL_SETUP") .NES. "" -
	THEN @MMK_SDL_SETUP:

OPT = .$(ARCH)_OPT
MMKCOPT = MMK_COMPILE_RULES$(OPT)

SDL = SDL/VAX

.IFDEF DBG
CFLAGS = $(CFLAGS)/DEBUG/NOOPT/LIST=$(ETCDIR)
.IFDEF __VAX__
CFLAGS = $(CFLAGS)/MACHINE=AFTER
.ELSE
CFLAGS = $(CFLAGS)/MACHINE
.ENDIF
LINKFLAGS = $(LINKFLAGS)/TRACEBACK
.ENDIF

!
! Modules for building MMK
!
OBJECTS = MMK=$(BINDIR)MMK.OBJ,FILEIO=$(BINDIR)FILEIO.OBJ,-
          MEM=$(BINDIR)MEM.OBJ,GET_RDT=$(BINDIR)GET_RDT.OBJ,-
          SP_MGR=$(BINDIR)SP_MGR.OBJ,MISC=$(BINDIR)MISC.OBJ,-
          OBJECTS=$(BINDIR)OBJECTS.OBJ,SYMBOLS=$(BINDIR)SYMBOLS.OBJ,-
          READDESC=$(BINDIR)READDESC.OBJ,-
          BUILD_TARGET=$(BINDIR)BUILD_TARGET.OBJ,-
          PARSE_DESCRIP=$(BINDIR)PARSE_DESCRIP.OBJ,-
          CMS_INTERFACE=$(BINDIR)CMS_INTERFACE.OBJ,-
          PARSE_OBJECTS=$(BINDIR)PARSE_OBJECTS.OBJ,-
          PARSE_TABLES=$(BINDIR)PARSE_TABLES.OBJ,-
          MMK_MSG=$(BINDIR)MMK_MSG.OBJ,MMK_CLD=$(BINDIR)MMK_CLD.OBJ,-
          DEFAULT_RULES=$(BINDIR)DEFAULT_RULES.OBJ
!
! Modules for building the rules compiler
!
MMKCMODS = FILEIO=$(BINDIR)FILEIO.OBJ,MEM=$(BINDIR)MEM.OBJ,-
           MISC=$(BINDIR)MISC.OBJ,OBJECTS=$(BINDIR)OBJECTS.OBJ,-
           SYMBOLS=$(BINDIR)SYMBOLS.OBJ,-
           READDESC=$(BINDIR)READDESC.OBJ,-
           PARSE_DESCRIP=$(BINDIR)PARSE_DESCRIP.OBJ,-
           PARSE_OBJECTS=$(BINDIR)PARSE_OBJECTS.OBJ,-
           PARSE_TABLES=$(BINDIR)PARSE_TABLES.OBJ,-
           MMK_MSG=$(BINDIR)MMK_MSG.OBJ

CFLAGS = /NODEBUG$(CFLAGS)$(DEFINE)
LINKFLAGS = /NOTRACEBACK/NODEBUG$(LINKFLAGS)

$(BINDIR)MMK.EXE : $(BINDIR)MMK.OLB($(OBJECTS)),$(SRCDIR)MMK$(OPT)
    $(LIBR)/COMPRESS/OUTPUT=$(BINDIR)MMK.OLB $(BINDIR)MMK.OLB
    $(LINK)$(LINKFLAGS) $(SRCDIR)MMK$(OPT)/OPT

MMK_H	    	    	    = $(SRCDIR)MMK.H, $(ETCDIR)MMK_MSG.H

$(BINDIR)MMK.OBJ            : $(SRCDIR)MMK.C,$(MMK_H) $(SRCDIR)VERSION.H
$(BINDIR)MEM.OBJ            : $(SRCDIR)MEM.C,$(MMK_H)
$(BINDIR)SP_MGR.OBJ         : $(SRCDIR)SP_MGR.C,$(MMK_H)
$(BINDIR)FILEIO.OBJ         : $(SRCDIR)FILEIO.C,$(MMK_H)
$(BINDIR)GET_RDT.OBJ	    : $(SRCDIR)GET_RDT.C,$(MMK_H)

$(BINDIR)SYMBOLS.OBJ        : $(SRCDIR)SYMBOLS.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)OBJECTS.OBJ        : $(SRCDIR)OBJECTS.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)MISC.OBJ           : $(SRCDIR)MISC.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)READDESC.OBJ       : $(SRCDIR)READDESC.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)BUILD_TARGET.OBJ   : $(SRCDIR)BUILD_TARGET.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)PARSE_DESCRIP.OBJ  : $(SRCDIR)PARSE_DESCRIP.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)PARSE_OBJECTS.OBJ  : $(SRCDIR)PARSE_OBJECTS.C,$(MMK_H),$(SRCDIR)GLOBALS.H
$(BINDIR)CMS_INTERFACE.OBJ  : $(SRCDIR)CMS_INTERFACE.C,-
                              $(MMK_H),$(SRCDIR)CMSDEF.H,$(SRCDIR)GLOBALS.H
$(BINDIR)PARSE_TABLES.OBJ   : $(SRCDIR)PARSE_TABLES.MAR
    $(MACRO)$(MFLAGS) SYS$LIBRARY:ARCH_DEFS.MAR+$(SRCDIR)PARSE_TABLES.MAR

$(BINDIR)DEFAULT_RULES.OBJ  : $(SRCDIR)DEFAULT_RULES.C,$(MMK_H),$(SRCDIR)GLOBALS.H,-
                              $(ETCDIR)MMK_DEFAULT_RULES.H

$(BINDIR)MMK_MSG.OBJ        : $(SRCDIR)MMK_MSG.MSG
$(BINDIR)MMK_CLD.OBJ        : $(SRCDIR)MMK_CLD.CLD

$(ETCDIR)MMK_MSG.H	    : $(SRCDIR)MMK_MSG.MSG
    $(MESSAGE)/NOOBJECT/SDL=$(ETCDIR)MMK_MSG.SDL $(MMS$SOURCE)
    $(SDL)/LANGUAGE=CC=$(MMS$TARGET) $(ETCDIR)MMK_MSG.SDL

$(ETCDIR)MMK_DEFAULT_RULES.H : $(SRCDIR)MMK_DEFAULT_RULES_$(ARCH).MMS, $(BINDIR)MMK_COMPILE_RULES.EXE
    MMKC := $$(BINDIR)MMK_COMPILE_RULES.EXE
    MMKC/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE)

MMKCOBJ = $(BINDIR)MMK_COMPILE_RULES.OBJ,$(BINDIR)GENSTRUC.OBJ,$(BINDIR)MMK_COMPILE_RULES_CLD.OBJ

$(BINDIR)MMK_COMPILE_RULES_CLD.OBJ : $(SRCDIR)MMK_COMPILE_RULES_CLD.CLD

$(BINDIR)MMK_COMPILE_RULES.EXE : $(MMKCOBJ),$(BINDIR)MMK.OLB($(MMKCMODS)),$(MMKCOPT)
    $(LINK)$(LINKFLAGS) $(MMKCOBJ),$(SRCDIR)$(MMKCOPT)/opt

$(BINDIR)MMK_COMPILE_RULES.OBJ	: $(SRCDIR)MMK_COMPILE_RULES.C,$(MMK_H)
$(BINDIR)GENSTRUC.OBJ	       	: $(SRCDIR)GENSTRUC.C,$(MMK_H),$(SRCDIR)GLOBALS.H

!
! The help file
!
$(KITDIR)MMK_HELP.HLP : $(SRCDIR)MMK_HELP.RNH

!
! Documentation
!
DOCS : $(KITDIR)MMK_DOC.PS,$(KITDIR)MMK_DOC.TXT,$(KITDIR)MMK_DOC.HTML,-
	$(KITDIR)MMK_HELP.HLP,$(KITDIR)MMK.RELEASE_NOTES $(KITDIR)MMK_DOC.PDF
$(KITDIR)MMK_DOC.PS : $(SRCDIR)MMK_DOC.SDML,$(SRCDIR)MMK_DEFAULT_RULES_VAX.MMS,-
                      $(SRCDIR)MMK_DEFAULT_RULES_ALPHA.MMS,$(SRCDIR)MMK_DEFAULT_RULES_IA64.MMS,-
		      $(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/CONTENTS/NOPRINT/DEVICE=BLANK_PAGES/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE) SOFTWARE.REFERENCE PS
$(KITDIR)MMK_DOC.PDF : $(KITDIR)MMK_DOC.PS
$(KITDIR)MMK_DOC.TXT : $(SRCDIR)MMK_DOC.SDML,$(SRCDIR)MMK_DEFAULT_RULES_VAX.MMS,-
                       $(SRCDIR)MMK_DEFAULT_RULES_ALPHA.MMS,$(SRCDIR)MMK_DEFAULT_RULES_IA64.MMS,-
		       $(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/CONTENTS/NOPRINT/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE) SOFTWARE.REFERENCE MAIL
$(KITDIR)MMK_DOC.HTML : $(SRCDIR)MMK_DOC.SDML,$(SRCDIR)MMK_DEFAULT_RULES_VAX.MMS,-
			$(SRCDIR)MMK_DEFAULT_RULES_ALPHA.MMS,$(SRCDIR)MMK_DEFAULT_RULES_IA64.MMS,-
			$(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/CONTENTS/OUTPUT=$(KITDIR) $(MMS$SOURCE) SOFTWARE.REFERENCE HTML
$(KITDIR)MMK.RELEASE_NOTES : $(SRCDIR)RELEASE_NOTES.SDML,$(ETCDIR)DYNAMIC_SYMBOLS.SDML
    @ IF F$TRNLNM("DECC$SHR") .NES. "" THEN DEF/USER DECC$SHR SYS$SHARE:DECC$SHR
    DOCUMENT/DEVICE=BLANK_PAGES/OUTPUT=$(MMS$TARGET) $(MMS$SOURCE) SOFTWARE.REFERENCE MAIL/CONTENTS
$(ETCDIR)DYNAMIC_SYMBOLS.SDML   : $(BINDIR)MMK.EXE,$(SRCDIR)GENERATE_SYMBOLS.MMS
    MCR $(MMS$SOURCE) /DESCRIPTION=$(SRCDIR)GENERATE_SYMBOLS.MMS -
		/OUTPUT=$(MMS$TARGET)

CLEAN :
    - DELETE $(ETCDIR)*.*;*
    - DELETE $(BINDIR)*.*;*

REALCLEAN : CLEAN
    - DELETE $(KITDIR)*.*;*

.IFDEF ZIP
.ELSE
ZIP = ZIP
.ENDIF

BACKUP = BAC/INT/BL=8192

!
! MMK VMSINSTAL Kit Lettering...
!
! A = KITINSTAL, documentation
! B = VAX images
! C = Alpha images
! D = I64 images
! E = Source code
!

KITNAME = MMK050

ALWAYS_MAKE : ! fake target to trigger make on every pass

KIT : $(KITDIR)$(KITNAME).A,$(KITDIR)$(KITNAME).B,$(KITDIR)$(KITNAME).E
    @ WRITE SYS$OUTPUT "%I, MMK VMSINSTAL kit built"

$(KITDIR)$(KITNAME).RELEASE_NOTES : $(KITDIR)MMK.RELEASE_NOTES
    COPY $(MMS$SOURCE) $(MMS$TARGET)

$(KITDIR)$(KITNAME).A : KITINSTAL.COM,$(KITDIR)$(KITNAME).RELEASE_NOTES,-
			$(KITDIR)MMK_DOC_LIST.DAT
    - PURGE/NOLOG $(MMS$SOURCE_LIST),-
	MG_KIT:[MMK]*.PDF,*.PS,*.HTML,*.TXT
    SET PROTECTION=W:RE $(MMS$SOURCE_LIST),-
	MG_KIT:[MMK]*.PDF,*.PS,*.HTML,*.TXT
    $(BACKUP) $(MMS$SOURCE_LIST),MG_KIT:[MMK]*.PDF,*.PS,*.HTML,*.TXT -
	$(MMS$TARGET)/SA

$(KITDIR)MMK_DOC_LIST.DAT : MAKE_MMK_DOC_LIST.COM,DOCS
    -@ DELETE/NOLOG $(MMS$TARGET);*
    @MAKE_MMK_DOC_LIST

$(KITDIR)$(KITNAME).B : MG_BIN_VAX:[MMK]MMK.EXE
    - PURGE/NOLOG $(MMS$SOURCE_LIST)
    SET PROTECTION=W:RE $(MMS$SOURCE_LIST)
    $(BACKUP) $(MMS$SOURCE_LIST) $(MMS$TARGET)/SA

$(KITDIR)$(KITNAME).E : $(KITDIR)$(KITNAME)_SOURCE.ZIP
    - PURGE/NOLOG $(MMS$SOURCE_LIST)
    SET PROTECTION=W:RE $(MMS$SOURCE_LIST)
    $(BACKUP) $(MMS$SOURCE_LIST) $(MMS$TARGET)/SA

$(KITDIR)$(KITNAME)_SOURCE.ZIP : ALWAYS_MAKE
    - DELETE/NOLOG $(MMS$TARGET);*
    wget --no-check-certificate --output-document=$(MMS$TARGET) -
	"https://github.com/endlesssoftware/mmk/zipball/master"

.IFDEF OLDKIT
KIT : $(KITDIR)MMK.ZIP
    @ !

$(KITDIR)MMK_INSTALLING_VERSION.DAT : $(SRCDIR)INSTALLING_VERSION.MMS,-
				      $(BINDIR)MMK.EXE
    MCR $(BINDIR)MMK.EXE /DESCRIPTION=$(MMS$SOURCE)/OUTPUT=$(MMS$TARGET)

$(KITDIR)MMK.ZIP : DISTRIBUTION, SOURCE
    IF F$SEARCH("$(MMS$TARGET)") .NES. "" THEN DELETE $(MMS$TARGET);*
    olddef = F$ENV("DEFAULT")
    SET DEFAULT DIST_ROOT:[DIST]
    - PURGE *.*
    $(ZIP)/VMS DIST_ROOT:[000000]MMK.ZIP *.*;
    SET DEFAULT 'olddef'
    - DELETE DIST_ROOT:[DIST]*.*;*
    - SET PROTECTION=O:RWED $(KITDIR)DIST.DIR;
    - DELETE $(KITDIR)DIST.DIR;

DISTRIBUTION : $(SRCDIR)AAAREADME.DOC,AAAREADME.TOO,AAAREADME.INSTALL,LICENSE.TXT
    olddef = F$ENV("DEFAULT")
    IF "$(KITDIR)" .NES. "" THEN SET DEFAULT $(KITDIR)
    IF F$SEARCH("DIST.DIR") .NES. "" THEN DELETE [.DIST]*.*;*
    IF F$SEARCH("DIST.DIR") .NES. "" THEN SET PROTECTION=O:RWED DIST.DIR
    IF F$SEARCH("DIST.DIR") .NES. "" THEN DELETE DIST.DIR;
    CREATE/DIRECTORY [.DIST]
    SET DEFAULT 'olddef
    ROOT = F$PARSE("$(KITDIR)DIST.DIR",,,"DEVICE","NO_CONCEAL")+F$PARSE("$(KITDIR)DIST.DIR",,,"DIRECTORY","NO_CONCEAL")-"]["-"]"+".]"
    DEFINE DIST_ROOT 'ROOT'/TRANSLATION=CONCEAL
    PURGE $(MMS$SOURCE_LIST)
    BACKUP $(MMS$SOURCE_LIST) DIST_ROOT:[DIST]/OWNER=PARENT

SOURCE : $(SRCDIR)MMK.C,FILEIO.C,MEM.C,GET_RDT.C,SP_MGR.C,-
    	 MISC.C,OBJECTS.C,SYMBOLS.C,READDESC.C,BUILD_TARGET.C,PARSE_DESCRIP.C,-
    	 PARSE_OBJECTS.C,PARSE_TABLES.MAR,MMK_MSG.MSG,MMK_CLD.CLD,-
    	 MMK.H,GLOBALS.H,MMK_MSG.H,CMSDEF.H,CMS_INTERFACE.C,-
    	 CLIDEFS.H,DESCRIP.MMS,MMK.VAX_OPT,MMK.ALPHA_OPT,-
         MMK.IA64_OPT,MMK_COMPILE_RULES.IA64_OPT,MMK_DEFAULT_RULES_IA64.MMS,-
    	 MMK_COMPILE_RULES.C,GENSTRUC.C,DEFAULT_RULES.C,MMK_COMPILE_RULES.VAX_OPT,-
    	 MMK_COMPILE_RULES.ALPHA_OPT,MMK_COMPILE_RULES_CLD.CLD,-
    	 MMK_DEFAULT_RULES_VAX.MMS,MMK_DEFAULT_RULES_ALPHA.MMS,-
    	 MMK_HELP.RNH,MMK_DOC.SDML,COMPILE.COM
    PURGE $(MMS$SOURCE_LIST)
    BACKUP $(MMS$SOURCE_LIST) DIST_ROOT:[DIST]/OWNER=PARENT

.ENDIF


More changes to PCSI installation to give more control.  The only
thing we do differently is drop the product release notes in SYS$HELP.

Everything seems to drop them in there, and it makes sense.

This references #56.

!++
!   MMK_PCSI.MMS
!
!   Description file for generating PCSI product description files.
!
!   Copyright (c) 2013, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   25-FEB-2011 V1.0    Sneddon     Initial coding.
!--
TMP != PIPE TMP="$(MMK_MAJOR_VERSION)" ; IF F$LENGTH(TMP) .EQ 1 THEN TMP="0"+TMP ; WRITE/SYMBOL SYS$OUTPUT TMP
KIT_VERSION = $(COLLAPSE $(TMP)$(MMK_MINOR_VERSION))
GENERATION != WRITE SYS$OUTPUT F$CVTIME(,,"DATE")-"-"-"-"
BASE_SYSTEM = $(KITARCH)VMS

ECHO = WRITE SYS$OUTPUT

BINDIR = MG_BIN:[MMK]
KITDIR = MG_KIT:[MMK]
SRCDIR = MG_SRC:[MMK]

ALWAYS_MAKE : ! Fake target, to force make...

DOCUMENTATION ~= $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.HTML)) -
		 $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.PDF)) -
		 $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.PS)) -
		 $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.TXT))

#=============================================================================
# Construct package
#=============================================================================

PACKAGE :
    PRODUCT PACKAGE MMK/PRODUCER=ESS/BASE_SYSTEM=$(BASE_SYSTEM) -
	/DESTINATION=$(KITDIR)/LOG/TRACE -
	/SOURCE=$(KITDIR)MMK.PCSI$DESC -
	/MATERIAL=(MG_KIT:[MMK],MG_BIN_$(KITARCH):[MMK],MG_SRC:[MMK]) -
	/FORMAT=SEQUENTIAL

#=============================================================================
# Product Description File
#=============================================================================

DESCRIPTION : HEADER,-
		DOCHEADER,-
		  $(DOCUMENTATION),-
		DOCFOOTER,-
		SOURCE,-
	      FOOTER
    @ CONTINUE

HEADER :
    @ $(ECHO) "product ESS $(BASE_SYSTEM) MMK $(MMK_VERSION) full ;"
    @ $(ECHO) "  directory [MMK] ;"
    @ $(ECHO) "  file [MMK]MMK$(KIT_VERSION).RELEASE_NOTES release notes ;"
    @ $(ECHO) "  execute preconfigure (""WRITE SYS$OUTPUT """"%I, moving release notes to SYS$HELP"""""","
    @ $(ECHO) "    ""COPY/LOG PCSI$SOURCE:[MMK]MMK$(KIT_VERSION).RELEASE_NOTES SYS$COMMON:[SYSHLP]"")"
    @ $(ECHO) "    uses [MMK]MMK$(KIT_VERSION).RELEASE_NOTES ;"
    @ $(ECHO) "  file [MMK]MMK.EXE generation $(GENERATION) archive ;"
    @ $(ECHO) "  information RELEASE_NOTES phase after with helptext ;"
    @ $(ECHO) "  if (<option COMMAND default YES>) ;"
    @ $(ECHO) "    module [MMK]MMK_CLD.CLD type command module MMK ;"
    @ $(ECHO) "  else ;"
    @ $(ECHO) "    information NO_COMMAND phase after with helptext;"
    @ $(ECHO) "  end if ;"
    @ $(ECHO) "  option HELP default YES ;"
    @ $(ECHO) "    module [MMK]MMK_HELP.HLP type help module MMK ;"
    @ $(ECHO) "  end option ;"

DOCHEADER :
    @ $(ECHO) "  option DOCUMENTATION default YES ;"
    @ $(ECHO) "    directory [MMK.DOC] ;"

$(DOCUMENTATION) : ALWAYS_MAKE
    @ $(ECHO) "    file [MMK.DOC]$(NOTDIR $(MMS$TARGET))"
    @ $(ECHO) "      generation $(GENERATION) ;"

DOCFOOTER :
    @ $(ECHO) "  end option ;"

SOURCE :
    @ $(ECHO) "  option SOURCE default NO ;"
    @ $(ECHO) "    directory [MMK.SRC] ;"
    @ $(ECHO) "    file [MMK.SRC]MMK$(KIT_VERSION)_SOURCE.ZIP"
    @ $(ECHO) "      generation $(GENERATION) ;"
    @ $(ECHO) "  end option ;"

FOOTER :
    @ $(ECHO) "end product ;"

#=============================================================================
# Product Text File
#=============================================================================

TEXT :
    @ $(ECHO) "=product ESS $(BASE_SYSTEM) MMK $(MMK_VERSION) full"
    @ $(ECHO) "1 'PRODUCT"
    @ $(ECHO) "=prompt MMK Make Uility"
    @ $(ECHO) "MMK is a ""make"" utility for VMS systems.  It is used for "
    @ $(ECHO) "building software systems based on a ""description file"" (or "
    @ $(ECHO) """makefile"") you create that lists the sources and objects "
    @ $(ECHO) "of a system and the dependencies between them."
    @ $(ECHO) ""
    @ $(ECHO) "MMK is similar in functionality to Digital's DEC/Module "
    @ $(ECHO) "Management System (MMS), and understands a syntax in its "
    @ $(ECHO) "description files which is a superset of that which is "
    @ $(ECHO) "understood by MMS."
    @ $(ECHO) ""
    @ $(ECHO) "MMK runs on VAX/VMS, OpenVMS VAX, OpenVMS AXP, and OpenVMS "
    @ $(ECHO) "Industry Standard 64."
    @ $(ECHO) "1 'NOTICE"
    @ $(ECHO) "=prompt Copyright (c) 2013 Endless Software Solutions."
    @ $(ECHO) "Copyright (c) 2008, Matthew Madison."
    @ $(ECHO) "Copyright (c) 2013, Endless Software Solutions."
    @ $(ECHO) ""
    @ $(ECHO) "All rights reserved."
    @ $(ECHO) ""
    @ $(ECHO) "Redistribution and use in source and binary forms, with or "
    @ $(ECHO) "without modification, are permitted provided that the "
    @ $(ECHO) "following conditions are met:"
    @ $(ECHO) ""
    @ $(ECHO) "    * Redistributions of source code must retain the above"
    @ $(ECHO) "      copyright notice, this list of conditions and the"
    @ $(ECHO) "      following disclaimer."
    @ $(ECHO) "    * Redistributions in binary form must reproduce the above"
    @ $(ECHO) "      copyright notice, this list of conditions and the"
    @ $(ECHO) "      following disclaimer in the documentation and/or other "
    @ $(ECHO) "      materials provided with the distribution."
    @ $(ECHO) "    * Neither the name of the copyright owner nor the names of"
    @ $(ECHO) "      any other contributors may be used to endorse or promote"
    @ $(ECHO) "      products derived from this software without specific"
    @ $(ECHO) "      prior written permission."
    @ $(ECHO) ""
    @ $(ECHO) "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND "
    @ $(ECHO) "CONTRIBUTORS ""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES,"
    @ $(ECHO) "INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF "
    @ $(ECHO) "MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE "
    @ $(ECHO) "DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR "
    @ $(ECHO) "CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,"
    @ $(ECHO) "SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT "
    @ $(ECHO) "NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; "
    @ $(ECHO) "LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) "
    @ $(ECHO) "HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN "
    @ $(ECHO) "CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR "
    @ $(ECHO) "OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,"
    @ $(ECHO) "EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
    @ $(ECHO) "1 'PRODUCER"
    @ $(ECHO) "=prompt This software is released by Endless Software Solutions."
    @ $(ECHO) "1 RELEASE_NOTES"
    @ $(ECHO) "=prompt Release notes for MMK $(MMK_VERSION) are available."
    @ $(ECHO) "Release notes for MMK $(MMK_VERSION) are avilable in the "
    @ $(ECHO) "file SYS$HELP:MMK$(KIT_VERSION).RELEASE_NOTES."
    @ $(ECHO) "1 COMMAND"
    @ $(ECHO) "=prompt Do you want to install the MMK command into DCLTABLES?"
    @ $(ECHO) "The MMK make utility can be installed into DCLTABLES making"
    @ $(ECHO) "it a known command.  This is not a critical features of the"
    @ $(ECHO) "product and it is easy enough to run MMK by simply defining"
    @ $(ECHO) "a symbol (foreign command) to point to the executable.  To "
    @ $(ECHO) "install MMK in the system command tables, answer YES to"
    @ $(ECHO) "this question."
    @ $(ECHO) "1 NO_COMMAND"
    @ $(ECHO) "=prompt MMK was not installed as a command."
    @ $(ECHO) "Because MMK was not installed as a command, you will need "
    @ $(ECHO) "to define a foreign command, like so:"
    @ $(ECHO) " "
    @ $(ECHO) "    $ MMK == ""$ddcu:[MMK]MMK.EXE"""
    @ $(ECHO) " "
    @ $(ECHO) "1 HELP"
    @ $(ECHO) "=prompt Do you want to add MMK to the system help library?"
    @ $(ECHO) "The MMK make utility installation kit includes an online"
    @ $(ECHO) "help file that can be installed into the system help file."
    @ $(ECHO) "It can then be accessed with the HELP command.  This is"
    @ $(ECHO) "not a critical feature of the product.  To install the MMK"
    @ $(ECHO) "online help file in the system HELP library, answer YES"
    @ $(ECHO) "to this question."
    @ $(ECHO) "1 DOCUMENTATION"
    @ $(ECHO) "=prompt Do you want to install the software documentation?"
    @ $(ECHO) "The full MMK documentation is included in this software kit."
    @ $(ECHO) "It is available in HTML, PDF, PostScript and Text formts.  To"
    @ $(ECHO) "install the documentation, answer YES to this option."
    @ $(ECHO) "1 SOURCE"
    @ $(ECHO) "=prompt Do you want to install the source code?"
    @ $(ECHO) "MMK is open source software and includes the full source of"
    @ $(ECHO) "the software.  To install a ZIP file containing the source"
    @ $(ECHO) "code, answer YES to this option."

!++
!   MMK_PCSI.MMS
!
!   Description file for generating PCSI product description files.
!
!   Copyright (c) 2013, Endless Software Solutions.
!
!   All rights reserved.
!
!   Redistribution and use in source and binary forms, with or without
!   modification, are permitted provided that the following conditions
!   are met:
!
!       * Redistributions of source code must retain the above
!         copyright notice, this list of conditions and the following
!         disclaimer.
!       * Redistributions in binary form must reproduce the above
!         copyright notice, this list of conditions and the following
!         disclaimer in the documentation and/or other materials provided
!         with the distribution.
!       * Neither the name of the copyright owner nor the names of any
!         other contributors may be used to endorse or promote products
!         derived from this software without specific prior written
!         permission.
!
!   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
!   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
!   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
!   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
!   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
!   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
!   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
!   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
!   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
!   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
!   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!
!   25-FEB-2011 V1.0    Sneddon     Initial coding.
!--
TMP != PIPE TMP="$(MMK_MAJOR_VERSION)" ; IF F$LENGTH(TMP) .EQ 1 THEN TMP="0"+TMP ; WRITE/SYMBOL SYS$OUTPUT TMP
KIT_VERSION = $(COLLAPSE $(TMP)$(MMK_MINOR_VERSION))
GENERATION != WRITE SYS$OUTPUT F$CVTIME(,,"DATE")-"-"-"-"
BASE_SYSTEM = $(KITARCH)VMS

ECHO = WRITE SYS$OUTPUT

BINDIR = MG_BIN:[MMK]
KITDIR = MG_KIT:[MMK]
SRCDIR = MG_SRC:[MMK]

ALWAYS_MAKE : ! Fake target, to force make...

DOCUMENTATION ~= $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.HTML)) -
		 $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.PDF)) -
		 $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.PS)) -
		 $(ADDPREFIX $(KITDIR),$(WILDCARD $(KITDIR)*.TXT))

#=============================================================================
# Construct package
#=============================================================================

PACKAGE :
    PRODUCT PACKAGE MMK/PRODUCER=ESS/BASE_SYSTEM=$(BASE_SYSTEM) -
	/DESTINATION=$(KITDIR)/LOG/TRACE -
	/SOURCE=$(KITDIR)MMK.PCSI$DESC -
	/MATERIAL=(MG_KIT:[MMK],MG_BIN_$(KITARCH):[MMK],MG_SRC:[MMK]) -
	/FORMAT=SEQUENTIAL

#=============================================================================
# Product Description File
#=============================================================================

DESCRIPTION : HEADER,-
		DOCHEADER,-
		  $(DOCUMENTATION),-
		DOCFOOTER,-
		SOURCE,-
	      FOOTER
    @ CONTINUE

HEADER :
    @ $(ECHO) "product ESS $(BASE_SYSTEM) MMK $(MMK_VERSION) full ;"
    @ $(ECHO) "  directory [MMK] ;"
    @ $(ECHO) "  information RELEASE_NOTES phase after with helptext ;"
    @ $(ECHO) "  file [MMK]MMK$(KIT_VERSION).RELEASE_NOTES release notes ;"
    @ $(ECHO) "  file [MMK]MMK.EXE generation $(GENERATION) archive ;"
    @ $(ECHO) "  if (<option COMMAND default YES>) ;"
    @ $(ECHO) "    module [MMK]MMK_CLD.CLD type command module MMK ;"
    @ $(ECHO) "  else ;"
    @ $(ECHO) "    information NO_COMMAND phase after with helptext;"
    @ $(ECHO) "  end if ;"
    @ $(ECHO) "  option HELP default YES ;"
    @ $(ECHO) "    module [MMK]MMK_HELP.HLP type help module MMK ;"
    @ $(ECHO) "  end option ;"

DOCHEADER :
    @ $(ECHO) "  option DOCUMENTATION default YES ;"
    @ $(ECHO) "    directory [MMK.DOC] ;"

$(DOCUMENTATION) : ALWAYS_MAKE
    @ $(ECHO) "    file [MMK.DOC]$(NOTDIR $(MMS$TARGET))"
    @ $(ECHO) "      generation $(GENERATION) ;"

DOCFOOTER :
    @ $(ECHO) "  end option ;"

SOURCE :
    @ $(ECHO) "  option SOURCE default NO ;"
    @ $(ECHO) "    directory [MMK.SRC] ;"
    @ $(ECHO) "    file [MMK.SRC]MMK$(KIT_VERSION)_SOURCE.ZIP"
    @ $(ECHO) "      generation $(GENERATION) ;"
    @ $(ECHO) "  end option ;"

FOOTER :
    @ $(ECHO) "end product ;"

#=============================================================================
# Product Text File
#=============================================================================

TEXT :
    @ $(ECHO) "=product ESS $(BASE_SYSTEM) MMK $(MMK_VERSION) full"
    @ $(ECHO) "1 'PRODUCT"
    @ $(ECHO) "=prompt MMK Make Uility"
    @ $(ECHO) "MMK is a ""make"" utility for VMS systems.  It is used for "
    @ $(ECHO) "building software systems based on a ""description file"" (or "
    @ $(ECHO) """makefile"") you create that lists the sources and objects "
    @ $(ECHO) "of a system and the dependencies between them."
    @ $(ECHO) ""
    @ $(ECHO) "MMK is similar in functionality to Digital's DEC/Module "
    @ $(ECHO) "Management System (MMS), and understands a syntax in its "
    @ $(ECHO) "description files which is a superset of that which is "
    @ $(ECHO) "understood by MMS."
    @ $(ECHO) ""
    @ $(ECHO) "MMK runs on VAX/VMS, OpenVMS VAX, OpenVMS AXP, and OpenVMS "
    @ $(ECHO) "Industry Standard 64."
    @ $(ECHO) "1 'NOTICE"
    @ $(ECHO) "=prompt Copyright (c) 2013 Endless Software Solutions."
    @ $(ECHO) "Copyright (c) 2008, Matthew Madison."
    @ $(ECHO) "Copyright (c) 2013, Endless Software Solutions."
    @ $(ECHO) ""
    @ $(ECHO) "All rights reserved."
    @ $(ECHO) ""
    @ $(ECHO) "Redistribution and use in source and binary forms, with or "
    @ $(ECHO) "without modification, are permitted provided that the "
    @ $(ECHO) "following conditions are met:"
    @ $(ECHO) ""
    @ $(ECHO) "    * Redistributions of source code must retain the above"
    @ $(ECHO) "      copyright notice, this list of conditions and the"
    @ $(ECHO) "      following disclaimer."
    @ $(ECHO) "    * Redistributions in binary form must reproduce the above"
    @ $(ECHO) "      copyright notice, this list of conditions and the"
    @ $(ECHO) "      following disclaimer in the documentation and/or other "
    @ $(ECHO) "      materials provided with the distribution."
    @ $(ECHO) "    * Neither the name of the copyright owner nor the names of"
    @ $(ECHO) "      any other contributors may be used to endorse or promote"
    @ $(ECHO) "      products derived from this software without specific"
    @ $(ECHO) "      prior written permission."
    @ $(ECHO) ""
    @ $(ECHO) "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND "
    @ $(ECHO) "CONTRIBUTORS ""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES,"
    @ $(ECHO) "INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF "
    @ $(ECHO) "MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE "
    @ $(ECHO) "DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR "
    @ $(ECHO) "CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,"
    @ $(ECHO) "SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT "
    @ $(ECHO) "NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; "
    @ $(ECHO) "LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) "
    @ $(ECHO) "HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN "
    @ $(ECHO) "CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR "
    @ $(ECHO) "OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,"
    @ $(ECHO) "EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
    @ $(ECHO) "1 'PRODUCER"
    @ $(ECHO) "=prompt This software is released by Endless Software Solutions."
    @ $(ECHO) "1 RELEASE_NOTES"
    @ $(ECHO) "=prompt Release notes for MMK $(MMK_VERSION) are available."
    @ $(ECHO) "Release notes for MMK $(MMK_VERSION) are avilable in the "
    @ $(ECHO) "file ddcu:[MMK]MMK$(KIT_VERSION).RELEASE_NOTES."
    @ $(ECHO) "1 COMMAND"
    @ $(ECHO) "=prompt Do you want to install the MMK command into DCLTABLES?"
    @ $(ECHO) "The MMK make utility can be installed into DCLTABLES making"
    @ $(ECHO) "it a known command.  This is not a critical features of the"
    @ $(ECHO) "product and it is easy enough to run MMK by simply defining"
    @ $(ECHO) "a symbol (foreign command) to point to the executable.  To "
    @ $(ECHO) "install MMK in the system command tables, answer YES to"
    @ $(ECHO) "this question."
    @ $(ECHO) "1 NO_COMMAND"
    @ $(ECHO) "=prompt MMK was not installed as a command."
    @ $(ECHO) "Because MMK was not installed as a command, you will need "
    @ $(ECHO) "to define a foreign command, like so:"
    @ $(ECHO) " "
    @ $(ECHO) "    $ MMK == ""$ddcu:[MMK]MMK.EXE"""
    @ $(ECHO) " "
    @ $(ECHO) "1 HELP"
    @ $(ECHO) "=prompt Do you want to add MMK to the system help library?"
    @ $(ECHO) "The MMK make utility installation kit includes an online"
    @ $(ECHO) "help file that can be installed into the system help file."
    @ $(ECHO) "It can then be accessed with the HELP command.  This is"
    @ $(ECHO) "not a critical feature of the product.  To install the MMK"
    @ $(ECHO) "online help file in the system HELP library, answer YES"
    @ $(ECHO) "to this question."
    @ $(ECHO) "1 DOCUMENTATION"
    @ $(ECHO) "=prompt Do you want to install the software documentation?"
    @ $(ECHO) "The full MMK documentation is included in this software kit."
    @ $(ECHO) "It is available in HTML, PDF, PostScript and Text formts.  To"
    @ $(ECHO) "install the documentation, answer YES to this option."
    @ $(ECHO) "1 SOURCE"
    @ $(ECHO) "=prompt Do you want to install the source code?"
    @ $(ECHO) "MMK is open source software and includes the full source of"
    @ $(ECHO) "the software.  To install a ZIP file containing the source"
    @ $(ECHO) "code, answer YES to this option."