[gs-cvs] rev 8559 - trunk/gs/src

ray at ghostscript.com ray at ghostscript.com
Fri Feb 29 00:13:09 PST 2008


Author: ray
Date: 2008-02-29 00:13:08 -0800 (Fri, 29 Feb 2008)
New Revision: 8559

Added:
   trunk/gs/src/gsromfs0.c
   trunk/gs/src/psromfs.mak
Modified:
   trunk/gs/src/Makefile.in
   trunk/gs/src/bcwin32.mak
   trunk/gs/src/dvx-gcc.mak
   trunk/gs/src/int.mak
   trunk/gs/src/lib.mak
   trunk/gs/src/macos-mcp.mak
   trunk/gs/src/macosx.mak
   trunk/gs/src/msvc32.mak
   trunk/gs/src/msvclib.mak
   trunk/gs/src/openvms.mak
   trunk/gs/src/os2.mak
   trunk/gs/src/ugcclib.mak
   trunk/gs/src/unix-aux.mak
   trunk/gs/src/unix-gcc.mak
   trunk/gs/src/unixansi.mak
   trunk/gs/src/unixlink.mak
   trunk/gs/src/watclib.mak
   trunk/gs/src/watcw32.mak
Log:
Fix COMPILE_INITS=1. Note the next commit to the PCL tree will combine
with this one, but we can't commit to both trees atomically.

DETAILS:

Tested with Windows and linux. Needs OS/2 testing. Other build systems
may have bit rotted, and I don't hav them to test. Some of the changes
here are to allow working with a PCL or XPS only build where the PS
interpreter is not used/needed.

I noticed that the default systemparam value for FontResourceDir isn't
getting et to %rom$Resource/Font/ as it should, but GenericResourceDir
_is_ being initialized correctly to %rom%Resource/ which is _NOT_
fixed by this commit.



Modified: trunk/gs/src/Makefile.in
===================================================================
--- trunk/gs/src/Makefile.in	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/Makefile.in	2008-02-29 08:13:08 UTC (rev 8559)
@@ -483,11 +483,25 @@
 CC_NO_WARN=$(CC_)
 CC_SHARED=$(CC_) @DYNAMIC_LDFLAGS@
 
+# The following list of files needed by the interpreter is maintained here.
+# This changes infrequently, but is a potential point of bitrot, but since
+#		Note: gs_cet.ps is only needed to match Adobe CPSI defaults
+EXTRA_INIT_FILES= Fontmap cidfmap xlatmap FAPI FCOfontmap-PCLPS2 gs_cet.ps
+
+#	The init files are put in the lib/ directory (gs_init.ps + EXTRA_INIT_FILES)
+#	Resource files go into Resource/...
+
+RESOURCE_LIST=ColorSpace/ Decoding/ Encoding/ Font/ ProcSet/ IdiomSet/ CIDFont/ CMap/
+
+PS_ROMFS_ARGS=-c -P $(PSRESDIR)$(D) -d Resource/ $(RESOURCE_LIST) -d lib/ -P $(PSGENDIR)/ $(GS_INIT) -P $(PSLIBDIR)/
+
 # ---------------- End of platform-specific section ---------------- #
 
 INSTALL_CONTRIB=@INSTALL_CONTRIB@
 include $(GLSRCDIR)/unixhead.mak
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(PSSRCDIR)/int.mak
 include $(PSSRCDIR)/cfonts.mak

Modified: trunk/gs/src/bcwin32.mak
===================================================================
--- trunk/gs/src/bcwin32.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/bcwin32.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -536,8 +536,9 @@
 # ****** HACK ****** *.tr is still created in the current directory.
 BEGINFILES2=*.tr
 
-# Include the generic makefiles.
+# Include the generic makefiles. psromfs.mak must precede lib.mak
 
+!include $(GLSRCDIR)\psromfs.mak
 !include $(GLSRCDIR)\winlib.mak
 !include $(PSSRCDIR)\winint.mak
 
@@ -640,27 +641,30 @@
 
 # The big DLL
 $(GSDLL_DLL): $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ)\
- $(GSDLL_OBJ).res $(PSSRCDIR)\gsdll32.def
+ $(GSDLL_OBJ).res $(PSSRCDIR)\gsdll32.def $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	-del $(PSGEN)gswin32.tr
 	copy $(ld_tr) $(PSGEN)gswin32.tr
+	echo  $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) + >> $(PSGEN)gswin32.tr
 	echo $(LIBDIR)\c0d32 $(PSOBJ)gsdll + >> $(PSGEN)gswin32.tr
 	$(LINK) /L$(LIBDIR) $(LCT) /Tpd /aa @$(PSGEN)gswin32.tr ,$(GSDLL_DLL),$(PSOBJ)$(GSDLL),@$(LIBCTR),$(PSSRCDIR)\gsdll32.def,$(GSDLL_OBJ).res
 
 !else
 # The big graphical EXE
 $(GS_XE):   $(GSCONSOLE_XE) $(GS_ALL) $(DEVS_ALL)\
