diff options
author | Tijl Coosemans <tijl@FreeBSD.org> | 2015-04-15 08:20:27 +0000 |
---|---|---|
committer | Tijl Coosemans <tijl@FreeBSD.org> | 2015-04-15 08:20:27 +0000 |
commit | 074ea5282a00d556c73d86231bec5444990597dc (patch) | |
tree | eec3d608e84e79f0187985e5a1e29cd4f04f13eb /www | |
parent | 522c152d1c7b0c92982e310110fa6d59f915ffeb (diff) | |
download | ports-074ea5282a00d556c73d86231bec5444990597dc.tar.gz ports-074ea5282a00d556c73d86231bec5444990597dc.zip |
converters/libiconv:
- 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)
Notes
Notes:
svn path=/head/; revision=384038
Diffstat (limited to 'www')
-rw-r--r-- | www/anyterm/Makefile | 16 | ||||
-rw-r--r-- | www/anyterm/files/patch-libpbe-include-Iconver.hh | 11 | ||||
-rw-r--r-- | www/htmlcxx/Makefile | 5 | ||||
-rw-r--r-- | www/htmlcxx/files/patch-CharsetConverter.cc | 11 | ||||
-rw-r--r-- | www/httrack/Makefile | 9 | ||||
-rw-r--r-- | www/mod_encoding/Makefile | 11 | ||||
-rw-r--r-- | www/newsbeuter/files/patch-src-utils.cpp | 12 |
7 files changed, 56 insertions, 19 deletions
diff --git a/www/anyterm/Makefile b/www/anyterm/Makefile index feec025e7f49..8166412213a4 100644 --- a/www/anyterm/Makefile +++ b/www/anyterm/Makefile @@ -3,6 +3,7 @@ PORTNAME= anyterm PORTVERSION= 1.1.29 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= http://anyterm.org/download/ \ http://apt.douglasthrift.net/files/${PORTNAME}/ \ @@ -23,12 +24,21 @@ ALL_TARGET= default_target PLIST_FILES= man/man1/anytermd.1.gz \ sbin/anytermd +CPPFLAGS+= -I${LOCALBASE}/include + post-patch: @${REINPLACE_CMD} -e 's|/private/etc/apache2|${FILESDIR}|' \ ${WRKSRC}/scripts/mimetype.sh - @${REINPLACE_CMD} -e 's|^CPP_FLAGS=|&-I${LOCALBASE}/include |' \ - -e 's|^LINK_FLAGS=|&-L${ICONV_PREFIX}/lib ${ICONV_LIB} |' ${WRKSRC}/common.mk - @${REINPLACE_CMD} -e 's|^COMPILE_FLAGS=|&-I${LOCALBASE}/include |' \ + @${REINPLACE_CMD} \ + -e 's|$$(CPP_FLAGS)|& ${CPPFLAGS} |' \ + -e '/^COMPILE_FLAGS=/s|$$| ${CXXFLAGS}|' \ + -e 's|$${OPTIMISE_FLAGS}||' \ + -e 's|$$(LINK_FLAGS)|& -L${ICONV_PREFIX}/lib ${ICONV_LIB} |' \ + ${WRKSRC}/common.mk + @${REINPLACE_CMD} \ + -e '/^COMPILE_FLAGS=/s|$$| ${CXXFLAGS}|' \ + -e 's|$$(INC_FLAGS)|& ${CPPFLAGS} |' \ + -e 's|$$(CXXFLAGS)||' -e 's|$$(OPTIMISE_FLAGS)||' \ ${WRKSRC}/libpbe/common.mk do-install: diff --git a/www/anyterm/files/patch-libpbe-include-Iconver.hh b/www/anyterm/files/patch-libpbe-include-Iconver.hh new file mode 100644 index 000000000000..432458b874b7 --- /dev/null +++ b/www/anyterm/files/patch-libpbe-include-Iconver.hh @@ -0,0 +1,11 @@ +--- libpbe/include/Iconver.hh.orig 2008-10-25 12:17:29 UTC ++++ libpbe/include/Iconver.hh +@@ -36,7 +36,7 @@ + #include "Exception.hh" + + +-#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__sun__) ++#if defined(__OpenBSD__) || defined(__sun__) + // Previously __APPLE__ was included in this list; presumably they have + // changed their headers. If you have an older system you may need to put + // it back. diff --git a/www/htmlcxx/Makefile b/www/htmlcxx/Makefile index 7ee8eb6cc1db..adbec6a39fe5 100644 --- a/www/htmlcxx/Makefile +++ b/www/htmlcxx/Makefile @@ -2,7 +2,7 @@ PORTNAME= htmlcxx PORTVERSION= 0.85 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www textproc MASTER_SITES= SF @@ -23,4 +23,7 @@ MAKE_JOBS_UNSAFE=yes MAKE_ARGS= pkgconfigdir="${PREFIX}/libdata/pkgconfig" +post-patch: + @${REINPLACE_CMD} 's/-liconv/${ICONV_LIB}/' ${WRKSRC}/configure + .include <bsd.port.mk> diff --git a/www/htmlcxx/files/patch-CharsetConverter.cc b/www/htmlcxx/files/patch-CharsetConverter.cc deleted file mode 100644 index 47560c08bf8c..000000000000 --- a/www/htmlcxx/files/patch-CharsetConverter.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- html/CharsetConverter.cc.orig 2012-09-19 14:05:35.000000000 +0800 -+++ html/CharsetConverter.cc 2012-09-19 14:08:42.000000000 +0800 -@@ -37,7 +37,7 @@ - - size_t ret; - while (1) { -- ret = iconv(mIconvDescriptor, const_cast<char**>(&inbuf), &inbytesleft, &outbuf, &outbytesleft); -+ ret = iconv(mIconvDescriptor, &inbuf, &inbytesleft, &outbuf, &outbytesleft); - if (ret == 0) break; - if (ret == (size_t)-1 && errno == E2BIG) return string(); - diff --git a/www/httrack/Makefile b/www/httrack/Makefile index b8387f1711eb..826097286986 100644 --- a/www/httrack/Makefile +++ b/www/httrack/Makefile @@ -3,6 +3,7 @@ PORTNAME= httrack PORTVERSION= 3.48.21 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= http://download.httrack.com/ \ http://mirror.httrack.com/ \ @@ -32,7 +33,11 @@ PORTDOCS= * SHEBANG_FILES= src/webhttrack -.include <bsd.port.options.mk> +.include <bsd.port.pre.mk> + +.if empty(ICONV_LIB) +CONFIGURE_ARGS+=ac_cv_lib_iconv_iconv=no +.endif .if ${PORT_OPTIONS:MICONS} INSTALLS_ICONS= yes @@ -46,4 +51,4 @@ post-patch: post-install: ${INSTALL_DATA} ${WRKSRC}/html/httrack.css ${STAGEDIR}${DOCSDIR}/httrack.css -.include <bsd.port.mk> +.include <bsd.port.post.mk> diff --git a/www/mod_encoding/Makefile b/www/mod_encoding/Makefile index 727696c6f4ad..7f332f9421c0 100644 --- a/www/mod_encoding/Makefile +++ b/www/mod_encoding/Makefile @@ -3,7 +3,7 @@ PORTNAME= mod_encoding PORTVERSION= 20021209 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= www MASTER_SITES= http://webdav.todo.gr.jp/download/ PKGNAMEPREFIX= ${APACHE_PKGNAMEPREFIX} @@ -39,10 +39,17 @@ EXTRA_PATCHES+= ${PATCHDIR}/iconv_hook-20040430.patch EXTRA_PATCHES+= ${PATCHDIR}/queryfix-patch22 .endif +.include <bsd.port.pre.mk> + +.if empty(ICONV_LIB) +CONFIGURE_ENV+= ac_cv_lib_iconv_iconv=no \ + ac_cv_lib_iconv_libiconv=no +.endif + do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEMODDIR} $(APXS) -S LIBEXECDIR=${STAGEDIR}${PREFIX}/${APACHEMODDIR} \ -i -n ${MODULENAME} ${WRKSRC}/${MODULENAME}.la ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${APACHEMODDIR}/${MODULENAME}.so -.include <bsd.port.mk> +.include <bsd.port.post.mk> diff --git a/www/newsbeuter/files/patch-src-utils.cpp b/www/newsbeuter/files/patch-src-utils.cpp new file mode 100644 index 000000000000..26982fb2dfa5 --- /dev/null +++ b/www/newsbeuter/files/patch-src-utils.cpp @@ -0,0 +1,12 @@ +--- src/utils.cpp.orig 2015-02-19 10:56:59 UTC ++++ src/utils.cpp +@@ -274,7 +274,8 @@ std::string utils::convert_text(const st + * of all the Unix-like systems around there, only Linux/glibc seems to + * come with a SuSv3-conforming iconv implementation. + */ +-#if !(__linux) && !defined(__GLIBC__) && !defined(__APPLE__) && !defined(__OpenBSD__) ++#if !(__linux) && !defined(__GLIBC__) && !defined(__APPLE__) \ ++ && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__DragonFly__) + const char * inbufp; + #else + char * inbufp; |