svn commit: r258230 - in stable/10: . include lib lib/libc/iconv lib/libiconv_compat share/man/man5 share/mk tools/build/mk tools/build/options
Glen Barber
gjb at FreeBSD.org
Sat Nov 16 18:40:47 UTC 2013
Author: gjb
Date: Sat Nov 16 18:40:44 2013
New Revision: 258230
URL: http://svnweb.freebsd.org/changeset/base/258230
Log:
MFC r257583, r258012, r258013:
r257583 (peter):
Remove the WITH_LIBICONV_COMPAT hack that seems to do more harm
than good. This caused libc to spoof the ports libiconv namespace
and provide a colliding libiconv.so.3 to fool rtld. This should
have been removed some time ago.
r258012:
Remove WITH_LIBICONV_COMPAT file to chase after r257583.
r258013:
Regenerate src.conf.5 after removal of WITH_LIBICONV_COMPAT.
Approved by: re (kib)
Sponsored by: The FreeBSD Foundation
Sponsored by: The FreeBSD Foundation
Deleted:
stable/10/lib/libiconv_compat/
stable/10/tools/build/options/WITH_LIBICONV_COMPAT
Modified:
stable/10/ObsoleteFiles.inc (contents, props changed)
stable/10/include/Makefile
stable/10/include/iconv.h
stable/10/lib/Makefile
stable/10/lib/libc/iconv/Symbol.map
stable/10/lib/libc/iconv/iconv.c
stable/10/share/man/man5/src.conf.5
stable/10/share/mk/bsd.own.mk
stable/10/tools/build/mk/OptionalObsoleteFiles.inc
Directory Properties:
stable/10/include/ (props changed)
stable/10/lib/ (props changed)
stable/10/lib/libc/ (props changed)
stable/10/share/man/man5/ (props changed)
stable/10/share/mk/ (props changed)
stable/10/tools/build/ (props changed)
stable/10/tools/build/options/ (props changed)
Modified: stable/10/ObsoleteFiles.inc
==============================================================================
--- stable/10/ObsoleteFiles.inc Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/ObsoleteFiles.inc Sat Nov 16 18:40:44 2013 (r258230)
@@ -38,6 +38,12 @@
# xargs -n1 | sort | uniq -d;
# done
+# 20131103: WITH_LIBICONV_COMPAT removal
+OLD_FILES+=usr/include/_libiconv_compat.h
+OLD_FILES+=usr/lib/libiconv.a
+OLD_FILES+=usr/lib/libiconv.so
+OLD_FILES+=usr/lib/libiconv.so.3
+OLD_FILES+=usr/lib/libiconv_p.a
# 20131030: /etc/keys moved to /usr/share/keys
OLD_DIRS+=etc/keys
OLD_DIRS+=etc/keys/pkg
Modified: stable/10/include/Makefile
==============================================================================
--- stable/10/include/Makefile Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/include/Makefile Sat Nov 16 18:40:44 2013 (r258230)
@@ -83,15 +83,7 @@ _netipx= netipx
# Handle the #define aliases for libiconv
.if ${MK_ICONV} == "yes"
-CLEANFILES+= _libiconv_compat.h
-INCS+= _libiconv_compat.h iconv.h
-_libiconv_compat.h: ${.CURDIR}/Makefile
- echo "/* Indicate whether libiconv symbols are present */" > _libiconv_compat.h
-.if ${MK_LIBICONV_COMPAT} == "yes"
- echo "#define __LIBICONV_COMPAT" >> _libiconv_compat.h
-.else
- echo "#undef __LIBICONV_COMPAT" >> _libiconv_compat.h
-.endif
+INCS+= iconv.h
.endif
Modified: stable/10/include/iconv.h
==============================================================================
--- stable/10/include/iconv.h Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/include/iconv.h Sat Nov 16 18:40:44 2013 (r258230)
@@ -40,13 +40,6 @@
#include <sys/cdefs.h>
#include <sys/types.h>
-#include <_libiconv_compat.h>
-#ifdef __LIBICONV_COMPAT
-#define libiconv_open iconv_open
-#define libiconv_close iconv_close
-#define libiconv iconv
-#define libiconv_t iconv_t
-#endif
#ifdef __cplusplus
typedef bool __iconv_bool;
#elif __STDC_VERSION__ >= 199901L
@@ -76,22 +69,10 @@ size_t __iconv(iconv_t, const char **, s
/*
* GNU interfaces for iconv
*/
-#ifdef __LIBICONV_COMPAT
-#define libiconv_open_into iconv_open_into
-#define libiconvctl iconvctl
-#define libiconvlist iconvlist
-#define libiconv_set_relocation_prefix iconv_set_relocation_prefix
-#endif
-
/* We have iconvctl() */
#define _ICONV_VERSION 0x0108
extern int _iconv_version;
-#ifdef __LIBICONV_COMPAT
-#define _libiconv_version _iconv_version
-#define _LIBICONV_VERSION _ICONV_VERSION
-#endif
-
typedef struct {
void *spaceholder[64];
} iconv_allocation_t;
Modified: stable/10/lib/Makefile
==============================================================================
--- stable/10/lib/Makefile Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/lib/Makefile Sat Nov 16 18:40:44 2013 (r258230)
@@ -81,7 +81,6 @@ SUBDIR= ${SUBDIR_ORDERED} \
${_libgpib} \
${_libgssapi} \
${_librpcsec_gss} \
- ${_libiconv_compat} \
libipsec \
${_libipx} \
libjail \
@@ -188,10 +187,6 @@ _libcxxrt= libcxxrt
_libcplusplus= libc++
.endif
-.if ${MK_LIBICONV_COMPAT} != "no"
-_libiconv_compat= libiconv_compat
-.endif
-
.if ${MK_LIBTHR} != "no"
_libthr= libthr
.endif
Modified: stable/10/lib/libc/iconv/Symbol.map
==============================================================================
--- stable/10/lib/libc/iconv/Symbol.map Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/lib/libc/iconv/Symbol.map Sat Nov 16 18:40:44 2013 (r258230)
@@ -6,15 +6,7 @@ FBSD_1.2 {
__iconv;
__iconv_free_list;
__iconv_get_list;
- _libiconv_version;
iconv_canonicalize;
- libiconv;
- libiconv_close;
- libiconv_open;
- libiconv_open_into;
- libiconv_set_relocation_prefix;
- libiconvctl;
- libiconvlist;
};
FBSD_1.3 {
Modified: stable/10/lib/libc/iconv/iconv.c
==============================================================================
--- stable/10/lib/libc/iconv/iconv.c Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/lib/libc/iconv/iconv.c Sat Nov 16 18:40:44 2013 (r258230)
@@ -47,18 +47,6 @@
#include "citrus_hash.h"
#include "citrus_iconv.h"
-#include <_libiconv_compat.h>
-#ifdef __LIBICONV_COMPAT
-__weak_reference(iconv, libiconv);
-__weak_reference(iconv_open, libiconv_open);
-__weak_reference(iconv_open_into, libiconv_open_into);
-__weak_reference(iconv_close, libiconv_close);
-__weak_reference(iconvlist, libiconvlist);
-__weak_reference(iconvctl, libiconvctl);
-__weak_reference(iconv_set_relocation_prefix, libiconv_set_relocation_prefix);
-__weak_reference(_iconv_version, _libiconv_version);
-#endif
-
#define ISBADF(_h_) (!(_h_) || (_h_) == (iconv_t)-1)
int _iconv_version = _ICONV_VERSION;
Modified: stable/10/share/man/man5/src.conf.5
==============================================================================
--- stable/10/share/man/man5/src.conf.5 Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/share/man/man5/src.conf.5 Sat Nov 16 18:40:44 2013 (r258230)
@@ -1,7 +1,7 @@
.\" DO NOT EDIT-- this file is automatically generated.
.\" from FreeBSD: stable/10/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des
.\" $FreeBSD$
-.Dd November 6, 2013
+.Dd November 11, 2013
.Dt SRC.CONF 5
.Os
.Sh NAME
@@ -471,12 +471,6 @@ Set to not build HTML docs.
.It Va WITHOUT_ICONV
.\" from FreeBSD: stable/10/tools/build/options/WITHOUT_ICONV 254919 2013-08-26 17:15:56Z antoine
Set to not build iconv as part of libc.
-When set, it also enforces the following options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_LIBICONV_COMPAT
-.El
.It Va WITHOUT_INET
.\" from FreeBSD: stable/10/tools/build/options/WITHOUT_INET 221266 2011-04-30 17:58:28Z bz
Set to not build programs and libraries related to IPv4 networking.
@@ -633,9 +627,6 @@ runtime linker.
.It Va WITHOUT_LIBCPLUSPLUS
.\" from FreeBSD: stable/10/tools/build/options/WITHOUT_LIBCPLUSPLUS 246262 2013-02-02 22:42:46Z dim
Set to avoid building libcxxrt and libc++.
-.It Va WITH_LIBICONV_COMPAT
-.\" from FreeBSD: stable/10/tools/build/options/WITH_LIBICONV_COMPAT 254919 2013-08-26 17:15:56Z antoine
-Set to build libiconv API and link time compatibility.
.It Va WITHOUT_LIBPTHREAD
.\" from FreeBSD: stable/10/tools/build/options/WITHOUT_LIBPTHREAD 188848 2009-02-20 11:09:55Z mtm
Set to not build the
Modified: stable/10/share/mk/bsd.own.mk
==============================================================================
--- stable/10/share/mk/bsd.own.mk Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/share/mk/bsd.own.mk Sat Nov 16 18:40:44 2013 (r258230)
@@ -368,7 +368,6 @@ __DEFAULT_NO_OPTIONS = \
DEBUG_FILES \
GPL_DTC \
HESIOD \
- LIBICONV_COMPAT \
INSTALL_AS_USER \
LLDB \
NAND \
@@ -491,10 +490,6 @@ MK_${var}:= no
MK_LIBTHR:= no
.endif
-.if ${MK_ICONV} == "no"
-MK_LIBICONV_COMPAT:= no
-.endif
-
.if ${MK_LDNS} == "no"
MK_LDNS_UTILS:= no
MK_UNBOUND:= no
Modified: stable/10/tools/build/mk/OptionalObsoleteFiles.inc
==============================================================================
--- stable/10/tools/build/mk/OptionalObsoleteFiles.inc Sat Nov 16 17:17:23 2013 (r258229)
+++ stable/10/tools/build/mk/OptionalObsoleteFiles.inc Sat Nov 16 18:40:44 2013 (r258230)
@@ -3190,13 +3190,6 @@ OLD_FILES+=usr/share/man/man1/host.1.gz
# to be filled in
#.endif
-.if ${MK_LIBICONV_COMPAT} == no
-OLD_FILES+=usr/lib/libiconv.a
-OLD_FILES+=usr/lib/libiconv.so
-OLD_FILES+=usr/lib/libiconv.so.3
-OLD_FILES+=usr/lib/libiconv_p.a
-.endif
-
.if ${MK_LIBCPLUSPLUS} == no
OLD_LIBS+=lib/libcxxrt.so.1
OLD_FILES+=usr/lib/libc++.a
More information about the svn-src-stable
mailing list