- $(PSOBJ)gsdll.$(OBJ) $(DWOBJNO) $(GS_OBJ).res $(PSSRCDIR)\dwmain32.def
+ $(PSOBJ)gsdll.$(OBJ) $(DWOBJNO) $(GS_OBJ).res $(PSSRCDIR)\dwmain32.def $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	-del $(PSGEN)gswin32.tr
 	copy $(ld_tr) $(PSGEN)gswin32.tr
+	echo  $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) + >> $(PSGEN)gswin32.tr
 	echo $(LIBDIR)\c0w32 $(PSOBJ)gsdll + >> $(PSGEN)gswin32.tr
 	echo $(DWOBJNO) >> $(PSGEN)gswin32.tr
 	$(LINK) /L$(LIBDIR) $(LCT) /Tpe /aa @$(PSGEN)gswin32.tr ,$(GS_XE),$(PSOBJ)$(GS) @$(LIBCTR),$(PSSRCDIR)\dwmain32.def,$(GS_OBJ).res
 
 # The big console mode EXE
 $(GSCONSOLE_XE):  $(GS_ALL) $(DEVS_ALL)\
- $(PSOBJ)gsdll.$(OBJ) $(OBJCNO) $(GS_OBJ).res $(PSSRCDIR)\dw32c.def
+ $(PSOBJ)gsdll.$(OBJ) $(OBJCNO) $(GS_OBJ).res $(PSSRCDIR)\dw32c.def $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	-del $(PSGEN)gswin32.tr
 	copy $(ld_tr) $(PSGEN)gswin32.tr
+	echo  $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) + >> $(PSGEN)gswin32.tr
 	echo $(LIBDIR)\c0w32 $(PSOBJ)gsdll + >> $(PSGEN)gswin32.tr
 	echo $(OBJCNO) >> $(PSGEN)gswin32.tr
 	$(LINK) /L$(LIBDIR) $(LCT) /Tpe /ap @$(PSGEN)gswin32.tr ,$(GSCONSOLE_XE),$(PSOBJ)$(GSCONSOLE) @$(LIBCTR),$(PSSRCDIR)\dw32c.def,$(GS_OBJ).res

Modified: trunk/gs/src/dvx-gcc.mak
===================================================================
--- trunk/gs/src/dvx-gcc.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/dvx-gcc.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -324,6 +324,8 @@
 
 include $(GLSRCDIR)/dvx-head.mak
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(PSSRCDIR)/int.mak
 include $(PSSRCDIR)/cfonts.mak

Added: trunk/gs/src/gsromfs0.c
===================================================================
--- trunk/gs/src/gsromfs0.c	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/gsromfs0.c	2008-02-29 08:13:08 UTC (rev 8559)
@@ -0,0 +1,20 @@
+/* Copyright (C) 2001-2006 Artifex Software, Inc.
+   All Rights Reserved.
+  
+   This software is provided AS-IS with no warranty, either express or
+   implied.
+
+   This software is distributed under license and may not be copied, modified
+   or distributed except as expressly authorized under the terms of that
+   license.  Refer to licensing information at http://www.artifex.com/
+   or contact Artifex Software, Inc.,  7 Mt. Lassen Drive - Suite A-134,
+   San Rafael, CA  94903, U.S.A., +1(415)492-9861, for further information.
+*/
+
+/* $Id:$ */
+/* dummy gsromfs source module used when COMPILE_INITS=0 */
+
+#include "stdint_.h"
+
+    uint32_t *gs_romfs[] = {
+	0 };


Property changes on: trunk/gs/src/gsromfs0.c
___________________________________________________________________
Name: svn:executable
   + *

Modified: trunk/gs/src/int.mak
===================================================================
--- trunk/gs/src/int.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/int.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -975,7 +975,7 @@
 $(PSOBJ)iccinit0.$(OBJ) : $(PSSRC)iccinit0.c $(stdpre_h)
 	$(PSCC) $(PSO_)iccinit0.$(OBJ) $(C_) $(PSSRC)iccinit0.c
 
-$(PSOBJ)iccinit1.$(OBJ) :  $(PSSRC)iccinit1.c $(stdpre_h) $(GLOBJ)gsromfs.$(OBJ)
+$(PSOBJ)iccinit1.$(OBJ) :  $(PSSRC)iccinit1.c $(stdpre_h)
 	$(PSCC) $(PSO_)iccinit1.$(OBJ) $(C_) $(PSSRC)iccinit1.c
 
 # All the gs_*.ps files should be prerequisites of gs_init.c but we don't have
@@ -983,20 +983,6 @@
 $(PSGEN)$(GS_INIT) : $(PSLIB)$(GS_INIT) $(GENINIT_XE) $(gconfig_h)
 	$(EXP)$(GENINIT_XE) -I $(PSLIB) $(GS_INIT) $(gconfig_h) $(PSGEN)gs_init.ps
 
