source: trunk/JPGPROC/source/gbmsrc/makefile@ 2

Last change on this file since 2 was 2, checked in by stevenhl, 8 years ago

Import sources from cwmm-full.zip dated 2005-03-21

File size: 6.0 KB
Line 
1#
2# Generalised Bitmap Module
3#
4# OS/2
5# IBM VisualAge C++, with CTC306, CTD302 and CTU304
6#
7# Builds GBM.DLL which is compiled multithreaded
8# Therefore all users should also be multithreaded
9#
10# Note problems have been observed when optimisation allows the instruction
11# scheduler to do its thing. Bug present beleived present in IBM C-Set++, with
12# CSD 12, and in particular affects inner loops in gbmht.c and gbmerr.c.
13# Bug suspected also present in VisualAge C++, even with CTC305.
14#
15
16# Modify this line to point to the Independant JPEG groups library 6a
17# If you haven't got it, comment out the line instead.
18IJG = \build\os2\jpeg-6a
19
20!ifdef IJG
21CJPEG = /DIJG
22!else
23CJPEG =
24!endif
25
26CWARNS = /W3 /Wcnd+cns+dcl+ord+par+pro+rea+ret+use+
27CFLAGS = /C+ $(CWARNS) /DOS2 /G4 /Gd-m+ /Q+ /O+ /Os- $(CJPEG)
28CFLAGS_EXE = $(CFLAGS) /Ge+
29CFLAGS_DLL = $(CFLAGS) /Ge-
30LFLAGS = /NOI /ALIGN:4 /NOLOGO
31LFLAGS_EXE = $(LFLAGS) /BASE:0x10000 /STACK:0x6000 /PMTYPE:VIO
32LFLAGS_DLL = $(LFLAGS)
33
34.SUFFIXES: .c .obj
35
36.c.obj:
37 icc $(CFLAGS_EXE) $*.c
38
39#
40
41all: ijg gbm.dll gbm.lib gbmhdr.exe \
42 gbmmir.lib gbmref.exe \
43 gbmrect.lib gbmsub.exe \
44 gbmscale.lib gbmsize.exe \
45 gbmerr.lib gbmtrunc.lib gbmht.lib gbmhist.lib gbmmcut.lib gbmbpp.exe \
46 gbmcpal.exe \
47 gbmgamma.exe
48
49#
50
51ijg:
52!ifdef IJG
53 @echo JPEG support, via Independent JPEG Group
54 @copy $(IJG)\jconfig.doc $(IJG)\jconfig.h
55 @copy makeijgo $(IJG)
56 @copy jmorecfg.h $(IJG)
57 (cd $(IJG) && nmake -c -f makeijgo)
58!else
59 @echo No JPEG support
60!endif
61
62#
63
64!ifdef IJG
65IJGOBJ = $(IJG)\jcapimin.obj $(IJG)\jcapistd.obj $(IJG)\jctrans.obj \
66 $(IJG)\jcparam.obj $(IJG)\jdatadst.obj $(IJG)\jcinit.obj \
67 $(IJG)\jcmaster.obj $(IJG)\jcmarker.obj $(IJG)\jcmainct.obj \
68 $(IJG)\jcprepct.obj $(IJG)\jccoefct.obj $(IJG)\jccolor.obj \
69 $(IJG)\jcsample.obj $(IJG)\jchuff.obj $(IJG)\jcphuff.obj \
70 $(IJG)\jcdctmgr.obj $(IJG)\jfdctfst.obj $(IJG)\jfdctflt.obj \
71 $(IJG)\jfdctint.obj $(IJG)\jdapimin.obj $(IJG)\jdapistd.obj \
72 $(IJG)\jdtrans.obj $(IJG)\jdatasrc.obj $(IJG)\jdmaster.obj \
73 $(IJG)\jdinput.obj $(IJG)\jdmarker.obj $(IJG)\jdhuff.obj \
74 $(IJG)\jdphuff.obj $(IJG)\jdmainct.obj $(IJG)\jdcoefct.obj \
75 $(IJG)\jdpostct.obj $(IJG)\jddctmgr.obj $(IJG)\jidctfst.obj \
76 $(IJG)\jidctflt.obj $(IJG)\jidctint.obj $(IJG)\jidctred.obj \
77 $(IJG)\jdsample.obj $(IJG)\jdcolor.obj $(IJG)\jquant1.obj \
78 $(IJG)\jquant2.obj $(IJG)\jdmerge.obj $(IJG)\jcomapi.obj \
79 $(IJG)\jutils.obj $(IJG)\jerror.obj $(IJG)\jmemmgr.obj \
80 $(IJG)\jmemnobs.obj
81!else
82IJGOBJ =
83!endif
84
85gbm.dll: gbm.obj gbmpgm.obj gbmppm.obj gbmbmp.obj gbmtga.obj \
86 gbmkps.obj gbmiax.obj gbmpcx.obj gbmtif.obj gbmtifh.obj \
87 gbmlbm.obj gbmvid.obj gbmgif.obj gbmxbm.obj gbmspr.obj \
88 gbmpsg.obj gbmgem.obj gbmcvp.obj gbmjpg.obj gbmhelp.obj \
89 gbm.def
90 ilink $(LFLAGS_DLL) /OUT:$@ @<<
91 $** $(IJGOBJ)
92<<
93
94gbm.lib: gbm.def
95 implib /NOLOGO /NOI $@ $**
96
97gbm.obj: gbm.c gbm.h gbmhelp.h gbmpgm.h gbmppm.h gbmbmp.h gbmtga.h gbmkps.h gbmiax.h gbmpcx.h gbmtif.h gbmlbm.h gbmvid.h gbmgif.h gbmxbm.h gbmspr.h gbmpsg.h gbmgem.h gbmcvp.h gbmjpg.h
98 icc $(CFLAGS_DLL) $*.c
99
100gbmpgm.obj: gbmpgm.c gbm.h gbmhelp.h
101 icc $(CFLAGS_DLL) $*.c
102
103gbmppm.obj: gbmppm.c gbm.h gbmhelp.h
104 icc $(CFLAGS_DLL) $*.c
105
106gbmbmp.obj: gbmbmp.c gbm.h gbmhelp.h
107 icc $(CFLAGS_DLL) $*.c
108
109gbmtga.obj: gbmtga.c gbm.h gbmhelp.h
110 icc $(CFLAGS_DLL) $*.c
111
112gbmkps.obj: gbmkps.c gbm.h gbmhelp.h
113 icc $(CFLAGS_DLL) $*.c
114
115gbmiax.obj: gbmiax.c gbm.h gbmhelp.h
116 icc $(CFLAGS_DLL) $*.c
117
118gbmpcx.obj: gbmpcx.c gbm.h gbmhelp.h
119 icc $(CFLAGS_DLL) $*.c
120
121gbmtif.obj: gbmtif.c gbm.h gbmhelp.h gbmtifh.h
122 icc $(CFLAGS_DLL) $*.c
123
124gbmtifh.obj: gbmtifh.c gbmtifh.h
125 icc $(CFLAGS_DLL) $*.c
126
127gbmlbm.obj: gbmlbm.c gbm.h gbmhelp.h
128 icc $(CFLAGS_DLL) $*.c
129
130gbmvid.obj: gbmvid.c gbm.h gbmhelp.h
131 icc $(CFLAGS_DLL) $*.c
132
133gbmgif.obj: gbmgif.c gbm.h gbmhelp.h
134 icc $(CFLAGS_DLL) $*.c
135
136gbmxbm.obj: gbmxbm.c gbm.h gbmhelp.h
137 icc $(CFLAGS_DLL) $*.c
138
139gbmspr.obj: gbmspr.c gbm.h gbmhelp.h
140 icc $(CFLAGS_DLL) $*.c
141
142gbmpsg.obj: gbmpsg.c gbm.h gbmhelp.h
143 icc $(CFLAGS_DLL) $*.c
144
145gbmgem.obj: gbmgem.c gbm.h gbmhelp.h
146 icc $(CFLAGS_DLL) $*.c
147
148gbmcvp.obj: gbmcvp.c gbm.h gbmhelp.h
149 icc $(CFLAGS_DLL) $*.c
150
151!ifdef IJG
152gbmjpg.obj: gbmjpg.c gbm.h gbmhelp.h
153 icc $(CFLAGS_DLL) /I$(IJG) $*.c
154!endif
155
156gbmhelp.obj: gbmhelp.c gbm.h
157 icc $(CFLAGS_DLL) $*.c
158
159#
160
161gbmhdr.exe: gbmhdr.obj gbm.lib
162 ilink $(LFLAGS_EXE) /OUT:$@ /NOE setargv.obj $**
163
164gbmhdr.obj: gbmhdr.c gbm.h
165
166#
167
168gbmmir.lib: gbmmir.obj
169 -del $@ 2> nul
170 ilib /NOLOGO $@ $**;
171
172gbmmir.obj: gbmmir.c
173
174gbmref.exe: gbmref.obj gbm.lib gbmmir.lib
175 ilink $(LFLAGS_EXE) /OUT:$@ $**
176
177gbmref.obj: gbmref.c gbm.h gbmmir.h
178
179#
180
181gbmrect.lib: gbmrect.obj
182 -del $@ 2> nul
183 ilib /NOLOGO $@ $**;
184
185gbmrect.obj: gbmrect.c
186
187gbmsub.exe: gbmsub.obj gbm.lib gbmrect.lib
188 ilink $(LFLAGS_EXE) /OUT:$@ $**
189
190gbmsub.obj: gbmsub.c gbm.h gbmrect.h
191
192#
193
194gbmerr.lib: gbmerr.obj
195 -del $@ 2> nul
196 ilib /NOLOGO $@ $**;
197
198gbmerr.obj: gbmerr.c
199
200#
201
202gbmscale.lib: gbmscale.obj
203 -del $@ 2> nul
204 ilib /NOLOGO $@ $**;
205
206gbmscale.obj: gbmscale.c
207
208gbmsize.exe: gbmsize.obj gbm.lib gbmscale.lib
209 ilink $(LFLAGS_EXE) /OUT:$@ $**
210
211gbmsize.obj: gbmsize.c gbm.h gbmscale.h
212
213#
214
215gbmtrunc.lib: gbmtrunc.obj
216 -del $@ 2> nul
217 ilib /NOLOGO $@ $**;
218
219gbmtrunc.obj: gbmtrunc.c
220
221#
222
223gbmht.lib: gbmht.obj
224 -del $@ 2> nul
225 ilib /NOLOGO $@ $**;
226
227gbmht.obj: gbmht.c
228
229#
230
231gbmhist.lib: gbmhist.obj
232 -del $@ 2> nul
233 ilib /NOLOGO $@ $**;
234
235gbmhist.obj: gbmhist.c
236
237#
238
239gbmmcut.lib: gbmmcut.obj
240 -del $@ 2> nul
241 ilib /NOLOGO $@ $**;
242
243gbmmcut.obj: gbmmcut.c
244
245#
246
247gbmbpp.exe: gbmbpp.obj gbm.lib gbmerr.lib gbmtrunc.lib gbmht.lib gbmhist.lib gbmmcut.lib
248 ilink $(LFLAGS_EXE) /OUT:$@ $**
249
250gbmbpp.obj: gbmbpp.c gbm.h gbmerr.h gbmtrunc.h gbmht.h gbmhist.h gbmmcut.h
251
252#
253
254gbmcpal.exe: gbmcpal.obj gbm.lib gbmhist.lib gbmmcut.lib
255 ilink $(LFLAGS_EXE) /OUT:$@ $**
256
257gbmcpal.obj: gbmcpal.c gbm.h gbmhist.h gbmmcut.h
258
259#
260
261gbmgamma.exe: gbmgamma.obj gbm.lib
262 ilink $(LFLAGS_EXE) /OUT:$@ $**
263
264gbmgamma.obj: gbmgamma.c gbm.h
265
266#
267
268clean:
269 -del *.obj 2> nul
270
271#
272
273IDIR = d:\gbm
274
275install:
276 copy *.exe $(IDIR)
277 copy *.dll $(IDIR)
278
279#
280
281package:
282 zip -q gbmos2 gbm.htm gbm.h gbm.lib gbm.dll *.exe
Note: See TracBrowser for help on using the repository browser.