summaryrefslogtreecommitdiff
path: root/doc/Makefile-example
blob: 8fe51a26328c335ca2c39d512af92441bc5279d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
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
85
86
87
88
89
90
# $NetBSD: Makefile-example,v 1.27 2020/05/31 21:22:47 rillig Exp $

# First paragraph - distfile and binary package data
# DISTNAME PKGNAME PKGREVISION CATEGORIES MASTER_SITES
# MASTER_SITE_SUBDIR EXTRACT_SUFX DISTFILES
DISTNAME=		make-3.80
PKGNAME=		gmake-3.80	# only to be added if the package name is different from DISTNAME
#PKGREVISION=		2		# should be added/incremented for user-visible changes
CATEGORIES=		devel gnu	# multiple categories are allowed
MASTER_SITES=		${MASTER_SITE_GNU:=make/}
#EXTRACT_SUFX=		.tar.bz2	# .tar.gz is the default, only needed in unusual circumstances

# Second paragraph - MAINTAINER/OWNER, HOMEPAGE and COMMENT, and LICENSE
MAINTAINER=		pkgsrc-users@NetBSD.org	# set this to your email address, pkgsrc-users@ is the default
HOMEPAGE=		http://www.gnu.org/software/make/make.html
COMMENT=		GNU version of 'make' utility	# start with a capital, no articles at start
LICENSE=		hptools-license # Licenses should be added to the pkgsrc/licenses directory.

# Paragraph for any build or run dependencies -- not libraries,
# those should be handled using buildlink3.mk files.
# Not needed for gmake, just an example:
# BUILD_DEPENDS+=	automoc4-[0-9]*:../../devel/automoc4

# Set RESTRICTED to a very short explanation (typically "No permission to
# redistribute for a fee.").  NO_*_ON_* may only be set to ${RESTRICTED}.
RESTRICTED=		Redistribution of unmodified source only; resale prohibited.
NO_SRC_ON_CDROM=	${RESTRICTED}
NO_BIN_ON_FTP=		${RESTRICTED}
NO_BIN_ON_CDROM=	${RESTRICTED}

# if the package has to be created with root privileges
#PKG_DESTDIR_SUPPORT=	destdir
# if the package has to be installed directly
#PKG_DESTDIR_SUPPORT=	none

# Sixth paragraph - all build definitions that describe things used by
# the package.  These include: WRKSRC, GNU_CONFIGURE,
# HAS_CONFIGURE, USE_PKGLOCALEDIR, USE_INSTALL, TEXINFO_REQD, USE_JAVA,
# INFO_FILES, DIST_SUBDIR, etc.
DIST_SUBDIR=		gmake
GNU_CONFIGURE=		yes
INFO_FILES=		# defined if the package installs info files
TEXINFO_REQD=		4.0		# version of texinfo which is necessary
USE_PKGLOCALEDIR=	yes
WRKSRC=			${WRKDIR}/src

# Seventh paragraph - file overrides; these are all *_OVERRIDE variables
LIBTOOL_OVERRIDE+=	build/unix/tools/libtool
PKGCONFIG_OVERRIDE+=	glib-2.0.pc.in

# Eighth paragraph - modification of configure and make environments
CONFIGURE_ARGS+=	--disable-gtk-doc
CONFIGURE_ENV+=		ac_cv_path_PYTHON="${PYTHONBIN}"
MAKE_ENV+=		PKG_SYSCONFDIR="${PKG_SYSCONFDIR}"

# Ninth paragraph - different targets
# BUILD_TARGET, INSTALL_TARGET, TEST_TARGET
TEST_TARGET=		check

# always include bsd.prefs.mk before any .if or .ifdef statements
.include "../../mk/bsd.prefs.mk"

.if defined(GNU_PROGRAM_PREFIX)
# indent nested "if" by 2 spaces please
.  if ${GNU_PROGRAM_PREFIX} == "g"
CONFIGURE_ARGS+=	--program-prefix=${GNU_PROGRAM_PREFIX}
.  endif
.endif
PLIST_SUBST+=		GNU_PROGRAM_PREFIX=${GNU_PROGRAM_PREFIX}
BUILD_DEFS+=		GNU_PROGRAM_PREFIX

# Makefile targets should occur after all the other definitions in the file
post-install:
	${CHMOD} g-s ${DESTDIR}${PREFIX}/bin/${GNU_PROGRAM_PREFIX}make
	${CHGRP} ${BINGRP} ${DESTDIR}${PREFIX}/bin/${GNU_PROGRAM_PREFIX}make
.if !defined(GNU_PROGRAM_PREFIX) || ${GNU_PROGRAM_PREFIX} != "g"
	# Solaris's "ln -fs" is not the same as on *BSD - use an explicit rm(1) instead
	${RM} -f ${DESTDIR}${PREFIX}/bin/gmake
	${LN} -s ${GNU_PROGRAM_PREFIX}make ${DESTDIR}${PREFIX}/bin/gmake
.endif

# buildlink3 files should come after all variables have been set,
# sorted alphabetically.
.include "../../devel/gettext-lib/buildlink3.mk"

# Files from mk/ should be after other buildlink3 files have been included.
.include "../../mk/pthread.buildlink3.mk"

# Finally, please include bsd.pkg.mk
.include "../../mk/bsd.pkg.mk"