freebsd-ports/textproc/gnugrep/Makefile
Kubilay Kocak 49e2d0579a textproc/gnugrep: Add missing libiconv dependency
GNU Grep's automatically searches for and detects (via configure) the
presence of gettext and libiconv. If libiconv is already installed it
results in libiconv being detected without the dependency being
registered. If libiconv is ever removed, the following error is
observed:

  Error: Shared object "libiconv.so.2" not found, required by "grep"

This change adds explicit configure arguments to disable gettext and
libiconv detection when their respective OPTIONS are disabled.

Additionally it adds an ICONV option consistent with other
ports, and replaces global CPPFLAGS and LDFLAGS values
with GETTEXT and ICONV option-specific library and include configure
arguments for the respective search path prefixes.

Note: CPPFLAGS and LDFLAGS are still required for PCRE detection, as
the configure script does not provide equivalent -prefix=[PATH] options
for libpcre. These flags are now PCRE option conditional.

While I'm here:

- Sort USES and OPTIONS and improve readability by seperating those
  sections by whitespace.
- Add LICENSE_FILE

Tested on:	9.3, 10.1, i386, amd64, all PCRE, ICONV, NLS permutations
Approved:	portmgr (blanket, framework compliance)
2015-04-24 04:17:16 +00:00

54 lines
1.2 KiB
Makefile

# Created by: Gabor Kovesdan <gabor@FreeBSD.org>
# $FreeBSD$
PORTNAME= grep
PORTVERSION= 2.21
PORTREVISION= 1
CATEGORIES= textproc
MASTER_SITES= GNU
PKGNAMEPREFIX= gnu
MAINTAINER= johans@FreeBSD.org
COMMENT= GNU grep
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
CONFLICTS= bsd-grep-[0-9]*
USES= charsetfix cpe tar:xz
GNU_CONFIGURE= yes
INFO= grep
CPE_VENDOR= gnu
OPTIONS_DEFINE= ICONV NLS PCRE
OPTIONS_DEFAULT= ICONV NLS PCRE
OPTIONS_SUB= yes
ICONV_CONFIGURE_USES= iconv
ICONV_CONFIGURE_ON= --with-libiconv-prefix=${LOCALBASE}
ICONV_CONFIGURE_OFF= --without-libiconv-prefix
NLS_USES= gettext
NLS_CONFIGURE_ENABLE= nls
NLS_CONFIGURE_ON= --with-libintl-prefix=${LOCALBASE}
NLS_CONFIGURE_OFF= --without-libintl-prefix
PCRE_LIB_DEPENDS= libpcre.so:${PORTSDIR}/devel/pcre
PCRE_CONFIGURE_ENABLE= perl-regexp
PCRE_CPPFLAGS= -I${LOCALBASE}/include
PCRE_LDFLAGS= -L${LOCALBASE}/lib
PCRE_CONFIGURE_OFF= --disable-perl-regexp
.include <bsd.port.options.mk>
post-patch:
.if empty(PORT_OPTIONS:MNLS)
@${REINPLACE_CMD} '/install-exec-local:/s/install-exec-localcharset//' \
${WRKSRC}/lib/Makefile.in
.endif
@${REINPLACE_CMD} 's|mkinstalldirs = .*|mkinstalldirs = ${MKDIR}|g' \
${WRKSRC}/po/Makefile.in.in
.include <bsd.port.mk>