- # Makefile for libpng
- # 32-bit Borland C++ (Note: All modules are compiled in C mode)
- # To build the library, do:
- # "make -fmakefile.bc32"
- #
- # -------------------- 32-bit Borland C++ --------------------
- ### Absolutely necessary for this makefile to work
- .AUTODEPEND
- ## Where zlib.h, zconf.h and zlib.lib are
- ZLIB_DIR=..zlib
- ## Compiler, linker and lib stuff
- CC=bcc32
- LD=bcc32
- LIB=tlib
- # -3 = 386, -4 = 486, -5 = Pentium etc.
- !ifndef TARGET_CPU
- #TARGET_CPU=-6
- !endif
- # Use this if you don't want Borland's fancy exception handling
- # (Caution: doesn't work with CBuilderX)
- #NOEHLIB=noeh32.lib
- !ifdef DEBUG
- CDEBUG=-v
- LDEBUG=-v
- !else
- CDEBUG=
- LDEBUG=
- !endif
- # STACKOFLOW=1
- !ifdef STACKOFLOW
- CDEBUG=$(CDEBUG) -N
- LDEBUG=$(LDEBUG) -N
- !endif
- # -O2 optimize for speed
- # -d merge duplicate strings
- # -k- turn off standard stack frame
- # -w display all warnings
- CFLAGS=-I$(ZLIB_DIR) -O2 -d -k- -w $(TARGET_CPU) $(CDEBUG)
- # -M generate map file
- LDFLAGS=-L$(ZLIB_DIR) -M $(LDEBUG)
- ## Variables
- OBJS =
- png.obj
- pngerror.obj
- pngget.obj
- pngmem.obj
- pngpread.obj
- pngread.obj
- pngrio.obj
- pngrtran.obj
- pngrutil.obj
- pngset.obj
- pngtrans.obj
- pngwio.obj
- pngwrite.obj
- pngwtran.obj
- pngwutil.obj
- LIBOBJS =
- +png.obj
- +pngerror.obj
- +pngget.obj
- +pngmem.obj
- +pngpread.obj
- +pngread.obj
- +pngrio.obj
- +pngrtran.obj
- +pngrutil.obj
- +pngset.obj
- +pngtrans.obj
- +pngwio.obj
- +pngwrite.obj
- +pngwtran.obj
- +pngwutil.obj
- LIBNAME=libpng.lib
- ## Implicit rules
- # Braces let make "batch" calls to the compiler,
- # 2 calls instead of 12; space is important.
- .c.obj:
- $(CC) $(CFLAGS) -c {$*.c }
- .c.exe:
- $(CC) $(CFLAGS) $(LDFLAGS) $*.c $(LIBNAME) zlib.lib $(NOEHLIB)
- .obj.exe:
- $(LD) $(LDFLAGS) $*.obj $(LIBNAME) zlib.lib $(NOEHLIB)
- ## Major targets
- all: libpng pngtest
- libpng: $(LIBNAME)
- pngtest: pngtest.exe
- test: pngtest.exe
- pngtest
- ## Minor Targets
- png.obj: png.c
- pngerror.obj: pngerror.c
- pngget.obj: pngget.c
- pngmem.obj: pngmem.c
- pngpread.obj: pngpread.c
- pngread.obj: pngread.c
- pngrio.obj: pngrio.c
- pngrtran.obj: pngrtran.c
- pngrutil.obj: pngrutil.c
- pngset.obj: pngset.c
- pngtrans.obj: pngtrans.c
- pngwio.obj: pngwio.c
- pngwrite.obj: pngwrite.c
- pngwtran.obj: pngwtran.c
- pngwutil.obj: pngwutil.c
- $(LIBNAME): $(OBJS)
- -del $(LIBNAME)
- $(LIB) $(LIBNAME) @&&|
- $(LIBOBJS), libpng
- |
- # Cleanup
- clean:
- -del *.obj
- -del $(LIBNAME)
- -del pngtest.exe
- -del *.lst
- -del *.map
- -del *.tds
- -del pngout.png
- # End of makefile for libpng