blob: ef5be8154888c9c4df53d43d0a09451da76be81f [file] [log] [blame]
The Android Open Source Project893912b2009-03-03 19:30:05 -08001# makefile for libpng
Sireesh Tripurarib478e662014-05-09 15:15:10 +05302# Copyright (C) 2007-2009, 2014 Glenn Randers-Pehrson
The Android Open Source Project893912b2009-03-03 19:30:05 -08003# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
Patrick Scott5f6bd842010-06-28 16:55:16 -04004#
Patrick Scotta0bb96c2009-07-22 11:50:02 -04005# This code is released under the libpng license.
6# For conditions of distribution and use, see the disclaimer
7# and license in png.h
The Android Open Source Project893912b2009-03-03 19:30:05 -08008
9PREFIX?= /usr/local
10LIBDIR= ${PREFIX}/lib
11MANDIR= ${PREFIX}/man/cat
12
Chris Craikb50c2172013-07-29 15:28:30 -070013SHLIB_MAJOR= 16
Matt Sarett9ea75692016-01-08 13:00:42 -050014SHLIB_MINOR= 1.6.20
The Android Open Source Project893912b2009-03-03 19:30:05 -080015
16LIB= png
17SRCS= png.c pngerror.c pngget.c pngmem.c pngpread.c \
18 pngread.c pngrio.c pngrtran.c pngrutil.c pngset.c pngtrans.c \
19 pngwio.c pngwrite.c pngwtran.c pngwutil.c
20
Chris Craikb50c2172013-07-29 15:28:30 -070021HDRS= png.h pngconf.h pnglibconf.h
The Android Open Source Project893912b2009-03-03 19:30:05 -080022
The Android Open Source Project4215dd12009-03-09 11:52:12 -070023CFLAGS+= -W -Wall
Chris Craikb50c2172013-07-29 15:28:30 -070024CPPFLAGS+= -I${.CURDIR}
The Android Open Source Project893912b2009-03-03 19:30:05 -080025
26NOPROFILE= Yes
27
Chris Craikb50c2172013-07-29 15:28:30 -070028CLEANFILES+= pngtest.o pngtest pnglibconf.h
The Android Open Source Project893912b2009-03-03 19:30:05 -080029
30MAN= libpng.3 libpngpf.3 png.5
Sireesh Tripurarib478e662014-05-09 15:15:10 +053031DOCS= ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO \
32 libpng-manual.txt
33
Matt Sarett9ea75692016-01-08 13:00:42 -050034# Pre-built configuration
35# See scripts/pnglibconf.mak for more options
36PNGLIBCONF_H_PREBUILT= scripts/pnglibconf.h.prebuilt
37
Sireesh Tripurarib478e662014-05-09 15:15:10 +053038.c.o:
39 $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
Chris Craikb50c2172013-07-29 15:28:30 -070040
Matt Sarett9ea75692016-01-08 13:00:42 -050041pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
42 cp $(PNGLIBCONF_H_PREBUILT) $@
The Android Open Source Project893912b2009-03-03 19:30:05 -080043
44pngtest.o: pngtest.c
45 ${CC} ${CPPFLAGS} ${CFLAGS} -c ${.ALLSRC} -o ${.TARGET}
46
47pngtest: pngtest.o
48 ${CC} ${LDFLAGS} ${.ALLSRC} -o ${.TARGET} -L${.OBJDIR} -lpng -lz -lm
49
50test: pngtest
51 cd ${.OBJDIR} && env \
52 LD_LIBRARY_PATH="${.OBJDIR}" ${.OBJDIR}/pngtest
53
54beforeinstall:
55 if [ ! -d ${DESTDIR}${PREFIX}/include/libpng ]; then \
Patrick Scott5f6bd842010-06-28 16:55:16 -040056 ${INSTALL} -d -o root -g wheel ${DESTDIR}${PREFIX}/include; \
The Android Open Source Project893912b2009-03-03 19:30:05 -080057 fi
58 if [ ! -d ${DESTDIR}${LIBDIR} ]; then \
59 ${INSTALL} -d -o root -g wheel ${DESTDIR}${LIBDIR}; \
60 fi
61 if [ ! -d ${DESTDIR}${LIBDIR}/debug ]; then \
62 ${INSTALL} -d -o root -g wheel ${DESTDIR}${LIBDIR}/debug; \
63 fi
64 if [ ! -d ${DESTDIR}${MANDIR}3 ]; then \
65 ${INSTALL} -d -o root -g wheel ${DESTDIR}${MANDIR}3; \
66 fi
67 if [ ! -d ${DESTDIR}${MANDIR}5 ]; then \
68 ${INSTALL} -d -o root -g wheel ${DESTDIR}${MANDIR}5; \
69 fi
70 if [ ! -d ${DESTDIR}${PREFIX}/share/doc/png ]; then \
71 ${INSTALL} -d -o root -g wheel ${DESTDIR}${PREFIX}/share/doc/png; \
72 fi
73
74afterinstall:
75 @rm -f ${DESTDIR}${LIBDIR}/libpng_pic.a
76 @rm -f ${DESTDIR}${LIBDIR}/debug/libpng.a
77 @rm -f ${DESTDIR}${PREFIX}/include/png.h
78 @rm -f ${DESTDIR}${PREFIX}/include/pngconf.h
Chris Craikb50c2172013-07-29 15:28:30 -070079 @rm -f ${DESTDIR}${PREFIX}/include/pnglibconf.h
The Android Open Source Project893912b2009-03-03 19:30:05 -080080 @rmdir ${DESTDIR}${LIBDIR}/debug 2>/dev/null || true
81 ${INSTALL} ${INSTALL_COPY} -o ${SHAREOWN} -g ${SHAREGRP} \
Patrick Scott5f6bd842010-06-28 16:55:16 -040082 -m ${NONBINMODE} ${HDRS} ${DESTDIR}${PREFIX}/include
The Android Open Source Project893912b2009-03-03 19:30:05 -080083 ${INSTALL} ${INSTALL_COPY} -o ${SHAREOWN} -g ${SHAREGRP} \
84 -m ${NONBINMODE} ${HDRS} ${DESTDIR}${PREFIX}/include
85 ${INSTALL} ${INSTALL_COPY} -o ${SHAREOWN} -g ${SHAREGRP} \
86 -m ${NONBINMODE} ${DOCS} ${DESTDIR}${PREFIX}/share/doc/png
87
88.include <bsd.lib.mk>