summaryrefslogtreecommitdiff
path: root/dev-libs/libnl
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-libs/libnl
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-libs/libnl')
-rw-r--r--dev-libs/libnl/Manifest19
-rw-r--r--dev-libs/libnl/files/libnl-1.1-flags.patch11
-rw-r--r--dev-libs/libnl/files/libnl-1.1-vlan-header.patch80
-rw-r--r--dev-libs/libnl/files/libnl-1.1.3-offsetof.patch12
-rw-r--r--dev-libs/libnl/libnl-1.1.4.ebuild53
-rw-r--r--dev-libs/libnl/libnl-3.2.28.ebuild114
-rw-r--r--dev-libs/libnl/libnl-3.2.29.ebuild114
-rw-r--r--dev-libs/libnl/libnl-3.3.0.ebuild106
-rw-r--r--dev-libs/libnl/libnl-3.4.0_rc1.ebuild107
-rw-r--r--dev-libs/libnl/libnl-99999999.ebuild102
-rw-r--r--dev-libs/libnl/metadata.xml16
11 files changed, 734 insertions, 0 deletions
diff --git a/dev-libs/libnl/Manifest b/dev-libs/libnl/Manifest
new file mode 100644
index 000000000000..efdc2a2b2751
--- /dev/null
+++ b/dev-libs/libnl/Manifest
@@ -0,0 +1,19 @@
+AUX libnl-1.1-flags.patch 441 SHA256 027b7c29cd0176f94cf337508bca0542361b900d262d956b0e3ef00080b0bc2a SHA512 1f97dc181118368977ebc7bc6134c7e9fb6acd083721f1c857fca9e3a2cc242e03cbd198a0fb12a05597765a732d9a9384a75f46d1f023f6d5160631a29a9947 WHIRLPOOL e467a057b37e236e15c8f5dc56ca66ec36dc09830f2e63bb30b747b04687b16ab04cc6b50d88768b67d31d9569616e420b4035769e43302cfa7288928f254efd
+AUX libnl-1.1-vlan-header.patch 2378 SHA256 c9c7d8bf94ab06884f91ecd98977433be952530555aff37befc335f1f6312619 SHA512 ea45d780b16e6045735aaf2e3febf19ddccab4ca0e03710aebfe51655adc50177aefa3bd4d06e0ccce0160f4c6db73cfa4eb7cebe53b3e15c1807c3b00dc1c9c WHIRLPOOL b63f8fa7d8d1865e9ee3fd896eec12eb2fcdd77774ea4ef2a9f2e623b823fcd3e052860cfc456cc884b2d72ff587d091b756b349dac9845206f515a9cbbd1e03
+AUX libnl-1.1.3-offsetof.patch 320 SHA256 66b458406b7e13abc166318cad331f81e1c8a894775babd6283b408b3c8fae1b SHA512 fe625a9ac6ea8776c8f7ef3d7e3553651c0244e830883587bd7e86490e0ec6e8b29865e172a0e39947e213b910a4279202eabfdd5d7f08e835f5be91d4ff9d6b WHIRLPOOL d1240b691e9a5ef58f5629623571256ab1b37d7bb4b62da37fb09635455f7ac8076043b12f0d6bae48a45df517b57ddc5a7ed689fb2f6ad8a96065232d6b803f
+DIST libnl-1.1.4.tar.gz 1174974 SHA256 4f80c21fe5bbcdde6e72b59b4f98306063a41421f909887c34e58d93e746d063 SHA512 25e26ddcc16540346ea34815ab6ac094177e5cee2eb3d843c4f8b30cd9d83390a3e87cb46046dc3bd9ae4d21f77e57bb3827c2cfc588eb18afe049921f2030b4 WHIRLPOOL eab5547dce7b11c86123fbcc9cd8e00100c7e78f48a4a9fef40f80f89407ea705b701f8f0eb7df63997866f17b0cf0924b43c69b29fa1f1b016fe997371b950e
+DIST libnl-3.2.28-in6.patch.xz 6368 SHA256 0cbb8dc4e3cdc90a4a0608a26af1971d7c1c397bb5f089de8c8d640e57b7b631 SHA512 de14f7540e514871db2058236a339192443423e56f2f5bd52e02ff06873c9e411029b12f3119e57eb01201ce3643ce78ca3e8d9ada4f6ba318df96288304bead WHIRLPOOL 1f1ebfc06a0cf516202cee3aaee92d7ed584ec9633d48c23e666d40bf48d658cc27a00c9f8881a7e976e21fc66fb867e10cadd8a6c0c8826ff4fab712cb20f3d
+DIST libnl-3.2.28.tar.gz 941954 SHA256 cd608992c656e8f6e3ab6c1391b162a5a51c49336b9219f7f390e61fc5437c41 SHA512 b5f145ecafb2625ed1c42594afd6063f112a601077de5c35884b3c3bc8c562b29b52a006ccebd795c127fe69692a82def425c8605afed7e6d441582943e803d9 WHIRLPOOL ff49346ddc31105a300ebffc0e4d4956ac85ade5e92e884c62e696d7d4234d40e63cf4839e6b6fd2d98d2122662d36d3f41666391686a83c8bf966e53e22ed25
+DIST libnl-3.2.29.tar.gz 963681 SHA256 0beb593dc6abfffa18a5c787b27884979c1b7e7f1fd468c801e3cc938a685922 SHA512 45e22b02368c479e01db7160345a0d3c73abf345e7b49bf350811243a17f307f5c6c3df639ec1e0c456707578aca8d69aad8afa697ac21449f521a3e39712670 WHIRLPOOL 1273dcaee79ecfdca947110c5e7ff70947703b1b0fda43fdb7c74edd78c6938f675e9a586aaff8feefce56a1f3137cbc50d3626ac336e6afa2ca8cbd8627e6eb
+DIST libnl-3.3.0.tar.gz 933390 SHA256 705468b5ae4cd1eb099d2d1c476d6a3abe519bc2810becf12fb1e32de1e074e4 SHA512 3fc5d95b875605ab6378d2d454020c1276a6772205fa11bbd22eba9fd9ef1deb8c75347e5d4602f0ab7bf13bd66b418f5ef73ed05f18134f08638ce06eef622c WHIRLPOOL a6f7c066c9d05af807ed17babe1f39107d24b4b5ef44ca94e487543a39b0a2f1298fbf6448356fa3701c033fbff0df392945666c125f16246398d47a8c828f5b
+DIST libnl-3.4.0-rc1.tar.gz 945094 SHA256 31eae336fe4383ec52eea9dd2db51f33ac83cd1c349e4a31ed80c777eed7d0fe SHA512 f0a3c6d368b2b60b198a7e96d67a99daefb3bad194961c5472bd6401e6c274058b7a7173015b73d90df41db43c7ffdfd99252f6378dc5912a33e4e70212e0c75 WHIRLPOOL e156c2400ebe5827cbbfb9ae84bf71fa569ab1c7e8e44c7f00492cffd01e629ee90afa88bcc374e04711187ec083932a5c7c2fef28b3ac25d76e69f1d75a36b4
+DIST libnl-3.4.0_rc1.tar.xz 1124 SHA256 3857952e47656e7f50ecf55ca40b9e67b9a4864b4bcb1a126ddd380956f5dc9f SHA512 6175e3234691d0ff875e6cde79ec93ff7dec1deb66300e8fffe54a5a7d816c5a73d0a4ad371f962792181622d20c59fc3ff7c086062d4f20db18a7b99b050858 WHIRLPOOL b88b5a5f81201c689c181f88f0b7d59b3fad717ee875cf09282dc943350a78f83aaedac50cdf94b40a10b4ce258b63fa9906b75a0eed1b83dd27c1d927ef0a92
+EBUILD libnl-1.1.4.ebuild 1141 SHA256 cac2ccdc7c6ae626e5e8309066cb94a7c5e6fc3362bb42a61299ff1f14fd0393 SHA512 1c63d4eabb1268b349918acbdc3cbc7d2fabc09a75e4b07793f1e380309404f460bfc3b90c7426377d57be65f5b679a5d20155003ab589497b225dea2f9c281a WHIRLPOOL fb8a6a6c625033183ef86cac5bfacf02626a945019d84e4746d87a819c3d5ba1d3eae0426e1ad355543eba001053fb8241e0cf5a7bd31368302e8f0e3d2d0230
+EBUILD libnl-3.2.28.ebuild 2616 SHA256 872d785ad2c0c4c016be310831864b533635dd5b8bfb935a0bd61ee3cd6a09cc SHA512 ec622b8862df56d20e79cd5a979fbc0a33c88f4bf97aad49f61864570df9fec448c1cfa7d1f462535ce3dc06ebec59a939b35ab4a2155b6be6e27e7467dcbb8e WHIRLPOOL cc6b0d201a33da153160d9cc469b775b5c395e4f507641acda95bfc18de42ccaf5ff12c51920fb2201e0da12a1ddfbc4fe1d10891aa2168e12d7db73bff18670
+EBUILD libnl-3.2.29.ebuild 2626 SHA256 ca26a87e11dda72a7e9d4f0e04e91f78793095ce927af9307a8a5945a10cf396 SHA512 dd09123c9847bbb5772a48afc17927b70b3c8ea5688492f4532b5f307482516f165eb4b4fbbea75d36836cfbb4086b4180193e3dfc58fc138a7744175e836d68 WHIRLPOOL 03bd53de5be62ccc1f139c55d17fefa708a635552b81c0d0c3bc3da153c28e8927e2366f378c8a807d0a008c0466c0097f7cafe18d99a187a3c96abc90ffdc91
+EBUILD libnl-3.3.0.ebuild 2476 SHA256 637f84fa3f81dd35fb16af63f821db0806931d27ff2fa1d6a3d98ff8f529bc56 SHA512 5c7e28b62ba07fd4e09c163a9dbf73f49d2da550c49b3ed067fe6e61bf6e69a7bdf2dc7e64e8004482fd25ec4283989b6da248abc959d17702e9d8ea2f5da99d WHIRLPOOL c1558f0a680e45f3d5d38c2bb9f0856078fc6fafd3b0ab60340e1e3447940fd1ae20edd93900adf96dbdad221016186674635f232245b68c6dcd2b4b45dc16de
+EBUILD libnl-3.4.0_rc1.ebuild 2517 SHA256 a82dabb7fd06326dad86d5289e10c7a7ede832e78cc816da9d8e7d91244143b7 SHA512 1eb11c1e266a85d35154cd910b59b3b340a21f4d0a3a58f961139c7269576e03d3efd75044389a484bd50394813b09c0f5925a032f175f118052390d9fcd0b4b WHIRLPOOL 2d0093d55ceef92f035a10fd8341ab3748a52ad322a1e54589c59c3550e6c4710f512cea101b633d32a0d99a970990e5d7253997195f8d1b90a06faf7677e112
+EBUILD libnl-99999999.ebuild 2258 SHA256 f0a346409ea2bde4e21653a016f404541385e8a033f9659ed79e60d54ed18730 SHA512 4dad53165011effbd92f359ac24d7f135e14c73059956d167fdacfdd47dbf8c86e1a2f6fa1ca69144d1e281230410c7e6e77c10740295a04787d1830c6d5c69f WHIRLPOOL eeba0987c2207914e3572f715a3d45fdd9b21cc28525b852be2ba3c07bff374eb3c7f8023c24623cc99d32ec395977cbc80291ed40ed249fff3e495a934cfad3
+MISC ChangeLog 9137 SHA256 477a0abdfb45733bf44e0616f19e6030f7a6a3dd3c1014c45818ef3780e4b422 SHA512 4479245ac7a973c94053ad4d6348aa684455ddb260f9ae0b5fa5e330158c8a55a5a02e9faa19a8d927decf325145056b56d50f50d54b6b3a4e062f674ca3d18b WHIRLPOOL c1fdf85219a6d319709f59d64b5fe6d92c17574695059a237ff72e94805f0a368355ed5271ee7d368fe84ccfeafd4a9f29a10e18cdfb4fcb4e28809314b8b105
+MISC ChangeLog-2015 29453 SHA256 c81ed65177293bdb2e95156f0ebba8f30ac777d9dd7eeb360b3c701b6c511b7d SHA512 ad09dafc8222e541c7927c502e92a7374813dac74c5a67434e0d3d23eb3ee24095ce97685299bc62d8420afb70a9c71416603a910ee800a3effcd878c6b1bd7a WHIRLPOOL 749cc124eb853a6c1aa393c4ecca68c045ad7576bd024218f3bacff7f53b00f08a6cf2df7df0a675730114c5f2a8e89ddca131f51e6479d1474268c4747a0aaf
+MISC metadata.xml 584 SHA256 b4a1c62be473810a9e60ab6c043c14ea56dd7ffbdfc47639a30e84b4c31119e9 SHA512 0e8731a9aafb77b313583babfb2786c4fcbe655f3fcebe93fee90b2ea4c7f03a6ed559a253cb63f5f3a5eb9fd841babcbb5c85c4c93e51a670abe605e9d22a9c WHIRLPOOL 841629b52e45cd949bde7aae4ce9a62d274f69a124ba90cc33d75191a0b7cf11f7b0fa6c8af996af476e4164562cdc6d92d33ea93c9d1405da64844dace77ec1
diff --git a/dev-libs/libnl/files/libnl-1.1-flags.patch b/dev-libs/libnl/files/libnl-1.1-flags.patch
new file mode 100644
index 000000000000..dc512c587b9e
--- /dev/null
+++ b/dev-libs/libnl/files/libnl-1.1-flags.patch
@@ -0,0 +1,11 @@
+--- 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/dev-libs/libnl/files/libnl-1.1-vlan-header.patch b/dev-libs/libnl/files/libnl-1.1-vlan-header.patch
new file mode 100644
index 000000000000..c4c2fc6382de
--- /dev/null
+++ b/dev-libs/libnl/files/libnl-1.1-vlan-header.patch
@@ -0,0 +1,80 @@
+From: Patrick McHardy <kaber@trash.net>
+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 <kaber@trash.net>
+---
+
+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 <greearb@candelatech.com>
++ *
++ * 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/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch b/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch
new file mode 100644
index 000000000000..e370a5e62fc6
--- /dev/null
+++ b/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch
@@ -0,0 +1,12 @@
+--- 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/dev-libs/libnl/libnl-1.1.4.ebuild b/dev-libs/libnl/libnl-1.1.4.ebuild
new file mode 100644
index 000000000000..686c171132d1
--- /dev/null
+++ b/dev-libs/libnl/libnl-1.1.4.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
+HOMEPAGE="http://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 sh sparc x86 ~amd64-linux ~x86-linux"
+IUSE="doc static-libs"
+
+DEPEND="doc? ( app-doc/doxygen )"
+DOCS=( ChangeLog )
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-1.1-vlan-header.patch \
+ "${FILESDIR}"/${PN}-1.1-flags.patch \
+ "${FILESDIR}"/${PN}-1.1.3-offsetof.patch
+ 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
+}
+
+src_compile() {
+ emake AR=$(tc-getAR)
+
+ if use doc ; then
+ cd "${S}/doc"
+ emake gendoc || die
+ fi
+}
+
+src_install() {
+ default
+
+ if use doc ; then
+ cd "${S}/doc"
+ dohtml -r html/*
+ fi
+}
diff --git a/dev-libs/libnl/libnl-3.2.28.ebuild b/dev-libs/libnl/libnl-3.2.28.ebuild
new file mode 100644
index 000000000000..a0477299395e
--- /dev/null
+++ b/dev-libs/libnl/libnl-3.2.28.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+DISTUTILS_OPTIONAL=1
+inherit distutils-r1 eutils libtool multilib multilib-minimal
+
+LIBNL_P=${P/_/-}
+LIBNL_DIR=${PV/_/}
+LIBNL_DIR=${LIBNL_DIR//./_}
+
+DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
+HOMEPAGE="http://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
+ https://dev.gentoo.org/~jer/libnl-3.2.28-in6.patch.xz
+"
+LICENSE="LGPL-2.1 utils? ( GPL-2 )"
+SLOT="3"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs python utils"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r5
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ python? ( dev-lang/swig )
+ sys-devel/bison
+ sys-devel/flex
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+DOCS=(
+ ChangeLog
+)
+
+S=${WORKDIR}/${LIBNL_P}
+
+MULTILIB_WRAPPED_HEADERS=(
+ # we do not install CLI stuff for non-native
+ /usr/include/libnl3/netlink/cli/addr.h
+ /usr/include/libnl3/netlink/cli/class.h
+ /usr/include/libnl3/netlink/cli/cls.h
+ /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/neigh.h
+ /usr/include/libnl3/netlink/cli/qdisc.h
+ /usr/include/libnl3/netlink/cli/route.h
+ /usr/include/libnl3/netlink/cli/rule.h
+ /usr/include/libnl3/netlink/cli/tc.h
+ /usr/include/libnl3/netlink/cli/utils.h
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1-vlan-header.patch
+ "${WORKDIR}"/${PN}-3.2.28-in6.patch
+)
+
+src_prepare() {
+ default
+
+ elibtoolize
+
+ if use python; then
+ cd "${S}"/python || die
+ distutils-r1_src_prepare
+ fi
+
+ # out-of-source build broken
+ # https://github.com/thom311/libnl/pull/58
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ econf \
+ --disable-silent-rules \
+ $(use_enable static-libs static) \
+ $(multilib_native_use_enable utils cli)
+}
+
+multilib_src_compile() {
+ default
+
+ if multilib_is_native_abi && use python; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if multilib_is_native_abi && use python; then
+ # Unset DOCS= since distutils-r1.eclass interferes
+ local DOCS=()
+ cd python || die
+ distutils-r1_src_install
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --modules
+}
diff --git a/dev-libs/libnl/libnl-3.2.29.ebuild b/dev-libs/libnl/libnl-3.2.29.ebuild
new file mode 100644
index 000000000000..55886ce41b3e
--- /dev/null
+++ b/dev-libs/libnl/libnl-3.2.29.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+DISTUTILS_OPTIONAL=1
+inherit distutils-r1 eutils libtool multilib multilib-minimal
+
+LIBNL_P=${P/_/-}
+LIBNL_DIR=${PV/_/}
+LIBNL_DIR=${LIBNL_DIR//./_}
+
+DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
+HOMEPAGE="http://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
+ https://dev.gentoo.org/~jer/libnl-3.2.28-in6.patch.xz
+"
+LICENSE="LGPL-2.1 utils? ( GPL-2 )"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs python utils"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r5
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ python? ( dev-lang/swig )
+ sys-devel/bison
+ sys-devel/flex
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+DOCS=(
+ ChangeLog
+)
+
+S=${WORKDIR}/${LIBNL_P}
+
+MULTILIB_WRAPPED_HEADERS=(
+ # we do not install CLI stuff for non-native
+ /usr/include/libnl3/netlink/cli/addr.h
+ /usr/include/libnl3/netlink/cli/class.h
+ /usr/include/libnl3/netlink/cli/cls.h
+ /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/neigh.h
+ /usr/include/libnl3/netlink/cli/qdisc.h
+ /usr/include/libnl3/netlink/cli/route.h
+ /usr/include/libnl3/netlink/cli/rule.h
+ /usr/include/libnl3/netlink/cli/tc.h
+ /usr/include/libnl3/netlink/cli/utils.h
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1-vlan-header.patch
+ "${WORKDIR}"/${PN}-3.2.28-in6.patch
+)
+
+src_prepare() {
+ default
+
+ elibtoolize
+
+ if use python; then
+ cd "${S}"/python || die
+ distutils-r1_src_prepare
+ fi
+
+ # out-of-source build broken
+ # https://github.com/thom311/libnl/pull/58
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ econf \
+ --disable-silent-rules \
+ $(use_enable static-libs static) \
+ $(multilib_native_use_enable utils cli)
+}
+
+multilib_src_compile() {
+ default
+
+ if multilib_is_native_abi && use python; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if multilib_is_native_abi && use python; then
+ # Unset DOCS= since distutils-r1.eclass interferes
+ local DOCS=()
+ cd python || die
+ distutils-r1_src_install
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --modules
+}
diff --git a/dev-libs/libnl/libnl-3.3.0.ebuild b/dev-libs/libnl/libnl-3.3.0.ebuild
new file mode 100644
index 000000000000..64aedbef471b
--- /dev/null
+++ b/dev-libs/libnl/libnl-3.3.0.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+DISTUTILS_OPTIONAL=1
+inherit distutils-r1 eutils libtool multilib multilib-minimal
+
+LIBNL_P=${P/_/-}
+LIBNL_DIR=${PV/_/}
+LIBNL_DIR=${LIBNL_DIR//./_}
+
+DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
+HOMEPAGE="http://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
+"
+LICENSE="LGPL-2.1 utils? ( GPL-2 )"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs python utils"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r5
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ python? ( dev-lang/swig )
+ sys-devel/bison
+ sys-devel/flex
+"
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+DOCS=(
+ ChangeLog
+)
+
+S=${WORKDIR}/${LIBNL_P}
+
+MULTILIB_WRAPPED_HEADERS=(
+ # we do not install CLI stuff for non-native
+ /usr/include/libnl3/netlink/cli/addr.h
+ /usr/include/libnl3/netlink/cli/class.h
+ /usr/include/libnl3/netlink/cli/cls.h
+ /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/neigh.h
+ /usr/include/libnl3/netlink/cli/qdisc.h
+ /usr/include/libnl3/netlink/cli/route.h
+ /usr/include/libnl3/netlink/cli/rule.h
+ /usr/include/libnl3/netlink/cli/tc.h
+ /usr/include/libnl3/netlink/cli/utils.h
+)
+
+src_prepare() {
+ default
+
+ elibtoolize
+
+ if use python; then
+ cd "${S}"/python || die
+ distutils-r1_src_prepare
+ fi
+
+ # out-of-source build broken
+ # https://github.com/thom311/libnl/pull/58
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ econf \
+ --disable-silent-rules \
+ $(use_enable static-libs static) \
+ $(multilib_native_use_enable utils cli)
+}
+
+multilib_src_compile() {
+ default
+
+ if multilib_is_native_abi && use python; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if multilib_is_native_abi && use python; then
+ # Unset DOCS= since distutils-r1.eclass interferes
+ local DOCS=()
+ cd python || die
+ distutils-r1_src_install
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --modules
+}
diff --git a/dev-libs/libnl/libnl-3.4.0_rc1.ebuild b/dev-libs/libnl/libnl-3.4.0_rc1.ebuild
new file mode 100644
index 000000000000..1a3dd0f0879d
--- /dev/null
+++ b/dev-libs/libnl/libnl-3.4.0_rc1.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+DISTUTILS_OPTIONAL=1
+inherit distutils-r1 eutils libtool multilib multilib-minimal
+
+LIBNL_P=${P/_/-}
+LIBNL_DIR=${PV/_/}
+LIBNL_DIR=${LIBNL_DIR//./_}
+
+DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
+HOMEPAGE="http://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
+ https://dev.gentoo.org/~jer/${P}.tar.xz
+"
+LICENSE="LGPL-2.1 utils? ( GPL-2 )"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs python utils"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r5
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ python? ( dev-lang/swig )
+ sys-devel/bison
+ sys-devel/flex
+"
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+DOCS=(
+ ChangeLog
+)
+
+S=${WORKDIR}/${LIBNL_P}
+
+MULTILIB_WRAPPED_HEADERS=(
+ # we do not install CLI stuff for non-native
+ /usr/include/libnl3/netlink/cli/addr.h
+ /usr/include/libnl3/netlink/cli/class.h
+ /usr/include/libnl3/netlink/cli/cls.h
+ /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/neigh.h
+ /usr/include/libnl3/netlink/cli/qdisc.h
+ /usr/include/libnl3/netlink/cli/route.h
+ /usr/include/libnl3/netlink/cli/rule.h
+ /usr/include/libnl3/netlink/cli/tc.h
+ /usr/include/libnl3/netlink/cli/utils.h
+)
+
+src_prepare() {
+ default
+
+ elibtoolize
+
+ if use python; then
+ cd "${S}"/python || die
+ distutils-r1_src_prepare
+ fi
+
+ # out-of-source build broken
+ # https://github.com/thom311/libnl/pull/58
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ econf \
+ --disable-silent-rules \
+ $(use_enable static-libs static) \
+ $(multilib_native_use_enable utils cli)
+}
+
+multilib_src_compile() {
+ default
+
+ if multilib_is_native_abi && use python; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if multilib_is_native_abi && use python; then
+ # Unset DOCS= since distutils-r1.eclass interferes
+ local DOCS=()
+ cd python || die
+ distutils-r1_src_install
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --modules
+}
diff --git a/dev-libs/libnl/libnl-99999999.ebuild b/dev-libs/libnl/libnl-99999999.ebuild
new file mode 100644
index 000000000000..f65e3012a6a4
--- /dev/null
+++ b/dev-libs/libnl/libnl-99999999.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+DISTUTILS_OPTIONAL=1
+inherit autotools distutils-r1 eutils git-r3 libtool multilib multilib-minimal
+
+DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
+HOMEPAGE="http://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl"
+EGIT_REPO_URI="
+ https://github.com/thom311/libnl.git
+"
+LICENSE="LGPL-2.1 utils? ( GPL-2 )"
+SLOT="3"
+KEYWORDS=""
+IUSE="static-libs python utils"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r5
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ python? ( dev-lang/swig )
+ sys-devel/bison
+ sys-devel/flex
+"
+
+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
+ /usr/include/libnl3/netlink/cli/class.h
+ /usr/include/libnl3/netlink/cli/cls.h
+ /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/neigh.h
+ /usr/include/libnl3/netlink/cli/qdisc.h
+ /usr/include/libnl3/netlink/cli/route.h
+ /usr/include/libnl3/netlink/cli/rule.h
+ /usr/include/libnl3/netlink/cli/tc.h
+ /usr/include/libnl3/netlink/cli/utils.h
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ if use python; then
+ cd "${S}"/python || die
+ distutils-r1_src_prepare
+ fi
+
+ # out-of-source build broken
+ # https://github.com/thom311/libnl/pull/58
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ econf \
+ --disable-silent-rules \
+ $(use_enable static-libs static) \
+ $(multilib_native_use_enable utils cli)
+}
+
+multilib_src_compile() {
+ default
+
+ if multilib_is_native_abi && use python; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if multilib_is_native_abi && use python; then
+ # Unset DOCS= since distutils-r1.eclass interferes
+ local DOCS=()
+ cd python || die
+ distutils-r1_src_install
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --modules
+}
diff --git a/dev-libs/libnl/metadata.xml b/dev-libs/libnl/metadata.xml
new file mode 100644
index 000000000000..ae83e25b4104
--- /dev/null
+++ b/dev-libs/libnl/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>netmon@gentoo.org</email>
+ <name>Gentoo network monitoring and analysis project</name>
+ </maintainer>
+ <use>
+ <flag name="doc">Install development documentation</flag>
+ <flag name="python">Install experimental <pkg>dev-lang/python</pkg> bindings</flag>
+ <flag name="utils">Install command line interface utils</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">thom311/libnl</remote-id>
+ </upstream>
+</pkgmetadata>