-# The following list of files needed by the interpreter is maintained here.
-# This changes infrequently, but is a potential point of bitrot, but since
-# unix-inst.mak uses this macro, problems should surface when testing installed
-# versions.
-#		Note: gs_cet.ps is only needed to match Adobe CPSI defaults
-EXTRA_INIT_FILES= Fontmap cidfmap xlatmap FAPI FCOfontmap-PCLPS2 gs_cet.ps
-
-#	The init files are put in the lib/ directory (gs_init.ps + EXTRA_INIT_FILES)
-#	Resource files go into Resource/...
-
-RESOURCE_LIST=ColorSpace/ Decoding/ Encoding/ Font/ ProcSet/ IdiomSet/ CIDFont/ CMap/
-
-PS_ROMFS_ARGS=-c -P $(PSRESDIR)$(D) -d Resource/ $(RESOURCE_LIST) -d lib/ -P $(PSGEN) $(GS_INIT) -P $(PSLIB)
-
 # ---------------- Stochastic halftone ---------------- #
 
 $(PSD)stocht.dev : $(INT_MAK) $(ECHOGS_XE) $(PSD)stocht$(COMPILE_INITS).dev

Modified: trunk/gs/src/lib.mak
===================================================================
--- trunk/gs/src/lib.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/lib.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -2640,25 +2640,28 @@
 $(GLD)romfs1.dev : $(LIB_MAK) $(ECHO_XE) $(romfs_)
 	$(SETMOD) $(GLD)romfs1 $(romfs_)
 	$(ADDMOD) $(GLD)romfs1 -iodev rom
-	$(ADDMOD) $(GLD)romfs1 -obj $(GLOBJ)gsromfs.$(OBJ)
 
 # A dummy romfs when we aren't using COMPILE_INITS
 $(GLD)romfs0.dev :  $(LIB_MAK) $(ECHO_XE) 
 	$(SETMOD) $(GLD)romfs0 
 
-$(GLGEN)gsromfs.c : $(MKROMFS_XE) $(GLGEN)gs_init.ps
-	$(EXP)$(MKROMFS_XE) -o $(GLGEN)gsromfs.c -X .svn $(UFST_ROMFS_ARGS) \
+$(GLGEN)gsromfs1.c : $(MKROMFS_XE) $(PS_ROMFS_DEPS)
+	$(EXP)$(MKROMFS_XE) -o $(GLGEN)gsromfs1.c -X .svn $(UFST_ROMFS_ARGS) \
 	$(PCLXL_ROMFS_ARGS) $(PJL_ROMFS_ARGS) $(XPS_ROMFS_ARGS) \
-	$(PS_ROMFS_ARGS) $(EXTRA_INIT_FILES) 
+	$(PS_ROMFS_ARGS)
 
 # the following module is only included if the romfs.dev FEATURE is enabled
 $(GLOBJ)gsiorom.$(OBJ) : $(GLSRC)gsiorom.c $(gsiorom_h) \
  $(std_h) $(gx_h) $(gserrors_h) $(gsstruct_h) $(gxiodev_h) $(stat__h)
 	$(GLCC) $(GLO_)gsiorom.$(OBJ) $(I_)$(ZI_)$(_I) $(C_) $(GLSRC)gsiorom.c
 
-$(GLOBJ)gsromfs.$(OBJ) : $(GLOBJ)gsromfs.c $(time__h)
-	$(GLCC) $(GLO_)gsromfs.$(OBJ) $(C_) $(GLOBJ)gsromfs.c
+$(GLOBJ)gsromfs1.$(OBJ) : $(GLOBJ)gsromfs1.c $(time__h)
+	$(GLCC) $(GLO_)gsromfs1.$(OBJ) $(C_) $(GLOBJ)gsromfs1.c
 
+# A dummy gsromfs module for COMPILE_INITS=0
+$(GLOBJ)gsromfs0.$(OBJ) : $(GLSRC)gsromfs0.c
+	$(GLCC) $(GLO_)gsromfs0.$(OBJ) $(C_) $(GLSRC)gsromfs0.c
+
 # Define the ZLIB modules needed by mnkromfs here to factor it out of top makefiles
 # Also put the .h dependencies here for the same reason
 MKROMFS_ZLIB_OBJS=$(GLOBJ)compress.$(OBJ) $(GLOBJ)deflate.$(OBJ) \

Modified: trunk/gs/src/macos-mcp.mak
===================================================================
--- trunk/gs/src/macos-mcp.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/macos-mcp.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -280,6 +280,8 @@
 PLATFORM=macos_
 
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(PSSRCDIR)/int.mak
 include $(PSSRCDIR)/cfonts.mak
@@ -399,7 +401,7 @@
 	$(CP_) $(GLSRC)gscdef.c $(GLOBJ)gscdefs.c
 	/Developer/Tools/SetFile -c CWIE -t TEXT $(CWPROJ_XML)
 
-$(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL) $(CWPROJ_XML)
+$(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL) $(CWPROJ_XML) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 
 # ------------------------------------------------------------------- #
 

Modified: trunk/gs/src/macosx.mak
===================================================================
--- trunk/gs/src/macosx.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/macosx.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -409,6 +409,8 @@
 
 include $(GLSRCDIR)/unixhead.mak
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(PSSRCDIR)/int.mak
 include $(PSSRCDIR)/cfonts.mak

