You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
162 lines
2.9 KiB
162 lines
2.9 KiB
# 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 and lib stuff |
|
CC=bcc |
|
LD=bcc |
|
LIB=tlib |
|
|
|
!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 |
|
CFLAGS=-O2 -Z -X- -w -I$(ZLIB_DIR) -$(TARGET_CPU) $(MODEL_ARG) $(CDEBUG) |
|
|
|
# -M generate map file |
|
LDFLAGS=-M -L$(ZLIB_DIR) $(MODEL_ARG) $(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$(MODEL).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_$(MODEL).lib $(NOEHLIB) |
|
|
|
|
|
## Major targets |
|
all: libpng pngtest |
|
|
|
libpng: $(LIBNAME) |
|
|
|
pngtest: pngtest$(MODEL).exe |
|
|
|
test: pngtest$(MODEL).exe |
|
pngtest$(MODEL) |
|
|
|
|
|
## 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$(MODEL) |
|
| |
|
|
|
|
|
pngtest$(MODEL).obj: pngtest.c |
|
$(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 *.obj |
|
-del *.exe |
|
-del *.lib |
|
-del *.lst |
|
-del *.map |
|
|
|
|
|
# End of makefile for libpng
|
|
|