aboutsummaryrefslogtreecommitdiff
path: root/devel/valgrind/Makefile
blob: 33f46d7e86d725f1780e6290327759f04143de44 (plain) (blame)
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
PORTNAME=	valgrind
PORTVERSION=	3.21.0
PORTREVISION=	2
PORTEPOCH=	1
CATEGORIES=	devel
MASTER_SITES=	SOURCEWARE/valgrind

MAINTAINER=	pjfloyd@wanadoo.fr
COMMENT=	Memory debugging and profiling tool
WWW=		https://www.valgrind.org/

LICENSE=	GPLv2
LICENSE_FILE=	${WRKSRC}/COPYING

ONLY_FOR_ARCHS=	amd64 i386

USES=		autoreconf cpe gmake pathfix perl5 pkgconfig shebangfix \
		python:3.9+,run tar:bz2
USE_PERL5=	build
SHEBANG_FILES=	callgrind/callgrind_annotate.in callgrind/callgrind_control.in \
		cachegrind/cg_merge.in cachegrind/cg_diff.in \
		cachegrind/cg_annotate.in
GNU_CONFIGURE=	yes
CONFIGURE_ENV+=	ac_cv_path_PERL=${PERL}

SSP_UNSAFE=	yes
LIB32_PATH?=	/usr/lib32/libc.so

CONFLICTS=	valgrind-devel

# Valgrind needs to read debuginfo from its own preload shared libraries
# (quote from README_PACKAGERS
#-- Don't strip the debug info off lib/valgrind/$platform/vgpreload*.so
#   in the installation tree.  Either Valgrind won't work at all, or it
#   will still work if you do, but will generate less helpful error
#   messages.)
STRIP=			# empty

PORTDOCS=		html

OPTIONS_DEFINE=		DOCS MANPAGES MPI
OPTIONS_DEFINE_amd64=	32BIT
OPTIONS_DEFAULT=	MANPAGES
.if exists(${LIB32_PATH})
OPTIONS_DEFAULT_amd64=	32BIT
.endif
OPTIONS_SUB=		yes

32BIT_DESC=	Enable debugging of 32-bit programs (requires lib32)
MPI_DESC=	Enable build of MPI wrappers

DOCS_BUILD_DEPENDS=	docbook-xsl>=0:textproc/docbook-xsl \
			xsltproc:textproc/libxslt
MANPAGES_BUILD_DEPENDS=	docbook-xsl>=0:textproc/docbook-xsl \
			xsltproc:textproc/libxslt
MPI_LIB_DEPENDS=	libmpich.so:net/mpich

.include <bsd.port.options.mk>

.if ${ARCH} == "amd64"
PLIST_SUB+=		AMD64=""
. if !${PORT_OPTIONS:M32BIT}
CONFIGURE_ARGS+=	--enable-only64bit
PLIST_SUB+=		X86="@comment "
. else
.  if !exists(${LIB32_PATH})
IGNORE=			please either install the lib32 distribution or unset the 32BIT option
.  endif
PLIST_SUB+=		X86=""
. endif
.else
PLIST_SUB+=		AMD64="@comment " \
			X86=""
.endif

post-patch-DOCS-off:
	@${RM} -r ${WRKSRC}/docs/html

post-build-DOCS-on:
	cd ${WRKSRC}/docs && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} html-docs

post-build-MANPAGES-on:
	cd ${WRKSRC}/docs && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} man-pages

.include <bsd.port.mk>