Modified: trunk/gs/src/msvc32.mak
===================================================================
--- trunk/gs/src/msvc32.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/msvc32.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -686,6 +686,8 @@
  obj.idb $(GLOBJDIR)\gs.pch
 
 !include $(GLSRCDIR)\msvccmd.mak
+# psromfs.mak must precede lib.mak
+!include $(GLSRCDIR)\psromfs.mak
 !include $(GLSRCDIR)\winlib.mak
 !include $(GLSRCDIR)\msvctail.mak
 !include $(PSSRCDIR)\winint.mak
@@ -725,15 +727,16 @@
 	del $(PSGEN)gswin32.rsp
 
 # The big DLL
-$(GSDLL_DLL): $(GS_ALL) $(DEVS_ALL) $(GSDLL_OBJS) $(GSDLL_OBJ).res $(PSGEN)lib32.rsp
+$(GSDLL_DLL): $(GS_ALL) $(DEVS_ALL) $(GSDLL_OBJS) $(GSDLL_OBJ).res $(PSGEN)lib32.rsp $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	echo /DLL /DEF:$(PSSRCDIR)\gsdll32.def /OUT:$(GSDLL_DLL) > $(PSGEN)gswin32.rsp
-	$(LINK) $(LCT) @$(PSGEN)gswin32.rsp $(GSDLL_OBJS) @$(ld_tr) @$(PSGEN)lib32.rsp $(LINKLIBPATH) @$(LIBCTR) $(GSDLL_OBJ).res
+	$(LINK) $(LCT) @$(PSGEN)gswin32.rsp $(GSDLL_OBJS) @$(ld_tr) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) @$(PSGEN)lib32.rsp $(LINKLIBPATH) @$(LIBCTR) $(GSDLL_OBJ).res
 	del $(PSGEN)gswin32.rsp
 
 !else
 # The big graphical EXE
-$(GS_XE): $(GSCONSOLE_XE) $(GS_ALL) $(DEVS_ALL) $(GSDLL_OBJS) $(DWOBJNO) $(GSDLL_OBJ).res $(PSSRCDIR)\dwmain32.def $(PSGEN)lib32.rsp
+$(GS_XE): $(GSCONSOLE_XE) $(GS_ALL) $(DEVS_ALL) $(GSDLL_OBJS) $(DWOBJNO) $(GSDLL_OBJ).res $(PSSRCDIR)\dwmain32.def $(PSGEN)lib32.rsp $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	copy $(ld_tr) $(PSGEN)gswin32.tr
+	echo $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) >> $(PSGEN)gswin32.tr
 	echo $(PSOBJ)dwnodll.obj >> $(PSGEN)gswin32.tr
 	echo $(GLOBJ)dwimg.obj >> $(PSGEN)gswin32.tr
 	echo $(PSOBJ)dwmain.obj >> $(PSGEN)gswin32.tr
@@ -745,8 +748,9 @@
 	del $(PSGEN)gswin32.rsp
 
 # The big console mode EXE
-$(GSCONSOLE_XE): $(GS_ALL) $(DEVS_ALL) $(GSDLL_OBJS) $(OBJCNO) $(GS_OBJ).res $(PSSRCDIR)\dw32c.def $(PSGEN)lib32.rsp
+$(GSCONSOLE_XE): $(GS_ALL) $(DEVS_ALL) $(GSDLL_OBJS) $(OBJCNO) $(GS_OBJ).res $(PSSRCDIR)\dw32c.def $(PSGEN)lib32.rsp $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	copy $(ld_tr) $(PSGEN)gswin32c.tr
+	echo $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) >> $(PSGEN)gswin32.tr
 	echo $(PSOBJ)dwnodllc.obj >> $(PSGEN)gswin32c.tr
 	echo $(GLOBJ)dwimg.obj >> $(PSGEN)gswin32c.tr
 	echo $(PSOBJ)dwmainc.obj >> $(PSGEN)gswin32c.tr

Modified: trunk/gs/src/msvclib.mak
===================================================================
--- trunk/gs/src/msvclib.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/msvclib.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -443,7 +443,7 @@
 # Define these right away because they modify the behavior of
 # msvccmd.mak, msvctail.mak & winlib.mak.
 
-LIB_ONLY=$(GLOBJDIR)\gslib.obj $(GLOBJDIR)\gsnogc.obj $(GLOBJDIR)\gconfig.obj $(GLOBJDIR)\gscdefs.obj
+LIB_ONLY=$(GLOBJDIR)\gslib.obj $(GLOBJDIR)\gsnogc.obj $(GLOBJDIR)\gconfig.obj $(GLOBJDIR)\gscdefs.obj $(GLOBJDIR)\gsromfs$(COMPILE_INITS).obj
 MAKEDLL=0
 PLATFORM=mslib32_
 
@@ -472,6 +472,7 @@
 # The library tester EXE
 $(GS_XE):  $(GS_ALL) $(DEVS_ALL) $(LIB_ONLY) $(LIBCTR)
 	copy $(ld_tr) $(GLGENDIR)\gslib32.tr
