makefile.sggcc 3.2 KB
Newer Older
1
# makefile for libpng, SGI IRIX with gcc
2
# Copyright (C) 2002 Glenn Randers-Pehrson
3 4 5 6 7 8 9 10 11 12 13 14
# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
# For conditions of distribution and use, see copyright notice in png.h

# where make install puts libpng.a and png.h
prefix=/usr/local

# Where the zlib library and include files are located
ZLIBLIB=/usr/local/lib32
ZLIBINC=/usr/local/include
#ZLIBLIB=../zlib
#ZLIBINC=../zlib

15 16 17 18
# ABI can be blank to use default for your system, -32, -o32, -n32, or -64
# See "man abi".  zlib must be built with the same ABI.
ABI=

19 20
CC=gcc

21
WARNMORE= # -g -DPNG_DEBUG=5
22 23 24 25
CFLAGS=$(ABI) -I$(ZLIBINC) -O2 $(WARNMORE) -fPIC -mabi=n32
LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm
LDSHARED=CC $(ABI) -shared

26 27 28
PNGMAJ = 0
PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN)
29
# See "man dso" for info about shared objects
30 31 32
LIBS=libpng12.so.$(PNGMAJ).$(PNGVER)
LIBNAME=libpng12
LIBPATH=$(prefix)/lib32
33 34 35 36 37 38 39 40

RANLIB=echo
#RANLIB=ranlib

OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
	pngwtran.o pngmem.o pngerror.o pngpread.o

41
all: libpng.a $(LIBNAME).so.$(PNGVER) pngtest
42 43 44 45 46

libpng.a: $(OBJS)
	ar rc $@  $(OBJS)
	$(RANLIB) $@

47
$(LIBNAME).so.$(PNGVER): $(OBJS)
48
	$(LDSHARED) -o $@ $(OBJS)
49 50 51
	rm -f $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)
	ln -s $@ $(LIBNAME).so
	ln -s $@ $(LIBNAME).so.$(PNGMAJ)
52 53 54 55 56 57 58

pngtest: pngtest.o libpng.a
	$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)

test: pngtest
	./pngtest

59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
install-static: libpng.a
	-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
	-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
	cp png.h pngconf.h $(INCPATH)
	chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
	cp libpng.a $(LIBPATH)
	chmod 644 $(LIBPATH)/libpng.a

install: libpng.a $(LIBNAME).so.$(PNGVER)
	-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
	-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
	-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
	cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
	chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
	-@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
	ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
	ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
	cp libpng.a $(LIBPATH)/$(LIBNAME).a
	chmod 644 $(LIBPATH)/$(LIBNAME).a
	-@/bin/rm -f $(LIBPATH)/libpng.a
	ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
	cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
	chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
	-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
	(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
	 ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
85
	(ldconfig || true)  >/dev/null 2>&1; \
86
	fi)
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109

clean:
	rm -f *.o libpng.a pngtest pngout.png

# DO NOT DELETE THIS LINE -- make depend depends on it.

png.o: png.h pngconf.h
pngerror.o: png.h pngconf.h
pngrio.o: png.h pngconf.h
pngwio.o: png.h pngconf.h
pngmem.o: png.h pngconf.h
pngset.o: png.h pngconf.h
pngget.o: png.h pngconf.h
pngread.o: png.h pngconf.h
pngrtran.o: png.h pngconf.h
pngrutil.o: png.h pngconf.h
pngtest.o: png.h pngconf.h
pngtrans.o: png.h pngconf.h
pngwrite.o: png.h pngconf.h
pngwtran.o: png.h pngconf.h
pngwutil.o: png.h pngconf.h
pngpread.o: png.h pngconf.h