freebsd-ports/Mk/Uses
Raphael Kubo da Costa f358732b18 Uses/iconv.mk: Set iconv-related CMake variables.
The way we deal with iconv in base and ports across different FreeBSD
releases is complicated: 9.x does not have iconv.h in base, 10.1 has it with
a different prototype for iconv(3) and later versions have the right
iconv(3) prototype. And, in some cases (USES=iconv:{translit,wchar_t}), we
must always use the libiconv port.

This is why there are so many checks in Uses/iconv.mk: we need to know the
situation we currently have in order to decide whether to pull iconv from
converters/libiconv, whether to just use its header (and pull the library
from base) or whether to use everything from base.

r384038 adjusted several CMake-based ports, but did so in a way that was not
very scalable and required a few intrusive patches to some ports. Most ports
that have both USES=cmake and USES=iconv use variations of FindIconv.cmake
that behave similarly. This change passes the header and library values we
really want to use to CMake using the most common variable names, bypassing
the calls to find_path() and find_library() that would sometimes end up
finding the wrong file. The few ports that use different variable names have
had their Makefiles adjusted (we manually pass the values we want via
CMAKE_ARGS).

Other changes:
- chinese/fcitx: Explicitly set LIBICONV_LIBC_HAS_ICONV_OPEN=OFF as we
  always want the version from ports because of USES=iconv:wchar_t.
- editors/calligra: Explicitly use iconv:translit because Kexi needs it.
- irc/weechat and irc/weechat-devel: The FindIconv.cmake patches could not
  be entirely removed because the check_library_exists() calls are wrong.
  Sent upstream: https://github.com/weechat/weechat/pull/513
- textproc/ctpp2: Use iconv:translit when the TRANSLITERATE option is used.

PORTREVISION has been bumped in editors/calligra and textproc/ctpp2 because
their dependency list has changed in 10.2 and later as the ports version is
always used now.