+	echo $(GLOBJDIR)\gsromfs$(COMPILE_INITS).$(OBJ) >> $(GLGENDIR)\gslib32.tr
 	echo $(GLOBJ)gsnogc.obj >> $(GLGENDIR)\gslib32.tr
 	echo $(GLOBJ)gconfig.obj >> $(GLGENDIR)\gslib32.tr
 	echo $(GLOBJ)gscdefs.obj >> $(GLGENDIR)\gslib32.tr

Modified: trunk/gs/src/openvms.mak
===================================================================
--- trunk/gs/src/openvms.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/openvms.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -253,17 +253,6 @@
 
 FEATURE_DEVS=$(PSD)psl3.dev $(PSD)pdf.dev $(PSD)dpsnext.dev $(PSD)ttfont.dev $(PSD)epsf.dev $(PSD)fapi.dev
 
-# ***********************************************************************************
-#
-#    The following probably won't work without code changes to src/mkromfs.c to
-#    change the VMS style of directory references to PostScript style, but we
-#    have it here in case it works.
-#
-# ***********************************************************************************
-# The list of resources to be included in the %rom% file system.
-# This is in the top makefile since the file descriptors are platform specific
-RESOURCE_LIST=[Resource.CMap] [Resource.ColorSpace] [Resource.Decoding] [Resource.Fonts] [Resource.ProcSet] [Resource.IdiomSet] [Resource.CIDFont]
-
 # Choose whether to compile the .ps initialization files into the executable.
 # See gs.mak for details.
 
@@ -423,6 +412,24 @@
 #include $(COMMONDIR)/vmsdefs.mak
 #include $(COMMONDIR)/generic.mak
 include $(GLSRCDIR)gs.mak
+
+# ***********************************************************************************
+#
+#    The following should be kept up to date with src/psromfs.mak -- we can't
+#    use the shared one because of VMS directory syntax strangeness.
+#
+#    This enumeration of the Resource/* directories probably won't work without
+#    code changes to src/mkromfs.c to change the VMS style of directory references
+#    to PostScript style, but we will need this when (if) mkromfs is changed for VMS
+#
+# ***********************************************************************************
+# The list of resources to be included in the %rom% file system.
+# This is in the top makefile since the file descriptors are platform specific
+RESOURCE_LIST=[Resource.CMap] [Resource.ColorSpace] [Resource.Decoding] [Resource.Fonts] [Resource.ProcSet] [Resource.IdiomSet] [Resource.CIDFont]
+
+EXTRA_INIT_FILES= Fontmap cidfmap xlatmap FAPI FCOfontmap-PCLPS2 gs_cet.ps
+PS_ROMFS_ARGS=-c -d Resource/ $(RESOURCE_LIST) -d lib/ -P $(PSGENDIR) $(GS_INIT) -P $(PSLIBDIR) $(EXTRA_INIT_FILES)
+
 include $(GLSRCDIR)lib.mak
 include $(PSSRCDIR)int.mak
 include $(PSSRCDIR)cfonts.mak
@@ -509,7 +516,7 @@
 openvms : $(GLGENDIR)openvms.com $(GLGENDIR)openvms.opt
 	$$ @$(GLGENDIR)OPENVMS
 
-$(GLGENDIR)openvms.com : $(GLSRCDIR)append_l.com
+$(GLGENDIR)openvms.com : $(GLSRCDIR)append_l.com $(GLOBJDIR)gsromfs$(COMPILE_INITS).$(OBJ)
 	$$ @$(GLSRCDIR)APPEND_L $@ "$$ DEFINE/JOB X11 $(X_INCLUDE)"
 	$$ @$(GLSRCDIR)APPEND_L $@ "$$ DEFINE/JOB GS_LIB ''F$$ENVIRONMENT(""DEFAULT"")'"
 	$$ @$(GLSRCDIR)APPEND_L $@ "$$ DEFINE/JOB GS_DOC ''F$$ENVIRONMENT(""DEFAULT"")'"

Modified: trunk/gs/src/os2.mak
===================================================================
--- trunk/gs/src/os2.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/os2.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -462,6 +462,8 @@
 # Include the generic makefiles.
 !include "$(GLSRCDIR)\version.mak"
 !include "$(GLSRCDIR)\gs.mak"
+# psromfs.mak must precede lib.mak
+!include "$(GLSRCDIR)\psromfs.mak"
 !include "$(GLSRCDIR)\lib.mak"
 !include "$(GLSRCDIR)\jpeg.mak"
 # zlib.mak must precede libpng.mak
@@ -604,7 +606,7 @@
 !if $(MAKEDLL)
 #making a DLL
 GS_ALL=$(PSOBJ)gsdll.$(OBJ) $(INT_ALL) \
