JPEGView/Independent JPEG Group/makefile.ansi

1 line
7.9 KiB
Plaintext
Raw Permalink Normal View History

# Makefile for Independent JPEG Group's software # This makefile is suitable for Unix-like systems with ANSI-capable compilers. # If you have a non-ANSI compiler, makefile.unix is a better starting point. # Read installation instructions before saying "make" !! # The name of your C compiler: CC= cc # You may need to adjust these cc options: CFLAGS= -O # Generally, we recommend defining any configuration symbols in jconfig.h, # NOT via -D switches here. # Link-time cc options: LDFLAGS= # To link any special libraries, add the necessary -l commands here. LDLIBS= # Put here the object file name for the correct system-dependent memory # manager file. For Unix this is usually jmemnobs.o, but you may want # to use jmemansi.o or jmemname.o if you have limited swap space. SYSDEPMEM= jmemnobs.o # miscellaneous OS-dependent stuff # linker LN= $(CC) # file deletion command RM= rm -f # library (.a) file creation command AR= ar rc # second step in .a creation (use "touch" if not needed) AR2= ranlib # End of configurable options. # source files: JPEG library proper LIBSOURCES= jcapi.c jccoefct.c jccolor.c jcdctmgr.c jchuff.c jcmainct.c \ jcmarker.c jcmaster.c jcomapi.c jcparam.c jcprepct.c jcsample.c \ jdapi.c jdatasrc.c jdatadst.c jdcoefct.c jdcolor.c jddctmgr.c \ jdhuff.c jdmainct.c jdmarker.c jdmaster.c jdpostct.c jdsample.c \ jerror.c jutils.c jfdctllm.c jidctllm.c jidctred.c jquant1.c \ jquant2.c jmemmgr.c jmemansi.c jmemname.c jmemnobs.c jmemdos.c # source files: cjpeg/djpeg applications APPSOURCES= cjpeg.c djpeg.c rdppm.c wrppm.c rdgif.c wrgif.c rdtarga.c \ wrtarga.c SOURCES= $(LIBSOURCES) $(APPSOURCES) # files included by source files INCLUDES= jdct.h jerror.h jinclude.h jmemsys.h jmorecfg.h jpegint.h \ jpeglib.h jversion.h cdjpeg.h cderror.h # documentation, test, and support files DOCS= README install.doc usage.doc cjpeg.1 djpeg.1 example.c libjpeg.doc \ structure.doc coderules.doc filelist.doc change.log MAKEFILES= configure makefile.auto makefile.ansi makefile.unix \ makefile.manx makefile.sas makcjpeg.st makdjpeg.st makljpeg.st \ makefile.bcc makefile.mc6 makefile.mms makefile.vms makvms.opt CONFIGFILES= jconfig.auto jconfig.manx jconfig.sas jconfig.st jconfig.bcc \ jconfig.mc6 jconfig.vms OTHERFILES= jconfig.doc ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm TESTFILES= testorig.jpg testimg.ppm testimg.gif testimg.jpg DISTFILES= $(DOCS) $(MAKEFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ $(OTHERFILES) $(TESTFILES) # library object files common to compression and decompression COMOBJECTS= jcomapi.o jutils.o jerror.o jmemmgr.o $(SYSDEPMEM) # compression library object files CLIBOBJECTS= jcapi.o jcparam.o jdatadst.o jcmaster.o jcmarker.o jcmainct.o \ jcprepct.o jccoefct.o jccolor.o jcsample.o jchuff.o jcdctmgr.o \ jfdctllm.o # decompression library object files DLIBOBJECTS= jdapi.o jdatasrc.o jdmaster.o jdmarker.o jdmainct.o jdcoefct.o \ jdpostct.o jddctmgr.o jidctllm.o jidctred.o jdhuff.o jdsample.o \ jdcolor.o jquant1.o jquant2.o # These objectfiles are included in libjpeg.a LIBOBJECTS= $(CLIBOBJECTS) $(DLIBOBJECTS) $(COMOBJECTS) # object files for cjpeg and djpeg applications (excluding library files) COBJECTS= cjpeg.o rdppm.o rdgif.o rdtarga.o DOBJECTS= djpeg.o wrppm.o wrgif.o wrtarga.o all: libjpeg.a cjpeg djpeg libjpeg.a: $(LIBOBJECTS) $(RM) libjpeg.a $(AR) libjpeg.a $(LIBOBJECTS) $(AR2) libjpeg.a cjpeg: $(COBJECTS) libjpeg.a $(LN) $(LDFLAGS) -o cjpeg $(COBJECTS) libjpeg.a $(LDLIBS) djpeg: $(DOBJECTS) libjpeg.a $(LN) $(LDFLAGS) -o djpeg $(DOBJECTS) libjpeg.a $(LDLIBS) jconfig.h: jconfig.doc echo You must prepare a system-dependent jconfig.h file. echo Please read the installation directions in install.doc. exit 1 clean: $(RM) *.o cjpeg djpeg libjpeg.a core testout.* distribute: $(RM) jpegsrc.tar* tar cvf jpegsrc.tar $(DISTFILES) compress -v jpegsrc.tar test: cjpeg djpeg $(RM) testout.ppm testout.gif testout.jpg ./djpeg -outfile testout.ppm testorig.jpg