blob: cad1a5aa873c66ffbd9645ba81c854f002153f2e [file] [log] [blame]
The Android Open Source Project893912b2009-03-03 19:30:05 -08001# makefile for libpng under FreeBSD
Sireesh Tripurarib478e662014-05-09 15:15:10 +05302# Copyright (C) 2014 Glenn Randers-Pehrson and Andrey A. Chernov
Patrick Scotta0bb96c2009-07-22 11:50:02 -04003# Copyright (C) 2002, 2007, 2009 Glenn Randers-Pehrson and Andrey A. Chernov
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
Chris Craikb50c2172013-07-29 15:28:30 -070010SHLIB_VER?= 16
The Android Open Source Project893912b2009-03-03 19:30:05 -080011
12LIB= png
13SHLIB_MAJOR= ${SHLIB_VER}
14SHLIB_MINOR= 0
Chris Craikb50c2172013-07-29 15:28:30 -070015NO_PROFILE= YES
Matt Sarett9ea75692016-01-08 13:00:42 -050016NO_OBJ= YES
The Android Open Source Project893912b2009-03-03 19:30:05 -080017
18# where make install puts libpng.a and png.h
19DESTDIR= ${PREFIX}
20LIBDIR= /lib
Sireesh Tripurarib478e662014-05-09 15:15:10 +053021INCS= png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
The Android Open Source Project893912b2009-03-03 19:30:05 -080022INCSDIR= /include/libpng
23INCDIR= ${INCSDIR} # for 4.x bsd.lib.mk
24MAN= libpng.3 libpngpf.3 png.5
25MANDIR= /man/man
26SYMLINKS= libpng/png.h ${INCSDIR}/../png.h \
Chris Craikb50c2172013-07-29 15:28:30 -070027 libpng/pngconf.h ${INCSDIR}/../pngconf.h \
28 libpng/pnglibconf.h ${INCSDIR}/../pnglibconf.h
29
30# where make install finds libz.a and zlib.h
31ZLIBLIB= /usr/lib
32ZLIBINC= /usr/include
33
Sireesh Tripurarib478e662014-05-09 15:15:10 +053034LDADD+= -lm -lz
35#LDADD+= -lm -lz -lssp_nonshared # for OSVERSION < 800000 ?
Chris Craikb50c2172013-07-29 15:28:30 -070036
Sireesh Tripurarib478e662014-05-09 15:15:10 +053037DPADD+= ${LIBM} ${LIBZ}
The Android Open Source Project893912b2009-03-03 19:30:05 -080038
Sireesh Tripurarib478e662014-05-09 15:15:10 +053039CPPFLAGS+= -I. -I${ZLIBINC}
40CFLAGS+= -W -Wall
The Android Open Source Project893912b2009-03-03 19:30:05 -080041
Matt Sarett9ea75692016-01-08 13:00:42 -050042# Pre-built configuration
43# See scripts/pnglibconf.mak for more options
44PNGLIBCONF_H_PREBUILT= scripts/pnglibconf.h.prebuilt
45
The Android Open Source Project893912b2009-03-03 19:30:05 -080046SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \
47 pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
48 pngwtran.c pngmem.c pngerror.c pngpread.c
49
Sireesh Tripurarib478e662014-05-09 15:15:10 +053050.c.o:
51 $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
52
The Android Open Source Project893912b2009-03-03 19:30:05 -080053pngtest: pngtest.o libpng.a
Chris Craikb50c2172013-07-29 15:28:30 -070054 ${CC} ${CFLAGS} -L. -static -o pngtest pngtest.o -L${ZLIBLIB} \
55 -lpng ${LDADD}
The Android Open Source Project893912b2009-03-03 19:30:05 -080056
57CLEANFILES= pngtest pngtest.o pngout.png
58
59test: pngtest
60 ./pngtest
61
Matt Sarett9ea75692016-01-08 13:00:42 -050062pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
63 cp $(PNGLIBCONF_H_PREBUILT) $@
Chris Craikb50c2172013-07-29 15:28:30 -070064
The Android Open Source Project893912b2009-03-03 19:30:05 -080065DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
66writelock:
67 chmod a-w *.[ch35] $(DOCS) scripts/*
68
69.include <bsd.lib.mk>