diff options
Diffstat (limited to 'gs/base/ijs.mak')
-rw-r--r-- | gs/base/ijs.mak | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/gs/base/ijs.mak b/gs/base/ijs.mak new file mode 100644 index 000000000..6e8ac75e6 --- /dev/null +++ b/gs/base/ijs.mak @@ -0,0 +1,114 @@ +# 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$ +# makefile for ijs client library code. +# Users of this makefile must define the following: +# IJSSRCDIR - the icclib source directory +# IJSEXECTYPE - which process control code to use +# in spawning the server. currently +# 'unix' and 'win' are supported. +# BINDIR - where to put the executible examples + +# This partial makefile compiles the IJS client library for use in +# Ghostscript. + +IJSSRC=$(IJSSRCDIR)$(D) +IJSGEN=$(IJSGENDIR)$(D) +IJSOBJ=$(IJSOBJDIR)$(D) +IJSO_=$(O_)$(IJSOBJ) + +# We need I_, _I_, and _I because the OpenVMS compiler uses different +# syntax from other compilers. +# IJSI_ and IJSF_ are defined in gs.mak (why?) +# as are IJSGENDIR and IJSOBJDIR above. +IJS_INCL=$(I_)$(IJSI_)$(_I) +IJS_CCFLAGS=$(IJS_INCL) $(IJSF_) +IJS_CC=$(CC_) $(IJS_CCFLAGS) + +# Define the name of this makefile. +IJS_MAK=$(GLSRC)ijs.mak + +ijs.clean : ijs.config-clean ijs.clean-not-config-clean + +### WRONG. MUST DELETE OBJ AND GEN FILES SELECTIVELY. +ijs.clean-not-config-clean : +# echo $(IJSSRC) $(IJSGEN) $(IJSOBJ) $(IJSO_) + $(EXP)$(ECHOGS_XE) $(IJSSRC) $(IJSGEN) $(IJSOBJ) $(IJSO_) + $(RM_) $(IJSOBJ)*.$(OBJ) + +ijs.config-clean : + $(RMN_) $(IJSGEN)ijs*.dev + +IJSDEP=$(AK) + +ijslib_=$(IJSOBJ)ijs.$(OBJ) $(IJSOBJ)ijs_server.$(OBJ) \ + $(IJSOBJ)ijs_client.$(OBJ) $(IJSOBJ)ijs_exec_$(IJSEXECTYPE).$(OBJ) +$(IJSGEN)ijslib.dev : $(IJS_MAK) $(ECHOGS_XE) $(ijslib_) + $(SETMOD) $(IJSGEN)ijslib $(ijslib_) + +ijs_h=$(IJSSRC)ijs.h + +ijs_client_h=$(IJSSRC)$(D)ijs_client.h +ijs_server_h=$(IJSSRC)$(D)ijs_server.h + +$(IJSOBJ)ijs.$(OBJ) : $(IJSSRC)ijs.c $(IJSDEP) $(ijs_h) +# echo $(IJS_CCFLAGS) + $(EXP)$(ECHOGS_XE) $(IJS_CCFLAGS) + $(IJS_CC) $(IJSO_)ijs.$(OBJ) $(C_) $(IJSSRC)ijs.c + +$(IJSOBJ)ijs_client.$(OBJ) : $(IJSSRC)ijs_client.c \ + $(IJSDEP) $(ijs_h) $(ijs_client_h) + $(IJS_CC) $(IJSO_)ijs_client.$(OBJ) $(C_) $(IJSSRC)ijs_client.c + +$(IJSOBJ)ijs_server.$(OBJ) : $(IJSSRC)ijs_server.c \ + $(IJSDEP) $(ijs_h) $(ijs_server_h) + $(IJS_CC) $(IJSO_)ijs_server.$(OBJ) $(C_) $(IJSSRC)ijs_server.c + +$(IJSOBJ)ijs_exec_unix.$(OBJ) : $(IJSSRC)ijs_exec_unix.c \ + $(IJSDEP) $(ijs_h) $(ijs_client_h) + $(IJS_CC) $(IJSO_)ijs_exec_unix.$(OBJ) $(C_) $(IJSSRC)ijs_exec_unix.c + +$(IJSOBJ)ijs_exec_win.$(OBJ) : $(IJSSRC)ijs_exec_win.c \ + $(IJSDEP) $(ijs_h) $(ijs_client_h) +# This can't be compiled with /Za because it needs windows.h. + $(CC_WX) $(IJS_CCFLAGS) $(IJSO_)ijs_exec_win.$(OBJ) $(C_) $(IJSSRC)ijs_exec_win.c + + +# +# rules for the example client/server implementation +# FIXME: linking not portable (or per policy!) + +ijs_server_example_=$(BINDIR)$(D)ijs_server_example + +ijs_client_example_=$(BINDIR)$(D)ijs_client_example + + +ijs_examples_=$(ijs_server_example_) $(ijs_client_example_) +$(IJSGEN)ijs_examples.dev : $(IJS_MAK) $(ECHOGS_XE) \ + $(ijs_examples_) $(ijslib_) + $(SETMOD) $(IJSGEN)ijs_examples $(ijs_examples_) + $(ADDMOD) $(IJSGEN)ijs_examples $(ijslib_) + +$(IJSOBJ)ijs_client_example.$(OBJ) : $(IJSSRC)ijs_client_example.c \ + $(IJSDEP) $(ijs_h) $(ijs_client_h) + $(IJS_CC) $(IJSO_)ijs_client_example.$(OBJ) $(C_) $(IJSSRC)ijs_client_example.c + +$(BINDIR)$(D)ijs_client_example : $(IJSOBJ)ijs_client_example.$(OBJ) $(ijslib_) + $(IJS_CC) -o bin/ijs_client_example $(IJSOBJ)ijs_client_example.$(OBJ) $(ijslib_) + +$(IJSOBJ)ijs_server_example.$(OBJ) : $(IJSSRC)ijs_server_example.c \ + $(IJSDEP) $(ijs_h) $(ijs_server_h) + $(IJS_CC) $(IJSO_)ijs_server_example.$(OBJ) $(C_) $(IJSSRC)ijs_server_example.c + +$(BINDIR)$(D)ijs_server_example : $(IJSOBJ)ijs_server_example.$(OBJ) $(ijslib_) + $(IJS_CC) -o bin/ijs_server_example $(IJSOBJ)ijs_server_example.$(OBJ) $(ijslib_) |