1
# Makefile for Independent JPEG Group's software
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.
8
# Read installation instructions before saying "nmake" !!
9
# To build an optimized library without debug info, say "nmake nodebug=1".
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.
14
SYSDEPMEM= $D\jmemnobs.obj
16
# miscellaneous OS-dependent stuff
17
# file deletion command
22
# End of configurable options.
24
# source files: JPEG library proper
25
LIBSOURCES= jcapimin.c \
71
# memmgr back ends: compile only one of these into a working library
72
SYSDEPSOURCES= jmemansi.c jmemname.c jmemnobs.c jmemdos.c jmemmac.c
74
# source files: cjpeg/djpeg/jpegtran applications, also rdjpgcom/wrjpgcom
75
APPSOURCES= 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
79
SOURCES= $(LIBSOURCES) $(SYSDEPSOURCES) $(APPSOURCES)
81
# files included by source files
82
INCLUDES= 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
85
# documentation, test, and support files
86
DOCS= 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
90
MKFILES= 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 \
96
CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
97
jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
100
CONFIGUREFILES= config.guess config.sub install-sh ltconfig ltmain.sh
101
OTHERFILES= jconfig.doc ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm
102
TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
104
DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
105
$(CONFIGUREFILES) $(OTHERFILES) $(TESTFILES)
107
# library object files common to compression and decompression
108
COMOBJECTS= $D\jcomapi.obj $D\jutils.obj $D\jerror.obj $D\jmemmgr.obj $(SYSDEPMEM)
110
# compression library object files
111
CLIBOBJECTS= $D\jcapimin.obj \
131
# decompression library object files
132
DLIBOBJECTS= $D\jdapimin.obj \
154
# These objectfiles are included in libjpeg.lib
155
OBJECTS= $(CLIBOBJECTS) $(DLIBOBJECTS) $(COMOBJECTS)
157
# object files for sample applications (excluding library files)
158
COBJECTS= $D\cjpeg.obj \
167
DOBJECTS= $D\djpeg.obj \
176
TROBJECTS= $D\jpegtran.obj \
181
!if "$(FINAL)" == "1"
182
LIBTARGET=..\..\lib\jpeg.lib
183
!else if "$(FINAL)" == "hybrid"
184
LIBTARGET=..\..\lib\jpegh.lib
186
LIBTARGET=..\..\lib\jpegd.lib
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.
195
echo Please use the 'all' target for this makefile.
198
# Pull in standard variable definitions
200
!include ..\makelib.vc