PR:		202798
Reviewed by:	antoine, tijl
Approved by:	portmgr (antoine)
2015-09-03 15:44:13 +00:00
..
ada.mk Ada Framework: Switch to gcc5-aux, upgrade 6 packages at once 2015-06-23 22:20:35 +00:00
alias.mk - Instead of limiting effect of alias.mk to DragonFly, extend it to everything which is not FreeBSD 2015-07-03 16:54:08 +00:00
autoreconf.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
bison.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
blaslapack.mk Adding ports/Mk/Uses/blaslapack.mk. 2015-01-05 20:43:02 +00:00
charsetfix.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
cmake.mk Uses/cmake.mk: Replace CMAKE_ENV with CONFIGURE_ENV. 2015-08-18 10:51:01 +00:00
compiler.mk Bump the version of clang to 3.6 when c++14-lang is specified 2015-08-08 21:38:18 +00:00
cpe.mk CPE strings are all lower case. 2015-04-02 15:02:44 +00:00
cran.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
desktop-file-utils.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
desthack.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
display.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
dos2unix.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
drupal.mk Cleanup plist a bit, DRUPAL_MODDIR and DRUPAL_BASE belong to drupal ports, 2014-11-15 17:05:44 +00:00
elixir.mk Not all Hex package specifications start with the '~' character, 2015-07-27 15:34:25 +00:00
erlang.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
execinfo.mk - Set variables with libexecinfo preprocessor and linker flags 2015-04-16 14:15:12 +00:00
fakeroot.mk Only the definition of the fakeroot command should conditioned to the UID 2014-12-18 08:30:20 +00:00
fam.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
fmake.mk Allow user to override MAKE_CMD without breaking gmake/fmake/scons ports. 2015-03-23 03:59:04 +00:00
fonts.mk Prevent double inclusion 2015-06-12 19:52:27 +00:00
fortran.mk Move LANG_GCC_IS from bsd.gcc.mk to bsd.default-versions.mk and use 2015-01-26 00:03:46 +00:00
fuse.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
gecko.mk - Update Firefox to 40.0 2015-08-07 12:02:41 +00:00
gettext-runtime.mk Split devel/gettext in devel/gettext-runtime and devel/gettext-tools. The 2014-11-29 18:22:32 +00:00
gettext-tools.mk Split devel/gettext in devel/gettext-runtime and devel/gettext-tools. The 2014-11-29 18:22:32 +00:00
gettext.mk Split devel/gettext in devel/gettext-runtime and devel/gettext-tools. The 2014-11-29 18:22:32 +00:00
ghostscript.mk - Split ghostscript into X11-independent and -dependent parts: 2015-08-22 17:48:35 +00:00
gmake.mk Allow user to override MAKE_CMD without breaking gmake/fmake/scons ports. 2015-03-23 03:59:04 +00:00
gnustep.mk Update GNUstep ports to their latest versions. 2015-07-01 13:50:28 +00:00
gperf.mk Fix typo 2014-10-07 16:45:30 +00:00
gssapi.mk Add missing GSSAPI{LIB,INC}DIR when :mit is specified. 2014-12-02 23:45:15 +00:00
horde.mk Use "horde" as default CPE vendor for all horde applications 2015-04-15 11:13:49 +00:00
iconv.mk Uses/iconv.mk: Set iconv-related CMake variables. 2015-09-03 15:44:13 +00:00
imake.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
jpeg.mk Add USES=jpeg, to handle dependency on a jpeg library 2015-06-22 18:30:35 +00:00
kmod.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
lha.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
libarchive.mk Add 3 new uses 2015-07-19 14:36:00 +00:00
libedit.mk Add 3 new uses 2015-07-19 14:36:00 +00:00
libtool.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
localbase.mk Uses/localbase.mk: Set CMAKE_PREFIX_PATH. 2015-08-20 12:51:50 +00:00
lua.mk bye lua@ 2015-04-16 12:44:17 +00:00
makeinfo.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
makeself.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
metaport.mk meta ports are always NO_ARCH 2015-04-01 17:59:57 +00:00
mono.mk Set an arbitrary time-zone. 2015-03-10 12:58:43 +00:00
motif.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
ncurses.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
ninja.mk - Make it possible to override _MAKE_JOBS when MAKE_JOBS_NUMBER=1 2015-04-10 05:45:15 +00:00
objc.mk Update GNUstep ports to their latest versions. 2015-07-01 13:50:28 +00:00
openal.mk Replace USES=libtool:oldver with USES=libtool or USES=libtool:keepla in 2014-12-08 16:48:38 +00:00
pathfix.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
pear.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
perl5.mk To ease up with future upgrades, move PERL_VERSION into a separate file. 2015-08-31 13:17:48 +00:00
pgsql.mk - Fix dependencies on docs, plperl, pltcl 2015-07-07 21:31:39 +00:00
pkgconfig.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
pure.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
python.mk Pass the default Python version (or the version required by port) 2015-06-10 09:23:54 +00:00
qmail.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
qmake.mk Update Qt5 ports to 5.3.2. 2014-11-05 09:39:21 +00:00
readline.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
scons.mk Allow user to override MAKE_CMD without breaking gmake/fmake/scons ports. 2015-03-23 03:59:04 +00:00
shared-mime-info.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
shebangfix.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
tar.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
tcl.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
tk.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
twisted.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
uidfix.mk Always define GID, this fixes build of uidfix when building as root 2015-06-04 11:53:06 +00:00
uniquefiles.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
waf.mk Fix a typo 2015-04-08 18:32:18 +00:00
webplugin.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00
xfce.mk USES=xfce: Stop overriding MASTER_SITE_SUBDIR. 2015-04-28 17:01:46 +00:00
zip.mk Change the way USES is handled: 2014-09-28 16:36:31 +00:00
zope.mk Rewrite the target ordering code. 2015-08-17 13:31:25 +00:00