-  $(LIB_ALL) $(LIBCTR) $(ld_tr) $(PSOBJ)$(GS).res $(ICONS)
+  $(LIB_ALL) $(LIBCTR) $(ld_tr) $(PSOBJ)$(GS).res $(ICONS) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 
 $(GS_XE): $(BINDIR)\$(GSDLL).dll $(PSSRC)dpmain.c $(gsdll_h) $(gsdllos2_h) $(PSSRC)gsos2.rc $(GLOBJ)gscdefs.$(OBJ)
 !if $(EMX)
@@ -620,19 +622,19 @@
 
 $(BINDIR)\$(GSDLL).dll: $(GS_ALL) $(ALL_DEVS) $(PSOBJ)gsdll.$(OBJ)
 !if $(EMX)
-	LINK386 /DEBUG $(COMPBASE)\lib\dll0.obj $(COMPBASE)\lib\end.lib @$(ld_tr) $(PSOBJ)gsdll.obj, $(BINDIR)\$(GSDLL).dll, ,$(X11LIBS) $(COMPBASE)\lib\gcc.lib $(COMPBASE)\lib\st\c.lib $(COMPBASE)\lib\st\c_dllso.lib $(COMPBASE)\lib\st\sys.lib $(COMPBASE)\lib\c_alias.lib $(COMPBASE)\lib\os2.lib, $(PSSRC)gsdll2.def
+	LINK386 /DEBUG $(COMPBASE)\lib\dll0.obj $(COMPBASE)\lib\end.lib @$(ld_tr) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(PSOBJ)gsdll.obj, $(BINDIR)\$(GSDLL).dll, ,$(X11LIBS) $(COMPBASE)\lib\gcc.lib $(COMPBASE)\lib\st\c.lib $(COMPBASE)\lib\st\c_dllso.lib $(COMPBASE)\lib\st\sys.lib $(COMPBASE)\lib\c_alias.lib $(COMPBASE)\lib\os2.lib, $(PSSRC)gsdll2.def
 !endif
 !if $(IBMCPP)
-	LINK386 /NOE /DEBUG @$(ld_tr) $(PSOBJ)gsdll.obj, $(BINDIR)\$(GSDLL).dll, , , $(PSSRC)gsdll2.def
+	LINK386 /NOE /DEBUG @$(ld_tr) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(PSOBJ)gsdll.obj, $(BINDIR)\$(GSDLL).dll, , , $(PSSRC)gsdll2.def
 !endif
 
 !else
 #making an EXE
 GS_ALL=$(PSOBJ)gs.$(OBJ) $(INT_ALL) \
-  $(LIB_ALL) $(LIBCTR) $(ld_tr) $(PSOBJ)$(GS).res $(ICONS)
+  $(LIB_ALL) $(LIBCTR) $(ld_tr) $(PSOBJ)$(GS).res $(ICONS) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 
 $(GS_XE): $(GS_ALL) $(ALL_DEVS)
-	$(COMPDIR)\$(COMP) $(CGDB) I$(PSSRCDIR) -I$(GLSRCDIR) -o $(PSOBJ)$(GS) $(PSOBJ)gs.$(OBJ) @$(ld_tr) -lm
+	$(COMPDIR)\$(COMP) $(CGDB) I$(PSSRCDIR) -I$(GLSRCDIR) -o $(PSOBJ)$(GS) $(PSOBJ)gs.$(OBJ) @$(ld_tr) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) -lm
 	$(COMPDIR)\emxbind -r$(PSOBJ)$(GS).res $(COMPDIR)\emxl.exe $(PSOBJ)$(GS) $(GS_XE) -ac
 	del $(PSOBJ)$(GS)
 !endif

Added: trunk/gs/src/psromfs.mak
===================================================================
--- trunk/gs/src/psromfs.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/psromfs.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -0,0 +1,31 @@
+#  Copyright (C) 2001-2006 Artifex Software, Inc.
+#  All Rights Reserved.
+#
+#  This software is provided AS-IS with no warranty, either express or
+#  implied.
+#
+#  This software is distributed under license and may not be copied, modified
+#  or distributed except as expressly authorized under the terms of that
+#  license.  Refer to licensing information at http://www.artifex.com/
+#  or contact Artifex Software, Inc.,  7 Mt. Lassen Drive - Suite A-134,
+#  San Rafael, CA  94903, U.S.A., +1(415)492-9861, for further information.
+#
+# $Id:$
+# mkromfs macros for PostScript %rom% when COMPILE_INITS=1
+
+# The following list of files needed by the interpreter is maintained here.
+# This changes infrequently, but is a potential point of bitrot, but since
+# unix-inst.mak uses this macro, problems should surface when testing installed
+# versions.
+
+#	The init files are put in the lib/ directory (gs_init.ps + EXTRA_INIT_FILES)
+#	Resource files go into Resource/...
+
+RESOURCE_LIST=ColorSpace$(D) Decoding$(D) Encoding$(D) Font$(D) ProcSet$(D) IdiomSet$(D) CIDFont$(D) CMap$(D)
+
+#	Note: gs_cet.ps is only needed to match Adobe CPSI defaults
+PS_ROMFS_ARGS=-c -P $(PSRESDIR)$(D) -d Resource/ $(RESOURCE_LIST) \
+   -d lib/ -P $(PSGENDIR)$(D) $(GS_INIT) \
+   -P $(PSLIBDIR)$(D) Fontmap cidfmap xlatmap FAPI FCOfontmap-PCLPS2 gs_cet.ps
+
+PS_ROMFS_DEPS=$(PSGENDIR)$(D)$(GS_INIT)


