1995-07-20 03:43:20 -04:00
|
|
|
# makefile for libpng
|
2006-03-07 08:09:22 -05:00
|
|
|
# Copyright (C) 2002, 2006 Glenn Randers-Pehrson
|
1995-07-20 03:43:20 -04:00
|
|
|
# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
|
2009-06-24 10:31:28 -04:00
|
|
|
#
|
2009-06-26 22:46:52 -04:00
|
|
|
# This code is released under the libpng license.
|
2009-06-25 14:43:50 -04:00
|
|
|
# For conditions of distribution and use, see the disclaimer
|
2009-06-24 11:27:36 -04:00
|
|
|
# and license in png.h
|
1995-07-20 03:43:20 -04:00
|
|
|
|
1998-12-29 12:47:59 -05:00
|
|
|
# where make install puts libpng.a and png.h
|
|
|
|
prefix=/usr/local
|
2002-04-27 11:11:25 -04:00
|
|
|
INCPATH=$(prefix)/include
|
|
|
|
LIBPATH=$(prefix)/lib
|
|
|
|
|
|
|
|
# override DESTDIR= on the make install command line to easily support
|
|
|
|
# installing into a temporary location. Example:
|
|
|
|
#
|
|
|
|
# make install DESTDIR=/tmp/build/libpng
|
|
|
|
#
|
|
|
|
# If you're going to install into a temporary location
|
2002-05-25 12:12:10 -04:00
|
|
|
# via DESTDIR, $(DESTDIR)$(prefix) must already exist before
|
2002-04-27 11:11:25 -04:00
|
|
|
# you execute make install.
|
|
|
|
DESTDIR=
|
1998-12-29 12:47:59 -05:00
|
|
|
|
1997-05-16 03:46:07 -04:00
|
|
|
# Where the zlib library and include files are located
|
|
|
|
#ZLIBLIB=/usr/local/lib
|
|
|
|
#ZLIBINC=/usr/local/include
|
|
|
|
ZLIBLIB=../zlib
|
|
|
|
ZLIBINC=../zlib
|
|
|
|
|
1996-01-26 02:38:47 -05:00
|
|
|
CC=cc
|
2006-03-07 08:09:22 -05:00
|
|
|
AR_RC=ar rc
|
|
|
|
MKDIR_P=mkdir
|
|
|
|
LN_SF=ln -sf
|
|
|
|
RANLIB=ranlib
|
|
|
|
RM_F=rm -f
|
2010-04-17 09:17:51 -04:00
|
|
|
AWK = awk
|
|
|
|
SED = sed
|
|
|
|
CPP = $(CC) -E
|
|
|
|
ECHO = echo
|
2006-03-07 08:09:22 -05:00
|
|
|
|
2010-04-17 09:17:51 -04:00
|
|
|
DFNFLAGS = # DFNFLAGS contains -D options to use in the libpng build
|
2009-12-04 09:40:41 -05:00
|
|
|
CFLAGS=-I$(ZLIBINC) -O # -g -DPNG_DEBUG=5
|
2002-10-31 20:53:20 -05:00
|
|
|
LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz -lm
|
|
|
|
|
1997-05-16 03:46:07 -04:00
|
|
|
OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
|
1996-06-05 16:50:50 -04:00
|
|
|
pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
|
|
|
|
pngwtran.o pngmem.o pngerror.o pngpread.o
|
1995-07-20 03:43:20 -04:00
|
|
|
|
|
|
|
all: libpng.a pngtest
|
|
|
|
|
2010-08-24 17:16:35 -04:00
|
|
|
# The standard pnglibconf.h exists as scripts/pnglibconf.h.prebuilt,
|
2010-04-17 09:17:51 -04:00
|
|
|
# copy this if the following doesn't work.
|
|
|
|
pnglibconf.dfn: scripts/pnglibconf.dfa scripts/options.awk
|
|
|
|
$(RM_F) $@ dfn?.out
|
2010-04-28 08:52:16 -04:00
|
|
|
$(AWK) -f scripts/options.awk out=dfn1.out\
|
|
|
|
scripts/pnglibconf.dfa $(DFA_XTRA) 1>&2
|
|
|
|
$(AWK) -f scripts/options.awk out=dfn2.out dfn1.out 1>&2
|
2010-04-17 09:17:51 -04:00
|
|
|
cp dfn2.out $@
|
|
|
|
$(RM_F) dfn?.out
|
|
|
|
|
|
|
|
pnglibconf.h: pnglibconf.dfn
|
|
|
|
$(RM_F) $@ dfn.c dfn?.out
|
|
|
|
$(ECHO) '#include "pnglibconf.dfn"' >dfn.c
|
|
|
|
$(CPP) $(DFNFLAGS) dfn.c >dfn1.out
|
|
|
|
$(SED) -n -e 's|^.*PNG_DEFN_MAGIC-\(.*\)-PNG_DEFN_END.*$$|\1|p'\
|
|
|
|
dfn1.out >dfn2.out
|
|
|
|
$(SED) -e 's| *@@@ *||g' -e 's| *$$||' dfn2.out >dfn3.out
|
|
|
|
cp dfn3.out $@
|
|
|
|
$(RM_F) dfn.c dfn?.out
|
|
|
|
|
1995-07-20 03:43:20 -04:00
|
|
|
libpng.a: $(OBJS)
|
2006-03-07 08:09:22 -05:00
|
|
|
$(AR_RC) $@ $(OBJS)
|
1995-07-20 03:43:20 -04:00
|
|
|
$(RANLIB) $@
|
|
|
|
|
|
|
|
pngtest: pngtest.o libpng.a
|
1998-03-07 15:33:00 -05:00
|
|
|
$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
|
1995-09-26 06:22:39 -04:00
|
|
|
|
|
|
|
test: pngtest
|
|
|
|
./pngtest
|
1995-07-20 03:43:20 -04:00
|
|
|
|
2010-04-17 09:17:51 -04:00
|
|
|
install: libpng.a pnglibconf.h
|
2006-03-07 08:09:22 -05:00
|
|
|
-@$(MKDIR_P) $(DESTDIR)$(INCPATH)
|
|
|
|
-@$(MKDIR_P) $(DESTDIR)$(INCPATH)/libpng
|
|
|
|
-@$(MKDIR_P) $(DESTDIR)$(LIBPATH)
|
|
|
|
-@$(RM_F) $(DESTDIR)$(INCPATH)/png.h
|
|
|
|
-@$(RM_F) $(DESTDIR)$(INCPATH)/pngconf.h
|
2010-04-17 09:17:51 -04:00
|
|
|
-@$(RM_F) $(DESTDIR)$(INCPATH)/pnglibconf.h
|
2002-04-27 11:11:25 -04:00
|
|
|
cp png.h $(DESTDIR)$(INCPATH)/libpng
|
|
|
|
cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
|
2010-04-17 09:17:51 -04:00
|
|
|
cp pnglibconf.h $(DESTDIR)$(INCPATH)/libpng
|
2002-04-27 11:11:25 -04:00
|
|
|
chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
|
|
|
|
chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
|
2010-04-17 09:17:51 -04:00
|
|
|
chmod 644 $(DESTDIR)$(INCPATH)/libpng/pnglibconf.h
|
2002-04-27 11:11:25 -04:00
|
|
|
(cd $(DESTDIR)$(INCPATH); ln -f -s libpng/* .)
|
|
|
|
cp libpng.a $(DESTDIR)$(LIBPATH)
|
|
|
|
chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a
|
1995-07-20 03:43:20 -04:00
|
|
|
|
|
|
|
clean:
|
2010-04-17 09:17:51 -04:00
|
|
|
$(RM_F) *.o libpng.a pngtest pngout.png pnglibconf.* dfn.c dfn?.out
|
1995-07-20 03:43:20 -04:00
|
|
|
|
1999-12-10 10:43:02 -05:00
|
|
|
DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
|
|
|
|
writelock:
|
|
|
|
chmod a-w *.[ch35] $(DOCS) scripts/*
|
|
|
|
|
1995-07-20 03:43:20 -04:00
|
|
|
# DO NOT DELETE THIS LINE -- make depend depends on it.
|
|
|
|
|
2010-04-17 09:17:51 -04:00
|
|
|
png.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngerror.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngrio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngwio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngmem.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngset.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngget.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngrtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngrutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngtrans.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngwrite.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngwtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngwutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
pngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
|
|
|
|
|
|
|
|
pngtest.o: png.h pngconf.h pnglibconf.h
|