xref: /netbsd-src/external/gpl3/binutils.old/dist/zlib/old/os2/Makefile.os2 (revision ede781334f5dc56e6b74c3945d364b5b98850996)
116dce513Schristos# Makefile for zlib under OS/2 using GCC (PGCC)
216dce513Schristos# For conditions of distribution and use, see copyright notice in zlib.h
316dce513Schristos
416dce513Schristos# To compile and test, type:
516dce513Schristos#   cp Makefile.os2 ..
616dce513Schristos#   cd ..
716dce513Schristos#   make -f Makefile.os2 test
816dce513Schristos
916dce513Schristos# This makefile will build a static library z.lib, a shared library
1016dce513Schristos# z.dll and a import library zdll.lib. You can use either z.lib or
1116dce513Schristos# zdll.lib by specifying either -lz or -lzdll on gcc's command line
1216dce513Schristos
1316dce513SchristosCC=gcc -Zomf -s
1416dce513Schristos
1516dce513SchristosCFLAGS=-O6 -Wall
1616dce513Schristos#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
17*ede78133Schristos#CFLAGS=-g -DZLIB_DEBUG
1816dce513Schristos#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
1916dce513Schristos#           -Wstrict-prototypes -Wmissing-prototypes
2016dce513Schristos
2116dce513Schristos#################### BUG WARNING: #####################
2216dce513Schristos## infcodes.c hits a bug in pgcc-1.0, so you have to use either
2316dce513Schristos## -O# where # <= 4 or one of (-fno-ommit-frame-pointer or -fno-force-mem)
2416dce513Schristos## This bug is reportedly fixed in pgcc >1.0, but this was not tested
2516dce513SchristosCFLAGS+=-fno-force-mem
2616dce513Schristos
2716dce513SchristosLDFLAGS=-s -L. -lzdll -Zcrtdll
2816dce513SchristosLDSHARED=$(CC) -s -Zomf -Zdll -Zcrtdll
2916dce513Schristos
3016dce513SchristosVER=1.1.0
3116dce513SchristosZLIB=z.lib
3216dce513SchristosSHAREDLIB=z.dll
3316dce513SchristosSHAREDLIBIMP=zdll.lib
3416dce513SchristosLIBS=$(ZLIB) $(SHAREDLIB) $(SHAREDLIBIMP)
3516dce513Schristos
3616dce513SchristosAR=emxomfar cr
3716dce513SchristosIMPLIB=emximp
3816dce513SchristosRANLIB=echo
3916dce513SchristosTAR=tar
4016dce513SchristosSHELL=bash
4116dce513Schristos
4216dce513Schristosprefix=/usr/local
4316dce513Schristosexec_prefix = $(prefix)
4416dce513Schristos
4516dce513SchristosOBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \
4616dce513Schristos       zutil.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o
4716dce513Schristos
4816dce513SchristosTEST_OBJS = example.o minigzip.o
4916dce513Schristos
5016dce513SchristosDISTFILES = README INDEX ChangeLog configure Make*[a-z0-9] *.[ch] descrip.mms \
5116dce513Schristos  algorithm.txt zlib.3 msdos/Make*[a-z0-9] msdos/zlib.def msdos/zlib.rc \
5216dce513Schristos  nt/Makefile.nt nt/zlib.dnt  contrib/README.contrib contrib/*.txt \
5316dce513Schristos  contrib/asm386/*.asm contrib/asm386/*.c \
5416dce513Schristos  contrib/asm386/*.bat contrib/asm386/zlibvc.d?? contrib/iostream/*.cpp \
5516dce513Schristos  contrib/iostream/*.h  contrib/iostream2/*.h contrib/iostream2/*.cpp \
5616dce513Schristos  contrib/untgz/Makefile contrib/untgz/*.c contrib/untgz/*.w32
5716dce513Schristos
5816dce513Schristosall: example.exe minigzip.exe
5916dce513Schristos
6016dce513Schristostest: all
6116dce513Schristos	@LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \
6216dce513Schristos	echo hello world | ./minigzip | ./minigzip -d || \
6316dce513Schristos	  echo '		*** minigzip test FAILED ***' ; \
6416dce513Schristos	if ./example; then \
6516dce513Schristos	  echo '		*** zlib test OK ***'; \
6616dce513Schristos	else \
6716dce513Schristos	  echo '		*** zlib test FAILED ***'; \
6816dce513Schristos	fi
6916dce513Schristos
7016dce513Schristos$(ZLIB): $(OBJS)
7116dce513Schristos	$(AR) $@ $(OBJS)
7216dce513Schristos	-@ ($(RANLIB) $@ || true) >/dev/null 2>&1
7316dce513Schristos
7416dce513Schristos$(SHAREDLIB): $(OBJS) os2/z.def
7516dce513Schristos	$(LDSHARED) -o $@ $^
7616dce513Schristos
7716dce513Schristos$(SHAREDLIBIMP): os2/z.def
7816dce513Schristos	$(IMPLIB) -o $@ $^
7916dce513Schristos
8016dce513Schristosexample.exe: example.o $(LIBS)
8116dce513Schristos	$(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS)
8216dce513Schristos
8316dce513Schristosminigzip.exe: minigzip.o $(LIBS)
8416dce513Schristos	$(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS)
8516dce513Schristos
8616dce513Schristosclean:
8716dce513Schristos	rm -f *.o *~ example minigzip libz.a libz.so* foo.gz
8816dce513Schristos
8916dce513Schristosdistclean:	clean
9016dce513Schristos
9116dce513Schristoszip:
9216dce513Schristos	mv Makefile Makefile~; cp -p Makefile.in Makefile
9316dce513Schristos	rm -f test.c ztest*.c
9416dce513Schristos	v=`sed -n -e 's/\.//g' -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\
9516dce513Schristos	zip -ul9 zlib$$v $(DISTFILES)
9616dce513Schristos	mv Makefile~ Makefile
9716dce513Schristos
9816dce513Schristosdist:
9916dce513Schristos	mv Makefile Makefile~; cp -p Makefile.in Makefile
10016dce513Schristos	rm -f test.c ztest*.c
10116dce513Schristos	d=zlib-`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\
10216dce513Schristos	rm -f $$d.tar.gz; \
10316dce513Schristos	if test ! -d ../$$d; then rm -f ../$$d; ln -s `pwd` ../$$d; fi; \
10416dce513Schristos	files=""; \
10516dce513Schristos	for f in $(DISTFILES); do files="$$files $$d/$$f"; done; \
10616dce513Schristos	cd ..; \
10716dce513Schristos	GZIP=-9 $(TAR) chofz $$d/$$d.tar.gz $$files; \
10816dce513Schristos	if test ! -d $$d; then rm -f $$d; fi
10916dce513Schristos	mv Makefile~ Makefile
11016dce513Schristos
11116dce513Schristostags:
11216dce513Schristos	etags *.[ch]
11316dce513Schristos
11416dce513Schristosdepend:
11516dce513Schristos	makedepend -- $(CFLAGS) -- *.[ch]
11616dce513Schristos
11716dce513Schristos# DO NOT DELETE THIS LINE -- make depend depends on it.
11816dce513Schristos
11916dce513Schristosadler32.o: zlib.h zconf.h
12016dce513Schristoscompress.o: zlib.h zconf.h
12116dce513Schristoscrc32.o: zlib.h zconf.h
12216dce513Schristosdeflate.o: deflate.h zutil.h zlib.h zconf.h
12316dce513Schristosexample.o: zlib.h zconf.h
12416dce513Schristosgzio.o: zutil.h zlib.h zconf.h
12516dce513Schristosinfblock.o: infblock.h inftrees.h infcodes.h infutil.h zutil.h zlib.h zconf.h
12616dce513Schristosinfcodes.o: zutil.h zlib.h zconf.h
12716dce513Schristosinfcodes.o: inftrees.h infblock.h infcodes.h infutil.h inffast.h
12816dce513Schristosinffast.o: zutil.h zlib.h zconf.h inftrees.h
12916dce513Schristosinffast.o: infblock.h infcodes.h infutil.h inffast.h
13016dce513Schristosinflate.o: zutil.h zlib.h zconf.h infblock.h
13116dce513Schristosinftrees.o: zutil.h zlib.h zconf.h inftrees.h
13216dce513Schristosinfutil.o: zutil.h zlib.h zconf.h infblock.h inftrees.h infcodes.h infutil.h
13316dce513Schristosminigzip.o: zlib.h zconf.h
13416dce513Schristostrees.o: deflate.h zutil.h zlib.h zconf.h trees.h
13516dce513Schristosuncompr.o: zlib.h zconf.h
13616dce513Schristoszutil.o: zutil.h zlib.h zconf.h
137