# Makefile for Independent JPEG Group's software # This makefile is for Microsoft Visual C++ on Windows NT (and 95?). # It builds the IJG library as a statically linkable library (.LIB), # and builds the sample applications as console-mode apps. # Thanks to Xingong Chang, Raymond Everly and others. # Read installation instructions before saying "nmake" !! # To build an optimized library without debug info, say "nmake nodebug=1". # Put here the object file name for the correct system-dependent memory # manager file. For NT we suggest jmemnobs.obj, which expects the OS to # provide adequate virtual memory. SYSDEPMEM= $D\jmemnobs.obj # miscellaneous OS-dependent stuff # file deletion command !if "$(RM)" == "" RM= erase !endif # End of configurable options. # source files: JPEG library proper LIBSOURCES= jcapimin.c \ jcapistd.c \ jccoefct.c \ jccolor.c \ jcdctmgr.c \ jchuff.c \ jcinit.c \ jcmainct.c \ jcmarker.c \ jcmaster.c \ jcomapi.c \ jcparam.c \ jcphuff.c \ jcprepct.c \ jcsample.c \ jctrans.c \ jdapimin.c \ jdapistd.c \ jdatadst.c \ jdatasrc.c \ jdcoefct.c \ jdcolor.c \ jddctmgr.c \ jdhuff.c \ jdinput.c \ jdmainct.c \ jdmarker.c \ jdmaster.c \ jdmerge.c \ jdphuff.c \ jdpostct.c \ jdsample.c \ jdtrans.c \ jerror.c \ jfdctflt.c \ jfdctfst.c \ jfdctint.c \ jidctflt.c \ jidctfst.c \ jidctint.c \ jidctred.c \ jquant1.c \ jquant2.c \ jutils.c \ jmemmgr.c # memmgr back ends: compile only one of these into a working library SYSDEPSOURCES= jmemansi.c jmemname.c jmemnobs.c jmemdos.c jmemmac.c # source files: cjpeg/djpeg/jpegtran applications, also rdjpgcom/wrjpgcom APPSOURCES= cjpeg.c djpeg.c jpegtran.c rdjpgcom.c wrjpgcom.c cdjpeg.c \ rdcolmap.c rdswitch.c transupp.c rdppm.c wrppm.c rdgif.c wrgif.c \ rdtarga.c wrtarga.c rdbmp.c wrbmp.c rdrle.c wrrle.c SOURCES= $(LIBSOURCES) $(SYSDEPSOURCES) $(APPSOURCES) # files included by source files INCLUDES= jchuff.h jdhuff.h jdct.h jerror.h jinclude.h jmemsys.h jmorecfg.h \ jpegint.h jpeglib.h jversion.h cdjpeg.h cderror.h transupp.h # documentation, test, and support files DOCS= README install.doc usage.doc cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 \ wrjpgcom.1 wizard.doc example.c libjpeg.doc structure.doc \ coderules.doc filelist.doc change.log MKFILES= configure makefile.cfg makefile.ansi makefile.unix makefile.bcc \ makefile.mc6 makefile.dj makefile.wat makefile.vc makelib.ds \ makeapps.ds makeproj.mac makcjpeg.st makdjpeg.st makljpeg.st \ maktjpeg.st makefile.manx makefile.sas makefile.mms makefile.vms \ makvms.opt CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ jconfig.vms CONFIGUREFILES= config.guess config.sub install-sh ltconfig ltmain.sh OTHERFILES= jconfig.doc ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ testimgp.jpg DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ $(CONFIGUREFILES) $(OTHERFILES) $(TESTFILES) # library object files common to compression and decompression COMOBJECTS= $D\jcomapi.obj $D\jutils.obj $D\jerror.obj $D\jmemmgr.obj $(SYSDEPMEM) # compression library object files CLIBOBJECTS= $D\jcapimin.obj \ $D\jcapistd.obj \ $D\jctrans.obj \ $D\jcparam.obj \ $D\jdatadst.obj \ $D\jcinit.obj \ $D\jcmaster.obj \ $D\jcmarker.obj \ $D\jcmainct.obj \ $D\jcprepct.obj \ $D\jccoefct.obj \ $D\jccolor.obj \ $D\jcsample.obj \ $D\jchuff.obj \ $D\jcphuff.obj \ $D\jcdctmgr.obj \ $D\jfdctfst.obj \ $D\jfdctflt.obj \ $D\jfdctint.obj # decompression library object files DLIBOBJECTS= $D\jdapimin.obj \ $D\jdapistd.obj \ $D\jdtrans.obj \ $D\jdatasrc.obj \ $D\jdmaster.obj \ $D\jdinput.obj \ $D\jdmarker.obj \ $D\jdhuff.obj \ $D\jdphuff.obj \ $D\jdmainct.obj \ $D\jdcoefct.obj \ $D\jdpostct.obj \ $D\jddctmgr.obj \ $D\jidctfst.obj \ $D\jidctflt.obj \ $D\jidctint.obj \ $D\jidctred.obj \ $D\jdsample.obj \ $D\jdcolor.obj \ $D\jquant1.obj \ $D\jquant2.obj \ $D\jdmerge.obj # These objectfiles are included in libjpeg.lib OBJECTS= $(CLIBOBJECTS) $(DLIBOBJECTS) $(COMOBJECTS) # object files for sample applications (excluding library files) COBJECTS= $D\cjpeg.obj \ $D\rdppm.obj \ $D\rdgif.obj \ $D\rdtarga.obj \ $D\rdrle.obj \ $D\rdbmp.obj \ $D\rdswitch.obj \ $D\cdjpeg.obj DOBJECTS= $D\djpeg.obj \ $D\wrppm.obj \ $D\wrgif.obj \ $D\wrtarga.obj \ $D\wrrle.obj \ $D\wrbmp.obj \ $D\rdcolmap.obj \ $D\cdjpeg.obj TROBJECTS= $D\jpegtran.obj \ $D\rdswitch.obj \ $D\cdjpeg.obj \ $D\transupp.obj !if "$(FINAL)" == "1" LIBTARGET=..\..\lib\jpeg.lib !else if "$(FINAL)" == "hybrid" LIBTARGET=..\..\lib\jpegh.lib !else LIBTARGET=..\..\lib\jpegd.lib !endif # Note: we have to put this first, to override the default definition # which doesn't work because there are too many files on the command line. # This means that we must explicitly use the 'all' target when making # jpeg.lib, because of the ordering of targets. defaulttarget: echo Please use the 'all' target for this makefile. # Pull in standard variable definitions !include ..\makelib.vc