ijs.mak 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. # Copyright (C) 2002 artofcode LLC. All rights reserved.
  2. #
  3. # This file is part of AFPL Ghostscript.
  4. #
  5. # AFPL Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author or
  6. # distributor accepts any responsibility for the consequences of using it, or
  7. # for whether it serves any particular purpose or works at all, unless he or
  8. # she says so in writing. Refer to the Aladdin Free Public License (the
  9. # "License") for full details.
  10. #
  11. # Every copy of AFPL Ghostscript must include a copy of the License, normally
  12. # in a plain ASCII text file named PUBLIC. The License grants you the right
  13. # to copy, modify and redistribute AFPL Ghostscript, but only under certain
  14. # conditions described in the License. Among other things, the License
  15. # requires that the copyright notice and this notice be preserved on all
  16. # copies.
  17. # $Id: ijs.mak,v 1.2.2.1 2002/02/01 03:30:13 raph Exp $
  18. # makefile for ijs client library code.
  19. # Users of this makefile must define the following:
  20. # IJSSRCDIR - the icclib source directory
  21. # IJSEXECTYPE - which process control code to use
  22. # in spawning the server. currently
  23. # 'unix' and 'win' are supported.
  24. # BINDIR - where to put the executible examples
  25. # This partial makefile compiles the IJS client library for use in
  26. # Ghostscript.
  27. IJSSRC=$(IJSSRCDIR)$(D)
  28. IJSGEN=$(IJSGENDIR)$(D)
  29. IJSOBJ=$(IJSOBJDIR)$(D)
  30. IJSO_=$(O_)$(IJSOBJ)
  31. # We need I_, _I_, and _I because the OpenVMS compiler uses different
  32. # syntax from other compilers.
  33. # IJSI_ and IJSF_ are defined in gs.mak (why?)
  34. # as are IJSGENDIR and IJSOBJDIR above.
  35. IJS_INCL=$(I_)$(IJSI_)$(_I)
  36. IJS_CCFLAGS=$(IJS_INCL) $(IJSF_)
  37. IJS_CC=$(CC_) $(IJS_CCFLAGS)
  38. # Define the name of this makefile.
  39. IJS_MAK=$(GLSRC)ijs.mak
  40. ijs.clean : ijs.config-clean ijs.clean-not-config-clean
  41. ### WRONG. MUST DELETE OBJ AND GEN FILES SELECTIVELY.
  42. ijs.clean-not-config-clean :
  43. # echo $(IJSSRC) $(IJSGEN) $(IJSOBJ) $(IJSO_)
  44. $(EXP)$(ECHOGS_XE) $(IJSSRC) $(IJSGEN) $(IJSOBJ) $(IJSO_)
  45. $(RM_) $(IJSOBJ)*.$(OBJ)
  46. ijs.config-clean :
  47. $(RMN_) $(IJSGEN)ijs*.dev
  48. IJSDEP=$(AK)
  49. ijslib_=$(IJSOBJ)ijs.$(OBJ) $(IJSOBJ)ijs_server.$(OBJ) \
  50. $(IJSOBJ)ijs_client.$(OBJ) $(IJSOBJ)ijs_exec_$(IJSEXECTYPE).$(OBJ)
  51. $(IJSGEN)ijslib.dev : $(IJS_MAK) $(ECHOGS_XE) $(ijslib_)
  52. $(SETMOD) $(IJSGEN)ijslib $(ijslib_)
  53. ijs_h=$(IJSSRC)ijs.h
  54. ijs_client_h=$(IJSSRC)$(D)ijs_client.h
  55. ijs_server_h=$(IJSSRC)$(D)ijs_server.h
  56. $(IJSOBJ)ijs.$(OBJ) : $(IJSSRC)ijs.c $(IJSDEP) $(ijs_h)
  57. # echo $(IJS_CCFLAGS)
  58. $(EXP)$(ECHOGS_XE) $(IJS_CCFLAGS)
  59. $(IJS_CC) $(IJSO_)ijs.$(OBJ) $(C_) $(IJSSRC)ijs.c
  60. $(IJSOBJ)ijs_client.$(OBJ) : $(IJSSRC)ijs_client.c \
  61. $(IJSDEP) $(ijs_h) $(ijs_client_h)
  62. $(IJS_CC) $(IJSO_)ijs_client.$(OBJ) $(C_) $(IJSSRC)ijs_client.c
  63. $(IJSOBJ)ijs_server.$(OBJ) : $(IJSSRC)ijs_server.c \
  64. $(IJSDEP) $(ijs_h) $(ijs_server_h)
  65. $(IJS_CC) $(IJSO_)ijs_server.$(OBJ) $(C_) $(IJSSRC)ijs_server.c
  66. $(IJSOBJ)ijs_exec_unix.$(OBJ) : $(IJSSRC)ijs_exec_unix.c \
  67. $(IJSDEP) $(ijs_h) $(ijs_client_h)
  68. $(IJS_CC) $(IJSO_)ijs_exec_unix.$(OBJ) $(C_) $(IJSSRC)ijs_exec_unix.c
  69. $(IJSOBJ)ijs_exec_win.$(OBJ) : $(IJSSRC)ijs_exec_win.c \
  70. $(IJSDEP) $(ijs_h) $(ijs_client_h)
  71. # This can't be compiled with /Za because it needs windows.h.
  72. $(CC_WX) $(IJS_CCFLAGS) $(IJSO_)ijs_exec_win.$(OBJ) $(C_) $(IJSSRC)ijs_exec_win.c
  73. #
  74. # rules for the example client/server implementation
  75. # FIXME: linking not portable (or per policy!)
  76. ijs_server_example_=$(BINDIR)$(D)ijs_server_example
  77. ijs_client_example_=$(BINDIR)$(D)ijs_client_example
  78. ijs_examples_=$(ijs_server_example_) $(ijs_client_example_)
  79. $(IJSGEN)ijs_examples.dev : $(IJS_MAK) $(ECHOGS_XE) \
  80. $(ijs_examples_) $(ijslib_)
  81. $(SETMOD) $(IJSGEN)ijs_examples $(ijs_examples_)
  82. $(ADDMOD) $(IJSGEN)ijs_examples $(ijslib_)
  83. $(IJSOBJ)ijs_client_example.$(OBJ) : $(IJSSRC)ijs_client_example.c \
  84. $(IJSDEP) $(ijs_h) $(ijs_client_h)
  85. $(IJS_CC) $(IJSO_)ijs_client_example.$(OBJ) $(C_) $(IJSSRC)ijs_client_example.c
  86. $(BINDIR)$(D)ijs_client_example : $(IJSOBJ)ijs_client_example.$(OBJ) $(ijslib_)
  87. $(IJS_CC) -o bin/ijs_client_example $(IJSOBJ)ijs_client_example.$(OBJ) $(ijslib_)
  88. $(IJSOBJ)ijs_server_example.$(OBJ) : $(IJSSRC)ijs_server_example.c \
  89. $(IJSDEP) $(ijs_h) $(ijs_server_h)
  90. $(IJS_CC) $(IJSO_)ijs_server_example.$(OBJ) $(C_) $(IJSSRC)ijs_server_example.c
  91. $(BINDIR)$(D)ijs_server_example : $(IJSOBJ)ijs_server_example.$(OBJ) $(ijslib_)
  92. $(IJS_CC) -o bin/ijs_server_example $(IJSOBJ)ijs_server_example.$(OBJ) $(ijslib_)