summaryrefslogtreecommitdiff
path: root/mk/check/check-portability.mk
blob: 03482ff4dd769573941dc7e929a098796551cb08 (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
# $NetBSD: check-portability.mk,v 1.6 2008/02/20 10:43:55 rillig Exp $
#
# This file contains some checks that are applied to the configure
# scripts to check for certain constructs that are known to cause
# problems on some platforms.
#
# The following variables may be set by the pkgsrc user in mk.conf:
#
# CHECK_PORTABILITY
#	Whether to enable some portability checks for the configure
#	scripts before they are run.
#
#	Default value: yes for PKG_DEVELOPERs, no otherwise.
#
# The following variables may be set by the package:
#
# SKIP_PORTABILITY_CHECK
#	Whether the above checks should be skipped for the current
#	package.
#
#	Default value: no
#	Deprecated: Use CHECK_PORTABILITY_SKIP instead.
#	Obsolete since 2008-02-20.
#
# CHECK_PORTABILITY_SKIP
#	The list of files that should be skipped in the portability
#	check.
#
#	Default value: empty.
#	Example: debian/*

_VARGROUPS+=			check-portability
_USER_VARS.check-portability=	CHECK_PORTABILITY
_PKG_VARS.check-portability=	CHECK_PORTABILITY_SKIP

.if defined(PKG_DEVELOPER)
CHECK_PORTABILITY?=		yes
.endif
CHECK_PORTABILITY?=		no
.if defined(SKIP_PORTABILITY_CHECK)
PKG_FAIL_REASON+=		"[check-portability.mk] SKIP_PORTABILITY_CHECK is obsolete."
.endif
CHECK_PORTABILITY_SKIP?=	# none

.if ${CHECK_PORTABILITY:M[Yy][Ee][Ss]} != ""
pre-configure-checks-hook: _check-portability
.endif
.PHONY: _check-portability
_check-portability:
	@${STEP_MSG} "Checking for portability problems in extracted files"
	${RUN}								\
	[ -d ${WRKSRC}/. ] || exit 0;					\
	cd ${WRKSRC};							\
	env	SKIP_FILTER=${CHECK_PORTABILITY_SKIP:@p@${p}) skip=yes;;@:Q} \
		sh ${PKGSRCDIR}/mk/check/check-portability.sh