home *** CD-ROM | disk | FTP | other *** search
/ Fractal Frenzy 1 / WalnutCreekFractalFrenzy-1.iso / pc / viewers / x11 / xv221.tz / xv221 / xv-2.21 / jpeg / Makefile < prev    next >
Makefile  |  1992-03-19  |  7KB  |  169 lines

  1. # Makefile for Independent JPEG Group's software
  2.  
  3. # This makefile is suitable for Unix-like systems with non-ANSI compilers.
  4. # If you have an ANSI compiler, makefile.ansi is a better starting point.
  5.  
  6. # Read SETUP instructions before saying "make" !!
  7.  
  8. # The name of your C compiler:  (passed in from the XV makefile)
  9. # CC= cc
  10.  
  11. # You may need to adjust these cc options:
  12. CFLAGS= -O
  13.  
  14. # In particular:
  15. #   Add -DBSD if on a pure BSD system (see jinclude.h).
  16. #   Add -DVMS if on a VMS system (see ansi2knr.c).
  17. #   Add -DMSDOS if on an MSDOS system (see ansi2knr.c).
  18. #   Add -DMEM_STATS to enable gathering of memory usage statistics.
  19. #   You may also want to add -DTWO_FILE_COMMANDLINE or -D switches for other
  20. #   symbols listed in jconfig.h, if you prefer not to change jconfig.h.
  21.  
  22. # Link-time cc options:
  23. LDFLAGS= 
  24.  
  25. # To link any special libraries, add the necessary -l commands here.
  26. # In particular, on some versions of HP-UX (and probably other SysV-derived
  27. # systems) there is a faster alternate malloc(3) library that you can use
  28. # by adding "-lmalloc" to this line.
  29. LDLIBS= 
  30.  
  31. # miscellaneous OS-dependent stuff
  32. # linker
  33. LN= $(CC)
  34. # file deletion command
  35. RM= rm -f
  36. # library (.a) file creation command
  37. AR= ar rc
  38. # second step in .a creation (use "touch" if not needed)
  39. AR2= ranlib
  40.  
  41.  
  42. # source files (independently compilable files)
  43. SOURCES= jbsmooth.c jcarith.c jccolor.c jcdeflts.c jcexpand.c jchuff.c \
  44.         jcmain.c jcmaster.c jcmcu.c jcpipe.c jcsample.c jdarith.c jdcolor.c \
  45.         jddeflts.c jdhuff.c jdmain.c jdmaster.c jdmcu.c jdpipe.c jdsample.c \
  46.         jerror.c jquant1.c jquant2.c jfwddct.c jrevdct.c jutils.c jmemmgr.c \
  47.         jrdjfif.c jrdgif.c jrdppm.c jrdrle.c jrdtarga.c jwrjfif.c jwrgif.c \
  48.         jwrppm.c jwrrle.c jwrtarga.c
  49. # virtual source files (not present in distribution file)
  50. VIRTSOURCES= jmemsys.c
  51. # system-dependent implementations of source files
  52. SYSDEPFILES= jmemansi.c jmemname.c jmemnobs.c jmemdos.c jmemdos.h \
  53.         jmemdosa.asm
  54. # files included by source files
  55. INCLUDES= jinclude.h jconfig.h jpegdata.h jversion.h jmemsys.h egetopt.c
  56. # documentation, test, and support files
  57. DOCS= README SETUP USAGE CHANGELOG cjpeg.1 djpeg.1 architecture codingrules
  58. MAKEFILES= makefile.ansi makefile.unix makefile.manx makefile.sas \
  59.         makefile.mc5 makefile.mc6 makcjpeg.lnk makdjpeg.lnk makefile.bcc \
  60.         makcjpeg.lst makdjpeg.lst makefile.pwc makcjpeg.cf makdjpeg.cf \
  61.         makljpeg.cf makefile.mms makefile.vms makvms.opt
  62. OTHERFILES= ansi2knr.c ckconfig.c example.c
  63. TESTFILES= testorig.jpg testimg.ppm testimg.gif testimg.jpg
  64. DISTFILES= $(DOCS) $(MAKEFILES) $(SOURCES) $(SYSDEPFILES) $(INCLUDES) \
  65.         $(OTHERFILES) $(TESTFILES)
  66. # objectfiles common to cjpeg and djpeg
  67. COMOBJECTS= jutils.o jerror.o jmemmgr.o jmemsys.o
  68. # compression objectfiles
  69. CLIBOBJECTS= jcmaster.o jcdeflts.o jcarith.o jccolor.o jcexpand.o jchuff.o \
  70.         jcmcu.o jcpipe.o jcsample.o jfwddct.o jwrjfif.o jrdgif.o jrdppm.o \
  71.         jrdrle.o jrdtarga.o
  72. COBJECTS= jcmain.o $(CLIBOBJECTS) $(COMOBJECTS)
  73. # decompression objectfiles
  74. DLIBOBJECTS= jdmaster.o jddeflts.o jbsmooth.o jdarith.o jdcolor.o jdhuff.o \
  75.         jdmcu.o jdpipe.o jdsample.o jquant1.o jquant2.o jrevdct.o jrdjfif.o \
  76.         jwrgif.o jwrppm.o jwrrle.o jwrtarga.o
  77. DOBJECTS= jdmain.o $(DLIBOBJECTS) $(COMOBJECTS)
  78. # These objectfiles are included in libjpeg.a
  79. LIBOBJECTS= $(CLIBOBJECTS) $(DLIBOBJECTS) $(COMOBJECTS)
  80.  
  81.  
  82. all: ansi2knr cjpeg djpeg
  83. # By default, libjpeg.a is not built unless you explicitly request it.
  84. # You can add libjpeg.a to the line above if you want it built by default.
  85.  
  86.  
  87. # This rule causes ansi2knr to be invoked.  If you use this makefile,
  88. # make sure PROTO is not defined by jconfig.h.
  89.  
  90. .c.o:
  91.     ./ansi2knr $*.c tmpansi.c
  92.     $(CC) $(CFLAGS) -c tmpansi.c
  93.     mv tmpansi.o $*.o
  94.     $(RM) tmpansi.c
  95.  
  96. ansi2knr: ansi2knr.c
  97.     $(CC) $(CFLAGS) -o ansi2knr ansi2knr.c
  98.  
  99.  
  100. cjpeg: ansi2knr $(COBJECTS)
  101.     $(LN) $(LDFLAGS) -o cjpeg $(COBJECTS) $(LDLIBS)
  102.  
  103. djpeg: ansi2knr $(DOBJECTS)
  104.     $(LN) $(LDFLAGS) -o djpeg $(DOBJECTS) $(LDLIBS)
  105.  
  106. # libjpeg.a is useful if you are including the JPEG software in a larger
  107. # program; you'd include it in your link, rather than the individual modules.
  108. libjpeg.a: ansi2knr $(LIBOBJECTS)
  109.     $(RM) libjpeg.a
  110.     $(AR) libjpeg.a  $(LIBOBJECTS)
  111.     $(AR2) libjpeg.a
  112.  
  113. clean:
  114.     $(RM) *.o cjpeg djpeg libjpeg.a ansi2knr core tmpansi.* testout.*
  115.  
  116. distribute:
  117.     $(RM) jpegsrc.tar*
  118.     tar cvf jpegsrc.tar $(DISTFILES)
  119.     compress -v jpegsrc.tar
  120.  
  121. test: cjpeg djpeg
  122.     $(RM) testout.ppm testout.gif testout.jpg
  123.     ./djpeg testorig.jpg >testout.ppm
  124.     ./djpeg -G testorig.jpg >testout.gif
  125.     ./cjpeg testimg.ppm >testout.jpg
  126.     cmp testimg.ppm testout.ppm
  127.     cmp testimg.gif testout.gif
  128.     cmp testimg.jpg testout.jpg
  129.  
  130.  
  131. jbsmooth.o : jbsmooth.c jinclude.h jconfig.h jpegdata.h 
  132. jcarith.o : jcarith.c jinclude.h jconfig.h jpegdata.h 
  133. jccolor.o : jccolor.c jinclude.h jconfig.h jpegdata.h 
  134. jcdeflts.o : jcdeflts.c jinclude.h jconfig.h jpegdata.h 
  135. jcexpand.o : jcexpand.c jinclude.h jconfig.h jpegdata.h 
  136. jchuff.o : jchuff.c jinclude.h jconfig.h jpegdata.h 
  137. jcmain.o : jcmain.c jinclude.h jconfig.h jpegdata.h jversion.h egetopt.c 
  138. jcmaster.o : jcmaster.c jinclude.h jconfig.h jpegdata.h 
  139. jcmcu.o : jcmcu.c jinclude.h jconfig.h jpegdata.h 
  140. jcpipe.o : jcpipe.c jinclude.h jconfig.h jpegdata.h 
  141. jcsample.o : jcsample.c jinclude.h jconfig.h jpegdata.h 
  142. jdarith.o : jdarith.c jinclude.h jconfig.h jpegdata.h 
  143. jdcolor.o : jdcolor.c jinclude.h jconfig.h jpegdata.h 
  144. jddeflts.o : jddeflts.c jinclude.h jconfig.h jpegdata.h 
  145. jdhuff.o : jdhuff.c jinclude.h jconfig.h jpegdata.h 
  146. jdmain.o : jdmain.c jinclude.h jconfig.h jpegdata.h jversion.h egetopt.c 
  147. jdmaster.o : jdmaster.c jinclude.h jconfig.h jpegdata.h 
  148. jdmcu.o : jdmcu.c jinclude.h jconfig.h jpegdata.h 
  149. jdpipe.o : jdpipe.c jinclude.h jconfig.h jpegdata.h 
  150. jdsample.o : jdsample.c jinclude.h jconfig.h jpegdata.h 
  151. jerror.o : jerror.c jinclude.h jconfig.h jpegdata.h 
  152. jquant1.o : jquant1.c jinclude.h jconfig.h jpegdata.h 
  153. jquant2.o : jquant2.c jinclude.h jconfig.h jpegdata.h 
  154. jfwddct.o : jfwddct.c jinclude.h jconfig.h jpegdata.h 
  155. jrevdct.o : jrevdct.c jinclude.h jconfig.h jpegdata.h 
  156. jutils.o : jutils.c jinclude.h jconfig.h jpegdata.h 
  157. jmemmgr.o : jmemmgr.c jinclude.h jconfig.h jpegdata.h jmemsys.h 
  158. jrdjfif.o : jrdjfif.c jinclude.h jconfig.h jpegdata.h 
  159. jrdgif.o : jrdgif.c jinclude.h jconfig.h jpegdata.h 
  160. jrdppm.o : jrdppm.c jinclude.h jconfig.h jpegdata.h 
  161. jrdrle.o : jrdrle.c jinclude.h jconfig.h jpegdata.h 
  162. jrdtarga.o : jrdtarga.c jinclude.h jconfig.h jpegdata.h 
  163. jwrjfif.o : jwrjfif.c jinclude.h jconfig.h jpegdata.h 
  164. jwrgif.o : jwrgif.c jinclude.h jconfig.h jpegdata.h 
  165. jwrppm.o : jwrppm.c jinclude.h jconfig.h jpegdata.h 
  166. jwrrle.o : jwrrle.c jinclude.h jconfig.h jpegdata.h 
  167. jwrtarga.o : jwrtarga.c jinclude.h jconfig.h jpegdata.h 
  168. jmemsys.o : jmemsys.c jinclude.h jconfig.h jpegdata.h jmemsys.h 
  169.