]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/libpng/lib/contrib/scripts/makefile.bor
update
[l4.git] / l4 / pkg / libpng / lib / contrib / scripts / makefile.bor
1 # Makefile for libpng
2 # 16-bit Borland C++ (Note: All modules are compiled in C mode)
3 # To build the library, do:
4 #       "make -fmakefile.bor -DMODEL=c"
5 # or:   "make -fmakefile.bor -DMODEL=l"
6 #
7 # ------------ Borland C++ ------------
8
9 ### Absolutely necessary for this makefile to work
10 .AUTODEPEND
11
12 ## Where zlib.h, zconf.h and zlib_MODEL.lib are
13 ZLIB_DIR=..\zlib
14
15 ## Compiler, linker, librarian and other tools
16 CC=bcc
17 LD=bcc
18 LIB=tlib
19 CP=copy
20
21 !ifndef MODEL
22 MODEL=l
23 !endif
24
25 MODEL_ARG=-m$(MODEL)
26
27 #TARGET_CPU=3
28 # 2 = 286, 3 = 386, etc.
29 !ifndef TARGET_CPU
30 TARGET_CPU=2
31 !endif
32
33 # Use this if you don't want Borland's fancy exception handling
34 # (for Borland C++ 4.0 or later)
35 #NOEHLIB=noeh$(MODEL).lib
36
37 !ifdef DEBUG
38 CDEBUG=-v
39 LDEBUG=-v
40 !else
41 CDEBUG=
42 LDEBUG=
43 !endif
44
45 # STACKOFLOW=1
46 !ifdef STACKOFLOW
47 CDEBUG=$(CDEBUG) -N
48 LDEBUG=$(LDEBUG) -N
49 !endif
50
51 # -X- turn on dependency generation in the object file
52 # -w  set all warnings on
53 # -O2 optimize for speed
54 # -Z  global optimization
55 CPPFLAGS=-I$(ZLIB_DIR)
56 CFLAGS=-O2 -Z -X- -w -$(TARGET_CPU) $(MODEL_ARG) $(CDEBUG)
57
58 # -M  generate map file
59 LDFLAGS=-M -L$(ZLIB_DIR) $(MODEL_ARG) $(LDEBUG)
60
61 # Pre-built configuration
62 # See scripts/pnglibconf.mak for more options
63 PNGLIBCONF_H_PREBUILT = scripts/pnglibconf.h.prebuilt
64
65 ## Variables
66
67 OBJS = \
68         png.obj \
69         pngerror.obj \
70         pngget.obj \
71         pngmem.obj \
72         pngpread.obj \
73         pngread.obj \
74         pngrio.obj \
75         pngrtran.obj \
76         pngrutil.obj \
77         pngset.obj \
78         pngtrans.obj \
79         pngwio.obj \
80         pngwrite.obj \
81         pngwtran.obj \
82         pngwutil.obj
83
84 LIBOBJS = \
85         +png.obj \
86         +pngerror.obj \
87         +pngget.obj \
88         +pngmem.obj \
89         +pngpread.obj \
90         +pngread.obj \
91         +pngrio.obj \
92         +pngrtran.obj \
93         +pngrutil.obj \
94         +pngset.obj \
95         +pngtrans.obj \
96         +pngwio.obj \
97         +pngwrite.obj \
98         +pngwtran.obj \
99         +pngwutil.obj
100
101 LIBNAME=libpng$(MODEL).lib
102
103 ## Implicit rules
104
105 # Braces let make "batch" calls to the compiler,
106 # 2 calls instead of 12; space is important.
107 .c.obj:
108         $(CC) $(CPPFLAGS) $(CFLAGS) -c {$*.c }
109
110 .c.exe:
111         $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $*.c \
112           $(LIBNAME) zlib_$(MODEL).lib $(NOEHLIB)
113
114 ## Major targets
115
116 all: libpng pngtest
117
118 # try !include scripts\pnglibconf.mak for more options
119 pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
120         $(CP) $< $@
121
122 libpng: $(LIBNAME)
123
124 pngtest: pngtest$(MODEL).exe
125
126 test: pngtest$(MODEL).exe
127         pngtest$(MODEL)
128
129 ## Minor Targets
130
131 png.obj: png.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
132 pngerror.obj: pngerror.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
133 pngget.obj: pngget.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
134 pngmem.obj: pngmem.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
135 pngpread.obj: pngpread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
136 pngread.obj: pngread.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
137 pngrio.obj: pngrio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
138 pngrtran.obj: pngrtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
139 pngrutil.obj: pngrutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
140 pngset.obj: pngset.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
141 pngtrans.obj: pngtrans.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
142 pngwio.obj: pngwio.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
143 pngwrite.obj: pngwrite.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
144 pngwtran.obj: pngwtran.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
145 pngwutil.obj: pngwutil.c png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
146
147 $(LIBNAME): $(OBJS)
148         -del $(LIBNAME)
149         $(LIB) $(LIBNAME) @&&|
150 $(LIBOBJS), libpng$(MODEL)
151 |
152
153 pngtest$(MODEL).obj: pngtest.c png.h pngconf.h pnglibconf.h
154         $(CC) $(CFLAGS) -opngtest$(MODEL) -c pngtest.c
155
156 pngtest$(MODEL).exe: pngtest$(MODEL).obj
157         $(LD) $(LDFLAGS) pngtest$(MODEL).obj $(LIBNAME) zlib_$(MODEL).lib $(NOEHLIB)
158
159 # Clean up anything else you want
160 clean:
161         -del pnglibconf.h
162         -del *.obj
163         -del *.exe
164         -del *.lib
165         -del *.lst
166         -del *.map
167
168 # End of makefile for libpng