1 # Makefile for Independent JPEG Group's software
\r
3 # This makefile is for Microsoft Visual C++ on Windows NT (and 95?).
\r
4 # It builds the IJG library as a statically linkable library (.LIB),
\r
5 # and builds the sample applications as console-mode apps.
\r
6 # Thanks to Xingong Chang, Raymond Everly and others.
\r
8 # Read installation instructions before saying "nmake" !!
\r
9 # To build an optimized library without debug info, say "nmake nodebug=1".
\r
11 # Put here the object file name for the correct system-dependent memory
\r
12 # manager file. For NT we suggest jmemnobs.obj, which expects the OS to
\r
13 # provide adequate virtual memory.
\r
14 SYSDEPMEM= $D\jmemnobs.obj
\r
16 # miscellaneous OS-dependent stuff
\r
17 # file deletion command
\r
22 # End of configurable options.
\r
24 # source files: JPEG library proper
\r
25 LIBSOURCES= jcapimin.c \
\r
71 # memmgr back ends: compile only one of these into a working library
\r
72 SYSDEPSOURCES= jmemansi.c jmemname.c jmemnobs.c jmemdos.c jmemmac.c
\r
74 # source files: cjpeg/djpeg/jpegtran applications, also rdjpgcom/wrjpgcom
\r
75 APPSOURCES= cjpeg.c djpeg.c jpegtran.c rdjpgcom.c wrjpgcom.c cdjpeg.c \
\r
76 rdcolmap.c rdswitch.c transupp.c rdppm.c wrppm.c rdgif.c wrgif.c \
\r
77 rdtarga.c wrtarga.c rdbmp.c wrbmp.c rdrle.c wrrle.c
\r
79 SOURCES= $(LIBSOURCES) $(SYSDEPSOURCES) $(APPSOURCES)
\r
81 # files included by source files
\r
82 INCLUDES= jchuff.h jdhuff.h jdct.h jerror.h jinclude.h jmemsys.h jmorecfg.h \
\r
83 jpegint.h jpeglib.h jversion.h cdjpeg.h cderror.h transupp.h
\r
85 # documentation, test, and support files
\r
86 DOCS= README install.doc usage.doc cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 \
\r
87 wrjpgcom.1 wizard.doc example.c libjpeg.doc structure.doc \
\r
88 coderules.doc filelist.doc change.log
\r
90 MKFILES= configure makefile.cfg makefile.ansi makefile.unix makefile.bcc \
\r
91 makefile.mc6 makefile.dj makefile.wat makefile.vc makelib.ds \
\r
92 makeapps.ds makeproj.mac makcjpeg.st makdjpeg.st makljpeg.st \
\r
93 maktjpeg.st makefile.manx makefile.sas makefile.mms makefile.vms \
\r
96 CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
\r
97 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
\r
100 CONFIGUREFILES= config.guess config.sub install-sh ltconfig ltmain.sh
\r
101 OTHERFILES= jconfig.doc ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm
\r
102 TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
\r
104 DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
\r
105 $(CONFIGUREFILES) $(OTHERFILES) $(TESTFILES)
\r
107 # library object files common to compression and decompression
\r
108 COMOBJECTS= $D\jcomapi.obj $D\jutils.obj $D\jerror.obj $D\jmemmgr.obj $(SYSDEPMEM)
\r
110 # compression library object files
\r
111 CLIBOBJECTS= $D\jcapimin.obj \
\r
131 # decompression library object files
\r
132 DLIBOBJECTS= $D\jdapimin.obj \
\r
154 # These objectfiles are included in libjpeg.lib
\r
155 OBJECTS= $(CLIBOBJECTS) $(DLIBOBJECTS) $(COMOBJECTS)
\r
157 # object files for sample applications (excluding library files)
\r
158 COBJECTS= $D\cjpeg.obj \
\r
167 DOBJECTS= $D\djpeg.obj \
\r
176 TROBJECTS= $D\jpegtran.obj \
\r
181 !if "$(FINAL)" == "1"
\r
182 LIBTARGET=..\..\lib\jpeg.lib
\r
183 !else if "$(FINAL)" == "hybrid"
\r
184 LIBTARGET=..\..\lib\jpegh.lib
\r
186 LIBTARGET=..\..\lib\jpegd.lib
\r
189 # Note: we have to put this first, to override the default definition
\r
190 # which doesn't work because there are too many files on the command line.
\r
191 # This means that we must explicitly use the 'all' target when making
\r
192 # jpeg.lib, because of the ordering of targets.
\r
195 echo Please use the 'all' target for this makefile.
\r
198 # Pull in standard variable definitions
\r
200 !include ..\makelib.vc
\r