[Midnightbsd-cvs] mports [23610] trunk/Mk/extensions/iconv.mk: add iconv paths

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Sun Jul 15 15:56:21 EDT 2018


Revision: 23610
          http://svnweb.midnightbsd.org/mports/?rev=23610
Author:   laffer1
Date:     2018-07-15 15:56:21 -0400 (Sun, 15 Jul 2018)
Log Message:
-----------
add iconv paths

Modified Paths:
--------------
    trunk/Mk/extensions/iconv.mk

Modified: trunk/Mk/extensions/iconv.mk
===================================================================
--- trunk/Mk/extensions/iconv.mk	2018-07-15 19:55:01 UTC (rev 23609)
+++ trunk/Mk/extensions/iconv.mk	2018-07-15 19:56:21 UTC (rev 23610)
@@ -20,13 +20,15 @@
 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
+BUILD_DEPENDS+=	${ICONV_CMD}:converters/libiconv
 .elif ${iconv_ARGS:Mpatch}
-PATCH_DEPENDS+=	${ICONV_CMD}:${PORTSDIR}/converters/libiconv
+PATCH_DEPENDS+=	${ICONV_CMD}:converters/libiconv
 .else
-LIB_DEPENDS+=	libiconv.so:${PORTSDIR}/converters/libiconv
+LIB_DEPENDS+=	libiconv.so:converters/libiconv
 .endif
 
 .else
@@ -36,15 +38,32 @@
 ICONV_PREFIX=	/usr
 ICONV_CONFIGURE_ARG=
 ICONV_CONFIGURE_BASE=
+ICONV_INCLUDE_PATH=	/usr/include
+ICONV_LIB_PATH=		/usr/lib/libc.so
 
 .if exists(${LOCALBASE}/include/iconv.h)
-BUILD_DEPENDS+=	libiconv>=1.14_8:${PORTSDIR}/converters/libiconv
+# Check that libiconv iconv.h is recent enough for LIBICONV_PLUG to work.
+BUILD_DEPENDS+=	libiconv>=1.14_11:converters/libiconv
+.endif
+
+# LIBICONV_PLUG makes libiconv iconv.h act like libc iconv.h.
 CPPFLAGS+=	-DLIBICONV_PLUG
 CFLAGS+=	-DLIBICONV_PLUG
 CXXFLAGS+=	-DLIBICONV_PLUG
 OBJCFLAGS+=	-DLIBICONV_PLUG
-.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



More information about the Midnightbsd-cvs mailing list