mirror of
https://github.com/open-simh/simtools.git
synced 2026-05-04 15:05:35 +00:00
Reorganize commands into separate modules - ods2.c was way too big. This reduces it from around 3000 LOC to less than 1K LOC. Reorder I/O so PHYVIRT mediates all physical access. Fix memory leaks of device structures. Reorganize Files-11 vs. internal structures. Allow more granular control of DEBUG from the makefile. Show VOLUME handles free space and tries to match geometry from SCB to known disk types. Fix many compilation warnings. Add code to allow dumping disk data for debug. Automatically generate descrip.mms from dependencies. Correctly handle directory default version limit; previously confused with file version limit. Teach help to sort tables for presentation; manually keeping them sorted is problematic, and code maintenance prefers functional groupings. Add the ability to initialize a Files-11 volume. (Not quite complete.) Add dependency generation to makefiles. Excludes system headers so makedepends isn't required to build. Simplify makefiles to use more recipes. Teach makefiles to list all sources and headers so it's easier to keep git and MSVC up-to-date. Add support for accessing images of disks with interleave/skew/offsets (e.g. RX02). Add VHD support, including ability to create a snapshot with mount/write. Teach RMS to handle NOSPAN variable length records correctly. Fix RMS GET handling of variable length records with VFC that span block boundaries. Fix delete file (a day-one incomplete). Still some cases to validate. Purge cache of modified blocks at rundown and at the end of each command. Do not allow deletion of reserved files. Move revision history to version.h Correct various permissions in git.
163 lines
5.3 KiB
Plaintext
163 lines
5.3 KiB
Plaintext
#
|
|
# MMS (MMK) description file to build ODS2 for VMS
|
|
#
|
|
# To compile on VAX using VAX C, use:
|
|
#
|
|
# $ mmk/macro=vaxc=1
|
|
#
|
|
#
|
|
.IFDEF EXE
|
|
.ELSE
|
|
EXE = .EXE
|
|
OBJ = .OBJ
|
|
OLB = .OLB
|
|
.ENDIF
|
|
|
|
.IFDEF __DEBUG__
|
|
CFLAGS = $(CFLAGS)/DEBUG/NOOPTIMIZE
|
|
LINKFLAGS = $(LINKFLAGS)/DEBUG
|
|
.ELSE
|
|
LINKFLAGS = $(LINKFLAGS)/NOTRACE
|
|
.ENDIF
|
|
CFLAGS = $(CFLAGS)/DEFINE=(NO_DOLLAR)
|
|
|
|
.IFDEF __VAXC__
|
|
OPTFILE = ,VAXCRTL.OPT
|
|
OPTIONS = $(OPTFILE)/OPTIONS
|
|
.ELSE
|
|
OPTFILE =
|
|
OPTIONS =
|
|
.ENDIF
|
|
|
|
# The next line is automatically generated. Do not change the format or split into multiple lines
|
|
OBJS = ODS2 ACCESS CACHE COMPAT COPYCMD CREATECMD DEBUG DELETECMD DEVICE DIFFCMD DIRCMD DIRECT DISMOUNTCMD EXTENDCMD HELPCMD IMPORTCMD INITIALCMD INITVOL MOUNTCMD PHYVMS PHYVIRT RMS SEARCHCMD SETCMD SHOWCMD SPAWNCMD SYSMSG TYPECMD UPDATE VMSTIME
|
|
|
|
ODS2$(EXE) : ODS2$(OLB)($(OBJS))$(OPTFILE)
|
|
$(LINK)$(LINKFLAGS) ODS2$(OLB)/INCLUDE=($(OBJS))$(OPTIONS)
|
|
|
|
VAXCRTL.OPT :
|
|
@ open/write tmp $(MMS$TARGET)
|
|
@ write tmp "SYS$SHARE:VAXCRTL.EXE/SHARE"
|
|
@ close tmp
|
|
|
|
# Everything from the next line through EOF is automatically generated by make -f makefile.unix depend
|
|
# (or make -f makefile.vms depend) on Unix.
|
|
|
|
# ### BEGIN RULES ###
|
|
|
|
ODS2$(OBJ): VERSION.H
|
|
ODS2$(OBJ): CMDDEF.H
|
|
ODS2$(OBJ): COMPAT.H
|
|
ODS2$(OBJ): ODS2.H RMS.H
|
|
ODS2$(OBJ): VMSTIME.H DESCRIP.H SSDEF.H STSDEF.H SYSMSG.H CACHE.H PHYVIRT.H
|
|
ACCESS$(OBJ): SSDEF.H ACCESS.H CACHE.H F11DEF.H
|
|
ACCESS$(OBJ): VMSTIME.H
|
|
ACCESS$(OBJ): DESCRIP.H STSDEF.H DEVICE.H PHYIO.H INITVOL.H ODS2.H PHYVIRT.H
|
|
ACCESS$(OBJ): COMPAT.H
|
|
ACCESS$(OBJ): SYSMSG.H
|
|
CACHE$(OBJ): CACHE.H ODS2.H SSDEF.H
|
|
COMPAT$(OBJ): COMPAT.H
|
|
COMPAT$(OBJ): DESCRIP.H STSDEF.H
|
|
COPYCMD$(OBJ): CMDDEF.H
|
|
COPYCMD$(OBJ): COMPAT.H
|
|
COPYCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
COPYCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
CREATECMD$(OBJ): CMDDEF.H
|
|
CREATECMD$(OBJ): COMPAT.H
|
|
CREATECMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
CREATECMD$(OBJ): STSDEF.H SYSMSG.H F11DEF.H
|
|
DEBUG$(OBJ): DEBUG.H
|
|
DELETECMD$(OBJ): CMDDEF.H
|
|
DELETECMD$(OBJ): COMPAT.H
|
|
DELETECMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
DELETECMD$(OBJ): STSDEF.H SYSMSG.H
|
|
DEVICE$(OBJ): ODS2.H ACCESS.H CACHE.H F11DEF.H
|
|
DEVICE$(OBJ): VMSTIME.H
|
|
DEVICE$(OBJ): DESCRIP.H SSDEF.H STSDEF.H DEVICE.H PHYIO.H
|
|
DIFFCMD$(OBJ): CMDDEF.H
|
|
DIFFCMD$(OBJ): COMPAT.H
|
|
DIFFCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
DIFFCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
DIRCMD$(OBJ): CMDDEF.H
|
|
DIRCMD$(OBJ): COMPAT.H
|
|
DIRCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
DIRCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
DIRECT$(OBJ): ACCESS.H CACHE.H F11DEF.H
|
|
DIRECT$(OBJ): VMSTIME.H
|
|
DIRECT$(OBJ): DESCRIP.H SSDEF.H STSDEF.H DIRECT.H FIBDEF.H ODS2.H
|
|
DISMOUNTCMD$(OBJ): CMDDEF.H
|
|
DISMOUNTCMD$(OBJ): COMPAT.H
|
|
DISMOUNTCMD$(OBJ): ODS2.H
|
|
DISMOUNTCMD$(OBJ): RMS.H VMSTIME.H DESCRIP.H SSDEF.H STSDEF.H SYSMSG.H ACCESS.H
|
|
DISMOUNTCMD$(OBJ): CACHE.H F11DEF.H
|
|
DISMOUNTCMD$(OBJ): DEVICE.H PHYIO.H
|
|
EXTENDCMD$(OBJ): CMDDEF.H
|
|
EXTENDCMD$(OBJ): COMPAT.H
|
|
EXTENDCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
EXTENDCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
HELPCMD$(OBJ): CMDDEF.H
|
|
HELPCMD$(OBJ): COMPAT.H
|
|
HELPCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
HELPCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
IMPORTCMD$(OBJ): CMDDEF.H
|
|
IMPORTCMD$(OBJ): COMPAT.H
|
|
IMPORTCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
IMPORTCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
INITIALCMD$(OBJ): CMDDEF.H
|
|
INITIALCMD$(OBJ): COMPAT.H
|
|
INITIALCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H
|
|
INITIALCMD$(OBJ): SSDEF.H STSDEF.H SYSMSG.H ACCESS.H CACHE.H F11DEF.H
|
|
INITIALCMD$(OBJ): DEVICE.H
|
|
INITIALCMD$(OBJ): PHYIO.H INITVOL.H PHYVIRT.H
|
|
INITVOL$(OBJ): COMPAT.H
|
|
INITVOL$(OBJ): F11DEF.H
|
|
INITVOL$(OBJ): VMSTIME.H
|
|
INITVOL$(OBJ): DESCRIP.H SSDEF.H STSDEF.H INITVOL.H ODS2.H PHYVIRT.H RMS.H
|
|
MOUNTCMD$(OBJ): CMDDEF.H
|
|
MOUNTCMD$(OBJ): COMPAT.H
|
|
MOUNTCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
MOUNTCMD$(OBJ): STSDEF.H SYSMSG.H ACCESS.H CACHE.H F11DEF.H
|
|
MOUNTCMD$(OBJ): DEVICE.H
|
|
MOUNTCMD$(OBJ): PHYIO.H PHYVIRT.H
|
|
PHYVMS$(OBJ): DESCRIP.H RMS.H VMSTIME.H SSDEF.H STSDEF.H
|
|
PHYVMS$(OBJ): ODS2.H PHYIO.H PHYVIRT.H
|
|
PHYVIRT$(OBJ): COMPAT.H
|
|
PHYVIRT$(OBJ): DEVICE.H
|
|
PHYVIRT$(OBJ): ACCESS.H CACHE.H F11DEF.H
|
|
PHYVIRT$(OBJ): VMSTIME.H DESCRIP.H SSDEF.H STSDEF.H
|
|
PHYVIRT$(OBJ): PHYIO.H ODS2.H PHYVIRT.H
|
|
RMS$(OBJ): ACCESS.H CACHE.H
|
|
RMS$(OBJ): F11DEF.H VMSTIME.H
|
|
RMS$(OBJ): DESCRIP.H SSDEF.H STSDEF.H DEVICE.H PHYIO.H DIRECT.H FIBDEF.H ODS2.H
|
|
RMS$(OBJ): RMS.H COMPAT.H
|
|
RMS$(OBJ): SYSMSG.H
|
|
SEARCHCMD$(OBJ): CMDDEF.H
|
|
SEARCHCMD$(OBJ): COMPAT.H
|
|
SEARCHCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
SEARCHCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
SETCMD$(OBJ): CMDDEF.H
|
|
SETCMD$(OBJ): COMPAT.H
|
|
SETCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
SETCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
SHOWCMD$(OBJ): CMDDEF.H
|
|
SHOWCMD$(OBJ): COMPAT.H
|
|
SHOWCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
SHOWCMD$(OBJ): STSDEF.H SYSMSG.H ACCESS.H CACHE.H F11DEF.H
|
|
SHOWCMD$(OBJ): DIRECT.H PHYIO.H
|
|
SHOWCMD$(OBJ): PHYVIRT.H VERSION.H
|
|
SPAWNCMD$(OBJ): CMDDEF.H
|
|
SPAWNCMD$(OBJ): COMPAT.H
|
|
SPAWNCMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
SPAWNCMD$(OBJ): STSDEF.H SYSMSG.H
|
|
SYSMSG$(OBJ): SSDEF.H RMS.H
|
|
SYSMSG$(OBJ): VMSTIME.H DESCRIP.H STSDEF.H COMPAT.H
|
|
SYSMSG$(OBJ): SYSMSG.H
|
|
TYPECMD$(OBJ): CMDDEF.H
|
|
TYPECMD$(OBJ): COMPAT.H
|
|
TYPECMD$(OBJ): ODS2.H RMS.H VMSTIME.H DESCRIP.H SSDEF.H
|
|
TYPECMD$(OBJ): STSDEF.H SYSMSG.H
|
|
UPDATE$(OBJ): ACCESS.H CACHE.H
|
|
UPDATE$(OBJ): F11DEF.H
|
|
UPDATE$(OBJ): VMSTIME.H DESCRIP.H SSDEF.H STSDEF.H DEVICE.H PHYIO.H ODS2.H
|
|
VMSTIME$(OBJ): VMSTIME.H DESCRIP.H SSDEF.H STSDEF.H
|