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 16# makefile for Luratech lwf_jp2 library code. 17# Users of this makefile must define the following: 18# SHARE_JPX - whether to compile in or link to the library 19# JPXSRCDIR - the library source directory 20# 21# gs.mak and friends define the following: 22# JPXOBJDIR - the output obj directory 23# JPXGENDIR - generated (.dev) file directory 24# JPX_OPENJPEG_I_ - include path for the library headers 25# JPXCF_ - cflags for building the library 26# 27# We define the openjpeg.dev target and its dependencies 28# 29# This partial makefile compiles the openjpeg library for use in 30# Ghostscript. 31 32OPEN_JPEG_MAK=$(GLSRC)openjpeg.mak $(TOP_MAKEFILES) 33 34OPEN_JPEG_SRC=$(JPXSRCDIR)$(D)src$(D)lib$(D)openjp2$(D) 35OPEN_JPEG_GEN=$(JPXOBJDIR)$(D) 36 37OPEN_JPEG_PREFIX=opj_ 38OPEN_JPEG_OBJ=$(JPXOBJDIR)$(D) 39 40 41# source files to build from the CSDK source 42 43open_jpeg_OBJS = \ 44 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)bio.$(OBJ) \ 45 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)cidx_manager.$(OBJ) \ 46 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)cio.$(OBJ) \ 47 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)dwt.$(OBJ) \ 48 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)event.$(OBJ) \ 49 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)function_list.$(OBJ) \ 50 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)image.$(OBJ) \ 51 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)invert.$(OBJ) \ 52 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)j2k.$(OBJ) \ 53 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)jp2.$(OBJ) \ 54 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)mct.$(OBJ) \ 55 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)mqc.$(OBJ) \ 56 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)openjpeg.$(OBJ) \ 57 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)phix_manager.$(OBJ) \ 58 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)pi.$(OBJ) \ 59 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)ppix_manager.$(OBJ) \ 60 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)t1.$(OBJ) \ 61 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)t2.$(OBJ) \ 62 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)tcd.$(OBJ) \ 63 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)tgt.$(OBJ) \ 64 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)thix_manager.$(OBJ) \ 65 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)tpix_manager.$(OBJ) \ 66 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)thread.$(OBJ) \ 67 $(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)sparse_array.$(OBJ) 68 69open_jpeg_HDRS = \ 70 $(OPEN_JPEG_SRC)bio.h \ 71 $(OPEN_JPEG_SRC)cidx_manager.h \ 72 $(OPEN_JPEG_SRC)cio.h \ 73 $(OPEN_JPEG_SRC)dwt.h \ 74 $(OPEN_JPEG_SRC)event.h \ 75 $(OPEN_JPEG_SRC)function_list.h \ 76 $(OPEN_JPEG_SRC)image.h \ 77 $(OPEN_JPEG_SRC)indexbox_manager.h \ 78 $(OPEN_JPEG_SRC)invert.h \ 79 $(OPEN_JPEG_SRC)j2k.h \ 80 $(OPEN_JPEG_SRC)jp2.h \ 81 $(OPEN_JPEG_SRC)mct.h \ 82 $(OPEN_JPEG_SRC)mqc.h \ 83 $(OPEN_JPEG_SRC)openjpeg.h \ 84 $(OPEN_JPEG_SRC)opj_clock.h \ 85 $(OPEN_JPEG_SRC)opj_config.h \ 86 $(OPEN_JPEG_SRC)opj_config_private.h \ 87 $(OPEN_JPEG_SRC)opj_includes.h \ 88 $(OPEN_JPEG_SRC)opj_intmath.h \ 89 $(OPEN_JPEG_SRC)opj_inttypes.h \ 90 $(OPEN_JPEG_SRC)opj_malloc.h \ 91 $(OPEN_JPEG_SRC)opj_stdint.h \ 92 $(OPEN_JPEG_SRC)pi.h \ 93 $(OPEN_JPEG_SRC)t1.h \ 94 $(OPEN_JPEG_SRC)t1_luts.h \ 95 $(OPEN_JPEG_SRC)t2.h \ 96 $(OPEN_JPEG_SRC)tcd.h \ 97 $(OPEN_JPEG_SRC)tgt.h \ 98 $(OPEN_JPEG_SRC)thread.h \ 99 $(OPEN_JPEG_SRC)tls_keys.h \ 100 $(OPEN_JPEG_SRC)sparse_array.h 101 102# switch in the selected library .dev 103$(OPEN_JPEG_GEN)openjpeg.dev : $(OPEN_JPEG_GEN)openjpeg_$(SHARE_JPX).dev \ 104 $(OPEN_JPEG_MAK) $(MAKEDIRS) 105 $(CP_) $(OPEN_JPEG_GEN)openjpeg_$(SHARE_JPX).dev $(OPEN_JPEG_GEN)openjpeg.dev 106 107# external link .dev - empty, as we add the lib to LDFLAGS 108$(OPEN_JPEG_GEN)openjpeg_1.dev : $(OPEN_JPEG_MAK) $(ECHOGS_XE) \ 109 $(OPEN_JPEG_MAK) $(MAKEDIRS) 110 $(SETMOD) $(OPEN_JPEG_GEN)openjpeg_1 111 112# compile our own .dev 113$(OPEN_JPEG_GEN)openjpeg_0.dev : $(ECHOGS_XE) $(open_jpeg_OBJS) \ 114 $(OPEN_JPEG_MAK) $(MAKEDIRS) 115 $(SETMOD) $(OPEN_JPEG_GEN)openjpeg_0 $(open_jpeg_OBJS) 116 117# define our specific compiler 118OPEN_JPEG_CC=$(CC) $(CFLAGS) $(D_)OPJ_STATIC$(_D) $(I_)$(OPEN_JPEG_GEN)$(_I) $(I_)$(JPX_OPENJPEG_I_)$(_I) $(I_)$(JPX_OPENJPEG_I_)$(D)..$(_I) $(JPXCF_) 119OPEN_JPEG_O=$(O_)$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX) 120 121OPEN_JPEG_DEP=$(AK) $(OPEN_JPEG_MAK) $(MAKEDIRS) 122 123# explicit rules for building each source file 124# for simplicity we have every source file depend on all headers 125 126$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)bio.$(OBJ) : $(OPEN_JPEG_SRC)bio.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 127 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)bio.$(OBJ) $(C_) $(OPEN_JPEG_SRC)bio.c 128 129$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)cio.$(OBJ) : $(OPEN_JPEG_SRC)cio.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 130 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)cio.$(OBJ) $(C_) $(OPEN_JPEG_SRC)cio.c 131 132$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)dwt.$(OBJ) : $(OPEN_JPEG_SRC)dwt.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 133 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)dwt.$(OBJ) $(C_) $(OPEN_JPEG_SRC)dwt.c 134 135$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)event.$(OBJ) : $(OPEN_JPEG_SRC)event.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 136 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)event.$(OBJ) $(C_) $(OPEN_JPEG_SRC)event.c 137 138$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)function_list.$(OBJ) : $(OPEN_JPEG_SRC)function_list.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 139 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)function_list.$(OBJ) $(C_) $(OPEN_JPEG_SRC)function_list.c 140 141$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)image.$(OBJ) : $(OPEN_JPEG_SRC)image.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 142 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)image.$(OBJ) $(C_) $(OPEN_JPEG_SRC)image.c 143 144$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)invert.$(OBJ) : $(OPEN_JPEG_SRC)invert.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 145 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)invert.$(OBJ) $(C_) $(OPEN_JPEG_SRC)invert.c 146 147$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)j2k.$(OBJ) : $(OPEN_JPEG_SRC)j2k.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 148 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)j2k.$(OBJ) $(C_) $(OPEN_JPEG_SRC)j2k.c 149 150$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)jp2.$(OBJ) : $(OPEN_JPEG_SRC)jp2.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 151 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)jp2.$(OBJ) $(C_) $(OPEN_JPEG_SRC)jp2.c 152 153$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)mct.$(OBJ) : $(OPEN_JPEG_SRC)mct.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 154 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)mct.$(OBJ) $(C_) $(OPEN_JPEG_SRC)mct.c 155 156$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)mqc.$(OBJ) : $(OPEN_JPEG_SRC)mqc.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 157 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)mqc.$(OBJ) $(C_) $(OPEN_JPEG_SRC)mqc.c 158 159$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)openjpeg.$(OBJ) : $(OPEN_JPEG_SRC)openjpeg.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 160 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)openjpeg.$(OBJ) $(C_) $(OPEN_JPEG_SRC)openjpeg.c 161 162$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)opj_clock.$(OBJ) : $(OPEN_JPEG_SRC)opj_clock.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 163 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)opj_clock.$(OBJ) $(C_) $(OPEN_JPEG_SRC)opj_clock.c 164 165$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)pi.$(OBJ) : $(OPEN_JPEG_SRC)pi.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 166 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)pi.$(OBJ) $(C_) $(OPEN_JPEG_SRC)pi.c 167 168$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)t1.$(OBJ) : $(OPEN_JPEG_SRC)t1.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 169 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)t1.$(OBJ) $(C_) $(OPEN_JPEG_SRC)t1.c 170 171$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)t2.$(OBJ) : $(OPEN_JPEG_SRC)t2.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 172 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)t2.$(OBJ) $(C_) $(OPEN_JPEG_SRC)t2.c 173 174$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)tcd.$(OBJ) : $(OPEN_JPEG_SRC)tcd.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 175 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)tcd.$(OBJ) $(C_) $(OPEN_JPEG_SRC)tcd.c 176 177$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)tgt.$(OBJ) : $(OPEN_JPEG_SRC)tgt.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 178 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)tgt.$(OBJ) $(C_) $(OPEN_JPEG_SRC)tgt.c 179 180$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)cidx_manager.$(OBJ) : $(OPEN_JPEG_SRC)cidx_manager.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 181 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)cidx_manager.$(OBJ) $(C_) $(OPEN_JPEG_SRC)cidx_manager.c 182 183$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)tpix_manager.$(OBJ) : $(OPEN_JPEG_SRC)tpix_manager.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 184 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)tpix_manager.$(OBJ) $(C_) $(OPEN_JPEG_SRC)tpix_manager.c 185 186$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)thix_manager.$(OBJ) : $(OPEN_JPEG_SRC)thix_manager.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 187 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)thix_manager.$(OBJ) $(C_) $(OPEN_JPEG_SRC)thix_manager.c 188 189$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)ppix_manager.$(OBJ) : $(OPEN_JPEG_SRC)ppix_manager.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 190 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)ppix_manager.$(OBJ) $(C_) $(OPEN_JPEG_SRC)ppix_manager.c 191 192$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)phix_manager.$(OBJ) : $(OPEN_JPEG_SRC)phix_manager.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 193 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)phix_manager.$(OBJ) $(C_) $(OPEN_JPEG_SRC)phix_manager.c 194 195$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)thread.$(OBJ) : $(OPEN_JPEG_SRC)thread.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 196 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)thread.$(OBJ) $(C_) $(OPEN_JPEG_SRC)thread.c 197 198$(OPEN_JPEG_OBJ)$(OPEN_JPEG_PREFIX)sparse_array.$(OBJ) : $(OPEN_JPEG_SRC)sparse_array.c $(open_jpeg_HDRS) $(OPEN_JPEG_DEP) 199 $(OPEN_JPEG_CC) $(OPEN_JPEG_O)sparse_array.$(OBJ) $(C_) $(OPEN_JPEG_SRC)sparse_array.c 200 201# end of file 202