1PORTNAME=	grep
2PORTVERSION=	3.12
3CATEGORIES=	textproc
4MASTER_SITES=	GNU
5PKGNAMEPREFIX=	gnu
6
7MAINTAINER=	ports@MidnightBSD.org
8COMMENT=	GNU version of popular pattern matching utility
9WWW=		https://www.gnu.org/software/grep/
10
11LICENSE=	gpl3+
12
13USES=		charsetfix cpe tar:xz
14GNU_CONFIGURE=	yes
15CONFIGURE_ARGS=	--program-prefix=g
16TEST_TARGET=	check
17
18INFO=		grep
19CPE_VENDOR=	gnu
20
21OPTIONS_DEFINE=		COMPAT ICONV LIBSIGSEGV NLS PCRE
22OPTIONS_DEFAULT=	ICONV PCRE
23COMPAT_DESC=		Create g-prefixless compatibility symlinks
24LIBSIGSEGV_DESC=	Use alternative page fault handler (GNU libsigsegv)
25OPTIONS_SUB=		yes
26
27ICONV_CONFIGURE_USES=	iconv
28ICONV_CONFIGURE_WITH=	libiconv-prefix=${LOCALBASE}
29
30LIBSIGSEGV_LIB_DEPENDS=	libsigsegv.so:devel/libsigsegv
31LIBSIGSEGV_CONFIGURE_WITH=	libsigsegv-prefix=${LOCALBASE}
32
33NLS_USES=		gettext
34NLS_CONFIGURE_ENABLE=	nls
35NLS_CONFIGURE_WITH=	libintl-prefix=${LOCALBASE}
36
37PCRE_LIB_DEPENDS=	libpcre2-8.so:devel/pcre2
38PCRE_USES=		pkgconfig
39PCRE_CONFIGURE_ENABLE=	perl-regexp
40
41NO_TEST=	yes
42
43post-patch:
44	@${REINPLACE_CMD} 's:@grep@:${PREFIX}/bin/&:' ${WRKSRC}/src/egrep.sh
45	@${REINPLACE_CMD} 's|mkinstalldirs = .*|mkinstalldirs = ${MKDIR}|g' \
46		${WRKSRC}/po/Makefile.in.in
47# Don't use extension register to avoid run-time dependency on `textproc/groff'
48	@${REINPLACE_CMD} 's,do nr mH .* groff extension register,nr mH 0,' \
49		${WRKSRC}/doc/grep.in.1
50
51post-patch-NLS-off:
52	@${REINPLACE_CMD} '/install-exec-local:/s/install-exec-localcharset//' \
53		${WRKSRC}/lib/Makefile.in
54
55post-install-COMPAT-on:
56.for p in grep egrep fgrep
57	${LN} -sf g${p} ${FAKE_DESTDIR}${TRUE_PREFIX}/bin/${p}
58.endfor
59
60.include <bsd.port.mk>
61