1# Copyright (C) 2001-2019 Artifex Software, Inc. 2# All Rights Reserved. 3# 4# This software is provided AS-IS with no warranty, either express or 5# implied. 6# 7# This software is distributed under license and may not be copied, 8# modified or distributed except as expressly authorized under the terms 9# of the license contained in the file LICENSE in this distribution. 10# 11# Refer to licensing information at http://www.artifex.com or contact 12# Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, 13# CA 94945, U.S.A., +1(415)492-9861, for further information. 14# 15# Partial makefile common to all Unix configurations. 16# This makefile contains the build rules for the auxiliary programs such as 17# echogs, and the 'platform' modules. 18 19# Define the name of this makefile. 20UNIX_AUX_MAK=$(GLSRC)unix-aux.mak $(TOP_MAKEFILES) 21 22# -------------------------------- Library -------------------------------- # 23 24## The Unix platforms 25 26# We have to include a test for the existence of sys/time.h, 27# because some System V platforms don't have it. 28 29# Unix platforms other than System V, and also System V Release 4 30# (SVR4) platforms. 31unix__=$(GLOBJ)gp_getnv.$(OBJ) $(GLOBJ)gp_upapr.$(OBJ) $(GLOBJ)gp_unix.$(OBJ)\ 32 $(GLOBJ)gp_unifs.$(OBJ) $(GLOBJ)gp_unifn.$(OBJ) $(GLOBJ)gp_stdia.$(OBJ)\ 33 $(GLOBJ)gp_nxpsprn.$(OBJ) 34 35$(GLGEN)unix_.dev: $(unix__) $(GLD)nosync.dev $(GLD)smd5.dev $(UNIX_AUX_MAK) $(MAKEDIRS) 36 $(SETMOD) $(GLGEN)unix_ $(unix__) -include $(GLD)nosync 37 $(ADDMOD) $(GLGEN)unix_ -include $(GLD)smd5 38 39$(GLOBJ)gp_unix.$(OBJ): $(GLSRC)gp_unix.c $(AK)\ 40 $(pipe__h) $(string__h) $(time__h) $(gx_h) $(gsexit_h) $(gp_h) $(UNIX_AUX_MAK) $(MAKEDIRS) 41 $(GLCC) $(FONTCONFIG_CFLAGS) $(GLO_)gp_unix.$(OBJ) $(C_) $(GLSRC)gp_unix.c 42 43$(AUX)gp_unix.$(OBJ): $(GLSRC)gp_unix.c $(AK)\ 44 $(pipe__h) $(string__h) $(time__h)\ 45 $(gx_h) $(gsexit_h) $(gp_h) $(UNIX_AUX_MAK) $(MAKEDIRS) 46 $(GLCCAUX) $(AUXO_)gp_unix.$(OBJ) $(C_) $(GLSRC)gp_unix.c 47 48# assume all Unix platforms support unbuffered read 49$(GLOBJ)gp_stdia.$(OBJ): $(GLSRC)gp_stdia.c $(AK)\ 50 $(stdio__h) $(time__h) $(unistd__h) $(gx_h) $(gp_h) $(UNIX_AUX_MAK) $(MAKEDIRS) 51 $(GLCC) $(GLO_)gp_stdia.$(OBJ) $(C_) $(GLSRC)gp_stdia.c 52 53$(AUX)gp_stdia.$(OBJ): $(GLSRC)gp_stdia.c $(AK)\ 54 $(stdio__h) $(time__h) $(unistd__h) $(gx_h) $(gp_h) $(UNIX_AUX_MAK) $(MAKEDIRS) 55 $(GLCCAUX) $(AUXO_)gp_stdia.$(OBJ) $(C_) $(GLSRC)gp_stdia.c 56 57# -------------------------- Auxiliary programs --------------------------- # 58 59$(ECHOGS_XE): $(GLSRC)echogs.c $(AK) $(stdpre_h) $(UNIX_AUX_MAK) $(MAKEDIRS) 60 $(CCAUX_) $(I_)$(GLSRCDIR)$(_I) $(O_)$(ECHOGS_XE) $(GLSRC)echogs.c $(AUXEXTRALIBS) 61 62$(PACKPS_XE): $(GLSRC)pack_ps.c $(stdpre_h) $(UNIX_AUX_MAK) $(MAKEDIRS) 63 $(CCAUX_) $(I_)$(GLSRCDIR)$(_I) $(O_)$(PACKPS_XE) $(GLSRC)pack_ps.c $(AUXEXTRALIBS) 64 65# On the RS/6000 (at least), compiling genarch.c with gcc with -O 66# produces a buggy executable. 67$(GENARCH_XE): $(GLSRC)genarch.c $(AK) $(GENARCH_DEPS) $(UNIX_AUX_MAK) $(MAKEDIRS) 68 $(CCAUX_) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENARCH_XE) $(GLSRC)genarch.c $(AUXEXTRALIBS) 69 70$(GENCONF_XE): $(GLSRC)genconf.c $(AK) $(GENCONF_DEPS) $(UNIX_AUX_MAK) $(MAKEDIRS) 71 $(CCAUX_) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENCONF_XE) $(GLSRC)genconf.c $(AUXEXTRALIBS) 72 73$(GENDEV_XE): $(GLSRC)gendev.c $(AK) $(GENDEV_DEPS) $(UNIX_AUX_MAK) $(MAKEDIRS) 74 $(CCAUX_) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENDEV_XE) $(GLSRC)gendev.c $(AUXEXTRALIBS) 75 76$(GENHT_XE): $(GLSRC)genht.c $(AK) $(GENHT_DEPS) $(UNIX_AUX_MAK) $(MAKEDIRS) 77 $(CCAUX_) $(GENHT_CFLAGS) $(O_)$(GENHT_XE) $(GLSRC)genht.c $(AUXEXTRALIBS) 78 79# To get GS to use the system zlib, you remove/hide the gs/zlib directory 80# which means that the mkromfs build can't find the zlib source it needs. 81# So it's split into two targets, one using the zlib source directly..... 82MKROMFS_OBJS_0=$(MKROMFS_ZLIB_OBJS) $(AUX)gpmisc.$(OBJ) $(AUX)gp_getnv.$(OBJ) \ 83 $(AUX)gscdefs.$(OBJ) $(AUX)gp_unix.$(OBJ) $(AUX)gp_unifs.$(OBJ) $(AUX)gp_unifn.$(OBJ) \ 84 $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) $(AUX)memento.$(OBJ) 85 86$(MKROMFS_XE)_0: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_0) $(UNIX_AUX_MAK) $(MAKEDIRS) 87 $(CCAUX_) $(GENOPTAUX) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_0 $(MKROMFS_OBJS_0) $(AUXEXTRALIBS) 88 89# .... and one using the zlib library linked via the command line 90MKROMFS_OBJS_1=$(AUX)gscdefs.$(OBJ) \ 91 $(AUX)gpmisc.$(OBJ) $(AUX)gp_getnv.$(OBJ) \ 92 $(AUX)gp_unix.$(OBJ) $(AUX)gp_unifs.$(OBJ) $(AUX)gp_unifn.$(OBJ) \ 93 $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) 94 95$(MKROMFS_XE)_1: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_1) $(UNIX_AUX_MAK) $(MAKEDIRS) 96 $(CCAUX_) $(GENOPTAUX) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_1 $(MKROMFS_OBJS_1) $(AUXEXTRALIBS) 97 98$(MKROMFS_XE): $(MKROMFS_XE)_$(SHARE_ZLIB) $(UNIX_AUX_MAK) $(MAKEDIRS) 99 $(CP_) $(MKROMFS_XE)_$(SHARE_ZLIB) $(MKROMFS_XE) 100 101# Query the environment to construct gconfig_.h. 102# These are all defined conditionally (except the JasPER one), so that 103# they can be overridden by settings from the configure script. 104# The "empty" $(ECHOGS_XE) lines just append a white space line to the 105# header file. 106INCLUDE=/usr/include 107$(gconfig__h): $(UNIX_AUX_MAK) $(ECHOGS_XE) $(UNIX_AUX_MAK) $(MAKEDIRS) 108 $(ECHOGS_XE) -w $(gconfig__h) -x 2f2a -s This file was generated automatically by unix-aux.mak. -s -x 2a2f 109 $(ECHOGS_XE) -a $(gconfig__h) 110 111 $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_DIRENT_H 112 if ( test -f $(INCLUDE)/dirent.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_DIRENT_H 1; \ 113 else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_DIRENT_H 0; fi 114 $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif 115 $(ECHOGS_XE) -a $(gconfig__h) 116 117 $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_NDIR_H 118 if ( test -f $(INCLUDE)/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_NDIR_H 1; \ 119 else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_NDIR_H 0; fi 120 $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif 121 $(ECHOGS_XE) -a $(gconfig__h) 122 123 $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_SYS_DIR_H 124 if ( test -f $(INCLUDE)/sys/dir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_DIR_H 1; \ 125 else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_DIR_H 0; fi 126 $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif 127 $(ECHOGS_XE) -a $(gconfig__h) 128 129 $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_SYS_NDIR_H 130 if ( test -f $(INCLUDE)/sys/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_NDIR_H 1; \ 131 else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_NDIR_H 0; fi 132 $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif 133 $(ECHOGS_XE) -a $(gconfig__h) 134 135 $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_SYS_TIME_H 136 if ( test -f $(INCLUDE)/sys/time.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIME_H 1; \ 137 else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIME_H 0; fi 138 $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif 139 $(ECHOGS_XE) -a $(gconfig__h) 140 141 $(ECHOGS_XE) -a $(gconfig__h) -x 23 ifndef HAVE_SYS_TIMES_H 142 if ( test -f $(INCLUDE)/sys/times.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIMES_H 1; \ 143 else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_TIMES_H 0; fi 144 $(ECHOGS_XE) -a $(gconfig__h) -x 23 endif 145 $(ECHOGS_XE) -a $(gconfig__h) 146 147 if ( test -f $(JSRCDIR)/jmemsys.h); then true; else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define DONT_HAVE_JMEMSYS_H; fi 148