]> git.saurik.com Git - wxWidgets.git/blame - src/jpeg/makefile.vc
use reserve() instead of Alloc() in WX_APPEND_ARRAY so that it works with std classes too
[wxWidgets.git] / src / jpeg / makefile.vc
CommitLineData
ea64e17a
JS
1# Makefile for Independent JPEG Group's software
2
3# This makefile is for Microsoft Visual C++ on Windows NT (and 95?).
4# It builds the IJG library as a statically linkable library (.LIB),
5# and builds the sample applications as console-mode apps.
6# Thanks to Xingong Chang, Raymond Everly and others.
7
8# Read installation instructions before saying "nmake" !!
9# To build an optimized library without debug info, say "nmake nodebug=1".
10
11# Put here the object file name for the correct system-dependent memory
12# manager file. For NT we suggest jmemnobs.obj, which expects the OS to
13# provide adequate virtual memory.
cd31c795 14SYSDEPMEM= $D\jmemnobs.obj
ea64e17a
JS
15
16# miscellaneous OS-dependent stuff
17# file deletion command
cd31c795 18!if "$(RM)" == ""
963a1fcd 19RM= erase
cd31c795 20!endif
ea64e17a
JS
21
22# End of configurable options.
23
ea64e17a 24# source files: JPEG library proper
cd31c795
GT
25LIBSOURCES= jcapimin.c \
26 jcapistd.c \
27 jccoefct.c \
28 jccolor.c \
29 jcdctmgr.c \
30 jchuff.c \
31 jcinit.c \
32 jcmainct.c \
33 jcmarker.c \
34 jcmaster.c \
35 jcomapi.c \
36 jcparam.c \
37 jcphuff.c \
38 jcprepct.c \
39 jcsample.c \
40 jctrans.c \
41 jdapimin.c \
42 jdapistd.c \
43 jdatadst.c \
44 jdatasrc.c \
45 jdcoefct.c \
46 jdcolor.c \
47 jddctmgr.c \
48 jdhuff.c \
49 jdinput.c \
50 jdmainct.c \
51 jdmarker.c \
52 jdmaster.c \
53 jdmerge.c \
54 jdphuff.c \
55 jdpostct.c \
56 jdsample.c \
57 jdtrans.c \
58 jerror.c \
59 jfdctflt.c \
60 jfdctfst.c \
61 jfdctint.c \
62 jidctflt.c \
63 jidctfst.c \
64 jidctint.c \
65 jidctred.c \
66 jquant1.c \
67 jquant2.c \
68 jutils.c \
69 jmemmgr.c
70
ea64e17a
JS
71# memmgr back ends: compile only one of these into a working library
72SYSDEPSOURCES= jmemansi.c jmemname.c jmemnobs.c jmemdos.c jmemmac.c
cd31c795 73
ea64e17a
JS
74# source files: cjpeg/djpeg/jpegtran applications, also rdjpgcom/wrjpgcom
75APPSOURCES= cjpeg.c djpeg.c jpegtran.c rdjpgcom.c wrjpgcom.c cdjpeg.c \
76 rdcolmap.c rdswitch.c transupp.c rdppm.c wrppm.c rdgif.c wrgif.c \
77 rdtarga.c wrtarga.c rdbmp.c wrbmp.c rdrle.c wrrle.c
cd31c795 78
ea64e17a 79SOURCES= $(LIBSOURCES) $(SYSDEPSOURCES) $(APPSOURCES)
cd31c795 80
ea64e17a
JS
81# files included by source files
82INCLUDES= jchuff.h jdhuff.h jdct.h jerror.h jinclude.h jmemsys.h jmorecfg.h \
83 jpegint.h jpeglib.h jversion.h cdjpeg.h cderror.h transupp.h
cd31c795 84
ea64e17a
JS
85# documentation, test, and support files
86DOCS= README install.doc usage.doc cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 \
87 wrjpgcom.1 wizard.doc example.c libjpeg.doc structure.doc \
88 coderules.doc filelist.doc change.log
cd31c795 89
ea64e17a
JS
90MKFILES= configure makefile.cfg makefile.ansi makefile.unix makefile.bcc \
91 makefile.mc6 makefile.dj makefile.wat makefile.vc makelib.ds \
92 makeapps.ds makeproj.mac makcjpeg.st makdjpeg.st makljpeg.st \
93 maktjpeg.st makefile.manx makefile.sas makefile.mms makefile.vms \
94 makvms.opt
cd31c795 95
ea64e17a
JS
96CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
97 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
98 jconfig.vms
cd31c795 99
ea64e17a
JS
100CONFIGUREFILES= config.guess config.sub install-sh ltconfig ltmain.sh
101OTHERFILES= jconfig.doc ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm
102TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
103 testimgp.jpg
104DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
105 $(CONFIGUREFILES) $(OTHERFILES) $(TESTFILES)
cd31c795 106
ea64e17a 107# library object files common to compression and decompression
cd31c795
GT
108COMOBJECTS= $D\jcomapi.obj $D\jutils.obj $D\jerror.obj $D\jmemmgr.obj $(SYSDEPMEM)
109
ea64e17a 110# compression library object files
cd31c795
GT
111CLIBOBJECTS= $D\jcapimin.obj \
112 $D\jcapistd.obj \
113 $D\jctrans.obj \
114 $D\jcparam.obj \
115 $D\jdatadst.obj \
116 $D\jcinit.obj \
117 $D\jcmaster.obj \
118 $D\jcmarker.obj \
119 $D\jcmainct.obj \
120 $D\jcprepct.obj \
121 $D\jccoefct.obj \
122 $D\jccolor.obj \
123 $D\jcsample.obj \
124 $D\jchuff.obj \
125 $D\jcphuff.obj \
126 $D\jcdctmgr.obj \
127 $D\jfdctfst.obj \
128 $D\jfdctflt.obj \
129 $D\jfdctint.obj
130
ea64e17a 131# decompression library object files
cd31c795
GT
132DLIBOBJECTS= $D\jdapimin.obj \
133 $D\jdapistd.obj \
134 $D\jdtrans.obj \
135 $D\jdatasrc.obj \
136 $D\jdmaster.obj \
137 $D\jdinput.obj \
138 $D\jdmarker.obj \
139 $D\jdhuff.obj \
140 $D\jdphuff.obj \
141 $D\jdmainct.obj \
142 $D\jdcoefct.obj \
143 $D\jdpostct.obj \
144 $D\jddctmgr.obj \
145 $D\jidctfst.obj \
146 $D\jidctflt.obj \
147 $D\jidctint.obj \
148 $D\jidctred.obj \
149 $D\jdsample.obj \
150 $D\jdcolor.obj \
151 $D\jquant1.obj \
152 $D\jquant2.obj \
153 $D\jdmerge.obj
ea64e17a
JS
154# These objectfiles are included in libjpeg.lib
155OBJECTS= $(CLIBOBJECTS) $(DLIBOBJECTS) $(COMOBJECTS)
cd31c795 156
ea64e17a 157# object files for sample applications (excluding library files)
cd31c795
GT
158COBJECTS= $D\cjpeg.obj \
159 $D\rdppm.obj \
160 $D\rdgif.obj \
161 $D\rdtarga.obj \
162 $D\rdrle.obj \
163 $D\rdbmp.obj \
164 $D\rdswitch.obj \
165 $D\cdjpeg.obj
166
167DOBJECTS= $D\djpeg.obj \
168 $D\wrppm.obj \
169 $D\wrgif.obj \
170 $D\wrtarga.obj \
171 $D\wrrle.obj \
172 $D\wrbmp.obj \
173 $D\rdcolmap.obj \
174 $D\cdjpeg.obj
175
176TROBJECTS= $D\jpegtran.obj \
177 $D\rdswitch.obj \
178 $D\cdjpeg.obj \
179 $D\transupp.obj
ea64e17a 180
5fa399c9 181!if "$(FINAL)" == "1"
ea64e17a 182LIBTARGET=..\..\lib\jpeg.lib
f641dada
RD
183!else if "$(FINAL)" == "hybrid"
184LIBTARGET=..\..\lib\jpegh.lib
5fa399c9
JS
185!else
186LIBTARGET=..\..\lib\jpegd.lib
187!endif
ea64e17a
JS
188
189# Note: we have to put this first, to override the default definition
190# which doesn't work because there are too many files on the command line.
191# This means that we must explicitly use the 'all' target when making
192# jpeg.lib, because of the ordering of targets.
193
194defaulttarget:
195 echo Please use the 'all' target for this makefile.
196
f641dada 197
ea64e17a
JS
198# Pull in standard variable definitions
199
200!include ..\makelib.vc
201