]> www.fi.muni.cz Git - evince.git/blobdiff - pdf/xpdf/vms_make.com
Add support for document links
[evince.git] / pdf / xpdf / vms_make.com
index 32670912d8d991957dbb35f79c089845089d11f8..f4fb74aff888fd75e1e54a2d56269d86b532c470 100644 (file)
@@ -2,95 +2,128 @@ $!========================================================================
 $!
 $! Xpdf compile script for VMS.
 $!
-$! Copyright 1996 Derek B. Noonburg
+$! Written by Patrick Moreau, Martin P.J. Zinser.
+$!
+$! Copyright 1996-2003 Glyph & Cog, LLC
 $!
 $!========================================================================
 $!
-$ XPDF_OBJS = "Array.obj,Catalog.obj,Dict.obj,Error.obj," + -
-              "FontEncoding.obj,FontFile.obj,Gfx.obj," + -
-              "GfxFont.obj,GfxState.obj,Lexer.obj,Link.obj," + -
-              "LTKOutputDev.obj,Object.obj,OutputDev.obj,Page.obj," + -
-              "Params.obj,Parser.obj,PDFDoc.obj,PSOutputDev.obj," + -
-              "Stream.obj,TextOutputDev.obj,XOutputDev.obj,XRef.obj"
-$ XPDF_LIBS = "[-.ltk]libltk.olb/lib,[-.goo]libgoo.olb/lib"
-$!
-$ PDFTOPS_OBJS = "Array.obj,Catalog.obj,Dict.obj,Error.obj," + -
-                 "FontEncoding.obj,FontFile.obj,Gfx.obj," + -
-                 "GfxFont.obj,GfxState.obj,Lexer.obj,Link.obj," + -
-                 "Object.obj,OutputDev.obj,Page.obj,Params.obj," + -
-                 "Parser.obj,PDFdoc.obj,PSOutputDev.obj,Stream.obj," + -
-                 "XRef.obj"
-$ PDFTOPS_LIBS = "[-.goo]libgoo.olb/lib"
-$!
-$ PDFTOTEXT_OBJS = "Array.obj,Catalog.obj,Dict.obj,Error.obj," + -
-                   "FontEncoding.obj,FontFile.obj,Gfx.obj," + -
-                   "GfxFont.obj,GfxState.obj,Lexer.obj,Link.obj," + -
-                   "Object.obj,OutputDev.obj,Page.obj,Params.obj," + -
-                   "Parser.obj,PDFdoc.obj,TextOutputDev.obj,Stream.obj," + -
-                   "XRef.obj"
-$ PDFTOTEXT_LIBS = "[-.goo]libgoo.olb/lib"
-$!
-$ PDFINFO_OBJS = "Array.obj,Catalog.obj,Dict.obj,Error.obj," + -
-                 "FontEncoding.obj,FontFile.obj,Gfx.obj," + -
-                 "GfxFont.obj,GfxState.obj,Lexer.obj,Link.obj," + -
-                 "Object.obj,OutputDev.obj,Page.obj,Params.obj," + -
-                 "Parser.obj,PDFdoc.obj,Stream.obj,XRef.obj"
-$ PDFINFO_LIBS = "[-.goo]libgoo.olb/lib"
-$!
-$ PDFTOPBM_OBJS = "Array.obj,Catalog.obj,Dict.obj,Error.obj," + -
-                  "FontEncoding.obj,FontFile.obj,Gfx.obj," + -
-                  "GfxFont.obj,GfxState.obj,Lexer.obj,Link.obj," + -
-                  "Object.obj,OutputDev.obj,PBMOutputDev.obj,Page.obj," + -
-                  "Params.obj,Parser.obj,PDFdoc.obj,Stream.obj," + -
-                  "TextOutputDev.obj,XOutputDev.obj,XRef.obj"
-$ PDFTOPBM_LIBS = "[-.goo]libgoo.olb/lib"
-$!
-$ PDFIMAGES_OBJS = "Array.obj,Catalog.obj,Dict.obj,Error.obj," + -
-                   "FontEncoding.obj,FontFile.obj,Gfx.obj," + -
-                   "GfxFont.obj,GfxState.obj,ImageOutputDev.obj," + -
-                   "Lexer.obj,Link.obj,Object.obj,OutputDev.obj,Page.obj," + -
-                   "Params.obj,Parser.obj,PDFdoc.obj,Stream.obj,XRef.obj"
-$ PDFIMAGES_LIBS = "[-.goo]libgoo.olb/lib"
-$! Build xpdf-ltk.h
-$ def/user sys$input xpdf.ltk
-$ def/user sys$output xpdf-ltk.h
-$ run [-.ltk]ltkbuild
-$!
-$ CXXCOMP Array.cc
-$ CXXCOMP Catalog.cc
-$ CXXCOMP Dict.cc
-$ CXXCOMP Error.cc
-$ CXXCOMP FontEncoding.cc
-$ CXXCOMP FontFile.cc
-$ CXXCOMP Gfx.cc
-$ CXXCOMP GfxFont.cc
-$ CXXCOMP GfxState.cc
-$ CXXCOMP ImageOutputDev.cc
-$ CXXCOMP Lexer.cc
-$ CXXCOMP Link.cc
-$ CXXCOMP LTKOutputDev.cc
-$ CXXCOMP Object.cc
-$ CXXCOMP OutputDev.cc
-$ CXXCOMP Page.cc
-$ CXXCOMP Params.cc
-$ CXXCOMP Parser.cc
-$ CXXCOMP PBMOutputDev.cc
-$ CXXCOMP PDFDoc.cc
-$ CXXCOMP PSOutputDev.cc
-$ CXXCOMP Stream.cc
-$ CXXCOMP TextOutputDev.cc
-$ CXXCOMP XOutputDev.cc
-$ CXXCOMP XRef.cc
-$ CXXCOMP xpdf.cc
-$ CXXCOMP pdftops.cc
-$ CXXCOMP pdftotext.cc
-$ CXXCOMP pdfinfo.cc
-$ CXXCOMP pdftopbm.cc
-$ CXXCOMP pdfimages.cc
-$!
-$ link xpdf,'XPDF_OBJS,'XPDF_LIBS,[-]xpdf.opt/opt
-$ link pdftops,'PDFTOPS_OBJS,'PDFTOPS_LIBS,[-]xpdf.opt/opt
-$ link pdftotext,'PDFTOTEXT_OBJS,'PDFTOTEXT_LIBS,[-]xpdf.opt/opt
-$ link pdfinfo,'PDFINFO_OBJS,'PDFINFO_LIBS,[-]xpdf.opt/opt
-$ link pdftopbm,'PDFTOPBM_OBJS,'PDFTOPBM_LIBS,[-]xpdf.opt/opt
-$ link pdfimages,'PDFIMAGES_OBJS,'PDFIMAGES_LIBS,[-]xpdf.opt/opt
+$ i = 0
+$ j = 0
+$ APPS = "XPDF,PDFTOPS,PDFTOTEXT,PDFINFO,PDFTOPBM,PDFIMAGES,PDFFONTS"
+$ if f$search("COMMON.OLB").eqs."" then lib/create common.olb
+$!
+$ COMMON_OBJS = "Annot.obj,Array.obj,BuiltinFont.obj," + - 
+                "BuiltinFontTables.obj,Catalog.obj,CharCodeToUnicode.obj," + - 
+                "CMap.obj,Decrypt.obj,Dict.obj,Error.obj," + -
+                "FontEncodingTables.obj,FontFile.obj," + -
+                "Function.obj,Gfx.obj,GfxFont.obj,GfxState.obj,"+ - 
+                "GlobalParams.obj,JArithmeticDecoder.obj,JBIG2Stream.obj,"+ -
+                "Lexer.obj,Link.obj,NameToCharCode.obj,Object.obj,"+ -
+                "Outline.obj,OutputDev.obj,Page.obj,Parser.obj,PDFdoc.obj," + -
+                "PDFDocEncoding.obj,PSTokenizer.obj,Stream.obj," + -
+                "UnicodeMap.obj,UnicodeTypeTable.obj,XRef.obj"
+$ COMMON_LIBS = "[]common.olb/lib,[-.goo]libgoo.olb/lib"
+$!
+$ XPDF_OBJS = "xpdf.obj,FTFont.obj,PSOutputDev.obj," + -
+              "SFont.obj,T1Font.obj,TextOutputDev.obj,TTFont.obj," + -
+              "XOutputDev.obj,XPDFApp.obj,XPDFCore.obj,XPDFTree.obj," + -
+              "XPDFViewer.obj,XPixmapOutputDev.obj"
+$ XPDF_LIBS = ""
+$!
+$ PDFTOPS_OBJS   = "pdftops.obj,PSOutputDev.obj" 
+$ PDFTOPS_LIBS   = ""
+$!
+$ PDFTOTEXT_OBJS = "pdftotext.obj,TextOutputDev.obj"
+$ PDFTOTEXT_LIBS = ""
+$!
+$ PDFINFO_OBJS   =  "pdfinfo.obj"
+$ PDFINFO_LIBS   = ""
+$!
+$ PDFTOPBM_OBJS  = "pdftopbm.obj,FTFont.obj,PBMOutputDev.obj,SFont.obj," + -
+                   "T1Font.obj,TextOutputDev.obj,TTFont.obj,XOutputDev.obj"
+$ PDFTOPBM_LIBS  = ""
+$!
+$ PDFIMAGES_OBJS = "pdfimages.obj,ImageOutputDev.obj"
+$ PDFIMAGES_LIBS = ""
+$!
+$ PDFFONTS_OBJS  = "pdffonts.obj"
+$ PDFFONTS_LIBS  = ""
+$!
+$COMPILE_CXX_LOOP:
+$ file = f$element(i, ",",COMMON_OBJS)
+$ if file .eqs. "," then goto BUILD_APPS
+$ i = i + 1
+$ name = f$parse(file,,,"NAME")
+$ call make 'file "CXXCOMP ''name'.cc" - 
+       'name'.cc
+$ call make common.olb "lib/replace common.olb ''name'.obj" - 
+       'name'.obj
+$ goto COMPILE_CXX_LOOP
+$!
+$BUILD_APPS:
+$ curr_app = f$element(j,",",APPS)
+$ if curr_app .eqs. "," then exit
+$ j = j + 1
+$ i = 0
+$COMPILE_APP:
+$ file = f$element(i,",",'curr_app'_OBJS)
+$ if file .eqs. "," then goto LINK_APP
+$ i = i + 1
+$ name = f$parse(file,,,"NAME")
+$ call make 'file "CXXCOMP ''name'.cc" - 
+       'name'.cc
+$ goto COMPILE_APP
+$LINK_APP:
+$ if 'curr_app'_LIBS .nes. "" 
+$ then 
+$   LIBS = 'curr_app'_LIBS + "," + COMMON_LIBS
+$ else
+$   LIBS = COMMON_LIBS 
+$ endif
+$ OBJS = 'curr_app'_OBJS
+$ write sys$output "Linking ''curr_app'..."
+$ xpdf_link/exe='curr_app'.exe 'OBJS','libs',[-]xpdf.opt/opt
+$!  
+$ goto BUILD_APPS
+$ 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