diff options
Diffstat (limited to 'sys-libs/talloc')
-rw-r--r-- | sys-libs/talloc/Manifest | 1 | ||||
-rw-r--r-- | sys-libs/talloc/talloc-2.3.3.ebuild | 118 |
2 files changed, 119 insertions, 0 deletions
diff --git a/sys-libs/talloc/Manifest b/sys-libs/talloc/Manifest index f3b62899b69a..ae0afae278ed 100644 --- a/sys-libs/talloc/Manifest +++ b/sys-libs/talloc/Manifest @@ -1 +1,2 @@ DIST talloc-2.3.2.tar.gz 661344 BLAKE2B 957eedc4a367051cb99fa4d2edb8e778de8e0187bb5c0d84a1afef20aab122a8b7310d10c694e15ddd6a0a45194889fe3d26dae0ceb8e406d51512af95a23014 SHA512 c851a6f43025720453a3bff8734bfcfff0e29fb7cf2ffcc6c03b6ab8589098daf01d668deec61aa2f238d4df3eb3c47bd080e26eec760cf04a70e1afcad5c5e1 +DIST talloc-2.3.3.tar.gz 650493 BLAKE2B 4312d8bbd54da2cb8917946e46bb77dae1c6fdfeb72bd85d86ef8d5900f2132a36c5f0075608116a9bf036a2f02671472d389eed704f8e2923f8320d29aa12bd SHA512 1e4b90769b9be72421d76bf9149fd0736f43d034b1573ab2dfb5cd613b4fb3fdf67d575f81789851787e1cbbc7353cdfc114cefbccb15fc0f39e222f40aff65f diff --git a/sys-libs/talloc/talloc-2.3.3.ebuild b/sys-libs/talloc/talloc-2.3.3.ebuild new file mode 100644 index 000000000000..2b8eb265c04f --- /dev/null +++ b/sys-libs/talloc/talloc-2.3.3.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_REQ_USE="threads(+)" +inherit waf-utils python-single-r1 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 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~x64-solaris" +IUSE="compat +python" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="test" + +RDEPEND=" + !elibc_FreeBSD? ( + !elibc_SunOS? ( + !elibc_Darwin? ( + dev-libs/libbsd[${MULTILIB_USEDEP}] + ) + ) + ) + python? ( ${PYTHON_DEPS} ) + !!<sys-libs/talloc-2.0.5 +" +DEPEND="${RDEPEND}" +BDEPEND="${PYTHON_DEPS} + dev-libs/libxslt + sys-devel/gettext +" + +WAF_BINARY="${S}/buildtools/bin/waf" + +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 + + if [[ ${CHOST} == *-darwin* ]] ; then + # Drop irritating ABI names (e.g. cpython-37m) + # We're only installing one implementation anyway + sed -i "s/+ conf.all_envs\['default'\]\['PYTHON_SO_ABI_FLAG'\]//" wscript || die + sed -i "s/name = bld.pyembed_libname('pytalloc-util')/name = 'pytalloc-util'/" wscript || die + fi + + # what would you expect of waf? i won't even waste time trying. + multilib_copy_sources +} + +multilib_src_configure() { + local extra_opts=( + $(usex compat --enable-talloc-compat1 '') + $(multilib_native_usex python '' --disable-python) + $([[ ${CHOST} == *-solaris* ]] && echo '--disable-symbol-versions') + ) + 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.${PV}.dylib || die + + if use python ; then + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.2.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.${PV}.dylib || die + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libtalloc.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.${PV}.dylib || die + + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.dylib || die + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libtalloc.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${ED}"/usr/$(get_libdir)/libpytalloc-util.dylib || die + + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libpytalloc-util.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libpytalloc-util.dylib \ + "${D}"$(python_get_sitedir)/talloc*.bundle || die + install_name_tool \ + -change "${BUILD_DIR}/bin/default/libtalloc.dylib" \ + "${EPREFIX}"/usr/$(get_libdir)/libtalloc.2.dylib \ + "${D}"$(python_get_sitedir)/talloc*.bundle || die + fi + fi +} |