aboutsummaryrefslogtreecommitdiffstats
path: root/emulators/vmw
diff options
context:
space:
mode:
authortijl <tijl@FreeBSD.org>2015-10-10 22:03:00 +0800
committertijl <tijl@FreeBSD.org>2015-10-10 22:03:00 +0800
commit922a618b417843c8900f4076fc4d95620eefb493 (patch)
tree4ac25229c12e49e974a92ecd82e01b92eea15c00 /emulators/vmw
parent8e2211c86ac31d36abaf0b6dbaadf26adb36f654 (diff)
downloadfreebsd-ports-gnome-922a618b417843c8900f4076fc4d95620eefb493.tar.gz
freebsd-ports-gnome-922a618b417843c8900f4076fc4d95620eefb493.tar.zst
freebsd-ports-gnome-922a618b417843c8900f4076fc4d95620eefb493.zip
Remove iconv(), iconv_open() and iconv_close() symbols from libiconv.
These were FreeBSD specific aliases for libiconv(), libiconv_open() and libiconv_close() that are now also provided by libc which complicates writing configure tests that work correctly when both libc iconv and libiconv are available. Also, because the libiconv iconv.h header redefines iconv* to libiconv* correct use of the header implies that the aliases aren't used. The following ports needed fixes because there was something wrong with the way they tried to detect or use iconv: audio/deadbeef: Remove LIBICONV_PLUG from a source file. It's a compile-time option and should not be set in source code. comms/hidapi: Use standard AM_ICONV configure macro to look for iconv. deskutils/fbreader: Let ports framework deal with LIBICONV_PLUG. deskutils/ljclive: Override configure test for iconv. deskutils/owncloudclient: Add USES=iconv and patch test for iconv. devel/aegis: Bump PORTREVISION because it no longer uses libiconv. devel/libexplain: Add USES=iconv and override test for iconv. devel/sdl20: Override configure test for iconv. emulators/vmw: Replace OSVERSION checks with ICONV_LIB checks and include <iconv.h> instead of <sys/iconv.h>. irc/scrollz: Override configure test for iconv. japanese/chasen-base: Override configure test for iconv and patch configure so it no longer adds -liconv to linker flags just because it happens to be installed. japanses/eb: Patch configure test for iconv. japanses/eblook: Override configure test for iconv. java/jikes: Override configure test for iconv. multimedia/transcode: Bump PORTREVISION because only one plugin links with libiconv now. net/c3270: Override configure test for iconv. net/samba4*: Bump PORTREVISION because it no longer uses libiconv. The configure script will always add -liconv to the linker flags when it happens to be installed which would be wrong but later on binaries are linked with -Wl,--as-needed and the linker discards -liconv because it finds iconv*() functions in libc now and no longer in libiconv. net-mgmt/icinga-*: Remove dependency on iconv. net-mgmt/netxms: Patch configure so it no longer adds -liconv to linker flags just because it happens to be installed. net/asterisk11: Patch configure so it no longer adds -liconv to linker flags just because it happens to be installed. net-p2p/transmission-*: Override configure test for iconv. www/htmlcxx: Override configure test for iconv. www/httrack: Override configure test for iconv. www/xapian-omega: Override configure test for iconv. x11/mrxvt(-devel): Add USES=iconv and override configure test for iconv. x11/x3270: Override configure test for iconv. x11-wm/jwm: Override configure test for iconv. PR: 202838 Exp-run by: antoine Approved by: portmgr (antoine)
Diffstat (limited to 'emulators/vmw')
-rw-r--r--emulators/vmw/Makefile7
-rw-r--r--emulators/vmw/files/patch-vmshf.c17
2 files changed, 22 insertions, 2 deletions
diff --git a/emulators/vmw/Makefile b/emulators/vmw/Makefile
index 37f6e738cf05..456f44b77b99 100644
--- a/emulators/vmw/Makefile
+++ b/emulators/vmw/Makefile
@@ -2,6 +2,7 @@
PORTNAME= vmw
PORTVERSION= 060510
+PORTREVISION= 1
CATEGORIES= emulators
MASTER_SITES= http://sites.google.com/site/chitchatvmback/storage/
@@ -33,7 +34,7 @@ PLIST_FILES+= sbin/${i}
.if !exists(/usr/lib32/libc.so)
IGNORE= please install lib32
.endif
-.if ${OSVERSION} < 1000000
+.if !empty(ICONV_LIB)
IGNORE= needs 32bit libiconv
.endif
CFLAGS+= -m32
@@ -42,9 +43,11 @@ LDFLAGS+= -m32 -B/usr/lib32 -L/usr/lib32
LD= ${CC}
.endif
-.if ${OSVERSION} > 1000000
+.if empty(ICONV_LIB)
FTPLIB=
MAKE_ENV+= FTPLIB="${FTPLIB}"
+.else
+CFLAGS+= -I${LOCALBASE}/include
.endif
do-install:
diff --git a/emulators/vmw/files/patch-vmshf.c b/emulators/vmw/files/patch-vmshf.c
new file mode 100644
index 000000000000..02c81403f8e4
--- /dev/null
+++ b/emulators/vmw/files/patch-vmshf.c
@@ -0,0 +1,17 @@
+--- vmshf.c.orig 2006-05-10 04:36:12 UTC
++++ vmshf.c
+@@ -306,14 +306,7 @@ static uint32_t LocalToUtf8(char *dst, c
+ unix systems with iconv.h
+ -- use iconv() for code conversion
+ */
+-#ifdef __FreeBSD__
+-#include <sys/types.h>
+-#include <sys/iconv.h>
+-typedef size_t iconv_t;
+-#else /* __FreeBSD__ */
+ #include <iconv.h>
+-#endif /* __FreeBSD__ */
+-
+ #include <langinfo.h>
+ #include <locale.h>
+ #include <strings.h>