@ $NetBSD$ # This is a typical GNU application package Makefile. # This Makefile is much bigger than a traditional one # you may need very few of the options listes below # so read carefully each comment, remove what's useless # to your package and modify to match your needs. # To make this file pkglint-friendly, just : # grep -v \# Makefile|sed -E s/^@/#/ # # Feedback welcome # #----------------------------------------------------------------------------- # # MANDATORY # # basename of the distribution file to be downloaded DISTNAME= gnu-app-0.1 # # MANDATORY # # categories into which the package falls CATEGORIES= devel # # MANDATORY # # this fictive package is supposed to be a GNU tool, it is hosted on # ${MASTER_SITES} on the gnu-app/ subdirectory MASTER_SITES= ${MASTER_SITE_GNU:=gnu-app/} # if the distribution file is not hosted on a known MASTER_SITE*, it can # be defined like this : # MASTER_SITES= http://www.example.com/~imil/contribs/ # # OPTIONAL # # by default, the distribution file suffix is .tar.gz, to modify this # use the EXTRACT_SUFX macro like this : EXTRACT_SUFX= .tgz # from now, DISTFILES variable is set to ${DISTNAME}${EXTRACT_SUFX} # # OPTIONAL # # the package is composed of multiple DISTFILES, located on different sites # so we define DISTFILES list and sites from where they can be fetched. DISTFILES= ${DISTNAME}${EXTRACT_SUFX} gnu-app-contrib.tar.gz # OPTIONAL # # if has also some PATCHFILES, let's specify which ones and where to fetch # them PATCHFILES= gnu-app.patch1 PATCH_SITES= http://www.contribsite.com/~contributor/ # note that we could have use # SITES_gnu-app.patch1= http://www.contribsite.com/~contributor/ # MANDATORY # # package maintainer, either real package's creator or tech-pkg@NetBSD.org MAINTAINER= imil@example.com # # OPTIONAL # # if project has a homepage, add this variable : HOMEPAGE= http://www.example.com/~imil/ # # MANDATORY # # short package description COMMENT= Sample GNU application that does not even exist # DISTFILES contribution can be fetched from here SITES_gnu-app-contrib.tar.gz= http://www.contribsite.com/~contributor/ # MANDATORY # # we don't plan to use the new pkgviews framework, see # pkgsrc/mk/buildlink3/PKGVIEWS_UG for further details PKG_INSTALLATION_TYPES= overwrite pkgviews # OPTIONAL # # extracted directory is not named a standard way i.e. appname-X.Y/ WRKSRC= ${WRKDIR}/gnu-app # RECOMMENDED # # but we will use buildlink3 framework, see section Packate.txt section 8 # for further details on the buildlink3 methodology USE_BUILDLINK3= yes # OPTIONAL # # the package uses GNU configure, thanks to this variable, system-specific # variables like PREFIX will be passed to the configure script GNU_CONFIGURE= yes # OPTIONAL # # include bsd.prefs.mk so some variables like ${OPSYS} are set .include "../../mk/bsd.prefs.mk" # OPTIONAL # # use ${OPSYS} to take some arch-specific decisions .if ${OPSYS} == "NetBSD" CFLAGS+= -DUSE_SUPERPOWERS .endif # OPTIONAL # # gnu-app needs to regenerate the configure script, to do so it requires # autoconf >= 2.50 and automake >= 1.7.1 AUTOCONF_REQD= 2.50 AUTOMAKE_REQD= 1.8 # OPTIONAL # # let's generate the configure script pre-configure: cd ${WRKSRC}; \ ${ACLOCAL};i \ ${AUTOHEADER}; \ ${AUTOMAKE} -a --foreign -i; \ ${AUTOCONF} # OPTIONAL # # manpages are compressed MANCOMPRESSED= yes # OPTIONAL # # substitute variable ${VARIABLE} with "value" when displaying MESSAGE after # installation of the package MESSAGE_SUBST+= VARIABLE="value" # OPTIONAL # # include automake.mk so automake, autoconf and configure behave the right way .include "../../mk/autoconf.mk" # # MANDATORY # # finally, include the bsd.pkg.mk file that contains all the magic behind # the scenes that you need to build and install a package .include "../../mk/bsd.pkg.mk"