123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171 |
- # Makefile for libpng
- # 16-bit Borland C++ (Note: All modules are compiled in C mode)
- # To build the library, do:
- # "make -fmakefile.bor -DMODEL=c"
- # or: "make -fmakefile.bor -DMODEL=l"
- #
- # ------------ Borland C++ ------------
- ### Absolutely necessary for this makefile to work
- .AUTODEPEND
- ## Where zlib.h, zconf.h and zlib_MODEL.lib are
- ZLIB_DIR=..\zlib
- ## Compiler, linker, librarian and other tools
- CC=bcc
- LD=bcc
- LIB=tlib
- CP=copy
- !ifndef MODEL
- MODEL=l
- !endif
- MODEL_ARG=-m$(MODEL)
- #TARGET_CPU=3
- # 2 = 286, 3 = 386, etc.
- !ifndef TARGET_CPU
- TARGET_CPU=2
- !endif
- # Use this if you don't want Borland's fancy exception handling
- # (for Borland C++ 4.0 or later)
- #NOEHLIB=noeh$(MODEL).lib
- !ifdef DEBUG
- CDEBUG=-v
- LDEBUG=-v
- !else
- CDEBUG=
- LDEBUG=
- !endif
- # STACKOFLOW=1
- !ifdef STACKOFLOW
- CDEBUG=$(CDEBUG) -N
- LDEBUG=$(LDEBUG) -N
- !endif
- # -X- turn on dependency generation in the object file
- # -w set all warnings on
- # -O2 optimize for speed
- # -Z global optimization
- CPPFLAGS=-I$(ZLIB_DIR)
- CFLAGS=-O2 -Z -X- -w -$(TARGET_CPU) $(MODEL_ARG) $(CDEBUG)
- # -M generate map file
- LDFLAGS=-M -L$(ZLIB_DIR) $(MODEL_ARG) $(LDEBUG)
- # Pre-built configuration
- # See scripts\pnglibconf.mak for more options
- !ifndef PNGLIBCONF_H_PREBUILT
- PNGLIBCONF_H_PREBUILT = scripts\pnglibconf.h.prebuilt
- !endif
- ## 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$(MODEL).lib
- ## Implicit rules
- # Braces let make "batch" calls to the compiler,
- # 2 calls instead of 12; space is important.
- .c.obj:
- $(CC) $(CPPFLAGS) $(CFLAGS) -c {$*.c }
- .c.exe:
- $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $*.c \
- $(LIBNAME) zlib_$(MODEL).lib $(NOEHLIB)
- ## Major targets
- all: libpng pngtest
- # try !include scripts\pnglibconf.mak for more options
- pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
- $(CP) $(PNGLIBCONF_H_PREBUILT) $@
- libpng: $(LIBNAME)
- pngtest: pngtest$(MODEL).exe
- test: pngtest$(MODEL).exe
- pngtest$(MODEL)
- ## Minor Targets
- png.obj: png.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngerror.obj: pngerror.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngget.obj: pngget.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngmem.obj: pngmem.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngpread.obj: pngpread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngread.obj: pngread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngrio.obj: pngrio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngrtran.obj: pngrtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngrutil.obj: pngrutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngset.obj: pngset.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngtrans.obj: pngtrans.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngwio.obj: pngwio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngwrite.obj: pngwrite.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngwtran.obj: pngwtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- pngwutil.obj: pngwutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
- $(LIBNAME): $(OBJS)
- -del $(LIBNAME)
- $(LIB) $(LIBNAME) @&&|
- $(LIBOBJS), libpng$(MODEL)
- |
- pngtest$(MODEL).obj: pngtest.c png.h pngconf.h pnglibconf.h
- $(CC) $(CFLAGS) -opngtest$(MODEL) -c pngtest.c
- pngtest$(MODEL).exe: pngtest$(MODEL).obj
- $(LD) $(LDFLAGS) pngtest$(MODEL).obj $(LIBNAME) zlib_$(MODEL).lib $(NOEHLIB)
- # Clean up anything else you want
- clean:
- -del pnglibconf.h
- -del *.obj
- -del *.exe
- -del *.lib
- -del *.lst
- -del *.map
- # End of makefile for libpng
|