summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaphael Kubo da Costa <rakuco@FreeBSD.org>2015-09-03 15:44:13 +0000
committerRaphael Kubo da Costa <rakuco@FreeBSD.org>2015-09-03 15:44:13 +0000
commitf358732b18188c53c785bb25749c9e2546a6efe9 (patch)
tree05f83f4626cc97a41e5a29dca71409286f46ae35
parentf8ac405eb53d03a5b0bb00134ceb82a6474b6743 (diff)
downloadfreebsd-ports-f358732b18188c53c785bb25749c9e2546a6efe9.zip
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)
-rw-r--r--Mk/Uses/iconv.mk17
-rw-r--r--audio/tagutil/files/patch-FindIconv.cmake31
-rw-r--r--chinese/fcitx/Makefile1
-rw-r--r--chinese/fcitx/files/patch-cmake__FindLibiconv.cmake11
-rw-r--r--deskutils/libstreamanalyzer/Makefile8
-rw-r--r--deskutils/libstreams/Makefile8
-rw-r--r--editors/calligra/Makefile6
-rw-r--r--irc/weechat-devel/Makefile3
-rw-r--r--irc/weechat-devel/files/patch-cmake-FindIconv.cmake65
-rw-r--r--irc/weechat/Makefile3
-rw-r--r--irc/weechat/files/patch-cmake-FindIconv.cmake65
-rw-r--r--mail/libvmime/files/patch-cmake__FindIconv.cmake35
-rw-r--r--net-im/licq/files/patch-cmake-Modules-FindIconv.cmake31
-rw-r--r--textproc/ctpp2/Makefile15
-rw-r--r--textproc/ctpp2/files/patch-CMakeLists.txt9
-rw-r--r--textproc/simplexml/Makefile2
-rw-r--r--textproc/simplexml/files/patch-cmake__FindIconv.cmake60
-rw-r--r--textproc/wbxml2/files/patch-cmake-modules-FindIconv.cmake32
18 files changed, 51 insertions, 351 deletions
diff --git a/Mk/Uses/iconv.mk b/Mk/Uses/iconv.mk
index fa7a4598ff2c..a0abf940122b 100644
--- a/Mk/Uses/iconv.mk
+++ b/Mk/Uses/iconv.mk
@@ -20,6 +20,8 @@ ICONV_LIB= -liconv
ICONV_PREFIX= ${LOCALBASE}
ICONV_CONFIGURE_ARG= --with-libiconv-prefix=${LOCALBASE}
ICONV_CONFIGURE_BASE= --with-libiconv=${LOCALBASE}
+ICONV_INCLUDE_PATH= ${LOCALBASE}/include
+ICONV_LIB_PATH= ${LOCALBASE}/lib/libiconv.so
.if ${iconv_ARGS:Mbuild}
BUILD_DEPENDS+= ${ICONV_CMD}:${PORTSDIR}/converters/libiconv
@@ -36,6 +38,8 @@ ICONV_LIB=
ICONV_PREFIX= /usr
ICONV_CONFIGURE_ARG=
ICONV_CONFIGURE_BASE=
+ICONV_INCLUDE_PATH= /usr/include
+ICONV_LIB_PATH= /usr/lib/libc.so
.if ${OPSYS} == DragonFly || (${OPSYS} == FreeBSD && (${OSVERSION} < 1001514 \
|| (${OSVERSION} >= 1100000 && ${OSVERSION} < 1100069))) \
@@ -45,8 +49,21 @@ CPPFLAGS+= -DLIBICONV_PLUG
CFLAGS+= -DLIBICONV_PLUG
CXXFLAGS+= -DLIBICONV_PLUG
OBJCFLAGS+= -DLIBICONV_PLUG
+ICONV_INCLUDE_PATH= ${LOCALBASE}/include
.endif
.endif
+# These are the most common names for the iconv-related variables found in
+# CMake-based ports. We set them here via CMAKE_ARGS to make sure that the best
+# combination is always used (ie. we prefer the version in libc whenever it is
+# available, and sometimes have to fall back to the iconv.h header from ports
+# while still using the library from base).
+CMAKE_ARGS+= -DICONV_INCLUDE_DIR=${ICONV_INCLUDE_PATH} \
+ -DICONV_LIBRARIES=${ICONV_LIB_PATH} \
+ -DICONV_LIBRARY=${ICONV_LIB_PATH} \
+ -DLIBICONV_INCLUDE_DIR=${ICONV_INCLUDE_PATH} \
+ -DLIBICONV_LIBRARIES=${ICONV_LIB_PATH} \
+ -DLIBICONV_LIBRARY=${ICONV_LIB_PATH}
+
.endif
diff --git a/audio/tagutil/files/patch-FindIconv.cmake b/audio/tagutil/files/patch-FindIconv.cmake
deleted file mode 100644
index 2cbf4f8c659d..000000000000
--- a/audio/tagutil/files/patch-FindIconv.cmake
+++ /dev/null
@@ -1,31 +0,0 @@
---- FindIconv.cmake.orig 2014-07-23 14:37:21 UTC
-+++ FindIconv.cmake
-@@ -9,6 +9,7 @@
- # ICONV_SECOND_ARGUMENT_IS_CONST - the second argument for iconv() is const
- #
- include(CheckCSourceCompiles)
-+include(CheckFunctionExists)
-
- IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
- # Already in cache, be silent
-@@ -17,11 +18,15 @@ ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRA
-
- FIND_PATH(ICONV_INCLUDE_DIR iconv.h)
-
--FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c)
--
--IF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-- SET(ICONV_FOUND TRUE)
--ENDIF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-+IF(ICONV_INCLUDE_DIR)
-+ CHECK_FUNCTION_EXISTS(iconv ICONV_FOUND)
-+ IF(NOT ICONV_FOUND)
-+ FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2)
-+ IF(ICONV_LIBRARIES)
-+ SET(ICONV_FOUND TRUE)
-+ ENDIF(ICONV_LIBRARIES)
-+ ENDIF(NOT ICONV_FOUND)
-+ENDIF(ICONV_INCLUDE_DIR)
-
- set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES})
diff --git a/chinese/fcitx/Makefile b/chinese/fcitx/Makefile
index 9090d8ed900a..65f5c6641ee0 100644
--- a/chinese/fcitx/Makefile
+++ b/chinese/fcitx/Makefile
@@ -50,6 +50,7 @@ TPUNC_DESC= Use traditional quotation marks
.include <bsd.port.options.mk>
CMAKE_ARGS+= -DENABLE_XDGAUTOSTART=OFF -DFORCE_ENCHANT=ON \
+ -DLIBICONV_LIBC_HAS_ICONV_OPEN=OFF \
-DDATADIR=${DATADIR} \
-DDOCSDIR=${DOCSDIR} \
-DGOBJECT_INTROSPECTION_GIRDIR=${PREFIX}/share/gir-1.0 \
diff --git a/chinese/fcitx/files/patch-cmake__FindLibiconv.cmake b/chinese/fcitx/files/patch-cmake__FindLibiconv.cmake
deleted file mode 100644
index 5c90942bc345..000000000000
--- a/chinese/fcitx/files/patch-cmake__FindLibiconv.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
---- cmake/FindLibiconv.cmake.orig 2015-04-03 02:44:55.321687654 +0000
-+++ cmake/FindLibiconv.cmake 2015-04-03 02:46:05.734216729 +0000
-@@ -30,7 +30,7 @@ set(LIBICONV_LIB_FOUND FALSE)
-
- if(LIBICONV_INCLUDE_DIR)
- include(CheckFunctionExists)
-- check_function_exists(iconv_open LIBICONV_LIBC_HAS_ICONV_OPEN)
-+ set(LIBICONV_LIBC_HAS_ICONV_OPEN FALSE)
-
- if (LIBICONV_LIBC_HAS_ICONV_OPEN)
- set(LIBICONV_LIBRARIES)
diff --git a/deskutils/libstreamanalyzer/Makefile b/deskutils/libstreamanalyzer/Makefile
index 5ec463c7c95a..95fe312af6d4 100644
--- a/deskutils/libstreamanalyzer/Makefile
+++ b/deskutils/libstreamanalyzer/Makefile
@@ -36,10 +36,4 @@ post-patch:
${WRKSRC}/libstreamanalyzer/CMakeLists.txt
.include <${.CURDIR}/../strigi/Makefile.common>
-.include <bsd.port.pre.mk>
-
-.if empty(ICONV_LIB)
-CMAKE_ARGS+= -DICONV_LIBRARIES:STRING="/usr/lib/libc.so"
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/deskutils/libstreams/Makefile b/deskutils/libstreams/Makefile
index d5096edd6192..b71d4da11134 100644
--- a/deskutils/libstreams/Makefile
+++ b/deskutils/libstreams/Makefile
@@ -18,10 +18,4 @@ post-patch:
${WRKSRC}/libstreams/CMakeLists.txt
.include <${.CURDIR}/../strigi/Makefile.common>
-.include <bsd.port.pre.mk>
-
-.if empty(ICONV_LIB)
-CMAKE_ARGS+= -DICONV_LIBRARIES:STRING="/usr/lib/libc.so"
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/editors/calligra/Makefile b/editors/calligra/Makefile
index 76001990f411..b5dc8211c37a 100644
--- a/editors/calligra/Makefile
+++ b/editors/calligra/Makefile
@@ -2,7 +2,7 @@
PORTNAME= calligra
PORTVERSION= ${CALLIGRA_VERSION}
-PORTREVISION= 17
+PORTREVISION= 18
CATEGORIES= editors kde
MASTER_SITES= KDE/${CALLIGRA_BRANCH}/${PORTNAME}-${PORTVERSION}
DIST_SUBDIR= KDE
@@ -42,8 +42,8 @@ USE_QT4= corelib dbus designer_build gui opengl phonon porting_build \
qt3support qtestlib_build script sql svg webkit xml xmlpatterns \
moc_build qmake_build rcc_build uic_build uic3_build
USE_SQLITE= 3
-USES= cmake:outsource cpe compiler:c++11-lang iconv jpeg perl5 pkgconfig tar:xz\
- shared-mime-info
+USES= cmake:outsource cpe compiler:c++11-lang iconv:translit jpeg \
+ perl5 pkgconfig shared-mime-info tar:xz
CMAKE_ARGS= -DCMAKE_INCLUDE_PATH:STRING="${QT_INCDIR} ${LOCALBASE}/include" \
-DPRODUCTSET:STRING="DESKTOP"
USE_LDCONFIG= yes
diff --git a/irc/weechat-devel/Makefile b/irc/weechat-devel/Makefile
index 7d42b407ea47..fb35a7134a1a 100644
--- a/irc/weechat-devel/Makefile
+++ b/irc/weechat-devel/Makefile
@@ -22,7 +22,8 @@ CONFLICTS= weechat-0.3*
USE_LDCONFIG= yes
USES= cmake iconv ncurses
-CMAKE_ARGS+= -DENABLE_GUILE=no
+CMAKE_ARGS+= -DENABLE_GUILE=no \
+ -DICONV_INCLUDE_PATH=${ICONV_INCLUDE_PATH}
CFLAGS+= -I${LOCALBASE}/include -L${LOCALBASE}/lib
GITDESC= v0.4.3-14-gc324610
diff --git a/irc/weechat-devel/files/patch-cmake-FindIconv.cmake b/irc/weechat-devel/files/patch-cmake-FindIconv.cmake
index a40e3d92ff8a..eef7422b85cc 100644
--- a/irc/weechat-devel/files/patch-cmake-FindIconv.cmake
+++ b/irc/weechat-devel/files/patch-cmake-FindIconv.cmake
@@ -1,63 +1,14 @@
---- cmake/FindIconv.cmake.orig 2014-02-13 15:09:35 UTC
+--- cmake/FindIconv.cmake
+++ cmake/FindIconv.cmake
-@@ -33,39 +33,24 @@ IF(ICONV_FOUND)
- set(ICONV_FIND_QUIETLY TRUE)
- ENDIF(ICONV_FOUND)
-
--INCLUDE(CheckLibraryExists)
- INCLUDE(CheckFunctionExists)
-
--FIND_PATH(ICONV_INCLUDE_PATH
-- NAMES iconv.h
-- PATHS /usr/include /usr/local/include /usr/pkg/include
--)
--
--FIND_LIBRARY(ICONV_LIBRARY
-- NAMES iconv
-- PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
--)
-+FIND_PATH(ICONV_INCLUDE_PATH iconv.h)
+@@ -48,9 +48,8 @@ find_library(ICONV_LIBRARY
IF(ICONV_INCLUDE_PATH)
-- IF(ICONV_LIBRARY)
+ IF(ICONV_LIBRARY)
- STRING(REGEX REPLACE "/[^/]*$" "" ICONV_LIB_PATH "${ICONV_LIBRARY}")
- CHECK_LIBRARY_EXISTS(iconv libiconv_open ${ICONV_LIB_PATH} LIBICONV_OPEN_FOUND)
- CHECK_LIBRARY_EXISTS(iconv iconv_open ${ICONV_LIB_PATH} ICONV_OPEN_FOUND)
-- IF(LIBICONV_OPEN_FOUND OR ICONV_OPEN_FOUND)
-- SET(ICONV_FOUND TRUE)
-- ENDIF(LIBICONV_OPEN_FOUND OR ICONV_OPEN_FOUND)
-- ELSE(ICONV_LIBRARY)
-- CHECK_FUNCTION_EXISTS(iconv_open ICONV_FOUND)
-- ENDIF(ICONV_LIBRARY)
-+ CHECK_FUNCTION_EXISTS(iconv ICONV_FOUND)
-+ IF(NOT ICONV_FOUND)
-+ FIND_LIBRARY(ICONV_LIBRARY NAMES iconv libiconv libiconv-2)
-+ IF(ICONV_LIBRARY)
-+ SET(ICONV_FOUND TRUE)
-+ ENDIF(ICONV_LIBRARY)
-+ ENDIF(NOT ICONV_FOUND)
- ENDIF(ICONV_INCLUDE_PATH)
-
- include(CheckCSourceCompiles)
-
--IF(ICONV_LIBRARY)
-- SET(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARY})
-- SET(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_PATH})
--ENDIF(ICONV_LIBRARY)
--
-+SET(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARY})
-+SET(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_PATH})
- SET(CMAKE_REQUIRED_FLAGS -Werror)
- check_c_source_compiles("
- #include <iconv.h>
-@@ -79,6 +64,10 @@ check_c_source_compiles("
- return 0;
- }
- " ICONV_2ARG_IS_CONST)
-+SET(CMAKE_REQUIRED_LIBRARIES)
-+SET(CMAKE_REQUIRED_INCLUDES)
-+SET(CMAKE_REQUIRED_FLAGS)
-+
- MARK_AS_ADVANCED(
- ICONV_INCLUDE_PATH
- ICONV_LIBRARY
++ CHECK_LIBRARY_EXISTS("${ICONV_LIBRARY}" libiconv_open "" LIBICONV_OPEN_FOUND)
++ CHECK_LIBRARY_EXISTS("${ICONV_LIBRARY}" iconv_open "" ICONV_OPEN_FOUND)
+ IF(LIBICONV_OPEN_FOUND OR ICONV_OPEN_FOUND)
+ SET(ICONV_FOUND TRUE)
+ ENDIF()
diff --git a/irc/weechat/Makefile b/irc/weechat/Makefile
index 4074e1983e6f..077a51ebf9ca 100644
--- a/irc/weechat/Makefile
+++ b/irc/weechat/Makefile
@@ -19,7 +19,8 @@ CONFLICTS= weechat-devel-[0-9]*
USE_LDCONFIG= yes
USES= cmake iconv ncurses
-CMAKE_ARGS+= -DENABLE_GUILE=no
+CMAKE_ARGS+= -DENABLE_GUILE=no \
+ -DICONV_INCLUDE_PATH=${ICONV_INCLUDE_PATH}
CFLAGS+= -I${LOCALBASE}/include -L${LOCALBASE}/lib
LIB_DEPENDS+= libcurl.so:${PORTSDIR}/ftp/curl \
diff --git a/irc/weechat/files/patch-cmake-FindIconv.cmake b/irc/weechat/files/patch-cmake-FindIconv.cmake
index ae48f766b322..d2f1e366d2a8 100644
--- a/irc/weechat/files/patch-cmake-FindIconv.cmake
+++ b/irc/weechat/files/patch-cmake-FindIconv.cmake
@@ -1,63 +1,14 @@
---- cmake/FindIconv.cmake.orig 2015-01-25 07:40:23 UTC
+--- cmake/FindIconv.cmake
+++ cmake/FindIconv.cmake
-@@ -33,39 +33,24 @@ if(ICONV_FOUND)
- set(ICONV_FIND_QUIETLY TRUE)
- endif()
-
--include(CheckLibraryExists)
- include(CheckFunctionExists)
-
--find_path(ICONV_INCLUDE_PATH
-- NAMES iconv.h
-- PATHS /usr/include /usr/local/include /usr/pkg/include
--)
--
--find_library(ICONV_LIBRARY
-- NAMES iconv
-- PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
--)
-+find_path(ICONV_INCLUDE_PATH iconv.h)
+@@ -48,9 +48,8 @@ find_library(ICONV_LIBRARY
if(ICONV_INCLUDE_PATH)
-- if(ICONV_LIBRARY)
+ if(ICONV_LIBRARY)
- string(REGEX REPLACE "/[^/]*$" "" ICONV_LIB_PATH "${ICONV_LIBRARY}")
- check_library_exists(iconv libiconv_open ${ICONV_LIB_PATH} LIBICONV_OPEN_FOUND)
- check_library_exists(iconv iconv_open ${ICONV_LIB_PATH} ICONV_OPEN_FOUND)
-- if(LIBICONV_OPEN_FOUND OR ICONV_OPEN_FOUND)
-- set(ICONV_FOUND TRUE)
-- endif()
-- else()
-- check_function_exists(iconv_open ICONV_FOUND)
-- endif()
-+ check_function_exists(iconv ICONV_FOUND)
-+ if(NOT ICONV_FOUND)
-+ find_library(ICONV_LIBRARY NAMES iconv libiconv libiconv-2)
-+ if(ICONV_LIBRARY)
-+ set(ICONV_FOUND TRUE)
-+ endif(ICONV_LIBRARY)
-+ endif(NOT ICONV_FOUND)
- endif()
-
- include(CheckCSourceCompiles)
-
--if(ICONV_LIBRARY)
-- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARY})
-- set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_PATH})
--endif()
--
-+set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARY})
-+set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_PATH})
- set(CMAKE_REQUIRED_FLAGS -Werror)
- check_c_source_compiles("
- #include <iconv.h>
-@@ -80,6 +65,10 @@ check_c_source_compiles("
- }
- " ICONV_2ARG_IS_CONST)
-
-+set(CMAKE_REQUIRED_LIBRARIES)
-+set(CMAKE_REQUIRED_INCLUDES)
-+set(CMAKE_REQUIRED_FLAGS)
-+
- mark_as_advanced(
- ICONV_INCLUDE_PATH
- ICONV_LIBRARY
++ check_library_exists("${ICONV_LIBRARY}" libiconv_open "" LIBICONV_OPEN_FOUND)
++ check_library_exists("${ICONV_LIBRARY}" iconv_open "" ICONV_OPEN_FOUND)
+ if(LIBICONV_OPEN_FOUND OR ICONV_OPEN_FOUND)
+ set(ICONV_FOUND TRUE)
+ endif()
diff --git a/mail/libvmime/files/patch-cmake__FindIconv.cmake b/mail/libvmime/files/patch-cmake__FindIconv.cmake
deleted file mode 100644
index 9b35d3ffafa7..000000000000
--- a/mail/libvmime/files/patch-cmake__FindIconv.cmake
+++ /dev/null
@@ -1,35 +0,0 @@
---- cmake/FindIconv.cmake.orig 2014-06-30 20:48:42 UTC
-+++ cmake/FindIconv.cmake
-@@ -7,6 +7,7 @@
- # ICONV_SECOND_ARGUMENT_IS_CONST - the second argument for iconv() is const
- #
- include(CheckCXXSourceCompiles)
-+include(CheckFunctionExists)
-
- IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
- # Already in cache, be silent
-@@ -15,15 +16,15 @@ ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRA
-
- FIND_PATH(ICONV_INCLUDE_DIR iconv.h)
-
--IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-- FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c HINTS "/opt/local/lib")
--ELSE()
-- FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c)
--ENDIF()
--
--IF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-- SET(ICONV_FOUND TRUE)
--ENDIF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-+IF(ICONV_INCLUDE_DIR)
-+ CHECK_FUNCTION_EXISTS(iconv ICONV_FOUND)
-+ IF(NOT ICONV_FOUND)
-+ FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2)
-+ IF(ICONV_LIBRARIES)
-+ SET(ICONV_FOUND TRUE)
-+ ENDIF(ICONV_LIBRARIES)
-+ ENDIF(NOT ICONV_FOUND)
-+ENDIF(ICONV_INCLUDE_DIR)
-
- set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES})
diff --git a/net-im/licq/files/patch-cmake-Modules-FindIconv.cmake b/net-im/licq/files/patch-cmake-Modules-FindIconv.cmake
deleted file mode 100644
index caa0375c4808..000000000000
--- a/net-im/licq/files/patch-cmake-Modules-FindIconv.cmake
+++ /dev/null
@@ -1,31 +0,0 @@
---- cmake/Modules/FindIconv.cmake.orig 2014-06-01 19:16:42 UTC
-+++ cmake/Modules/FindIconv.cmake
-@@ -10,6 +10,7 @@
- #
- include(CheckCCompilerFlag)
- include(CheckCXXSourceCompiles)
-+include(CheckFunctionExists)
-
- IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
- # Already in cache, be silent
-@@ -18,11 +19,15 @@ ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRA
-
- FIND_PATH(ICONV_INCLUDE_DIR iconv.h)
-
--FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv c)
--
--IF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-- SET(ICONV_FOUND TRUE)
--ENDIF(ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-+IF(ICONV_INCLUDE_DIR)
-+ CHECK_FUNCTION_EXISTS(iconv ICONV_FOUND)
-+ IF(NOT ICONV_FOUND)
-+ FIND_LIBRARY(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2)
-+ IF(ICONV_LIBRARIES)
-+ SET(ICONV_FOUND TRUE)
-+ ENDIF(ICONV_LIBRARIES)
-+ ENDIF(NOT ICONV_FOUND)
-+ENDIF(ICONV_INCLUDE_DIR)
-
- set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES})
diff --git a/textproc/ctpp2/Makefile b/textproc/ctpp2/Makefile
index 54bb662c9ca1..a6d172cf377d 100644
--- a/textproc/ctpp2/Makefile
+++ b/textproc/ctpp2/Makefile
@@ -3,16 +3,17 @@
PORTNAME= ctpp2
PORTVERSION= 2.8.3
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc devel
MASTER_SITES= http://ctpp.havoc.ru/download/
MAINTAINER= vg@FreeBSD.org
COMMENT= C++ library to use templates in C/C++ projects, version 2
-USES= cmake gettext iconv compiler:c++11-lang
+USES= cmake gettext compiler:c++11-lang
USE_LDCONFIG= yes
+CMAKE_ARGS= -DICONV_INCLUDE=${ICONV_INCLUDE_PATH}
PLIST_SUB+= PORTVERSION=${PORTVERSION}
OPTIONS_DEFINE= DEBUG DISCARD_ILSEQ DOCS MD5 OPTIMIZATION TRANSLITERATE
@@ -36,15 +37,11 @@ DISCARD_ILSEQ_CMAKE_ON= -DICONV_DISCARD_ILSEQ=ON
DISCARD_ILSEQ_CMAKE_OFF= -DICONV_DISCARD_ILSEQ=OFF
TRANSLITERATE_CMAKE_ON= -DICONV_TRANSLITERATE=ON
TRANSLITERATE_CMAKE_OFF= -DICONV_TRANSLITERATE=OFF
+TRANSLITERATE_USES= iconv:translit
+TRANSLITERATE_USES_OFF= iconv
OPTIMIZATION_CMAKE_ON= -DENABLE_OPTIMIZATION=ON
OPTIMIZATION_CMAKE_OFF= -DENABLE_OPTIMIZATION=OFF
PORTDOCS= template_language.html
-.include <bsd.port.pre.mk>
-
-.if empty(ICONV_LIB)
-CMAKE_ARGS+= -DSKIP_ICONV_LIRARY:STRING=ON
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/textproc/ctpp2/files/patch-CMakeLists.txt b/textproc/ctpp2/files/patch-CMakeLists.txt
index 6bb3ec0df3f6..378a5bbf614b 100644
--- a/textproc/ctpp2/files/patch-CMakeLists.txt
+++ b/textproc/ctpp2/files/patch-CMakeLists.txt
@@ -8,15 +8,6 @@
# Build optimized code for following CPU (default i386)
#SET(CPU_TUNE "i686")
-@@ -272,7 +273,7 @@
- INCLUDE_DIRECTORIES(${ICONV_INCLUDE})
-
- IF (NOT "${SKIP_ICONV_LIRARY}" MATCHES "ON")
-- FIND_LIBRARY(ICONV_LIBRARY NAMES iconv PATHS /lib
-+ FIND_LIBRARY(ICONV_LIBRARY NAMES iconv libiconv c PATHS /lib
- /opt/lib
- /usr/lib
- /usr/local/lib
@@ -660,6 +661,8 @@
SET_TESTS_PROPERTIES(Calls_D PROPERTIES DEPENDS Calls_R)
ENDIF (DIFF_EXECUTABLE)
diff --git a/textproc/simplexml/Makefile b/textproc/simplexml/Makefile
index dba29260a152..ecf2ce49ef9a 100644
--- a/textproc/simplexml/Makefile
+++ b/textproc/simplexml/Makefile
@@ -17,6 +17,8 @@ LIB_DEPENDS= libexpat.so:${PORTSDIR}/textproc/expat2
USES= cmake iconv
USE_LDCONFIG= yes
+CMAKE_ARGS= -DIconv_LIBRARY=${ICONV_LIB_PATH}
+
WRKSRC= ${WRKDIR}/${PORTNAME}
.if defined(WITH_DEBUG)
diff --git a/textproc/simplexml/files/patch-cmake__FindIconv.cmake b/textproc/simplexml/files/patch-cmake__FindIconv.cmake
deleted file mode 100644
index b52dadbd0a2f..000000000000
--- a/textproc/simplexml/files/patch-cmake__FindIconv.cmake
+++ /dev/null
@@ -1,60 +0,0 @@
---- cmake/FindIconv.cmake.orig 2010-08-17 10:55:45 UTC
-+++ cmake/FindIconv.cmake
-@@ -30,45 +30,29 @@
- # also defined, but not for general use are
- # Iconv_LIBRARY, where to find the Iconv library.
-
-+include(CheckFunctionExists)
-+
- set(ICONV_H iconv.h)
-
-
- find_path(ICONV_INCLUDE_DIR ${ICONV_H}
-- PATHS /usr/local/include
-- /usr/include
-- NO_DEFAULT_PATH
- DOC "Path to the ${ICONV_H} file"
- )
-
--find_library(Iconv_LIBRARY NAMES iconv
-- PATHS /usr/local/lib
-- /usr/lib
-- NO_DEFAULT_PATH
-- DOC "Library for character set conversion"
--)
--
--if(ICONV_INCLUDE_DIR AND Iconv_LIBRARY)
-- set(Iconv_FOUND TRUE)
--else(ICONV_INCLUDE_DIR AND Iconv_LIBRARY)
-- set(Iconv_FOUND FALSE)
--endif(ICONV_INCLUDE_DIR AND Iconv_LIBRARY)
-+if(ICONV_INCLUDE_DIR)
-+ check_function_exists(iconv Iconv_FOUND)
-+ if(NOT Iconv_FOUND)
-+ find_library(Iconv_LIBRARY NAMES iconv libiconv libiconv-2)
-+ if(Iconv_LIBRARY)
-+ set(Iconv_FOUND TRUE)
-+ endif(Iconv_LIBRARY)
-+ endif(NOT Iconv_FOUND)
-+endif(ICONV_INCLUDE_DIR)
-
- if(Iconv_FOUND)
- if(NOT Iconv_FIND_QUIETLY)
-- message(STATUS "Found Iconv: ${Iconv_LIBARY}")
-+ message(STATUS "Found Iconv: ${Iconv_LIBRARY}")
- endif(NOT Iconv_FIND_QUIETLY)
--else(Iconv_FOUND)
-- if("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
-- if(NOT Iconv_FIND_QUIETLY)
-- if(Iconv_FIND_REQUIRED)
-- message(FATAL_ERROR "Could not find the Iconv Library")
-- else(Iconv_FIND_REQUIRED)
-- message(STATUS "Could not find the Iconv Library")
-- endif(Iconv_FIND_REQUIRED)
-- endif(NOT Iconv_FIND_QUIETLY)
-- else("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
-- set(Iconv_LIBRARY "")
-- endif("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
- endif(Iconv_FOUND)
-
- mark_as_advanced(ICONV_INCLUDE_DIR Iconv_LIBRARY)
diff --git a/textproc/wbxml2/files/patch-cmake-modules-FindIconv.cmake b/textproc/wbxml2/files/patch-cmake-modules-FindIconv.cmake
deleted file mode 100644
index 1b8a36387d22..000000000000
--- a/textproc/wbxml2/files/patch-cmake-modules-FindIconv.cmake
+++ /dev/null
@@ -1,32 +0,0 @@
---- cmake/modules/FindIconv.cmake.orig 2011-01-08 16:22:19 UTC
-+++ cmake/modules/FindIconv.cmake
-@@ -6,6 +6,8 @@
- #
- # Copyright (c) 2010 Michael Bell <michael.bell@web.de>
-
-+include(CheckFunctionExists)
-+
- if (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
- # Already in cache, be silent
- set(ICONV_FIND_QUIETLY TRUE)
-@@ -13,11 +15,15 @@ endif (ICONV_INCLUDE_DIR AND ICONV_LIBRA
-
- find_path(ICONV_INCLUDE_DIR iconv.h)
-
--find_library(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2 c)
--
--if (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-- set (ICONV_FOUND TRUE)
--endif (ICONV_INCLUDE_DIR AND ICONV_LIBRARIES)
-+if (ICONV_INCLUDE_DIR)
-+ check_function_exists(iconv ICONV_FOUND)
-+ if (NOT ICONV_FOUND)
-+ find_library(ICONV_LIBRARIES NAMES iconv libiconv libiconv-2)
-+ if (ICONV_LIBRARIES)
-+ set (ICONV_FOUND TRUE)
-+ endif (ICONV_LIBRARIES)
-+ endif (NOT ICONV_FOUND)
-+endif (ICONV_INCLUDE_DIR)
-
- set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARIES})