blob: eee9f217b66ae65e1cfeba62abb286d57e520bac [file] [log] [blame]
# Makefile for Independent JPEG Group's software
# This makefile is for Microsoft C for MS-DOS, version 5.x.
# See README and edit jconfig.h before saying "make" !!
# Microsoft's brain-damaged version of make uses nonstandard syntax (a blank
# line is needed to terminate a command list) and it simply scans the rules
# in order, rather than doing a true dependency-tree walk. Furthermore,
# expanded command lines can't exceed 128 chars (this is a DOS bug, not
# make's fault); so we can't just name all the objectfiles in the link steps.
# Instead we shove each objectfile into a library as it is made, and link
# from the library. The objectfiles are also kept separately as timestamps.
# You may need to adjust these cc options:
CFLAGS= /AS /I. /W3 /Oail /Gs /DMEM_STATS # NB: /Gs turns off stack oflo checks
LDFLAGS= /Fm /F 2000 # /F hhhh sets stack size (in hex)
# In particular:
# Add /DMSDOS if your compiler doesn't automatically #define MSDOS.
# Add /DHAVE_GETOPT if your library includes getopt(3) (see jcmain.c, jdmain.c).
# /DMEM_STATS is optional -- it enables gathering of memory usage statistics.
# compression objectfiles
COBJECTS = jcmain.obj jcmaster.obj jcdeflts.obj jcarith.obj jccolor.obj jcexpand.obj \
jchuff.obj jcmcu.obj jcpipe.obj jcsample.obj jfwddct.obj \
jrdgif.obj jrdppm.obj jwrjfif.obj \
jutils.obj jvirtmem.obj jerror.obj
# decompression objectfiles
DOBJECTS = jdmain.obj jdmaster.obj jbsmooth.obj jdarith.obj jdcolor.obj jdhuff.obj \
jdmcu.obj jdpipe.obj jdsample.obj jquant1.obj jquant2.obj jrevdct.obj \
jrdjfif.obj jwrgif.obj jwrppm.obj \
jutils.obj jvirtmem.obj jerror.obj
# inference rule used for all compilations except jcmain.c, jdmain.c
# notice that objectfile is also inserted into libjpeg.lib
.c.obj:
cl $(CFLAGS) /c $*.c
lib libjpeg -+$*.obj;
# these two objectfiles are not inserted into libjpeg
# because they have duplicate global symbol names (notably main()).
jcmain.obj: jcmain.c jinclude.h jconfig.h jpegdata.h egetopt.c
cl $(CFLAGS) /c $*.c
jdmain.obj: jdmain.c jinclude.h jconfig.h jpegdata.h egetopt.c
cl $(CFLAGS) /c $*.c
jbsmooth.obj: jbsmooth.c jinclude.h jconfig.h jpegdata.h
jcarith.obj: jcarith.c jinclude.h jconfig.h jpegdata.h
jccolor.obj: jccolor.c jinclude.h jconfig.h jpegdata.h
jcdeflts.obj: jcdeflts.c jinclude.h jconfig.h jpegdata.h
jcexpand.obj: jcexpand.c jinclude.h jconfig.h jpegdata.h
jchuff.obj: jchuff.c jinclude.h jconfig.h jpegdata.h
jcmaster.obj: jcmaster.c jinclude.h jconfig.h jpegdata.h
jcmcu.obj: jcmcu.c jinclude.h jconfig.h jpegdata.h
jcpipe.obj: jcpipe.c jinclude.h jconfig.h jpegdata.h
jcsample.obj: jcsample.c jinclude.h jconfig.h jpegdata.h
jdarith.obj: jdarith.c jinclude.h jconfig.h jpegdata.h
jdcolor.obj: jdcolor.c jinclude.h jconfig.h jpegdata.h
jdhuff.obj: jdhuff.c jinclude.h jconfig.h jpegdata.h
jdmaster.obj: jdmaster.c jinclude.h jconfig.h jpegdata.h
jdmcu.obj: jdmcu.c jinclude.h jconfig.h jpegdata.h
jdpipe.obj: jdpipe.c jinclude.h jconfig.h jpegdata.h
jdsample.obj: jdsample.c jinclude.h jconfig.h jpegdata.h
jerror.obj: jerror.c jinclude.h jconfig.h jpegdata.h
jfwddct.obj: jfwddct.c jinclude.h jconfig.h jpegdata.h
jquant1.obj: jquant1.c jinclude.h jconfig.h jpegdata.h
jquant2.obj: jquant2.c jinclude.h jconfig.h jpegdata.h
jrdjfif.obj: jrdjfif.c jinclude.h jconfig.h jpegdata.h
jrdgif.obj: jrdgif.c jinclude.h jconfig.h jpegdata.h
jrdppm.obj: jrdppm.c jinclude.h jconfig.h jpegdata.h
jrevdct.obj: jrevdct.c jinclude.h jconfig.h jpegdata.h
jutils.obj: jutils.c jinclude.h jconfig.h jpegdata.h
jvirtmem.obj: jvirtmem.c jinclude.h jconfig.h jpegdata.h
jwrjfif.obj: jwrjfif.c jinclude.h jconfig.h jpegdata.h
jwrgif.obj: jwrgif.c jinclude.h jconfig.h jpegdata.h
jwrppm.obj: jwrppm.c jinclude.h jconfig.h jpegdata.h
cjpeg.exe: $(COBJECTS)
cl /Fecjpeg.exe jcmain.obj libjpeg.lib $(LDFLAGS)
djpeg.exe: $(DOBJECTS)
cl /Fedjpeg.exe jdmain.obj libjpeg.lib $(LDFLAGS)