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)
- Add --localstatedir=/var to _LATE_CONFIGURE_ARGS (like --mandir) but not
when CONFIGURE_ARGS already sets it. (GNU configure scripts set it to
PREFIX/var when PREFIX != /usr.)
- Add --localstatedir="${PREFIX}/var" to CONFIGURE_ARGS in some ports so
they aren't affected by this change (for now at least). This commit is
meant to ensure that new ports don't make the same mistake.
- games/acm: the configure script in this port is very old; instead of
patching it more, just replace GNU_CONFIGURE with HAS_CONFIGURE.
- irc/charybdis: it already used /var but adding --localstatedir=/var
changed the behaviour of the configure script; adjust the port to this.
PR: 199506
Exp-run by: antoine
Approved by: portmgr (antoine)
"defined(@array)" and "defined(%hash)" are now fatal errors
These have been deprecated since v5.6.1 and have raised deprecation
warnings since v5.16.
With hat: perl@
Sponsored by: Absolight
- Remove const qualifier from iconv(3) to match POSIX:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/iconv.html
- Patch iconv.h to expose more GNU extensions when LIBICONV_PLUG is
defined because the base system iconv supports these extensions too.
Add/remove patches to/from ports to call iconv with non-const arguments.
This breaks some ports on FreeBSD 10 because base system iconv.h still has
the const qualifier. Fix this by letting USES=iconv add a build dependency
on converters/libiconv so ports can use its iconv.h (with LIBICONV_PLUG
defined) instead of the base system iconv.h.
This exposed some ports that link with libiconv when it is available instead
of using libc iconv. In these cases one of the following changes has been
made:
- patch configure scripts to test for libc iconv first
- add ac_cv_lib_iconv_libiconv=no or similar to CONFIGURE_ARGS to disable
some configure tests
- converters/wkhtmltopdf: this includes Qt4 so add a patch from devel/qt4
- lang/gcc5-aux: respect CFLAGS and friends during configure such that
LIBICONV_PLUG is defined in the iconv test, also switch to external
gettext
- mail/gnarwl: replace patches with CPPFLAGS/LIBS
- multimedia/ffmpeg2theora: remove iconv test from SConstruct and use
ICONV_LIB in port Makefile instead, also fix a bug in subtitles.c
- net-im/licq: finish conversion to cmake
- net-mgmt/bandwidthd, net-mgmt/icinga, net-mgmt/nagios, net-mgmt/nagios4:
don't need iconv
- textproc/p5-XML-TinyXML: finish conversion to USES=perl5
Other changes:
- databases/qdbm and slaves: respect CFLAGS and friends, also enable bzip2
and lzo support
- games/ldmud: respect CFLAGS and friends
- graphics/inventor: replace some patches with MAKE_ARGS/MAKE_ENV to respect
CFLAGS and friends, also remove FreeBSD/alpha patch and add missing xorg
dependencies
PR: 199099
Exp-run by: antoine
Approved by: portmgr (antoine)