summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorRay Johnston <ray.johnston@artifex.com>2008-02-29 08:18:31 +0000
committerRay Johnston <ray.johnston@artifex.com>2008-02-29 08:18:31 +0000
commit214effcef51812aea66019218d77e313509ca64e (patch)
tree7dc4d9f9fbf848950533f501d3c738e57df34e9f /common
parent8eaa7c2bc5b35685a6fb3b10a3ca8a679d706c6f (diff)
Fixes for COMPILE_INITS=1. Tested on Windows and linux with AFS and UFST
font scalers. Note that this requires/expects gs rev 8558. As discussed with Henry, this does NOT currently fetch PCL fonts from the %rom%ttfonts/ path even though they are built into the rom filesystem. The code changes needed for this to work are too risky for this close to release. Also the language_switch build does not set the FontResourceDir as expected to %rom%Resource/Font/ even though the GenericResourceDir is set correctly to %rom%Resource/ which will be addressed separately. git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@3029 06663e23-700e-0410-b217-a244a6096597
Diffstat (limited to 'common')
-rw-r--r--common/msvc_top.mak33
-rw-r--r--common/ugcc_top.mak13
2 files changed, 26 insertions, 20 deletions
diff --git a/common/msvc_top.mak b/common/msvc_top.mak
index d9bbc8111..183ac2a26 100644
--- a/common/msvc_top.mak
+++ b/common/msvc_top.mak
@@ -94,6 +94,7 @@ CFLAGS=$(CFLAGS) /DGX_COLOR_INDEX_TYPE="$(GX_COLOR_INDEX_TYPE)"
# the floating point emulator, even though we don't always link it in.
# HACK * HACK * HACK - we force this make to occur since we have no
# way to determine if gs .c files are out of date.
+
FORCE:
$(GENDIR)/ldgs.tr: FORCE
@@ -123,18 +124,12 @@ $(GENDIR)/ldgs.tr: FORCE
$(GLOBJDIR)\gsargs.$(OBJ) $(GLOBJDIR)\echogs.exe \
$(GLOBJDIR)\ld.tr $(GLOBJDIR)\gconfig.$(OBJ) \
$(GLOBJDIR)\gscdefs.$(OBJ) $(GLOBJDIR)\iconfig.$(OBJ) \
- $(GLOBJDIR)\iccinit$(COMPILE_INITS).$(OBJ)
+ $(GLOBJDIR)\iccinit$(COMPILE_INITS).$(OBJ) $(GLOBJDIR)\gsromfs$(COMPILE_INITS).$(OBJ)
$(CP_) $(GENDIR)\ld.tr $(GENDIR)\ldgs.tr
!ELSE
FORCE:
-
-# COMPILE_INITS=1 means we need to include gsromfs.obj is built
-!IF "$(COMPILE_INITS)" == "1"
-ROMFS=$(GLOBJDIR)/gsromfs.obj
-!ENDIF
-
# Build the required GS library files. It's simplest always to build
# the floating point emulator, even though we don't always link it in.
# HACK * HACK * HACK - we force this make to occur since we have no
@@ -159,6 +154,7 @@ $(GENDIR)/ldgs.tr: FORCE
PSSRCDIR=$(PSSRCDIR) PSGENDIR=$(GENDIR) \
PSLIBDIR=$(PSLIBDIR) PSRESDIR=$(PSRESDIR)\
DEVSTUDIO="$(DEVSTUDIO)" \
+ XCFLAGS="$(XCFLAGS)" \
COMPILE_INITS=$(COMPILE_INITS) PCLXL_ROMFS_ARGS="$(PCLXL_ROMFS_ARGS)" PJL_ROMFS_ARGS="$(PJL_ROMFS_ARGS)" \
UFST_ROOT=$(UFST_ROOT) UFST_BRIDGE=$(UFST_BRIDGE) UFST_LIB_EXT=$(UFST_LIB_EXT) \
UFST_ROMFS_ARGS="$(UFST_ROMFS_ARGS)" \
@@ -170,7 +166,7 @@ $(GENDIR)/ldgs.tr: FORCE
CPU_TYPE="$(CPU_TYPE)" CONFIG="$(CONFIG)" \
$(GLOBJDIR)\gsargs.$(OBJ) $(GLOBJDIR)\echogs.exe \
$(GLOBJDIR)\ld.tr $(GLOBJDIR)\gconfig.$(OBJ) \
- $(GLOBJDIR)\gscdefs.$(OBJ) $(ROMFS)
+ $(GLOBJDIR)\gscdefs.$(OBJ) $(GLOBJDIR)\gsromfs$(COMPILE_INITS).$(OBJ)
$(CP_) $(GENDIR)\ld.tr $(GENDIR)\ldgs.tr
!ENDIF
@@ -179,31 +175,42 @@ $(GENDIR)/ldgs.tr: FORCE
$(GENDIR)\pconf.h $(GENDIR)\ldconf.tr: $(TARGET_DEVS) $(GLOBJDIR)\genconf$(XE)
$(GLOBJDIR)\genconf -n - $(TARGET_DEVS) -h $(GENDIR)\pconf.h -ol $(GENDIR)\ldconf.tr
+!if "$(TDEBUG)" == "1"
+$(GENDIR)\lib32.rsp: $(MAKEFILE)
+ echo /NODEFAULTLIB:LIBC.lib > $(GENDIR)\lib32.rsp
+ echo /NODEFAULTLIB:LIBCMT.lib >> $(GENDIR)\lib32.rsp
+ echo LIBCMTD.lib >> $(GENDIR)\lib32.rsp
+!else
+$(GENDIR)\lib32.rsp: $(MAKEFILE)
+ echo /NODEFAULTLIB:LIBC.lib > $(GENDIR)\lib32.rsp
+ echo /NODEFAULTLIB:LIBCMTD.lib >> $(GENDIR)\lib32.rsp
+ echo LIBCMT.lib >> $(GENDIR)\lib32.rsp
+!endif
+
# Link an MS executable.
-$(GENDIR)\ldall.tr: $(MAKEFILE) $(GENDIR)\ldgs.tr $(GENDIR)\ldconf.tr
+$(GENDIR)\ldall.tr: $(MAKEFILE) $(GENDIR)\ldgs.tr $(GENDIR)\ldconf.tr $(GENDIR)\lib32.rsp
echo /SUBSYSTEM:CONSOLE >$(GENDIR)\ldall.tr
$(CP_) $(GENDIR)\ldall.tr+$(GENDIR)\ldgs.tr $(GENDIR)\ldall.tr
echo $(GLOBJDIR)\gsargs.$(OBJ) >>$(GENDIR)\ldall.tr
echo $(GLOBJDIR)\gconfig.$(OBJ) >>$(GENDIR)\ldall.tr
echo $(GLOBJDIR)\gscdefs.$(OBJ) >>$(GENDIR)\ldall.tr
+ echo $(GLOBJDIR)\gsromfs$(COMPILE_INITS).$(OBJ) >>$(GENDIR)\ldall.tr
$(CP_) $(GENDIR)\ldall.tr+$(GENDIR)\ldconf.tr $(GENDIR)\ldall.tr
# AGFA Workaround to add needed ufst font libraries.
!IF "$(PL_SCALER)" == "ufst"
FONTLIB=$(GENDIR)\fontlib.tr
-# I have no idea what NODEFAULTLIB means.
$(FONTLIB): $(MAKEFILE)
- echo /NODEFAULTLIB:LIBC.lib > $(FONTLIB)
echo $(UFST_LIB)\fco_lib.lib >>$(FONTLIB)
echo $(UFST_LIB)\if_lib.lib >>$(FONTLIB)
echo $(UFST_LIB)\tt_lib.lib >>$(FONTLIB)
$(TARGET_XE)$(XE): $(GENDIR)\ldall.tr $(MAIN_OBJ) $(TOP_OBJ) $(LIBCTR) $(FONTLIB)
$(LINK_SETUP)
- $(LINK) $(LCT) /OUT:$(TARGET_XE)$(XE) $(MAIN_OBJ) $(TOP_OBJ) @$(GENDIR)\ldall.tr @$(LIBCTR) @$(FONTLIB)
+ $(LINK) $(LCT) /OUT:$(TARGET_XE)$(XE) $(MAIN_OBJ) $(TOP_OBJ) @$(GENDIR)\ldall.tr @$(GENDIR)\lib32.rsp @$(LIBCTR) $(FONTLIB)
!ELSE
$(TARGET_XE)$(XE): $(GENDIR)\ldall.tr $(MAIN_OBJ) $(TOP_OBJ) $(LIBCTR)
$(LINK_SETUP)
- $(LINK) $(LCT) /OUT:$(TARGET_XE)$(XE) $(MAIN_OBJ) $(TOP_OBJ) @$(GENDIR)\ldall.tr @$(LIBCTR)
+ $(LINK) $(LCT) /OUT:$(TARGET_XE)$(XE) $(MAIN_OBJ) $(TOP_OBJ) @$(GENDIR)\ldall.tr @$(GENDIR)\lib32.rsp @$(LIBCTR)
!ENDIF
diff --git a/common/ugcc_top.mak b/common/ugcc_top.mak
index 45b9ec33a..5aaafd3bb 100644
--- a/common/ugcc_top.mak
+++ b/common/ugcc_top.mak
@@ -28,7 +28,6 @@ include $(COMMONDIR)/generic.mak
# seem to be out of sync.
BINDIR=./libobj
-PSRESDIR=./Resource
GLD=$(GLGENDIR)/
CCFLAGS=$(GENOPT) $(CFLAGS)
CC_=$(CC) $(CCFLAGS)
@@ -87,29 +86,29 @@ $(GENDIR)/pconf.h $(GENDIR)/ldconf.tr: $(TARGET_DEVS) $(GLOBJDIR)/genconf$(XE)
$(GLOBJDIR)/genconf -n - $(TARGET_DEVS) -h $(GENDIR)/pconf.h -p "%s&s&&" -o $(GENDIR)/ldconf.tr
# Create a library
-$(TARGET_LIB): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS)
+$(TARGET_LIB): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS) $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ)
$(ECHOGS_XE) -w $(GENDIR)/ldall.tr -n - $(AR) $(ARFLAGS) $@
$(ECHOGS_XE) -a $(GENDIR)/ldall.tr -n -s $(TOP_OBJ) $(XOBJS) -s
cat $(GENDIR)/ldt.tr $(GENDIR)/ldconf.tr | grep ".o" >>$(GENDIR)/ldall.tr
- $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(MAIN_OBJ)
+ $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ) $(MAIN_OBJ)
LD_RUN_PATH=$(XLIBDIR); export LD_RUN_PATH; sh <$(GENDIR)/ldall.tr
ifeq ($(PSICFLAGS), -DPSI_INCLUDED)
# Link a Unix executable. NB - XOBS is not concatenated to the link
# list here. It seems to have been done earlier on unlike the
# standalone pcl build below.
-$(TARGET_XE): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS)
+$(TARGET_XE): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS) $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ)
$(ECHOGS_XE) -w $(GENDIR)/ldall.tr -n - $(CCLD) $(LDFLAGS) $(XLIBDIRS) -o $(TARGET_XE)
$(ECHOGS_XE) -a $(GENDIR)/ldall.tr -n -s $(TOP_OBJ) -s
cat $(ld_tr) $(GENDIR)/ldconf.tr >>$(GENDIR)/ldall.tr
- $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(MAIN_OBJ) $(EXTRALIBS) $(STDLIBS)
+ $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ) $(MAIN_OBJ) $(EXTRALIBS) $(STDLIBS)
sh <$(GENDIR)/ldall.tr
else
# Link a Unix executable.
-$(TARGET_XE): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS)
+$(TARGET_XE): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS) $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ)
$(ECHOGS_XE) -w $(GENDIR)/ldall.tr -n - $(CCLD) $(LDFLAGS) $(XLIBDIRS) -o $(TARGET_XE)
$(ECHOGS_XE) -a $(GENDIR)/ldall.tr -n -s $(TOP_OBJ) $(XOBJS) -s
cat $(ld_tr) $(GENDIR)/ldconf.tr >>$(GENDIR)/ldall.tr
- $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(MAIN_OBJ) $(EXTRALIBS) $(STDLIBS)
+ $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ) $(MAIN_OBJ) $(EXTRALIBS) $(STDLIBS)
sh <$(GENDIR)/ldall.tr
endif