diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest index 610575bfa2..da86547360 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest @@ -1,2 +1 @@ -DIST libnl-1.1.4.tar.gz 1174974 BLAKE2B e6466e15db17fe4725674d77c6cdcefac73e51346f6f4378bc3ea8409c1534519cc28f1123c8201e78f6b95254701a2f9591f907b3cc597ac1210fd3f8b832ea SHA512 25e26ddcc16540346ea34815ab6ac094177e5cee2eb3d843c4f8b30cd9d83390a3e87cb46046dc3bd9ae4d21f77e57bb3827c2cfc588eb18afe049921f2030b4 -DIST libnl-3.5.0.tar.gz 967835 BLAKE2B cf21c1ffa89799b91bf4bddb8833d5af5c62eb1c53a078ee55a2888bd8439e1ae6db8886c9c4f937297962faac6873b4cf5211ee3d1e5354d96b5dc545a6fc2d SHA512 9c94c09bac34297493b3ea482713d7c0865d2839b5042e5c7d1ed008e2402ab63df35a18e272f40b2cce27d0c31dc733fe7e4b2d376e7ca847a2b0d5e90de50c +DIST libnl-3.7.0.tar.gz 1000913 BLAKE2B 22c418ea520416d79ee4552ab6bc5ba99239b29e074c840d31b0ec4171a0403ea9d2c1afcbf1b3428564dd371cadd99bc062ae7540e7496f970c4fb98f967e84 SHA512 80fbbc079299c90afd2a5eda62e4d4f98bf4ef23958c3ce5101f4ed4d81d783af733213bb3bab15f218555d8460bc2394898f909f4ac024fc27281faec86a041 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-flags.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-flags.patch deleted file mode 100644 index dc512c587b..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-flags.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/lib/Makefile -+++ b/lib/Makefile -@@ -48,7 +48,7 @@ - - $(OUT_SLIB): ../Makefile.opts $(OBJ) - @echo " LD $(OUT_SLIB)"; \ -- $(CC) -shared -Wl,-soname,libnl.so.1 -o $(OUT_SLIB) $(OBJ) $(LIBNL_LIB) -lc -+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -Wl,-soname,libnl.so.1 -o $(OUT_SLIB) $(OBJ) $(LIBNL_LIB) -lc - @echo " LN $(OUT_SLIB) $(LN1_SLIB)"; \ - rm -f $(LN1_SLIB) ; $(LN) -s $(OUT_SLIB) $(LN1_SLIB) - @echo " LN $(LN1_SLIB) $(LN_SLIB)"; \ diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-vlan-header.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-vlan-header.patch deleted file mode 100644 index c4c2fc6382..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-vlan-header.patch +++ /dev/null @@ -1,80 +0,0 @@ -From: Patrick McHardy -Date: Fri, 18 Jan 2008 16:55:48 +0000 (+0100) -Subject: [LIBNL]: Add if_vlan.h -X-Git-Url: http://git.kernel.org/?p=libs%2Fnetlink%2Flibnl.git;a=commitdiff_plain;h=e91bb2ffb090955d443e643a25b250bf3d33534a;hp=7f6b7a8eea0334b34d58dec72c66121a76f08958 - -[LIBNL]: Add if_vlan.h - -vlan support needs VLAN_FLAG_REORDER_HDR, which is not available in -older if_vlan.h versions. Add the current version from the kernel. - -Signed-off-by: Patrick McHardy ---- - -diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h -new file mode 100644 -index 0000000..068cd7b ---- /dev/null -+++ include/linux/if_vlan.h -@@ -0,0 +1,61 @@ -+/* -+ * VLAN An implementation of 802.1Q VLAN tagging. -+ * -+ * Authors: Ben Greear -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version -+ * 2 of the License, or (at your option) any later version. -+ * -+ */ -+ -+#ifndef _LINUX_IF_VLAN_H_ -+#define _LINUX_IF_VLAN_H_ -+ -+ -+/* VLAN IOCTLs are found in sockios.h */ -+ -+/* Passed in vlan_ioctl_args structure to determine behaviour. */ -+enum vlan_ioctl_cmds { -+ ADD_VLAN_CMD, -+ DEL_VLAN_CMD, -+ SET_VLAN_INGRESS_PRIORITY_CMD, -+ SET_VLAN_EGRESS_PRIORITY_CMD, -+ GET_VLAN_INGRESS_PRIORITY_CMD, -+ GET_VLAN_EGRESS_PRIORITY_CMD, -+ SET_VLAN_NAME_TYPE_CMD, -+ SET_VLAN_FLAG_CMD, -+ GET_VLAN_REALDEV_NAME_CMD, /* If this works, you know it's a VLAN device, btw */ -+ GET_VLAN_VID_CMD /* Get the VID of this VLAN (specified by name) */ -+}; -+ -+enum vlan_flags { -+ VLAN_FLAG_REORDER_HDR = 0x1, -+}; -+ -+enum vlan_name_types { -+ VLAN_NAME_TYPE_PLUS_VID, /* Name will look like: vlan0005 */ -+ VLAN_NAME_TYPE_RAW_PLUS_VID, /* name will look like: eth1.0005 */ -+ VLAN_NAME_TYPE_PLUS_VID_NO_PAD, /* Name will look like: vlan5 */ -+ VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD, /* Name will look like: eth0.5 */ -+ VLAN_NAME_TYPE_HIGHEST -+}; -+ -+struct vlan_ioctl_args { -+ int cmd; /* Should be one of the vlan_ioctl_cmds enum above. */ -+ char device1[24]; -+ -+ union { -+ char device2[24]; -+ int VID; -+ unsigned int skb_priority; -+ unsigned int name_type; -+ unsigned int bind_type; -+ unsigned int flag; /* Matches vlan_dev_info flags */ -+ } u; -+ -+ short vlan_qos; -+}; -+ -+#endif /* !(_LINUX_IF_VLAN_H_) */ diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch deleted file mode 100644 index e370a5e62f..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/include/netlink-local.h -+++ b/include/netlink-local.h -@@ -343,7 +343,9 @@ - } - - #define ARRAY_SIZE(X) (sizeof(X) / sizeof((X)[0])) -+#ifndef offsetof - #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) -+#endif - - #define __init __attribute__ ((constructor)) - #define __exit __attribute__ ((destructor)) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-99999999-2to3.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-99999999-2to3.patch deleted file mode 100644 index 66a16406d7..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-99999999-2to3.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- a/python/netlink/route/links/bridge.py -+++ b/python/netlink/route/links/bridge.py -@@ -6,7 +6,7 @@ - - """ - --from __future__ import absolute_import -+ - - from ... import core as netlink - from .. import capi as capi -@@ -19,10 +19,10 @@ - - def bridge_assert_ext_info(self): - if self._has_ext_info == False: -- print """ -+ print(""" - Please update your kernel to be able to call this method. - Your current kernel bridge version is too old to support this extention. -- """ -+ """) - raise RuntimeWarning() - - def port_state2str(self, state): ---- a/doc/resolve-asciidoc-refs.py -+++ b/doc/resolve-asciidoc-refs.py -@@ -22,4 +22,4 @@ - - rc = re.compile('|'.join(map(re.escape, sorted(refs, reverse=True)))) - for line in open(sys.argv[1], 'r'): -- print rc.sub(translate, line), -+ print(rc.sub(translate, line), end=' ') ---- a/doc/doxygen-link.py -+++ b/doc/doxygen-link.py -@@ -1,6 +1,6 @@ - #!/usr/bin/env python - --from __future__ import print_function -+ - import fileinput - import re - import sys diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.4-r1.ebuild deleted file mode 100644 index 8f3ad2437d..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.4-r1.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit toolchain-funcs - -DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" -HOMEPAGE="https://www.infradead.org/~tgr/libnl/" -SRC_URI="http://www.infradead.org/~tgr/libnl/files/${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="1.1" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="doc static-libs" - -DEPEND="doc? ( app-doc/doxygen )" -DOCS=( ChangeLog ) - -PATCHES=( - "${FILESDIR}"/${PN}-1.1-vlan-header.patch - "${FILESDIR}"/${PN}-1.1-flags.patch - "${FILESDIR}"/${PN}-1.1.3-offsetof.patch -) - -src_prepare() { - default - - sed -i \ - -e '/@echo/d' \ - Makefile.rules {lib,src,tests}/Makefile || die - sed -i \ - -e 's|-g ||g' \ - Makefile.opts.in || die - - if ! use static-libs; then - sed -i lib/Makefile -e '/OUT_AR/d' || die - fi - - rm -f lib/libnl.a || die -} - -src_compile() { - emake AR="$(tc-getAR)" - - if use doc ; then - cd "${S}/doc" || die - emake gendoc - fi -} - -src_install() { - default - - if use doc ; then - cd "${S}/doc" || die - - docinto html - dodoc -r html/* - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.9999.ebuild deleted file mode 100644 index 14a4835802..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.9999.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit git-r3 toolchain-funcs - -DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" -HOMEPAGE="https://www.infradead.org/~tgr/libnl/" -EGIT_REPO_URI="https://github.com/tgraf/libnl-1.1-stable" - -LICENSE="LGPL-2.1" -SLOT="1.1" -IUSE="doc static-libs" - -BDEPEND="doc? ( app-doc/doxygen )" - -DOCS=( ChangeLog ) - -PATCHES=( - "${FILESDIR}"/${PN}-1.1-vlan-header.patch - "${FILESDIR}"/${PN}-1.1-flags.patch - "${FILESDIR}"/${PN}-1.1.3-offsetof.patch -) - -src_prepare() { - default - - sed -i \ - -e '/@echo/d' \ - Makefile.rules {lib,src,tests}/Makefile || die - sed -i \ - -e 's|-g ||g' \ - Makefile.opts.in || die - - if ! use static-libs ; then - sed -i lib/Makefile -e '/OUT_AR/d' || die - fi - - rm -f lib/libnl.a || die -} - -src_compile() { - emake AR="$(tc-getAR)" - - if use doc ; then - cd "${S}/doc" || die - emake gendoc - fi -} - -src_install() { - default - - if use doc ; then - cd "${S}/doc" || die - docinto html - dodoc -r html/* - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.5.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.7.0.ebuild similarity index 58% rename from sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.5.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.7.0.ebuild index bb1b8fad31..335a8c4210 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.5.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.7.0.ebuild @@ -1,11 +1,12 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python3_{7,8,9} ) DISTUTILS_OPTIONAL=1 -inherit distutils-r1 libtool multilib-minimal +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..10} ) +inherit autotools distutils-r1 multilib-minimal LIBNL_P=${P/_/-} LIBNL_DIR=${PV/_/} @@ -13,28 +14,33 @@ LIBNL_DIR=${LIBNL_DIR//./_} DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" -SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" -S="${WORKDIR}/${LIBNL_P}" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/thom311/libnl" + inherit git-r3 +else + SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" + + S="${WORKDIR}/${LIBNL_P}" +fi LICENSE="LGPL-2.1 utils? ( GPL-2 )" SLOT="3" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="+debug static-libs python test +threads utils" +IUSE="+debug python test utils" RESTRICT="!test? ( test )" RDEPEND="python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND}" -BDEPEND=" - ${RDEPEND} - python? ( dev-lang/swig ) - test? ( dev-libs/check ) +BDEPEND="${RDEPEND} sys-devel/bison sys-devel/flex -" + python? ( + ${DISTUTILS_DEPS} + dev-lang/swig + ) + test? ( dev-libs/check )" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -DOCS=( ChangeLog ) - MULTILIB_WRAPPED_HEADERS=( # we do not install CLI stuff for non-native /usr/include/libnl3/netlink/cli/addr.h @@ -43,6 +49,7 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/libnl3/netlink/cli/ct.h /usr/include/libnl3/netlink/cli/exp.h /usr/include/libnl3/netlink/cli/link.h + /usr/include/libnl3/netlink/cli/mdb.h /usr/include/libnl3/netlink/cli/neigh.h /usr/include/libnl3/netlink/cli/qdisc.h /usr/include/libnl3/netlink/cli/route.h @@ -54,47 +61,53 @@ MULTILIB_WRAPPED_HEADERS=( src_prepare() { default - elibtoolize + eautoreconf if use python; then - cd "${S}"/python || die + pushd "${S}"/python > /dev/null || die distutils-r1_src_prepare + popd > /dev/null || die fi - - # out-of-source build broken - # https://github.com/thom311/libnl/pull/58 - multilib_copy_sources } multilib_src_configure() { - econf \ + # bug #884277 + export YACC=yacc.bison + + ECONF_SOURCE="${S}" econf \ $(multilib_native_use_enable utils cli) \ - $(use_enable debug) \ - $(use_enable static-libs static) \ - $(use_enable threads) + $(use_enable debug) } multilib_src_compile() { default - if multilib_is_native_abi && use python; then - cd python || die + if multilib_is_native_abi && use python ; then + pushd python > /dev/null || die distutils-r1_src_compile + popd > /dev/null || die fi } multilib_src_install() { - emake DESTDIR="${D}" install + default - if multilib_is_native_abi && use python; then + if multilib_is_native_abi && use python ; then # Unset DOCS= since distutils-r1.eclass interferes local DOCS=() - cd python || die + + pushd python > /dev/null || die + distutils-r1_src_install + + popd > /dev/null || die fi } multilib_src_install_all() { + DOCS=( ChangeLog ) + einstalldocs + find "${ED}" -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-99999999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild similarity index 64% rename from sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-99999999.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild index b2b6af6a8f..001f603d5b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-99999999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild @@ -1,35 +1,46 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python3_{7,8,9} ) DISTUTILS_OPTIONAL=1 -inherit autotools distutils-r1 git-r3 multilib-minimal +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..10} ) +inherit autotools distutils-r1 multilib-minimal + +LIBNL_P=${P/_/-} +LIBNL_DIR=${PV/_/} +LIBNL_DIR=${LIBNL_DIR//./_} DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" -EGIT_REPO_URI="https://github.com/thom311/libnl" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/thom311/libnl" + inherit git-r3 +else + SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + + S="${WORKDIR}/${LIBNL_P}" +fi LICENSE="LGPL-2.1 utils? ( GPL-2 )" SLOT="3" -KEYWORDS="" -IUSE="+debug static-libs python test +threads utils" +IUSE="+debug python test utils" RESTRICT="!test? ( test )" RDEPEND="python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND}" -BDEPEND=" - ${RDEPEND} +BDEPEND="${RDEPEND} sys-devel/bison sys-devel/flex - python? ( dev-lang/swig ) - test? ( dev-libs/check ) -" + python? ( + ${DISTUTILS_DEPS} + dev-lang/swig + ) + test? ( dev-libs/check )" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -DOCS=( ChangeLog ) - MULTILIB_WRAPPED_HEADERS=( # we do not install CLI stuff for non-native /usr/include/libnl3/netlink/cli/addr.h @@ -38,6 +49,7 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/libnl3/netlink/cli/ct.h /usr/include/libnl3/netlink/cli/exp.h /usr/include/libnl3/netlink/cli/link.h + /usr/include/libnl3/netlink/cli/mdb.h /usr/include/libnl3/netlink/cli/neigh.h /usr/include/libnl3/netlink/cli/qdisc.h /usr/include/libnl3/netlink/cli/route.h @@ -46,10 +58,6 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/libnl3/netlink/cli/utils.h ) -PATCHES=( - "${FILESDIR}"/${PN}-99999999-2to3.patch -) - src_prepare() { default @@ -60,25 +68,18 @@ src_prepare() { distutils-r1_src_prepare popd > /dev/null || die fi - - # out-of-source build broken - # https://github.com/thom311/libnl/pull/58 - multilib_copy_sources } multilib_src_configure() { - econf \ + ECONF_SOURCE="${S}" econf \ $(multilib_native_use_enable utils cli) \ - $(use_enable debug) \ - $(use_enable static-libs static) \ - $(use_enable threads) \ - --disable-doc + $(use_enable debug) } multilib_src_compile() { default - if multilib_is_native_abi && use python; then + if multilib_is_native_abi && use python ; then pushd python > /dev/null || die distutils-r1_src_compile popd > /dev/null || die @@ -88,7 +89,7 @@ multilib_src_compile() { multilib_src_install() { default - if multilib_is_native_abi && use python; then + if multilib_is_native_abi && use python ; then # Unset DOCS= since distutils-r1.eclass interferes local DOCS=() @@ -96,14 +97,14 @@ multilib_src_install() { distutils-r1_src_install - # For no obvious reason this is not done automatically - python_foreach_impl python_optimize - popd > /dev/null || die fi } multilib_src_install_all() { + DOCS=( ChangeLog ) + einstalldocs + find "${ED}" -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml index 9a023d2e9d..ff40a5ef75 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml @@ -6,7 +6,6 @@ Gentoo network monitoring and analysis project - Install development documentation Install experimental dev-lang/python bindings Install command line interface utils