1$ ! 2$ ! dvips for VAX/VMS 3$ ! 4$ ! 5$ ! Use to compile and link dvips with VAXC under VMS. Before using 6$ ! this command file you must set the following definitions according 7$ ! to your own environment; 8$ ! 9$ ! TFMPATH - The directory where TFM files live ( needed for 10$ ! the compilation of dvips.c ). Be sure and include 11$ ! the needed directory separator in the path ( i.e. 12$ ! TEX_FONTS: ) 13$ ! PKPATH - The directory where PK files live ( needed for the 14$ ! compilation of dvips.c ). You should also decided 15$ ! whether you need VMS_ROOTED ( needed for the 16$ ! compilation of loadfont.c ) defined so that 17$ ! PKPATH will be interpreted as a rooted directory 18$ ! under VMS. Be sure and include the needed directory 19$ ! separator in the path ( i.e. TEX_FONTS: ). 20$ ! HEADERPATH - The directory where the PostScript prologue file 21$ ! live ( needed for the compilation of output.c & 22$ ! dvips.c). Be sure and include a trailing comma in 23$ ! your definition of the header path as dvips uses this 24$ ! definition as a path for both PostScript prologue 25$ ! files and files which are included with \special 26$ ! options. This definition should be a comma 27$ ! separated list of directories where dvips will 28$ ! look for a specified file. As an example; 29$ ! 30$ ! "HEADERPATH=""TEX_POSTSCRIPT:,SYS$LOGIN:,""" 31$ ! 32$ ! to look first in TEX_POSTSCRIPT:, then in SYS$LOGIN:, 33$ ! and finally in the current default directory. 34$ ! CONFIGPATH - The directory where the configuration file lives 35$ ! ( needed for the compilation of resident.c ). Be 36$ ! sure and include the needed directory separator 37$ ! in the path ( i.e. TEX_POSTSCRIPT: ). 38$ ! 39$ ! FIGPATH - Where the .ps and .eps files are 40$ ! 41$ ! After dvips has been compiled and linked the user will be given the 42$ ! option of compressing the PostScript prologue files which are used 43$ ! by dvips and copying the resultant prologue files to the specifed 44$ ! HEADERPATH. The user will also be given the option of copying the 45$ ! dvips image file to the area where TeX related images are stored. 46$ ! Answering "yes" to either of these options should be done only if 47$ ! the user has write priviledges to the directories which are specified. 48$ ! 49$ ! Command file by: Robert Schneider 50$ ! Department of Petroleum Engineering 51$ ! The University of Texas at Austin 52$ ! 53$ ! October 1989 54$ ! 55$ ! Updates by: Earle Ake 56$ ! Science Applications International Corporation 57$ ! Dayton, Ohio 58$ ! ake@dayton.saic.com 59$ ! 60$ ! Updated for DVIPS 5.34 61$ ! August 1990 62$ ! 63$ ! Ted Nieland 64$ ! Control Data Corporation 65$ ! DECUS TeX Collection Editor 66$ ! ted@nieland.dayton.oh.us 67$ ! 68$ ! Updated for DVIPS 5.47, February 1991 69$ ! 70$ ! Updated for DVIPS 5.474, March 1992 71$ ! Earle F. Ake 72$ ! 73$! Updated for DVIPS 5.493, Sept 1992 74$! Added HAVE_GETCWD,ANSI in CC for 75$! dvips.c and resident.c 76$! Max Calvani 77$! calvani@astrpd.astro.it 78$! 79$! Updated for DVIPS 5.495, Oct. 1992 80$! calvani@astrpd.astro.it 81$! 82$! Updated for DVIPS 5.499, Jan. 1993 83$! Added FONTLIB support 84$! calvani@astrpd.astro.it 85$! 86$ on error then goto bad_exit 87$ on severe_error then goto bad_exit 88$ ! 89$ TFMPATH = "TEX_FONTS:" 90$ PKPATH = "TEX_PKDIR:" 91$ VFPATH = "TEX_VFDIR:" 92$ HEADERPATH = "DVI_INPUTS:,TEX_INPUTS:,SYS$LOGIN:,SYS$DISK:[]," 93$ PLACEHEADER_DIR = "TEX_DISK:[TEX.INPUTS.DVIDRIVERS]" 94$ CONFIGPATH = "TEX_INPUTS:" 95$ FIGPATH = "TEX_INPUTS:,SYS$DISK:" 96$ TPIC = ",TPIC" 97$ EMTEX = ",EMTEX" 98$ FONTLIB = ",FONTLIB" 99$ VMS_ROOTED = ",VMS_ROOTED" 100$ TEXEXEPATH = "TEX_DISK:[TEX.EXE]" 101$ DEBUG = ",DEBUG" 102$ ! 103$ write sys$output " " 104$ inquire/nop ANSWER "Have you read the file VMS_INSTALL.TXT [no]? " 105$ if ANSWER .eqs. "" then ANSWER = 0 106$ if ANSWER then goto read_instructions 107$ write sys$output " " 108$ write sys$output "Please read the VMS_INSTALL.TXT file, edit this command" 109$ write sys$output "file if necessary, and then execute this file again." 110$ write sys$output " " 111$ exit 112$ read_instructions: 113$ write sys$output " " 114$ inquire/nop ANSWER "Compile sources [no]? " 115$ if ANSWER .eqs. "" then ANSWER = 0 116$ if .not. ANSWER then goto linkstep 117$ ! 118$ get_definitions: 119$ write sys$output " " 120$ ! 121$ inquire/nop ANSWER "TFM path [''TFMPATH']? " 122$ if ANSWER .nes. "" then TFMPATH = ANSWER 123$ inquire/nop ANSWER "PK path [''PKPATH']? " 124$ if ANSWER .nes. "" then PKPATH = ANSWER 125$ inquire/nop ANSWER "VF path [''VFPATH']? " 126$ if ANSWER .nes. "" then VFPATH = ANSWER 127$ inquire/nop ANSWER "PostScript HEADER path [''HEADERPATH']? " 128$ if ANSWER .nes. "" then HEADERPATH = ANSWER 129$ inquire/nop ANSWER "PostScript CONFIG path [''CONFIGPATH'])? " 130$ if ANSWER .nes. "" then CONFIGPATH = ANSWER 131$ inquire/nop ANSWER "FIG path [''FIGPATH'])? " 132$ if ANSWER .nes. "" then FIGPATH = ANSWER 133$ inquire/nop ANSWER "Do you want TPIC support [yes]? " 134$ if ANSWER .eqs. "" then ANSWER = 1 135$ if .not. ANSWER then TPIC = "" 136$ inquire/nop ANSWER "Do you want EMTEX support [yes]? " 137$ if ANSWER .eqs. "" then ANSWER = 1 138$ if .not. ANSWER then EMTEX = "" 139$ inquire/nop ANSWER "Do you want FONTLIB support [yes]? " 140$ if ANSWER .eqs. "" then ANSWER = 1 141$ if .not. ANSWER then FONTLIB = "" 142$ inquire/nop ANSWER "Do you want DEBUG support [yes]? " 143$ if ANSWER .eqs. "" then ANSWER = 1 144$ if .not. ANSWER then DEBUG = "" 145$ inquire/nop ANSWER "Is ''PKPATH' a rooted directory [yes]? " 146$ if ANSWER .eqs. "" then ANSWER = 1 147$ if .not. ANSWER then VMS_ROOTED = "" 148$ write sys$output " " 149$ write sys$output "dvips will be compiled with the following definitions;" 150$ write sys$output " " 151$ write sys$output "TFMPATH = ",TFMPATH 152$ write sys$output "PKPATH = ",PKPATH 153$ write sys$output "VFPATH = ",VFPATH 154$ write sys$output "HEADERPATH = ",HEADERPATH 155$ write sys$output "CONFIGPATH = ",CONFIGPATH 156$ write sys$output "FIGPATH = ",FIGPATH 157$ if TPIC .eqs. "" then - 158 write sys$output "TPIC support is not enabled." 159$ if TPIC .nes. "" then - 160 write sys$output "TPIC support is enabled." 161$ if FONTLIB .eqs. "" then - 162 write sys$output "FONTLIB support is not enabled." 163$ if FONTLIB .nes. "" then - 164 write sys$output "FONTLIB support is enabled." 165$ if EMTEX .eqs. "" then - 166 write sys$output "EMTEX support is not enabled." 167$ if EMTEX .nes. "" then - 168 write sys$output "EMTEX support is enabled." 169$ if DEBUG .eqs. "" then - 170 write sys$output "DEBUG support is not enabled." 171$ if DEBUG .nes. "" then - 172 write sys$output "DEBUG support is enabled." 173$ if VMS_ROOTED .eqs. "" then - 174 write sys$output PKPATH," is not a rooted directory." 175$ if VMS_ROOTED .nes. "" then - 176 write sys$output PKPATH," is a rooted directory." 177$ write sys$output " " 178$ inquire/nop ANSWER "Is this correct [yes]? " 179$ if ANSWER .eqs. "" then ANSWER = 1 180$ if .not. ANSWER then goto get_definitions 181$ ! 182$ if VMS_ROOTED .nes. "" then PKPATH = "''PKPATH'[%d]%f.PK" 183$ write sys$output " " 184$ write sys$output "Compiling sources ..." 185$ write sys$output " " 186$ write sys$output "afm2tfm.c ..." 187$ cc /define=(VMS'DEBUG') AFM2TFM.C 188$ write sys$output "color.c ..." 189$ cc /define=(VMS'DEBUG') COLOR.C 190$ write sys$output "dopage.c ..." 191$ cc /define=(VMS'DEBUG''EMTEX') DOPAGE.C 192$ write sys$output "dosection.c ..." 193$ cc /define=(VMS'DEBUG') DOSECTION.C 194$ write sys$output "dospecial.c ..." 195$ cc /define=(VMS'DEBUG''TPIC') DOSPECIAL.C 196$ write sys$output "download.c ..." 197$ cc /define=(VMS'DEBUG') DOWNLOAD.C 198$ write sys$output "dpicheck.c ..." 199$ cc /define=(VMS'DEBUG') DPICHECK.C 200$ write sys$output "drawps.c ..." 201$ cc /define=(VMS'DEBUG''TPIC') DRAWPS.C 202$ write sys$output "dviinput.c ..." 203$ cc /define=(VMS'DEBUG') DVIINPUT.C 204$ write sys$output "dvips.c ..." 205$ cc /define=(VMS'DEBUG',"TFMPATH=""''TFMPATH'""","PKPATH=""''PKPATH'""", - 206 "VFPATH=""''VFPATH'""","FIGPATH=""''FIGPATH'""",HAVE_GETCWD,ANSI, - 207 "CONFIGPATH=""''CONFIGPATH'""","HEADERPATH=""''HEADERPATH'""") DVIPS.C 208$ write sys$output "finclude.c ..." 209$ cc /DEF=(VMS'DEBUG') FINCLUDE.C 210$ write sys$output "flib.c ..." 211$ cc /DEF=(VMS'DEBUG''FONTLIB') FLIB.C 212$ write sys$output "fontdef.c ..." 213$ cc /define=(VMS'DEBUG') FONTDEF.C 214$ write sys$output "header.c ..." 215$ cc /define=(VMS'DEBUG') HEADER.C 216$ write sys$output "loadfont.c ..." 217$ cc /define=(VMS'DEBUG') LOADFONT.C 218$ write sys$output "makefont.c ..." 219$ cc /define=(VMS'DEBUG') MAKEFONT.C 220$ write sys$output "output.c ..." 221$ cc /define=(VMS'DEBUG',"HEADERPATH=""''HEADERPATH'""") OUTPUT.C 222$ write sys$output "papersiz.c ..." 223$ cc /define=(VMS'DEBUG') PAPERSIZ.C 224$ write sys$output "pprescan.c ..." 225$ cc /define=(VMS'DEBUG') PPRESCAN.C 226$ write sys$output "prescan.c ..." 227$ cc /define=(VMS'DEBUG') PRESCAN.C 228$ write sys$output "repack.c ..." 229$ cc /define=(VMS'DEBUG') REPACK.C 230$ write sys$output "resident.c ..." 231$ cc /define=(VMS'DEBUG',"CONFIGPATH=""''CONFIGPATH'""",HAVE_GETCWD,ANSI) - 232 RESIDENT.C 233$ write sys$output "scalewidth.c ..." 234$ cc /define=(VMS'DEBUG') SCALEWIDTH.C 235$ write sys$output "scanpage.c ..." 236$ cc /define=(VMS'DEBUG') SCANPAGE.C 237$ write sys$output "search.c ..." 238$ cc /define=(VMS'DEBUG') SEARCH.C 239$ write sys$output "skippage.c ..." 240$ cc /define=(VMS'DEBUG') SKIPPAGE.C 241$ write sys$output "squeeze.c ..." 242$ cc /define=(VMS'DEBUG') SQUEEZE.C 243$ write sys$output "tfmload.c ..." 244$ cc /define=(VMS'DEBUG') TFMLOAD.C 245$ write sys$output "unpack.c ..." 246$ cc /define=(VMS'DEBUG') UNPACK.C 247$ write sys$output "virtualfont.c ..." 248$ cc /define=(VMS'DEBUG') VIRTUALFONT.C 249$ write sys$output "bbox.c ..." 250$ cc /define=(VMS'DEBUG') BBOX.C 251$ write sys$output "emspecial.c ..." 252$ cc /define=(VMS'DEBUG''EMTEX') EMSPECIAL.C 253$ ! 254$ ! vaxvms fixes some irritating problems with VAXC ( particulary 255$ ! fseek and ftell ). Thanks to Nelson Beebee at Utah. 256$ ! 257$ write sys$output "vaxvms.c ..." 258$ cc /define=(VMS'DEBUG') [.VMS]VAXVMS.C 259$ ! 260$ linkstep: 261$ write sys$output " " 262$ write sys$output "Linking dvips ..." 263$ link /exe=dvips dvips,dopage,dosection,dospecial,download,dpicheck,drawps, - 264 dviinput,header,finclude,flib,fontdef,loadfont,tfmload,prescan, - 265 scanpage,skippage,output,scalewidth,resident,search,unpack, - 266 makefont,repack,virtualfont,vaxvms,color,papersiz,pprescan, - 267 bbox,emspecial,[.vms]vaxcrtl.opt/opt 268$ write sys$output " " 269$ write sys$output "Linking squeeze ..." 270$ link /exe=squeeze squeeze,vaxvms,[.vms]vaxcrtl.opt/opt 271$ write sys$output " " 272$ write sys$output "Linking afm2tfm ..." 273$ write sys$output " " 274$ link /exe=afm2tfm afm2tfm,vaxvms,[.vms]vaxcrtl.opt/opt 275$ ! 276$ inquire/nop ANSWER - 277 "Do you wish to compress the PostScript prologue files [no]? " 278$ if ANSWER .eqs. "" then ANSWER = 0 279$ if .not. ANSWER then goto copy_prologue 280$ squeeze :== $'f$environment("DEFAULT")'squeeze.exe 281$ write sys$output " " 282$ set verify 283$ squeeze COLOR.LPRO COLOR.PRO 284$ squeeze FINCLUDE.LPRO FINCLUDE.PRO 285$ squeeze TEX.LPRO TEX.PRO 286$ squeeze TEXPS.LPRO TEXPS.PRO 287$ squeeze SPECIAL.LPRO SPECIAL.PRO 288$ verify = 'f$verify(0) 289$ write sys$output " " 290$ copy_prologue: 291$ FIRSTPATH = PLACEHEADER_DIR 292$ inquire/nop ANSWER - 293 "Do you wish to copy the prologue files to ''FIRSTPATH' [yes]? " 294$ if ANSWER .eqs. "" then ANSWER = 1 295$ if .not. ANSWER then goto copy_config 296$ write sys$output " " 297$ set verify 298$ copy COLOR.PRO 'FIRSTPATH'COLOR.PRO 299$ copy FINCLUDE.PRO 'FIRSTPATH'FINCLUDE.PRO 300$ copy TEX.PRO 'FIRSTPATH'TEX.PRO 301$ copy TEXPS.PRO 'FIRSTPATH'TEXPS.PRO 302$ copy SPECIAL.PRO 'FIRSTPATH'SPECIAL.PRO 303$ set protection=(s:rwed,o:rwed,g:re,w:re) 'FIRSTPATH'COLOR.PRO 304$ set protection=(s:rwed,o:rwed,g:re,w:re) 'FIRSTPATH'FINCLUDE.PRO 305$ set protection=(s:rwed,o:rwed,g:re,w:re) 'FIRSTPATH'TEX.PRO 306$ set protection=(s:rwed,o:rwed,g:re,w:re) 'FIRSTPATH'SPECIAL.PRO 307$ set protection=(s:rwed,o:rwed,g:re,w:re) 'FIRSTPATH'TEXPS.PRO 308$ verify = 'f$verify(0) 309$ write sys$output " " 310$ copy_config: 311$ FIRSTPATH = PLACEHEADER_DIR 312$ inquire/nop ANSWER - 313 "Do you wish to copy the CONFIG.PS file to ''FIRSTPATH' [yes]? " 314$ if ANSWER .eqs. "" then ANSWER = 1 315$ if .not. ANSWER then goto copy_image 316$ write sys$output " " 317$ set verify 318$ copy CONFIG.PS 'FIRSTPATH'CONFIG.PS 319$ set protection=(s:rwed,o:rwed,g:re,w:re) 'FIRSTPATH'CONFIG.PS 320$ verify = 'f$verify(0) 321$ write sys$output " " 322$ copy_image: 323$ inquire/nop ANSWER "Do you wish to copy DVIPS.EXE to the TeX area [yes]? " 324$ if ANSWER .eqs. "" then ANSWER = 1 325$ if .not. ANSWER then goto done 326$ inquire/nop ANSWER "TeX image area [''TEXEXEPATH']? " 327$ if ANSWER .nes. "" THEN TEXEXEPATH = ANSWER 328$ write sys$output " " 329$ set verify 330$ copy dvips.exe 'TEXEXEPATH' 331$ set protect=(s:rwed,o:rwed,g:re,w:re) 'TEXEXEPATH'dvips.exe 332$ verify = 'f$verify(0) 333$ write sys$output " " 334$ done: 335$ write sys$output " " 336$ write sys$output "Be sure to add dvips to your CLI by using the SET " 337$ write sys$output "COMMAND syntax and do the other steps which are" 338$ write sys$output "necessary to finish up the installation of dvips." 339$ write sys$output " " 340$ goto good_exit 341$ bad_exit: 342$ write sys$output " " 343$ write sys$output "Something's wrong here. You might want to take a look" 344$ write sys$output "at the offending code or command and start over." 345$ write sys$output " " 346$ exit 347$ good_exit: 348$ write sys$output "Done." 349$ write sys$output " " 350$ exit 351$! --------------------- EOF ------------------------------------- 352