Property changes on: trunk/gs/src/psromfs.mak
___________________________________________________________________
Name: svn:executable
   + *

Modified: trunk/gs/src/ugcclib.mak
===================================================================
--- trunk/gs/src/ugcclib.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/ugcclib.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -148,6 +148,8 @@
 
 include $(GLSRCDIR)/unixhead.mak
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(GLSRCDIR)/jpeg.mak
 # zlib.mak must precede libpng.mak
@@ -162,7 +164,7 @@
 
 # The following replaces unixlink.mak
 
-LIB_ONLY=$(GLOBJ)gsnogc.$(OBJ) $(GLOBJ)gconfig.$(OBJ) $(GLOBJ)gscdefs.$(OBJ)
+LIB_ONLY=$(GLOBJ)gsnogc.$(OBJ) $(GLOBJ)gconfig.$(OBJ) $(GLOBJ)gscdefs.$(OBJ) $(GLOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 ldt_tr=$(GLOBJ)ldt.tr
 $(GS_XE): $(ld_tr) $(ECHOGS_XE) $(LIB_ALL) $(DEVS_ALL) $(GLOBJ)gslib.$(OBJ) $(LIB_ONLY)
 	$(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(LDFLAGS) -o $(GS_XE)
@@ -175,7 +177,7 @@
 
 GSLIB_A=libgsgraph.a
 lar_tr=$(GLOBJ)lar.tr
-$(GSLIB_A):  $(obj_tr) $(ECHOGS_XE) $(LIB_ALL) $(DEVS_ALL) $(LIB_ONLY)
+$(GSLIB_A):  $(obj_tr) $(ECHOGS_XE) $(LIB_ALL) $(DEVS_ALL) $(LIB_ONLY) $(GLOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	rm -f $(GSLIB_A)
 	$(ECHOGS_XE) -w $(lar_tr) -n - $(AR) $(ARFLAGS) $(GSLIB_A)
 	$(ECHOGS_XE) -a $(lar_tr) -n -s $(LIB_ONLY) -s

Modified: trunk/gs/src/unix-aux.mak
===================================================================
--- trunk/gs/src/unix-aux.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/unix-aux.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -83,7 +83,7 @@
  $(GLOBJ)gp_stdia.$(OBJ) $(GLOBJ)gsutil.$(OBJ)
 
 $(MKROMFS_XE): $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS)
-	$(CCAUX) $(GENOPT) $(CFLAGS_DEBUG) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE) $(MKROMFS_OBJS) -lm $(EXTRALIBS)
+	$(CCAUX) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE) $(MKROMFS_OBJS) -lm $(EXTRALIBS)
 
 # Query the environment to construct gconfig_.h.
 # The "else true;" is required because Ultrix's implementation of sh -e

Modified: trunk/gs/src/unix-gcc.mak
===================================================================
--- trunk/gs/src/unix-gcc.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/unix-gcc.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -430,6 +430,8 @@
 
 include $(GLSRCDIR)/unixhead.mak
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(PSSRCDIR)/int.mak
 include $(PSSRCDIR)/cfonts.mak

Modified: trunk/gs/src/unixansi.mak
===================================================================
--- trunk/gs/src/unixansi.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/unixansi.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -374,6 +374,8 @@
 
 include $(GLSRCDIR)/unixhead.mak
 include $(GLSRCDIR)/gs.mak
+# psromfs.mak must precede lib.mak
+include $(GLSRCDIR)/psromfs.mak
 include $(GLSRCDIR)/lib.mak
 include $(PSSRCDIR)/int.mak
 include $(PSSRCDIR)/cfonts.mak

Modified: trunk/gs/src/unixlink.mak
===================================================================
--- trunk/gs/src/unixlink.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/unixlink.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -49,9 +49,9 @@
 # The resetting of the environment variables to empty strings is for SCO Unix,
 # which has limited environment space.
 ldt_tr=$(PSOBJ)ldt.tr
