mirror of
				https://git.code.sf.net/p/libpng/code.git
				synced 2025-07-10 18:04:09 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			143 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			143 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| $! make libpng under VMS
 | |
| $!
 | |
| $!
 | |
| $! Check for MMK/MMS
 | |
| $!
 | |
| $! This procedure accepts one parameter (contrib), which causes it to build
 | |
| $! the programs from the contrib directory instead of libpng.
 | |
| $!
 | |
| $ p1 = f$edit(p1,"UPCASE")
 | |
| $ if p1 .eqs. "CONTRIB"
 | |
| $ then
 | |
| $   set def [.contrib.gregbook]
 | |
| $   @makevms
 | |
| $   set def [-.pngminus]
 | |
| $   @makevms
 | |
| $   set def [--]
 | |
| $   exit
 | |
| $ endif
 | |
| $ Make = ""
 | |
| $ If F$Search ("Sys$System:MMS.EXE") .nes. "" Then Make = "MMS"
 | |
| $ If F$Type (MMK) .eqs. "STRING" Then Make = "MMK"
 | |
| $!
 | |
| $! Look for the compiler used
 | |
| $!
 | |
| $ zlibsrc = "[-.zlib]"
 | |
| $ ccopt="/include=''zlibsrc'"
 | |
| $ if f$getsyi("HW_MODEL").ge.1024
 | |
| $ then
 | |
| $  ccopt = "/prefix=all"+ccopt
 | |
| $  comp  = "__decc__=1"
 | |
| $  if f$trnlnm("SYS").eqs."" then define sys sys$library:
 | |
| $ else
 | |
| $  if f$search("SYS$SYSTEM:DECC$COMPILER.EXE").eqs.""
 | |
| $   then
 | |
| $    if f$trnlnm("SYS").eqs."" then define sys sys$library:
 | |
| $    if f$search("SYS$SYSTEM:VAXC.EXE").eqs.""
 | |
| $     then
 | |
| $      comp  = "__gcc__=1"
 | |
| $      CC :== GCC
 | |
| $     else
 | |
| $      comp = "__vaxc__=1"
 | |
| $     endif
 | |
| $   else
 | |
| $    if f$trnlnm("SYS").eqs."" then define sys decc$library_include:
 | |
| $    ccopt = "/decc/prefix=all"+ccopt
 | |
| $    comp  = "__decc__=1"
 | |
| $  endif
 | |
| $ endif
 | |
| $!
 | |
| $! Build the thing plain or with mms/mmk
 | |
| $!
 | |
| $ write sys$output "Compiling Libpng sources ..."
 | |
| $ if make.eqs.""
 | |
| $  then
 | |
| $   dele pngtest.obj;*
 | |
| $   CALL MAKE png.OBJ "cc ''CCOPT' png" -
 | |
| 	png.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngset.OBJ "cc ''CCOPT' pngset" -
 | |
| 	pngset.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngget.OBJ "cc ''CCOPT' pngget" -
 | |
| 	pngget.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngread.OBJ "cc ''CCOPT' pngread" -
 | |
| 	pngread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngpread.OBJ "cc ''CCOPT' pngpread" -
 | |
| 	pngpread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngrtran.OBJ "cc ''CCOPT' pngrtran" -
 | |
| 	pngrtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngrutil.OBJ "cc ''CCOPT' pngrutil" -
 | |
| 	pngrutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngerror.OBJ "cc ''CCOPT' pngerror" -
 | |
| 	pngerror.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngmem.OBJ "cc ''CCOPT' pngmem" -
 | |
| 	pngmem.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngrio.OBJ "cc ''CCOPT' pngrio" -
 | |
| 	pngrio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngwio.OBJ "cc ''CCOPT' pngwio" -
 | |
| 	pngwio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngtrans.OBJ "cc ''CCOPT' pngtrans" -
 | |
| 	pngtrans.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngwrite.OBJ "cc ''CCOPT' pngwrite" -
 | |
| 	pngwrite.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngwtran.OBJ "cc ''CCOPT' pngwtran" -
 | |
| 	pngwtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   CALL MAKE pngwutil.OBJ "cc ''CCOPT' pngwutil" -
 | |
| 	pngwutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
 | |
| $   write sys$output "Building Libpng ..."
 | |
| $   CALL MAKE libpng.OLB "lib/crea libpng.olb *.obj" *.OBJ
 | |
| $   write sys$output "Building pngtest..."
 | |
| $   CALL MAKE pngtest.OBJ "cc ''CCOPT' pngtest" -
 | |
| 	pngtest.c png.h pngconf.h pnglibconf.h
 | |
| $   call make pngtest.exe -
 | |
| 	"LINK pngtest,libpng.olb/lib,''zlibsrc'libz.olb/lib" -
 | |
| 	pngtest.obj libpng.olb
 | |
| $   write sys$output "Testing Libpng..."
 | |
| $   run pngtest
 | |
| $  else
 | |
| $   if f$search("DESCRIP.MMS") .eqs. "" then copy/nolog [.SCRIPTS]DESCRIP.MMS []
 | |
| $   'make'/macro=('comp',zlibsrc='zlibsrc')
 | |
| $  endif
 | |
| $ write sys$output "Libpng build completed"
 | |
| $ exit
 | |
| $!
 | |
| $!
 | |
| $MAKE: SUBROUTINE   !SUBROUTINE TO CHECK DEPENDENCIES
 | |
| $ V = 'F$Verify(0)
 | |
| $! P1 = What we are trying to make
 | |
| $! P2 = Command to make it
 | |
| $! P3 - P8  What it depends on
 | |
| $
 | |
| $ If F$Search(P1) .Eqs. "" Then Goto Makeit
 | |
| $ Time = F$CvTime(F$File(P1,"RDT"))
 | |
| $arg=3
 | |
| $Loop:
 | |
| $       Argument = P'arg
 | |
| $       If Argument .Eqs. "" Then Goto Exit
 | |
| $       El=0
 | |
| $Loop2:
 | |
| $       File = F$Element(El," ",Argument)
 | |
| $       If File .Eqs. " " Then Goto Endl
 | |
| $       AFile = ""
 | |
| $Loop3:
 | |
| $       OFile = AFile
 | |
| $       AFile = F$Search(File)
 | |
| $       If AFile .Eqs. "" .Or. AFile .Eqs. OFile Then Goto NextEl
 | |
| $       If F$CvTime(F$File(AFile,"RDT")) .Ges. Time Then Goto Makeit
 | |
| $       Goto Loop3
 | |
| $NextEL:
 | |
| $       El = El + 1
 | |
| $       Goto Loop2
 | |
| $EndL:
 | |
| $ arg=arg+1
 | |
| $ If arg .Le. 8 Then Goto Loop
 | |
| $ Goto Exit
 | |
| $
 | |
| $Makeit:
 | |
| $ VV=F$VERIFY(0)
 | |
| $ write sys$output P2
 | |
| $ 'P2
 | |
| $ VV='F$Verify(VV)
 | |
| $Exit:
 | |
| $ If V Then Set Verify
 | |
| $ENDSUBROUTINE
 | 
