summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-01-16 17:34:21 +0000
committerV3n3RiX <venerix@redcorelinux.org>2018-01-16 17:34:21 +0000
commit02e2208f46f4e2c00fb9743cbc47350bdd233bfa (patch)
tree132dd60828854db4f65f30f9230f43d9602507ff /sys-libs
parent8be70107efbb417f839292165ee39d07a062046f (diff)
gentoo resync : 16.01.2018
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin15596 -> 15591 bytes
-rw-r--r--sys-libs/gdbm/Manifest2
-rw-r--r--sys-libs/gdbm/gdbm-1.13-r2.ebuild2
-rw-r--r--sys-libs/glibc/Manifest4
-rw-r--r--sys-libs/glibc/glibc-9999.ebuild587
-rw-r--r--sys-libs/ldb/Manifest2
-rw-r--r--sys-libs/ldb/ldb-1.3.1.ebuild103
-rw-r--r--sys-libs/libunwind/Manifest2
-rw-r--r--sys-libs/libunwind/libunwind-1.2.1.ebuild2
-rw-r--r--sys-libs/talloc/Manifest2
-rw-r--r--sys-libs/talloc/talloc-2.1.11.ebuild92
-rw-r--r--sys-libs/tevent/Manifest2
-rw-r--r--sys-libs/tevent/tevent-0.9.35.ebuild66
13 files changed, 816 insertions, 50 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index 63992db567d7..cd93084734c3 100644
--- a/sys-libs/Manifest.gz
+++ b/sys-libs/Manifest.gz
Binary files differ
diff --git a/sys-libs/gdbm/Manifest b/sys-libs/gdbm/Manifest
index 7026e599844a..18fb1a9f5259 100644
--- a/sys-libs/gdbm/Manifest
+++ b/sys-libs/gdbm/Manifest
@@ -5,6 +5,6 @@ DIST gdbm-1.13.tar.gz 891987 BLAKE2B f73cb89aeed140a584c5a8bce9c2324cc39a7647ee2
DIST gdbm-1.14.1.tar.gz 894412 BLAKE2B e519af45d670ec4285ece01edc17770dcb0d77f12edcf2d3d4cb9580c6d2bb6d6dddb57d4f33490e11dc9df7cd08fd44ab7737b62271c5cfdc9485b90d0d4888 SHA512 a15d7acb0ebf459f4f7d262e5a05393a9a7c8e9ae906d12ccb3b38715de15a41c9254e7814555e2f9af306ef63b2dc68b5f9f6c7b75dd0db77e07a58831ff603
DIST gdbm-1.8.3.tar.gz 228695 BLAKE2B 21b5833facb97fe937020d80b038c7b09e55eea6bdb9ec323d185a0980f235ff6a225d180d86d984469ce04a3f0266d20881f317f4339915bc6f61ab150ac2ac SHA512 2a01751ee8f730db563b4f52185c72f1c7a4f66530d6736f05f7446153be685ea0bb6ea1d2bad16ce31547fea879dc48507ff65ad35b0973df9aa385713b10d7
EBUILD gdbm-1.11.ebuild 1887 BLAKE2B 1f6680d070bc540e8e476e0f8abcd46c09b98f4334465b544b4c9ee1e92da3855e792cbc78ddb7f54d1cc2e1c7bf0d619289252647a895b9bb6f7c7d017aa30d SHA512 fb5768d73a8a25cad8e6defeba0dd4ba788a2f339e697054da879b0aa600cfafa18ec5793a255bc5cc3066019c189bdcb43842710588590c2bab1c28c172d5d5
-EBUILD gdbm-1.13-r2.ebuild 1897 BLAKE2B dbd9a0cb88a68910ad4e8a9493899fdd1d0d59067976abec768b28f7c6f183a269439ee7ea8af11e812ae0c459d0a2ab0e25ff7018031a02fe12d738ea3b885d SHA512 6caac37ee7a0bb5d8b32e44fb43e9e0ba657c87261a74ba988f1c80d5050d31e004d6107cff2fdf95e8647a52d00e5230839aba9c8171f0968294e02def1676e
+EBUILD gdbm-1.13-r2.ebuild 1893 BLAKE2B 4778219725556d62498cab0fe422a65551e7881b6f9447937973f21d768539a12aefa3486db4535ff0b3c92b0db0f285ad15fded8b321bd6a553a29b9a168ac7 SHA512 7d516305b43e5cb8fa17724bb74b0cf48d02802eeb3cd006ecb325e6869c831b335ccdd0d9be08da48dc480c1c13204329b127282f9dea972d991efef06daf60
EBUILD gdbm-1.14.1.ebuild 1814 BLAKE2B 339557b78ab19986e57618be547699e248ab20c0cd91abd1242f974798c364d396a63ac2889fee4d11090bd710aea395a8b40a5dc9e3b96f36575fff25d5947b SHA512 19037ca081722f22445d29cb704143296b17ef0d66f8b9af016f377f497892af04f2173534e0416cae7ba31dfd8211a7fd2ed688b89cd402ff86922d61ff04b5
MISC metadata.xml 471 BLAKE2B d73a0a1493a17d9990451e721b5bccddbdc3cfb59af544b1cdd927e31c65795888b13c7e42274a454d7dd8762ba92c5ab94dae5af7389a67688e6b06840ebad5 SHA512 05f989aa1f1d2ca29d4084741af8465c3daa0713881130aeb8ba8ac65f89a8874d668a0ea32184ec404e19777aa1df9e8d2526fe2ce9a22cae8c08c608501d41
diff --git a/sys-libs/gdbm/gdbm-1.13-r2.ebuild b/sys-libs/gdbm/gdbm-1.13-r2.ebuild
index f96e356b60db..dc4de68e2def 100644
--- a/sys-libs/gdbm/gdbm-1.13-r2.ebuild
+++ b/sys-libs/gdbm/gdbm-1.13-r2.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://gnu/gdbm/${P}.tar.gz
LICENSE="GPL-3"
SLOT="0/1.13"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+berkdb exporter nls +readline static-libs"
DEPEND="
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index ca4184a53804..244bd2859bae 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -34,7 +34,7 @@ DIST glibc-2.25.tar.xz 13873900 BLAKE2B 73ef792fff059f6ad154c9af2155ea15b7869ec1
DIST glibc-2.26-patches-4.tar.bz2 315447 BLAKE2B 038926c8c187cfea5c00a7017a486356adf0f0959dc8868847f26877b4b441bd76629f20d52967f9da878f69a1ac2859332ed3984b4ebb5cb528d50e0b012736 SHA512 04d229e5f9342d62f2fce039c70489609886782d8aabd49403863a1a679e3b0890ca26c129088738a4af7ef6d95c74f24fb3c4d03695bf7ba6e45eca4de1a5f0
DIST glibc-2.26-patches-5.tar.bz2 357699 BLAKE2B 98a0cb231bf35a132747f1fa6e654a9ad2eff8b445f002a0239c9a45f5a896ad490570aedee2b43e6cfa94794ae5c8b5e312e369838c3770823f28b61b51b592 SHA512 0040469e4a85f5c2aac972e42aeb06b0adfc3a132b32b19306be9f1877339fe6651a2fbd4d90d502b07ae4460f74efbd1cd103d38a2038df9402b0a380f03c2a
DIST glibc-2.26.tar.xz 14682748 BLAKE2B c1c9dbec110dd4e25b2f463a96d8afc43b8e3ebfe3c958107032beaa879710252be3bc4122bb62166408725d43785f233544df6159d29cce0fc5b2c08f45adbe SHA512 6ed368523bc55f00976f96c5177f114e3f714b27273d7bffc252812c8b98fb81970403c1f5b5f0a61da678811532fb446530745492d2b49bfefc0d5bd71ce8c0
-DIST glibc-9999-patches-3.tar.bz2 19892 BLAKE2B e0a51f376e7142f56ae2a0862a7723343ee378275c1a0c6c3a69607b5bb7f9bd655f0a68f8f9cfc32008e06852d0eb0a9e16c85ea9a395dc36b428f1ea6100d8 SHA512 75084b86a83d447d3a4b3959fa2a93d849e304ba9473ebec5570ca4fb5e2f8dfb38548faf3abc9fbd29b529f2c608b52eb2ef2e6e9a2ad5bea9a9298a19ef596
+DIST glibc-9999-patches-4.tar.bz2 15159 BLAKE2B e17e9efa196a1acf27dd1535bb43a8999eb4f76e7aecb47ee7fb1fb5258870ddc024a4a5d3fb514d3d37ce28326d3bae93f3c6f534c048b57a6369a1a135e0af SHA512 6e0f8ff9ee125e936a0e43f830423b13ac5350c9a8a83f1c4bb367084e9f2c81cf740f3d97e8bd451890ade46fadfe21154afecca739d00cf6ce1127dba4bb7b
EBUILD glibc-2.18-r1.ebuild 5514 BLAKE2B 2b007c0f935df77d35d74adceab874eeab55306c1fc69eee3c0f45a5d9cd02e6b4dcf7ab25d2bb450fd07fe7f20a827a774a6e15322f7b8a447726acdf31a3f7 SHA512 b306c31227f15cbf0dbf518195736856f30949544dac12fb4b5b0aabd3e421f040663aacea159181b61f92777a19519241f5c05f6e65576b26f6406df85ef83b
EBUILD glibc-2.19-r1.ebuild 5471 BLAKE2B 8531139c723de6358daa971e96f98db628eec14c696b004a4e8a4a7efc8a0c610d713625655c55293c94898d13ac9aea5ae1a58134aedb30b1b695859748a964 SHA512 aae5bcdaa10cf6a3026e28b406046bd7297fdacfa8d0ace60f76177aa2efed6b0f82b639f5e6db6bd42d99440d12644d62e9b14cf49ced7284f011cb3c406775
EBUILD glibc-2.20-r2.ebuild 4947 BLAKE2B 24062f002678df912ced724a3d919bc2f07476c98000092cb3fa3f2be1836db57348c88b6fc1da7a9364103136eecbe687fe365d131f10c82de3cb0edd3eb8c5 SHA512 ff76e9173ab6bfccb1c659f79cefb93f6fa6266adab40a3816f56acddb7866cee67ba6bfa8d1b9988eff755e9d1a879e62973fc332566c185f019af5e17a9f1d
@@ -46,5 +46,5 @@ EBUILD glibc-2.25-r10.ebuild 5012 BLAKE2B 86753e126c049ba2407529668b82094650a718
EBUILD glibc-2.25-r9.ebuild 4999 BLAKE2B 6c0784aa614374954c0747deb7a33fdba0f8b1935cc28c62af29880d64991cc93740eddefe8dca971d6c1bbba14161e10db75e00a91d73282e0c0bf094004b94 SHA512 3b5dc2073ae44e6cf5a4f8f64a3c3fd837ebaa222009ee617105259765ff4222fb3960be1c537d4fde6c7e928bd85325d9070cb668b31cb6afb03368c079141f
EBUILD glibc-2.26-r3.ebuild 25337 BLAKE2B 7d35bc98ff62279aaf8221a5366d6624c9c51344d3550a827739d700f32de23ac2a8f9b08f7a8d6437d61a200aeedfa041f68425675881c676642cc5499ac822 SHA512 71a2d63ec8772548d8b88576f6088f394dc364a864aab4e803c6d02600c296c629408fab94ca1b5402d1cfa5503c5a8409f2aed7e5d6afc5e16b98a0eb715765
EBUILD glibc-2.26-r5.ebuild 25543 BLAKE2B d6f427a7c876a264fc7b14516c7e36adf97a594d291ff34b90f69397fa097968a38db2fbfd19854fedf55d59e7d1b8ff757b525cf6f33182cd3633f0044ef254 SHA512 364a561a54f81d4e40298310acec3c7bd976276abae24549d891de58146739964bb73e91b53c193fae8e6328dccbda0b57fbfca2b7e27912d1654c18ab62e13c
-EBUILD glibc-9999.ebuild 25767 BLAKE2B 0c5ddf6b25ca3bb5303fc3bfc977f70273a98e533380d770df3dfbd683a06a37ebb335d138bc49831b92eee416e63227b609e8c621ac9f81e26e52cd71091b51 SHA512 94dd656d151ebbe0a8eeecd4a2470a7f758279751aa6de9a55631112152829136674ad40e77d57ba5dac24204f4d4c2f0ddb9b5dfa334e68460fb5db61c2eb82
+EBUILD glibc-9999.ebuild 39783 BLAKE2B efacbc5c74f742ac63485a880228781b5f09f1613fc9b760a6072421dc17493ec9726e8a0987a0a4eed971822663fdef9b8f4d3e78c157ca75ad828dc8bb28aa SHA512 8619067d0ffbdd3f5180b1cab7f7f23b75af73ac442ad66d35c5413ebaaaaea9ca6b4d2c803114e9a612af5711b23d86644609efe7337a798cacf016a3f5b88f
MISC metadata.xml 1054 BLAKE2B dbc091e54130729385bc02aaa1025885f101caa88d601b1f7670974d89e7e24aae5d37fd6699278a37c0064e1f3232c04954dc127869427317b5d80b499f3813 SHA512 65474b7d32ceb6bafe8ae0e18aa0b46b68cefecce5570a0e8d4a0117019e6540f2feae35cecbebad382b4f06d6e5ae1dfa9b8a61889881e8534956dd42df8e4b
diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 5d7f3a9fbe9d..0b6f444f7711 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -3,16 +3,14 @@
EAPI=6
-inherit prefix toolchain-glibc
+inherit prefix eutils versionator toolchain-funcs flag-o-matic gnuconfig \
+ multilib systemd multiprocessing
DESCRIPTION="GNU libc C library"
HOMEPAGE="https://www.gnu.org/software/libc/"
-
LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
RESTRICT="strip" # Strip ourself #46186
-EMULTILIB_PKG="true"
-
-# Configuration variables
+SLOT="2.2"
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://sourceware.org/git/glibc.git"
@@ -28,15 +26,15 @@ RELEASE_VER=${PV}
GCC_BOOTSTRAP_VER="4.7.3-r1"
# Gentoo patchset
-PATCH_VER="3"
+PATCH_VER=4
SRC_URI+=" https://dev.gentoo.org/~dilfridge/distfiles/${P}-patches-${PATCH_VER}.tar.bz2"
SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2 )"
IUSE="audit caps compile-locales debug doc gd hardened multilib nscd selinux systemtap profile suid vanilla headers-only"
-# Min kernel version glibc requires
-: ${NPTL_KERN_VER:="3.2.0"}
+# Minimum kernel version that glibc requires
+MIN_KERN_VER="3.2.0"
# Here's how the cross-compile logic breaks down ...
# CTARGET - machine that will target the binaries
@@ -51,7 +49,7 @@ IUSE="audit caps compile-locales debug doc gd hardened multilib nscd selinux sys
# For install paths:
# CHOST = CTARGET - install into /
# CHOST != CTARGET - install into /usr/CTARGET/
-
+#
export CBUILD=${CBUILD:-${CHOST}}
export CTARGET=${CTARGET:-${CHOST}}
if [[ ${CTARGET} == ${CHOST} ]] ; then
@@ -60,18 +58,8 @@ if [[ ${CTARGET} == ${CHOST} ]] ; then
fi
fi
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- is_crosscompile && use headers-only
-}
-
-SLOT="2.2"
-
-# General: We need a new-enough binutils/gcc to match upstream baseline.
-# arch: we need to make sure our binutils/gcc supports TLS.
+# We need a new-enough binutils/gcc to match upstream baseline.
+# Also we need to make sure our binutils/gcc supports TLS.
COMMON_DEPEND="
nscd? ( selinux? (
audit? ( sys-process/audit )
@@ -88,8 +76,8 @@ DEPEND="${COMMON_DEPEND}
doc? ( sys-apps/texinfo )
"
RDEPEND="${COMMON_DEPEND}
- !sys-kernel/ps3-sources
sys-apps/gentoo-functions
+ !sys-kernel/ps3-sources
!sys-libs/nss-db
"
@@ -110,6 +98,475 @@ else
fi
#
+# Small helper functions
+#
+
+is_crosscompile() {
+ [[ ${CHOST} != ${CTARGET} ]]
+}
+
+just_headers() {
+ is_crosscompile && use headers-only
+}
+
+alt_prefix() {
+ is_crosscompile && echo /usr/${CTARGET}
+}
+
+# We need to be able to set alternative headers for compiling for non-native
+# platform. Will also become useful for testing kernel-headers without screwing
+# up the whole system.
+alt_headers() {
+ echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+}
+
+alt_build_headers() {
+ if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
+ ALT_BUILD_HEADERS="${EPREFIX}$(alt_headers)"
+ if tc-is-cross-compiler ; then
+ ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
+ if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
+ local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
+ ALT_BUILD_HEADERS=${header_path%/linux/version.h}
+ fi
+ fi
+ fi
+ echo "${ALT_BUILD_HEADERS}"
+}
+
+alt_libdir() {
+ echo $(alt_prefix)/$(get_libdir)
+}
+alt_usrlibdir() {
+ echo $(alt_prefix)/usr/$(get_libdir)
+}
+
+builddir() {
+ echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
+}
+
+do_compile_test() {
+ local ret save_cflags=${CFLAGS}
+ CFLAGS+=" $1"
+ shift
+
+ pushd "${T}" >/dev/null
+
+ rm -f glibc-test*
+ printf '%b' "$*" > glibc-test.c
+
+ nonfatal emake -s glibc-test
+ ret=$?
+
+ popd >/dev/null
+
+ CFLAGS=${save_cflags}
+ return ${ret}
+}
+
+do_run_test() {
+ local ret
+
+ if [[ ${MERGE_TYPE} == "binary" ]] ; then
+ # ignore build failures when installing a binary package #324685
+ do_compile_test "" "$@" 2>/dev/null || return 0
+ else
+ if ! do_compile_test "" "$@" ; then
+ ewarn "Simple build failed ... assuming this is desired #324685"
+ return 0
+ fi
+ fi
+
+ pushd "${T}" >/dev/null
+
+ ./glibc-test
+ ret=$?
+ rm -f glibc-test*
+
+ popd >/dev/null
+
+ return ${ret}
+}
+
+setup_target_flags() {
+ # This largely mucks with compiler flags. None of which should matter
+ # when building up just the headers.
+ just_headers && return 0
+
+ case $(tc-arch) in
+ x86)
+ # -march needed for #185404 #199334
+ # TODO: When creating the first glibc cross-compile, this test will
+ # always fail as it does a full link which in turn requires glibc.
+ # Probably also applies when changing multilib profile settings (e.g.
+ # enabling x86 when the profile was amd64-only previously).
+ # We could change main to _start and pass -nostdlib here so that we
+ # only test the gcc code compilation. Or we could do a compile and
+ # then look for the symbol via scanelf.
+ if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n' 2>/dev/null ; then
+ local t=${CTARGET_OPT:-${CTARGET}}
+ t=${t%%-*}
+ filter-flags '-march=*'
+ export CFLAGS="-march=${t} ${CFLAGS}"
+ einfo "Auto adding -march=${t} to CFLAGS #185404"
+ fi
+ ;;
+ amd64)
+ # -march needed for #185404 #199334
+ # Note: This test only matters when the x86 ABI is enabled, so we could
+ # optimize a bit and elide it.
+ # TODO: See cross-compile issues listed above for x86.
+ if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n' 2>/dev/null ; then
+ local t=${CTARGET_OPT:-${CTARGET}}
+ t=${t%%-*}
+ # Normally the target is x86_64-xxx, so turn that into the -march that
+ # gcc actually accepts. #528708
+ [[ ${t} == "x86_64" ]] && t="x86-64"
+ filter-flags '-march=*'
+ # ugly, ugly, ugly. ugly.
+ CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
+ export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
+ einfo "Auto adding -march=${t} to CFLAGS_x86 #185404"
+ fi
+ ;;
+ mips)
+ # The mips abi cannot support the GNU style hashes. #233233
+ filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
+ ;;
+ sparc)
+ # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
+ filter-flags "-fcall-used-g7"
+ append-flags "-fcall-used-g6"
+
+ # If the CHOST is the basic one (e.g. not sparcv9-xxx already),
+ # try to pick a better one so glibc can use cpu-specific .S files.
+ # We key off the CFLAGS to get a good value. Also need to handle
+ # version skew.
+ # We can't force users to set their CHOST to their exact machine
+ # as many of these are not recognized by config.sub/gcc and such :(.
+ # Note: If the mcpu values don't scale, we might try probing CPP defines.
+ # Note: Should we factor in -Wa,-AvXXX flags too ? Or -mvis/etc... ?
+
+ local cpu
+ case ${CTARGET} in
+ sparc64-*)
+ case $(get-flag mcpu) in
+ niagara[234])
+ if version_is_at_least 2.8 ; then
+ cpu="sparc64v2"
+ elif version_is_at_least 2.4 ; then
+ cpu="sparc64v"
+ elif version_is_at_least 2.2.3 ; then
+ cpu="sparc64b"
+ fi
+ ;;
+ niagara)
+ if version_is_at_least 2.4 ; then
+ cpu="sparc64v"
+ elif version_is_at_least 2.2.3 ; then
+ cpu="sparc64b"
+ fi
+ ;;
+ ultrasparc3)
+ cpu="sparc64b"
+ ;;
+ *)
+ # We need to force at least v9a because the base build doesn't
+ # work with just v9.
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
+ [[ -z ${cpu} ]] && append-flags "-Wa,-xarch=v9a"
+ ;;
+ esac
+ ;;
+ sparc-*)
+ case $(get-flag mcpu) in
+ niagara[234])
+ if version_is_at_least 2.8 ; then
+ cpu="sparcv9v2"
+ elif version_is_at_least 2.4 ; then
+ cpu="sparcv9v"
+ elif version_is_at_least 2.2.3 ; then
+ cpu="sparcv9b"
+ else
+ cpu="sparcv9"
+ fi
+ ;;
+ niagara)
+ if version_is_at_least 2.4 ; then
+ cpu="sparcv9v"
+ elif version_is_at_least 2.2.3 ; then
+ cpu="sparcv9b"
+ else
+ cpu="sparcv9"
+ fi
+ ;;
+ ultrasparc3)
+ cpu="sparcv9b"
+ ;;
+ v9|ultrasparc)
+ cpu="sparcv9"
+ ;;
+ v8|supersparc|hypersparc|leon|leon3)
+ cpu="sparcv8"
+ ;;
+ esac
+ ;;
+ esac
+ [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
+ ;;
+ esac
+}
+
+setup_flags() {
+ # Make sure host make.conf doesn't pollute us
+ if is_crosscompile || tc-is-cross-compiler ; then
+ CHOST=${CTARGET} strip-unsupported-flags
+ fi
+
+ # Store our CFLAGS because it's changed depending on which CTARGET
+ # we are building when pulling glibc on a multilib profile
+ CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
+ CFLAGS=${CFLAGS_BASE}
+ CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
+ CXXFLAGS=${CXXFLAGS_BASE}
+ ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
+ ASFLAGS=${ASFLAGS_BASE}
+
+ # Over-zealous CFLAGS can often cause problems. What may work for one
+ # person may not work for another. To avoid a large influx of bugs
+ # relating to failed builds, we strip most CFLAGS out to ensure as few
+ # problems as possible.
+ strip-flags
+ strip-unsupported-flags
+ filter-flags -m32 -m64 '-mabi=*'
+
+ # glibc aborts if rpath is set by LDFLAGS
+ filter-ldflags '-Wl,-rpath=*'
+
+ # #492892
+ filter-flags -frecord-gcc-switches
+
+ unset CBUILD_OPT CTARGET_OPT
+ if use multilib ; then
+ CTARGET_OPT=$(get_abi_CTARGET)
+ [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
+ fi
+
+ setup_target_flags
+
+ if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
+ CBUILD_OPT=${CTARGET_OPT}
+ fi
+
+ # Lock glibc at -O2; we want to be conservative here.
+ # -fno-strict-aliasing is to work around #155906.
+ filter-flags '-O?'
+ append-flags -O2 -fno-strict-aliasing
+
+ filter-flags '-fstack-protector*'
+
+ # Starting with gcc-6 (and fully upstreamed pie patches) we control
+ # default enabled/disabled pie via use flags. So nothing to do
+ # here then. #618160
+ if [[ $(gcc-major-version) -lt 6 ]]; then
+ if use hardened && tc-enables-pie ; then
+ # Force PIC macro definition for all compilations since they're all
+ # either -fPIC or -fPIE with the default-PIE compiler.
+ append-cppflags -DPIC
+ else
+ # Don't build -fPIE without the default-PIE compiler and the
+ # hardened-pie patch
+ filter-flags -fPIE
+ fi
+ fi
+}
+
+want_tls() {
+ # Archs that can use TLS (Thread Local Storage)
+ case $(tc-arch) in
+ x86)
+ # requires i486 or better #106556
+ [[ ${CTARGET} == i[4567]86* ]] && return 0
+ return 1
+ ;;
+ esac
+ return 0
+}
+
+want__thread() {
+ want_tls || return 1
+
+ # For some reason --with-tls --with__thread is causing segfaults on sparc32.
+ [[ ${PROFILE_ARCH} == "sparc" ]] && return 1
+
+ [[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD}
+
+ # only test gcc -- can't test linking yet
+ tc-has-tls -c ${CTARGET}
+ WANT__THREAD=$?
+
+ return ${WANT__THREAD}
+}
+
+use_multiarch() {
+ # Make sure binutils is new enough to support indirect functions,
+ # #336792. This funky sed supports gold and bfd linkers.
+ local bver nver
+ bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
+ case $(tc-arch ${CTARGET}) in
+ amd64|x86) nver="2.20" ;;
+ arm) nver="2.22" ;;
+ hppa) nver="2.23" ;;
+ ppc|ppc64) nver="2.20" ;;
+ # ifunc support was added in 2.23, but glibc also needs
+ # machinemode which is in 2.24.
+ s390) nver="2.24" ;;
+ sparc) nver="2.21" ;;
+ *) return 1 ;;
+ esac
+ version_is_at_least ${nver} ${bver}
+}
+
+# Setup toolchain variables that had historically been defined in the
+# profiles for these archs.
+setup_env() {
+ # silly users
+ unset LD_RUN_PATH
+ unset LD_ASSUME_KERNEL
+
+ if is_crosscompile || tc-is-cross-compiler ; then
+ multilib_env ${CTARGET_OPT:-${CTARGET}}
+
+ if ! use multilib ; then
+ MULTILIB_ABIS=${DEFAULT_ABI}
+ else
+ MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
+ fi
+
+ # If the user has CFLAGS_<CTARGET> in their make.conf, use that,
+ # and fall back on CFLAGS.
+ local VAR=CFLAGS_${CTARGET//[-.]/_}
+ CFLAGS=${!VAR-${CFLAGS}}
+ fi
+
+ setup_flags
+
+ export ABI=${ABI:-${DEFAULT_ABI:-default}}
+
+ local VAR=CFLAGS_${ABI}
+ # We need to export CFLAGS with abi information in them because glibc's
+ # configure script checks CFLAGS for some targets (like mips). Keep
+ # around the original clean value to avoid appending multiple ABIs on
+ # top of each other.
+ : ${__GLIBC_CC:=$(tc-getCC ${CTARGET_OPT:-${CTARGET}})}
+ export __GLIBC_CC CC="${__GLIBC_CC} ${!VAR}"
+}
+
+foreach_abi() {
+ setup_env
+
+ local ret=0
+ local abilist=""
+ if use multilib ; then
+ abilist=$(get_install_abis)
+ else
+ abilist=${DEFAULT_ABI}
+ fi
+ local -x ABI
+ for ABI in ${abilist:-default} ; do
+ setup_env
+ einfo "Running $1 for ABI ${ABI}"
+ $1
+ : $(( ret |= $? ))
+ done
+ return ${ret}
+}
+
+glibc_banner() {
+ local b="Gentoo ${PVR}"
+ [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
+ echo "${b}"
+}
+
+check_devpts() {
+ # Make sure devpts is mounted correctly for use w/out setuid pt_chown.
+
+ # If merely building the binary package, then there's nothing to verify.
+ [[ ${MERGE_TYPE} == "buildonly" ]] && return
+
+ # Only sanity check when installing the native glibc.
+ [[ ${ROOT} != "/" ]] && return
+
+ # If they're opting in to the old suid code, then no need to check.
+ use suid && return
+
+ if awk '$3 == "devpts" && $4 ~ /[, ]gid=5[, ]/ { exit 1 }' /proc/mounts ; then
+ eerror "In order to use glibc with USE=-suid, you must make sure that"
+ eerror "you have devpts mounted at /dev/pts with the gid=5 option."
+ eerror "Openrc should do this for you, so you should check /etc/fstab"
+ eerror "and make sure you do not have any invalid settings there."
+ die "mount & fix your /dev/pts settings"
+ fi
+}
+
+int_to_KV() {
+ local version=$1 major minor micro
+ major=$((version / 65536))
+ minor=$(((version % 65536) / 256))
+ micro=$((version % 256))
+ echo ${major}.${minor}.${micro}
+}
+
+eend_KV() {
+ [[ $(KV_to_int $1) -ge $(KV_to_int $2) ]]
+ eend $?
+}
+
+get_kheader_version() {
+ printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
+ $(tc-getCPP ${CTARGET}) -I "${EPREFIX}/$(alt_build_headers)" - | \
+ tail -n 1
+}
+
+check_nptl_support() {
+ # We don't care about the compiler here as we aren't using it
+ just_headers && return
+
+ local run_kv build_kv want_kv
+
+ # TODO: this needs to be replaced somehow
+ run_kv=$(int_to_KV $(get_KV))
+
+ build_kv=$(int_to_KV $(get_kheader_version))
+ want_kv=${MIN_KERN_VER}
+
+ ebegin "Checking gcc for __thread support"
+ if ! eend $(want__thread ; echo $?) ; then
+ echo
+ eerror "Could not find a gcc that supports the __thread directive!"
+ eerror "Please update your binutils/gcc and try again."
+ die "No __thread support in gcc!"
+ fi
+
+ if ! is_crosscompile && ! tc-is-cross-compiler ; then
+ # Building fails on an non-supporting kernel
+ ebegin "Checking kernel version (${run_kv} >= ${want_kv})"
+ if ! eend_KV ${run_kv} ${want_kv} ; then
+ echo
+ eerror "You need a kernel of at least ${want_kv}!"
+ die "Kernel version too low!"
+ fi
+ fi
+
+ ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
+ if ! eend_KV ${build_kv} ${want_kv} ; then
+ echo
+ eerror "You need linux-headers of at least ${want_kv}!"
+ die "linux-headers version too low!"
+ fi
+}
+
+#
# the phases
#
@@ -124,31 +581,19 @@ pkg_pretend() {
[[ ${ROOT} == "/" ]] && \
[[ ${CBUILD} == ${CHOST} ]] && \
[[ ${CHOST} == ${CTARGET} ]] ; then
- # The high rev # is to allow people to downgrade between -r# versions.
- # We want to block 2.20->2.19, but 2.20-r3->2.20-r2 should be fine.
- # Hopefully we never actually use a r# this high.
+
+ # The high rev # is to allow people to downgrade between -r#
+ # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
+ # should be fine. Hopefully we never actually use a r# this
+ # high.
if has_version ">${CATEGORY}/${P}-r10000" ; then
eerror "Sanity check to keep you from breaking your system:"
- eerror " Downgrading glibc is not supported and a sure way to destruction"
- die "Aborting to save your system"
- fi
-
- if ! glibc_run_test '#include <pwd.h>\nint main(){return getpwuid(0)==0;}\n'
- then
- eerror "Your patched vendor kernel is broken. You need to get an"
- eerror "update from whoever is providing the kernel to you."
- eerror "https://sourceware.org/bugzilla/show_bug.cgi?id=5227"
- eerror "https://bugs.gentoo.org/262698"
- die "Keeping your system alive, say thank you"
+ eerror " Downgrading glibc is not supported and a sure way to destruction."
+ die "Aborting to save your system."
fi
- if ! glibc_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n'
- then
- eerror "Your old kernel is broken. You need to update it to"
- eerror "a newer version as syscall(<bignum>) will break."
- eerror "https://bugs.gentoo.org/279260"
- die "Keeping your system alive, say thank you"
- fi
+ # removed check for #262698 since it's about kernel 2.6.18 ...
+ # removed check for #279260 since it's about kernel <2.6.28 ...
fi
# Users have had a chance to phase themselves, time to give em the boot
@@ -355,7 +800,7 @@ glibc_do_configure() {
[[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp )
- myconf+=( --enable-kernel=${NPTL_KERN_VER} )
+ myconf+=( --enable-kernel=${MIN_KERN_VER} )
# Since SELinux support is only required for nscd, only enable it if:
# 1. USE selinux
@@ -789,6 +1234,23 @@ glibc_headers_install() {
dosym usr/include $(alt_prefix)/sys-include
}
+src_strip() {
+ # gdb is lame and requires some debugging information to remain in
+ # libpthread, so we need to strip it by hand. libthread_db makes no
+ # sense stripped as it is only used when debugging.
+ local pthread=$(has splitdebug ${FEATURES} && echo "libthread_db" || echo "lib{pthread,thread_db}")
+ env \
+ -uRESTRICT \
+ CHOST=${CTARGET} \
+ STRIP_MASK="/*/{,tls/}${pthread}*" \
+ prepallstrip
+ # if user has stripping enabled and does not have split debug turned on,
+ # then leave the debugging sections in libpthread.
+ if ! has nostrip ${FEATURES} && ! has splitdebug ${FEATURES} ; then
+ ${STRIP:-${CTARGET}-strip} --strip-debug "${ED}"/*/libpthread-*.so
+ fi
+}
+
src_install() {
if just_headers ; then
export ABI=default
@@ -800,6 +1262,43 @@ src_install() {
src_strip
}
+# Simple test to make sure our new glibc isn't completely broken.
+# Make sure we don't test with statically built binaries since
+# they will fail. Also, skip if this glibc is a cross compiler.
+#
+# If coreutils is built with USE=multicall, some of these files
+# will just be wrapper scripts, not actual ELFs we can test.
+glibc_sanity_check() {
+ cd / #228809
+
+ # We enter ${ED} so to avoid trouble if the path contains
+ # special characters; for instance if the path contains the
+ # colon character (:), then the linker will try to split it
+ # and look for the libraries in an unexpected place. This can
+ # lead to unsafe code execution if the generated prefix is
+ # within a world-writable directory.
+ # (e.g. /var/tmp/portage:${HOSTNAME})
+ pushd "${ED}"/$(get_libdir) >/dev/null
+
+ local x striptest
+ for x in cal date env free ls true uname uptime ; do
+ x=$(type -p ${x})
+ [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
+ striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
+ case ${striptest} in
+ *"statically linked"*) continue;;
+ *"ASCII text"*) continue;;
+ esac
+ # We need to clear the locale settings as the upgrade might want
+ # incompatible locale data. This test is not for verifying that.
+ LC_ALL=C \
+ ./ld-*.so --library-path . ${x} > /dev/null \
+ || die "simple run test (${x}) failed"
+ done
+
+ popd >/dev/null
+}
+
pkg_preinst() {
# nothing to do if just installing headers
just_headers && return
diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest
index b7556dc2db65..f0340f7a5960 100644
--- a/sys-libs/ldb/Manifest
+++ b/sys-libs/ldb/Manifest
@@ -9,9 +9,11 @@ DIST ldb-1.1.29.tar.gz 1277551 BLAKE2B 449333d40073fd63d6d013ba0ae43fc3a0b820194
DIST ldb-1.1.31.tar.gz 1337586 BLAKE2B 9454f91a621368cfc7cfdb709781653e947d63b275bb3b288049acb43ee3c02ae4f0be820ccf9e3bb32938d12598a91b7a6292b08c638ccfd59bd1be182f09c0 SHA512 49ccd57000cbcc6d828160f4457236b28853d766d641841471f61226156b6103fe563c43c950577b038ea3c0a54506bca94c640d3d5f912a3b8af95eb9ef2824
DIST ldb-1.2.2.tar.gz 1348041 BLAKE2B 14521bbe1826af003a98d11d6fcaff115e27f81b98aba0369ddd1224e1d1c996a4d4662e816ac4384ddc8b63cd63ce0a0aef95e0f3fe6187e557e2488dbe39e3 SHA512 7d9bd88c6a654967f092758146a8115ab6c66db69a8be269a1f536f0aa3b27fb0d2ea3848cd952ef0f1885c9c4d8b76940f9902b835fe3f79f86b22a4350129b
DIST ldb-1.3.0.tar.gz 1359144 BLAKE2B 2c959fcf941a43a35b241c49ddcd9fbb853cb64b316741345df168a0118da89d2eb15015c2b85cf4b56814effbe65db55876153e4fb04807c67f78b1a4083710 SHA512 c5afe3c5229cbc35a5715e6ed1faa070dfa3d6b3c0902cc53770373bbc1761ff4ff93aa9b88d5573b9af9925332bb5cebf4a7a129852231f13be33d5cee3a9f8
+DIST ldb-1.3.1.tar.gz 1361723 BLAKE2B 9c33c14fb0aa3677a2f78c3701b5326aee24058a126d65a3549ba7795df3d86b10200913a7224d74798196bfaa86a9e033a2d39ef5cc5244f96fd1f5bc32d452 SHA512 74b7fe82b4b717bcbd75eca6eb11c0ce375ad306788ec0699615dfcd3c0f5978c9ca9b268e59eae8b4557b9bc7b91728b9fdb754fa566b11879b546fdb0ea277
EBUILD ldb-1.1.26.ebuild 2354 BLAKE2B d2842c0d9fab64092bdba589836f0e488ba3544bb4b74946c6aa881036dbcfba82ac94184ec04f3a12e752d065da61f3c1b2898b053dd260afec6cde14d2112d SHA512 195f61f5c6e120d159ec222105d2652b160a7a6c0aae1c6c97967a65cfca59acff8e895d121f375d3eefa7604e5b26fe84abc6136bf882ab6b100a838b44ee67
EBUILD ldb-1.1.29-r1.ebuild 2558 BLAKE2B 73c8b40a36a567b8af03c2c374ce8706a1e1087ebf39e23164ce6360cf388d2de890cd07fcfe1b8359b84eae5b8c29bdac07f46aab7bd7a81a2a6961352af5bc SHA512 773205e5f39ad687842bf7dc8f6b16f8c5632c602ccbc97cd53d5593bde32b24ad743587d2e91c34d7be407c9e8839e7875084e1526052ac2fd6ceaef93fa005
EBUILD ldb-1.1.31.ebuild 2691 BLAKE2B 240d2ccb3f152cbd134b3611d6db02185d6bddf7980b2a816d822fbb924817b798860edd08373d7eb452e451454591a7ce9db24a4475daa210b9e1ce014c14ae SHA512 368998dad5aa47bb8b971936aa5104d1ea5e7a594cd80af79f55e56cb49c2b28aa0322c15781f121bc4aef15d43e56690df324bb0900a7a15eac522b821d5872
EBUILD ldb-1.2.2.ebuild 2571 BLAKE2B 5e34ccdf8a2385f162e6c578f6c18a8451360e2982201bef211bbcd2c24ec6db80428031e86627a15a71ca4aa352b47e8d3a6429ba48bd56ae9855d12feb9e83 SHA512 197618e4c8f19de77d2c9010ce3be8a87b39cff901e9ac1c13eb31e8f8f1b57854e7bee1f6096fdef46c85c4010ae55920a6c97f22bb0b558c598e2eab904b0f
EBUILD ldb-1.3.0.ebuild 2568 BLAKE2B 9d06b82e3948f0131a0743439d11d2dda1309d9ce5cdb501b3703f3cd8050ca83095f83d491acc1f23e68c82877821a2d227c3773ba4f527ea83d5b7e3bcbebd SHA512 8eee170a9b6381b148d70fc20c3922daab38d98ba6305a734992303b833750e0c56b9c7edf0505bdee76062e721cc2b1212f389d3300edd61d746be50f4da87e
+EBUILD ldb-1.3.1.ebuild 2570 BLAKE2B 694fcdae05e960dc8d11f6749851e465c461c51a0196ccb865e0c2bb22331fdf9361a704ad416501ba900b1876e71de3c49c69158c4b7d10f907fa30b9908011 SHA512 1588ace714e99cef6479f5e1c1ac6330f27ea346b74af2e67d20dbc07d7c8070478c262a7bd19166fccfe2a47722ca589cc3217e3edaa322af34e8b7a4b4a384
MISC metadata.xml 234 BLAKE2B 6b406d8363d7982ccf4c836f444d6beb1daade6a4395c707e627a54113eef0f70c4fdd2d96f00ed8e58f8f7936ef5247f16b2ee02a99100f404dccaab358cca0 SHA512 31c30a4b01e860c3bcf28264630d9fb75feb1caa584c6877bc3e6b3d6a52aa2d986d0ffcf4214664dd887b51c5319d7163a7ed6734cfbc8f184b53bf92fd852d
diff --git a/sys-libs/ldb/ldb-1.3.1.ebuild b/sys-libs/ldb/ldb-1.3.1.ebuild
new file mode 100644
index 000000000000..380dbb9cbe1d
--- /dev/null
+++ b/sys-libs/ldb/ldb-1.3.1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit python-single-r1 waf-utils multilib-minimal eutils
+
+DESCRIPTION="An LDAP-like embedded database"
+HOMEPAGE="http://ldb.samba.org"
+SRC_URI="http://www.samba.org/ftp/pub/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="doc +ldap +python"
+
+RDEPEND="
+ !elibc_FreeBSD? ( dev-libs/libbsd[${MULTILIB_USEDEP}] )
+ dev-libs/popt[${MULTILIB_USEDEP}]
+ >=dev-util/cmocka-1.1.1[${MULTILIB_USEDEP}]
+ >=sys-libs/talloc-2.1.11[python?,${MULTILIB_USEDEP}]
+ >=sys-libs/tevent-0.9.35[python(+)?,${MULTILIB_USEDEP}]
+ >=sys-libs/tdb-1.3.15[python?,${MULTILIB_USEDEP}]
+ ldap? ( net-nds/openldap )
+ python? ( ${PYTHON_DEPS} )
+"
+
+DEPEND="dev-libs/libxslt
+ doc? ( app-doc/doxygen )
+ virtual/pkgconfig
+ ${PYTHON_DEPS}
+ ${RDEPEND}
+"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.31-optional_packages.patch
+ "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
+)
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ local myconf=(
+ $(usex ldap '' --disable-ldap)
+ --disable-rpath
+ --disable-rpath-install --bundled-libraries=NONE
+ --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
+ --builtin-libraries=NONE
+ )
+ if ! multilib_is_native_abi; then
+ myconf+=( --disable-python )
+ else
+ use python || myconf+=( --disable-python )
+ fi
+ waf-utils_src_configure "${myconf[@]}"
+}
+
+multilib_src_compile(){
+ waf-utils_src_compile
+ multilib_is_native_abi && use doc && doxygen Doxyfile
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi; then
+ WAF_MAKE=1 \
+ PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
+ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
+ waf test || die
+ fi
+}
+
+multilib_src_install() {
+ waf-utils_src_install
+
+ if multilib_is_native_abi && use doc; then
+ doman apidocs/man/man3/*.3
+ docinto html
+ dodoc -r apidocs/html/*
+ fi
+}
+
+pkg_postinst() {
+ if has_version sys-auth/sssd; then
+ ewarn "You have sssd installed. It is known to break after ldb upgrades,"
+ ewarn "so please try to rebuild it before reporting bugs."
+ ewarn "See https://bugs.gentoo.org/404281"
+ fi
+}
diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest
index 6412e7665979..1ae8e06d5c5d 100644
--- a/sys-libs/libunwind/Manifest
+++ b/sys-libs/libunwind/Manifest
@@ -8,6 +8,6 @@ DIST libunwind-1.1.tar.gz 1098603 BLAKE2B c1ef0916c45786dcf820bef164f03e27af29f8
DIST libunwind-1.2.1.tar.gz 780774 BLAKE2B a5be4142e1e4932231023bdec2ab3ecd6b707faf2d32d2b571239252a1d0fb6a273a6a46c4a107db63f74f7b54c0c54cf252b8b79ad53216333ba7bcf63147a1 SHA512 af7c280d2a963779a4a2711887618bc96383011e4e5d52e4085aa7fb351e55e357468f6ff85e66a216f1c6826538f498335a917a5970575c93be74c96316319b
DIST libunwind-1.2.tar.gz 747369 BLAKE2B e1f0d8361d9518cafc590bffb0056157a81928a1ae7d29a1f6f78f917cd73e922b24a42b03cdd6e2eb6f6dd6e4e51116f6d83d16a5d51046104204df45ab66a6 SHA512 985d0817944e3cafd99aaa5642862d878972e0851f7954289247e808c9319f399ca29342395f0571cb6568a1104a82bd92d585936f2ca888dda37ac796fde0d4
EBUILD libunwind-1.1-r1.ebuild 2444 BLAKE2B ac2eb3bc33f80cfd82cb1600c1f9fff80d7ef7a824ecbd618c1d2e4416a5144b5beb47020e825a778d85ffb0e7f3de9b0909d07162b49ce7ec6e128247639b9d SHA512 d6c4099defbbe27c2a0c7df12299a21be655345b6480a61d3a67dea4dd3f732088b734f28eba4a5ee43ac7323ca6cef45fdba05e9c79d2d8e8b41ef5667299eb
-EBUILD libunwind-1.2.1.ebuild 2980 BLAKE2B 576fdb7eb4a2090f6433ba18142d4b9398ea681a80f1b26112cc33cb61f23a7cd86d27333f01427ceb3f73d8175bdcc44fd1dafdd0a144e87d2a8b9eee349bd5 SHA512 58086bec2363af36bb29d6f668434142d035ccb80453189b6223836b69f6cd189899743d90b569633c75539359c965ec5e76942819f1aef0f34eff45f2c32c7d
+EBUILD libunwind-1.2.1.ebuild 2979 BLAKE2B b85de4768d6e4a09e27be73214f7b9ce4552368af11b232262faa6fd334776f3e3b293c1440e379a16a20941221234415d51192f1f09b34c08ba46fa9bf34fa6 SHA512 8ecc2c541ea348174df795f96c2fe0d2d906e7b32988c264aea50fa81b68a091a8c9ea4488c4b6d983e1f4390df4d494d8af826ef5a757da0902a0e187595a4c
EBUILD libunwind-1.2.ebuild 3178 BLAKE2B 4e9ac515209f47bdf13f35ebf0867a57adbf39695da595bd5775b852e6673e5962b6f836265d8a6ebb5ab42900ceb33f5b013587dc9a71950575122578ac6298 SHA512 8c2cf271f613eb43552631444d262ed3bc163d943d9913fb2c130ef2ef2c45012059ff8db0a1564ba40f50408f7c97e5004c69f9625a60f07bd9ff835aaa2bd6
MISC metadata.xml 489 BLAKE2B c0a884e7161b62e8548fdf3c8c1d34b24936c71a99fef37713b7c36e0ef3423563e5c98eae8e9748db059645ce85cf972448e0584b1ed92e51c228794e5ed10d SHA512 d7586420e24a7b841cb090ce8dc7bb1c1260a3e2afbc6606d0a974243ca20c0586b4aa3e770b5b98787f8d34b8255846d87550c16f68da6e9d3f55f8b57bde40
diff --git a/sys-libs/libunwind/libunwind-1.2.1.ebuild b/sys-libs/libunwind/libunwind-1.2.1.ebuild
index 7f93b824a1db..b03e4212353e 100644
--- a/sys-libs/libunwind/libunwind-1.2.1.ebuild
+++ b/sys-libs/libunwind/libunwind-1.2.1.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz"
LICENSE="MIT"
SLOT="7"
-KEYWORDS="amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 hppa ia64 ~mips ppc ppc64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
IUSE="debug debug-frame doc libatomic lzma +static-libs"
RESTRICT="test" # half of tests are broken (toolchain version dependent)
diff --git a/sys-libs/talloc/Manifest b/sys-libs/talloc/Manifest
index f4f6d6fb3b43..bbc369d6f4d2 100644
--- a/sys-libs/talloc/Manifest
+++ b/sys-libs/talloc/Manifest
@@ -1,7 +1,9 @@
DIST talloc-2.1.10.tar.gz 441645 BLAKE2B fdc1f6b4ab6c95b461652ac5138e8f4e0db7161792b4cd7af8d80178b99404f844dd8352fb8820dcaedd0d96251025a8ebefc6bd1cff451e6bdf559617c964e3 SHA512 215e70056f37ade8f67c20ab2b79dcb40f071989ec908de81144f8a0160637bbdec9a94123dea73475ba42425415df4c1eb8c1986485a00e2e03323719a03ce3
+DIST talloc-2.1.11.tar.gz 443320 BLAKE2B 6234808d3a37dd1b9cd29121c20e003637da460d652769f9e85356b66aee285f3706377de4f507adfaaf91243a452a27bdab2377749d43937e140c3f8c69c417 SHA512 e0c7e44f21b0b6510e04e09ce325d50323a0c6466acb6f301676e82f8812c61ed7f6faadac62380aa6338d54679fdf7afba7fb9ac774d0def96efbcf49d00523
DIST talloc-2.1.5.tar.gz 436193 BLAKE2B 88a9ca32b6c6ae869e1761cb027847797e4ef3bb58dc618bae4b00f95637a0a8511f8704fa03ca1ca935127413a10d5297ba3843f0ea6992a97ce586f66cb705 SHA512 b938d67fcf4c6618f1149b4ec665957a604e3b07ee26e96ed36d94312db8f56b50498f69f9a07782f7f10a25047604e32b0d1786e1051d5f36b696c2755f8741
DIST talloc-2.1.9.tar.gz 440335 BLAKE2B dde37d99b3cfb63209cdb832444f0416b7c05151cec537e220e13b1148d59b89fb712b4211e078b23f1c6608c8be6df6055d5f394b091ccdea3966c04cbb73be SHA512 a8f051bb15aba769ca286acad0946605d0053b0d149b4da2e6ecc333345f3e603d13a7f062452ae0f165615a4170ebdd7f41fc1b46c7a360000d5308bc304cbb
EBUILD talloc-2.1.10.ebuild 2443 BLAKE2B 39e7c6e9cf12095d28a79bd8bf1feb3496a654a717de88f0b452c779384cc11295ee7e4804fe998876200aae3c85eff1e8f799581ee0551ab5be28a4565ddcd7 SHA512 9b2505168c051eb44e4c9e628800859f729ea9bac24b0e4a6daa80cd5d5036e8ac0733c5ec47b070f59b9791d1e822e53ae6df8d3a91c99176b1cb01e670e1ff
+EBUILD talloc-2.1.11.ebuild 2443 BLAKE2B 723f4a38dc2f2b83abfeb2ec98751bf2fffb5e82083c69296a9c2a6d794172dcfb0b59e7de974746f8e0542e63db1bf3deb8d882743113222869326b9a64b026 SHA512 2a1d66cba8c387c9c5dda890b646fcc1bdf50eb84d199990ccc5a28efc0d3cbd63540809579a3036f1af43441b0655bd7ff94ae5b3e71008c7b3cee9536a093b
EBUILD talloc-2.1.5.ebuild 2239 BLAKE2B e396e068f44c250ac72178473fd281541a903979c489d10ea66e997f5bee0bbdedc4d5b6e7c4bccdb799e7714190da85923702f27868a0f77dfff771b02c27f8 SHA512 ed9f0f10bd331f589b560c0563f1ca2b5e16fdf12121fca83a34cd2965b48f9d0f0374b12db9b655b5742839260d2fa794b70e6792402b4e0aac0e3ee0d72ed2
EBUILD talloc-2.1.9.ebuild 2423 BLAKE2B edb6f719ae8b613e129a0167e3dd6f6704bafb1ae4be6ae5811d289b4284903c619f1b0dc0e284ef2e1f0f12a0a979f0182550db9b80a922ba91aa6ca9c51499 SHA512 dcbd5d567eba7abc8b3d1191f5fff75455a5a9bdd58fb8035542dddf47e5cbe296e8fe8ffff95dd76163678efe8b7e81f4774dbe39a048d909e190474ff329a4
MISC metadata.xml 439 BLAKE2B 06eae26083fdab237958e15ac7e59ae728e1741eef080e2dbd47a9725a88f9120bfd03bcd98ec32a84bf8ee69d5721c7f3978c2c11d018136647d8f1778a1ab8 SHA512 e583aa7aa9a641067b3b38bf398ad6266980ee961e11d81b5d7c6d32cb8948879e27777a33a72376f79beca6f71aa79613db65049e6a1221922869239de9ccf3
diff --git a/sys-libs/talloc/talloc-2.1.11.ebuild b/sys-libs/talloc/talloc-2.1.11.ebuild
new file mode 100644
index 000000000000..e0ced08be51f
--- /dev/null
+++ b/sys-libs/talloc/talloc-2.1.11.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit waf-utils python-single-r1 multilib multilib-minimal
+
+DESCRIPTION="Samba talloc library"
+HOMEPAGE="https://talloc.samba.org/"
+SRC_URI="https://www.samba.org/ftp/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3 LGPL-3+ LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~sparc-solaris ~x64-solaris"
+IUSE="compat +python"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="python? ( ${PYTHON_DEPS} )
+ !!<sys-libs/talloc-2.0.5"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ dev-libs/libxslt
+ ${PYTHON_DEPS}"
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+RESTRICT="test"
+
+MULTILIB_WRAPPED_HEADERS=(
+ # python goes only for native
+ /usr/include/pytalloc.h
+)
+
+pkg_setup() {
+ # try to turn off distcc and ccache for people that have a problem with it
+ export DISTCC_DISABLE=1
+ export CCACHE_DISABLE=1
+
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # what would you expect of waf? i won't even waste time trying.
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ local extra_opts=()
+
+ use compat && extra_opts+=( --enable-talloc-compat1 )
+ if ! multilib_is_native_abi || ! use python; then
+ extra_opts+=( --disable-python )
+ fi
+
+ waf-utils_src_configure \
+ "${extra_opts[@]}"
+}
+
+multilib_src_compile() {
+ waf-utils_src_compile
+}
+
+multilib_src_install() {
+ waf-utils_src_install
+
+ # waf is stupid, and no, we can't fix the build-system, since it's provided
+ # as a brilliant binary blob thats decompressed on the fly
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ install_name_tool \
+ -id "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \
+ "${ED}"/usr/$(get_libdir)/libtalloc.2.0.5.dylib || die
+ if use python ; then
+ install_name_tool \
+ -id "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.2.dylib \
+ "${ED}"/usr/$(get_libdir)/libpytalloc-util.2.0.5.dylib || die
+ install_name_tool \
+ -change "${S}/bin/default/libtalloc.dylib" \
+ "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \
+ "${ED}"/usr/$(get_libdir)/libpytalloc-util.2.0.5.dylib || die
+ install_name_tool \
+ -change "${S}/bin/default/libtalloc.dylib" \
+ "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \
+ "${D}"$(python_get_sitedir)/talloc.bundle || die
+ fi
+ fi
+}
diff --git a/sys-libs/tevent/Manifest b/sys-libs/tevent/Manifest
index 90a5461c81e6..3aa22988e4d8 100644
--- a/sys-libs/tevent/Manifest
+++ b/sys-libs/tevent/Manifest
@@ -4,9 +4,11 @@ DIST tevent-0.9.31.tar.gz 587784 BLAKE2B 0e562600ae8ba4dae194b1a28a020f5618b1566
DIST tevent-0.9.32.tar.gz 590314 BLAKE2B 6159d2eac6ea49814fa83b982176db58fad6a9b619a28145bcee3eaff6b294559bcd863f2a3c8336cb218b8978145457d6dcf9e1af2239298d3811413f2bee69 SHA512 9bd256c245d9f82dcd5b31787c8b11780b958bef96426de231f54eaea6df680a5cf3eb8c8d066d05f271e81f303404fc4191a23a6bc2533b7d1b732b2c206fbd
DIST tevent-0.9.33.tar.gz 590611 BLAKE2B 087cd196b5cd0ca675280ce35d2a3f51a69d3e36f3ca99be0860873b0078fa4b94092731e2d23c15e8ad0db9703735ee07b90a1900e27245295f11edb3798e6d SHA512 3a437957859a556e06f24334301c41a3db1433c1e90d651fa74585a638a36d71369f235a8ab51aa0dd8f9d9bb88ad42f2c3ddeba0b99c4234c63866a8c922b91
DIST tevent-0.9.34.tar.gz 590260 BLAKE2B 7acd5b5ec540ab97641729e2b6300335a581d70ae2a76d0a93959c47cf84109cb1f52234b7189ecdd28390205b828296bbbde0820e9ba23a7bb33677b347a584 SHA512 29ff88cedc05d9345749ee241f8ab083fc6f98d3975b2739629a3a75a766db6ec42133eeb6c9297315ee0c68ab512c70b8b927d2df5ea61880c673ef33b44183
+DIST tevent-0.9.35.tar.gz 591546 BLAKE2B d0df81dc1998ae5806f3f8b613c5640af56d52c0e6fdea8f57c95cf4ef5d8bf349992582b97da94cbcc048bc3f758ecb03e836847467588e7dbfbb1aef87b906 SHA512 935719382469a0f39764a7ebdbc0ee977ccca2fc55ff1e896ddd95ba2d065d989f0c366cb98be95ce87475e628b0de38b7138261717a5c2cee870e98339ed5fd
EBUILD tevent-0.9.28.ebuild 1308 BLAKE2B 28b6ae3555c61e3297fbdfd544c86e573f494060d7f0634b28a5de2e559115fe5792473d757c79c37ce1a0be59fff5db68dc1cc14348192ba0385a58856866c9 SHA512 9bdc7903d5a99d3e82455598e9ad915fb1a48b0de0fb1e93b8188460f1ec432d451b9c9f7536a9917867939b49e4fa78e3bfdc4269eaa0736f488094e314b6de
EBUILD tevent-0.9.31-r1.ebuild 1389 BLAKE2B 216aa5ce0e0541cf8a7b6494d58acd25acbb982d035018b85c0cc2450c4958e10a11e75d19dacb2bc73d6ec9525c94b75952d63c578ccba2ae776263422287fd SHA512 ae95c8849b5b34814da9af6c1cc356359da9f9c9132e5fe3e55c82fa60d63ba78f7598b27705b135aa76de243532ad7474b7ab085522cc2d5e70bf5e4ea06518
EBUILD tevent-0.9.32.ebuild 1396 BLAKE2B eab06a3aeaa5af4d422403779582200475e759930186d55fc5598e8eedb56c644f5515248c1faa18046a5dcd18db381ab05c603d7d5778b83254c5f1892868d3 SHA512 5626a0a26e3eade2fb441c3b1f3ec347559858bc9266aa8f4e0dc674c5fa640a6f3cae42d753bdddc211f16ee59a1ab25248d3c7ac3accdf65d82d4a1d2cde9a
EBUILD tevent-0.9.33.ebuild 1511 BLAKE2B e82e0cae6c70b391f3952384d94bab545bf0ad35d8e5aaf3b16d9020bfbb26d8b1c01af0d32078fd033cd5365976503e2508a5b96b2ac6273edb2b08d249f6da SHA512 4cbd0b0b8bb35fc424daf11f2d75ded7a68ba27296acd34bb11e625aa6f75ca5ac658aec6b8e9a729a6ba595c03f17f963bede55e713296e3508cf6d4acae01b
EBUILD tevent-0.9.34.ebuild 1514 BLAKE2B 7ec15890fbc1d7ae8a3cde90edccf6483a1fe688c7518e68d7326a111b98be14a6e7f843d2765b0b8ff4ae404f1979f0d2003249485945d296291edd0aa2b42e SHA512 c1c0575beb69404daf63e85a28b2da7795381b85deefae12ef2e6bc6d7a0420c319fc2c81c107ce56bf8fa01c36265339c8bc00422789279963cdc7200823cb3
+EBUILD tevent-0.9.35.ebuild 1514 BLAKE2B 0ccb5903534c6feee6fe1acf70039e4355605c4ba4acbb8f7b345c0dc189f410c1685ba9d644e80891c3f250d063d56b3343b072ce7478ed0d51a02549b50685 SHA512 4b09900c94d3473dcc2a7d3344933a4cc8745d953a4ff8ac79d11f8d14fd42f18a9e72312f84c7bdc2daf8a2b9b328d35613ecf8f55f18a03c253712b5bff0c3
MISC metadata.xml 345 BLAKE2B 2b19478c92e6a2e49d4421494986bf139e3e130ee9486f8ee2a208ac91db84662fee1b5ced560b29c926e6ab1c07752a4d6679582f220c50713c3b1dc2aa2e6b SHA512 35515a1369eeb1e4949415f8571fc54e7546ac83a59b506e04dc795f0a9b4cb06d7c8e1785577c20ca398fd87543f1742d9d4267fc09320503835bad1fc36cf5
diff --git a/sys-libs/tevent/tevent-0.9.35.ebuild b/sys-libs/tevent/tevent-0.9.35.ebuild
new file mode 100644
index 000000000000..c2a8eb8ad787
--- /dev/null
+++ b/sys-libs/tevent/tevent-0.9.35.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit waf-utils multilib-minimal python-single-r1
+
+DESCRIPTION="Samba tevent library"
+HOMEPAGE="https://tevent.samba.org/"
+SRC_URI="https://www.samba.org/ftp/tevent/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux"
+IUSE="python"
+
+RDEPEND=">=sys-libs/talloc-2.1.11[${MULTILIB_USEDEP}]
+ python? ( ${PYTHON_DEPS} )"
+
+DEPEND="${RDEPEND}
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+ ${PYTHON_DEPS}
+"
+# build system does not work with python3
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+#PATCHES=(
+# "${FILESDIR}"/talloc-disable-python.patch
+#)
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ waf-utils_src_configure \
+ --bundled-libraries=NONE \
+ --builtin-libraries=NONE \
+ $(multilib_native_usex python '' '--disable-python')
+}
+
+multilib_src_compile() {
+ # need to avoid parallel building, this looks like the sanest way with waf-utils/multiprocessing eclasses
+ unset MAKEOPTS
+ waf-utils_src_compile
+}
+
+multilib_src_install() {
+ waf-utils_src_install
+
+ multilib_is_native_abi && use python && python_domodule tevent.py
+}
+
+multilib_src_install_all() {
+ insinto /usr/include
+ doins tevent_internal.h
+}