-$(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL)
+$(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 	$(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(LDFLAGS) -o $(GS_XE)
-	$(ECHOGS_XE) -a $(ldt_tr) -n -s $(PSOBJ)gs.$(OBJ) -s
+	$(ECHOGS_XE) -a $(ldt_tr) -n -s $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(PSOBJ)gs.$(OBJ) -s
 	cat $(ld_tr) >>$(ldt_tr)
 	$(ECHOGS_XE) -a $(ldt_tr) -s - $(EXTRALIBS) $(STDLIBS)
 	if [ x$(XLIBDIR) != x ]; then LD_RUN_PATH=$(XLIBDIR); export LD_RUN_PATH; fi; \

Modified: trunk/gs/src/watclib.mak
===================================================================
--- trunk/gs/src/watclib.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/watclib.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -172,7 +172,7 @@
 
 BEGINFILES=*.err
 
-LIB_ONLY=$(GLOBJ)gslib.obj $(GLOBJ)gsnogc.obj $(GLOBJ)gconfig.obj $(GLOBJ)gscdefs.obj
+LIB_ONLY=$(GLOBJ)gslib.obj $(GLOBJ)gsnogc.obj $(GLOBJ)gconfig.obj $(GLOBJ)gscdefs.obj $(GLOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
 ll_tr=ll.tr
 $(ll_tr): $(TOP_MAKEFILES)
 	echo OPTION STACK=64k >$(ll_tr)
@@ -180,6 +180,7 @@
 	echo SYSTEM DOS4G >>$(ll_tr)
 	echo OPTION STUB=$(STUB) >>$(ll_tr)
 !endif
+	echo FILE $(GLOBJ)gsromfs$(COMPILE_INITS).$(OBJ) >>$(ll_tr)
 	echo FILE $(GLOBJ)gsnogc.obj >>$(ll_tr)
 	echo FILE $(GLOBJ)gconfig.obj >>$(ll_tr)
 	echo FILE $(GLOBJ)gscdefs.obj >>$(ll_tr)

Modified: trunk/gs/src/watcw32.mak
===================================================================
--- trunk/gs/src/watcw32.mak	2008-02-28 17:05:14 UTC (rev 8558)
+++ trunk/gs/src/watcw32.mak	2008-02-29 08:13:08 UTC (rev 8559)
@@ -394,6 +394,8 @@
 # Include the generic makefiles.
 
 !include $(GLSRCDIR)\version.mak
+# psromfs.mak must precede lib.mak
+!include $(GLSRCDIR)\psromfs.mak
 !include $(GLSRCDIR)\winlib.mak
 !include $(PSSRCDIR)\winint.mak
 
@@ -482,8 +484,8 @@
 	$(LINK) system nt option map $(LCT) Name $(GSCONSOLE_XE) File $(OBJCLINK) Library $(PSOBJ)$(GSDLL).lib
 
 # The big DLL
-$(GSDLL_DLL): $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ) $(GLOBJ)gp_mktmp.obj $(PSOBJ)$(GSDLL).res 
-	$(LINK) system nt_dll initinstance terminstance $(LCT) Name $(GSDLL_DLL) File $(GLOBJ)gsdll.obj, $(GLOBJ)gp_mktmp.obj @$(ld_tr) @$(PSSRC)gsdll32w.lnk
+$(GSDLL_DLL): $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ) $(GLOBJ)gp_mktmp.obj $(PSOBJ)$(GSDLL).res $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
+	$(LINK) system nt_dll initinstance terminstance $(LCT) Name $(GSDLL_DLL) File $(GLOBJ)gsdll.obj $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(GLOBJ)gp_mktmp.obj @$(ld_tr) @$(PSSRC)gsdll32w.lnk
 
 $(PSOBJ)$(GSDLL).lib: $(GSDLL_DLL)
 	erase $(PSOBJ)$(GSDLL).lib
@@ -491,12 +493,12 @@
 
 !else
 # The big graphical EXE
-$(GS_XE): $(GSCONSOLE_XE) $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ) $(GLOBJ)gp_mktmp.obj $(DWOBJNO) $(PSOBJ)$(GS).res $(PSOBJ)dwmain32.def
-	$(LINK) option map $(LCT) Name $(GS) File $(GLOBJ)gsdll,$(GLOBJ)gp_mktmp.obj, $(DWOBJNOLINK) @$(ld_tr) 
+$(GS_XE): $(GSCONSOLE_XE) $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ) $(GLOBJ)gp_mktmp.obj $(DWOBJNO) $(PSOBJ)$(GS).res $(PSOBJ)dwmain32.def $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
+	$(LINK) option map $(LCT) Name $(GS) File $(GLOBJ)gsdll,$(OBJ) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) gp_mktmp.obj $(DWOBJNOLINK) @$(ld_tr) 
 
 # The big console mode EXE
-$(GSCONSOLE_XE):  $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ) $(GLOBJ)gp_mktmp.obj $(OBJCNO) $(PSOBJ)$(GS).res $(PSSRCDIR)\dw32c.def
-	$(LINK) option map $(LCT) Name $(GSCONSOLE_XE) File $(GLOBJ)gsdll, $(GLOBJ)gp_mktmp.obj, $(OBJCNOLINK) @$(ld_tr) 
+$(GSCONSOLE_XE):  $(GS_ALL) $(DEVS_ALL) $(PSOBJ)gsdll.$(OBJ) $(GLOBJ)gp_mktmp.obj $(OBJCNO) $(PSOBJ)$(GS).res $(PSSRCDIR)\dw32c.def $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
+	$(LINK) option map $(LCT) Name $(GSCONSOLE_XE) File $(GLOBJ)gsdll,$(OBJ) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(GLOBJ)gp_mktmp.obj $(OBJCNOLINK) @$(ld_tr) 
 !endif
 
 # end of makefile



More information about the gs-cvs mailing list