[gentoo-commits] repo/gentoo:master commit in: dev-libs/libbpf/files/, dev-libs/libbpf/
commit: a6b56ff4eb6b6c3ab0cd48f2ad25b2ba16bfb54c Author: Jakov Smolic sartura hr> AuthorDate: Mon Jan 4 12:11:53 2021 + Commit: Patrick McLean gentoo org> CommitDate: Mon Jan 4 21:36:02 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a6b56ff4 dev-libs/libbpf: Fix -paths.patch Signed-off-by: Jakov Smolic sartura.hr> Closes: https://github.com/gentoo/gentoo/pull/18940 Signed-off-by: Patrick McLean gentoo.org> dev-libs/libbpf/files/libbpf--paths.patch | 12 dev-libs/libbpf/libbpf-.ebuild| 5 +++-- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/dev-libs/libbpf/files/libbpf--paths.patch b/dev-libs/libbpf/files/libbpf--paths.patch index cbc267b64a3..ff087bb3871 100644 --- a/dev-libs/libbpf/files/libbpf--paths.patch +++ b/dev-libs/libbpf/files/libbpf--paths.patch @@ -1,8 +1,6 @@ -diff --git a/Makefile b/Makefile -index bc25aba..e1db3d6 100644 --- a/Makefile +++ b/Makefile -@@ -66,7 +66,7 @@ endif +@@ -76,7 +76,7 @@ endif PREFIX ?= /usr LIBDIR ?= $(PREFIX)/$(LIBSUBDIR) INCLUDEDIR ?= $(PREFIX)/include @@ -11,16 +9,14 @@ index bc25aba..e1db3d6 100644 TAGS_PROG := $(if $(shell which etags 2>/dev/null),etags,ctags) -@@ -89,6 +89,7 @@ $(OBJDIR)/libbpf.so.$(LIBBPF_VERSION): $(SHARED_OBJS) +@@ -101,6 +101,7 @@ $(OBJDIR)/libbpf.so.$(LIBBPF_VERSION): $(SHARED_OBJS) $(OBJDIR)/libbpf.pc: - sed -e "s|@PREFIX@|$(PREFIX)|" \ - -e "s|@LIBDIR@|$(LIBDIR)|" \ + $(Q)sed -e "s|@PREFIX@|$(PREFIX)|" \ + -e "s|@LIBDIR@|$(LIBDIR_PC)|" \ + -e "s|@UAPIDIR@|$(UAPIDIR)|" \ -e "s|@VERSION@|$(LIBBPF_VERSION)|" \ < libbpf.pc.template > $@ -diff --git a/libbpf.pc.template b/libbpf.pc.template -index b45ed53..5ec63c2 100644 --- a/libbpf.pc.template +++ b/libbpf.pc.template @@ -3,10 +3,11 @@ diff --git a/dev-libs/libbpf/libbpf-.ebuild b/dev-libs/libbpf/libbpf-.ebuild index 6697b1c3a06..3810c5b509d 100644 --- a/dev-libs/libbpf/libbpf-.ebuild +++ b/dev-libs/libbpf/libbpf-.ebuild @@ -1,4 +1,4 @@ -# Copyright 2019-2020 Gentoo Authors +# Copyright 2019-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -37,7 +37,8 @@ src_compile() { BUILD_SHARED=y \ LIBSUBDIR="$(get_libdir)" \ $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ - CC="$(tc-getCC)" + CC="$(tc-getCC)" \ + AR="$(tc-getAR)" } src_install() {
[gentoo-commits] repo/gentoo:master commit in: dev-libs/libbpf/files/, dev-libs/libbpf/
commit: b5fcd93358b4df7106b33c7f8e3a80c554d0c2ec Author: Jakov Smolic sartura hr> AuthorDate: Thu Jul 23 18:31:36 2020 + Commit: Patrick McLean gentoo org> CommitDate: Fri Jul 24 18:39:47 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b5fcd933 dev-libs/libbpf: add hashmap patch - Add a patch to fix hashmap on (I)LP32 architectures - Upstream commit: https://github.com/libbpf/libbpf/commit/cd016d93f7bf280fe6f2dfc723257786dd3ffd00 Package-Manager: Portage-2.3.99, Repoman-2.3.23 Signed-off-by: Jakov Smolic sartura.hr> Signed-off-by: Jakov Petrina sartura.hr> Signed-off-by: Luka Perkov sartura.hr> Closes: https://github.com/gentoo/gentoo/pull/16791 Signed-off-by: Patrick McLean gentoo.org> .../files/libbpf-0.0.9-fix-hashmap-on-lp32.patch | 49 ++ ...{libbpf-0.0.9.ebuild => libbpf-0.0.9-r1.ebuild} | 1 + 2 files changed, 50 insertions(+) diff --git a/dev-libs/libbpf/files/libbpf-0.0.9-fix-hashmap-on-lp32.patch b/dev-libs/libbpf/files/libbpf-0.0.9-fix-hashmap-on-lp32.patch new file mode 100644 index 000..98baf1cd605 --- /dev/null +++ b/dev-libs/libbpf/files/libbpf-0.0.9-fix-hashmap-on-lp32.patch @@ -0,0 +1,49 @@ +From cd016d93f7bf280fe6f2dfc723257786dd3ffd00 Mon Sep 17 00:00:00 2001 +From: Jakub Bogusz +Date: Thu, 9 Jul 2020 15:57:23 -0700 +Subject: [PATCH] libbpf: Fix libbpf hashmap on (I)LP32 architectures + +On ILP32, 64-bit result was shifted by value calculated for 32-bit long type +and returned value was much outside hashmap capacity. +As advised by Andrii Nakryiko, this patch uses different hashing variant for +architectures with size_t shorter than long long. + +Fixes: e3b924224028 ("libbpf: add resizable non-thread safe internal hashmap") +Signed-off-by: Jakub Bogusz +Signed-off-by: Andrii Nakryiko +Signed-off-by: Alexei Starovoitov +Link: https://lore.kernel.org/bpf/20200709225723.1069937-1-andr...@fb.com +--- + hashmap.h | 12 + 1 file changed, 8 insertions(+), 4 deletions(-) + +diff --git a/hashmap.h b/hashmap.h +index df59fd4..e0af36b 100644 +--- a/hashmap.h b/hashmap.h +@@ -11,14 +11,18 @@ + #include + #include + #include +-#ifndef __WORDSIZE +-#define __WORDSIZE (__SIZEOF_LONG__ * 8) +-#endif + + static inline size_t hash_bits(size_t h, int bits) + { + /* shuffle bits and return requested number of upper bits */ +- return (h * 11400714819323198485llu) >> (__WORDSIZE - bits); ++#if (__SIZEOF_SIZE_T__ == __SIZEOF_LONG_LONG__) ++ /* LP64 case */ ++ return (h * 11400714819323198485llu) >> (__SIZEOF_LONG_LONG__ * 8 - bits); ++#elif (__SIZEOF_SIZE_T__ <= __SIZEOF_LONG__) ++ return (h * 2654435769lu) >> (__SIZEOF_LONG__ * 8 - bits); ++#else ++# error "Unsupported size_t size" ++#endif + } + + typedef size_t (*hashmap_hash_fn)(const void *key, void *ctx); +-- +2.26.2 + diff --git a/dev-libs/libbpf/libbpf-0.0.9.ebuild b/dev-libs/libbpf/libbpf-0.0.9-r1.ebuild similarity index 94% rename from dev-libs/libbpf/libbpf-0.0.9.ebuild rename to dev-libs/libbpf/libbpf-0.0.9-r1.ebuild index 43363c91efa..b01f2de058d 100644 --- a/dev-libs/libbpf/libbpf-0.0.9.ebuild +++ b/dev-libs/libbpf/libbpf-0.0.9-r1.ebuild @@ -24,6 +24,7 @@ S="${WORKDIR}/${P}/src" PATCHES=( "${FILESDIR}/libbpf-0.0.7-paths.patch" + "${FILESDIR}/libbpf-0.0.9-fix-hashmap-on-lp32.patch" ) src_compile() {
[gentoo-commits] repo/gentoo:master commit in: dev-libs/libbpf/files/, dev-libs/libbpf/
commit: ff1c6139f946163fd6a90174961d4a2a928dcddc Author: Patrick McLean sony com> AuthorDate: Thu Oct 3 17:42:24 2019 + Commit: Patrick McLean gentoo org> CommitDate: Thu Oct 3 18:54:15 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff1c6139 dev-libs/libbpf: Version bump to 0.0.5 Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.76, Repoman-2.3.17 Signed-off-by: Patrick McLean gentoo.org> dev-libs/libbpf/Manifest | 1 + dev-libs/libbpf/files/libbpf-0.0.5-paths.patch | 38 + dev-libs/libbpf/libbpf-0.0.5.ebuild| 47 ++ 3 files changed, 86 insertions(+) diff --git a/dev-libs/libbpf/Manifest b/dev-libs/libbpf/Manifest index d427e0ba7ce..46e19fabe80 100644 --- a/dev-libs/libbpf/Manifest +++ b/dev-libs/libbpf/Manifest @@ -1,2 +1,3 @@ DIST libbpf-0.0.3.tar.gz 127328 BLAKE2B eaa1be54f0a7fcc6fd41eb2adaad2f405f76db3bd7c7466a5484ead1cca5a9fe775e331838cd5645d7399cb5b1a5b2fcb3814fb45643660fd3f7d84b9986bae6 SHA512 ee489d968cd9a20a1f091dcd2696d3807ab0db2a001613684402de2c696391eea033f3bd961eaf1d0df95c1e15f4f0ccfb7003ff98c3f08f24a7e9a8db22cdad DIST libbpf-0.0.4.tar.gz 148625 BLAKE2B d8c2343441258a01ca54b0046b0f1d54cb2e0e7a09c99e489409b25d3f2486bc7d8a175b4a3e793b56ba72462d34b9a55c53e86eaf446c64f2c30d673e7f23bd SHA512 1e4a16ed0f3e378aa9d7080e4b54cb3a9542975105b09977d1ddecf3ae4dabb3b5edf80b92b61644b1f0cbda7ee7e135ee0f736e71c1d201a97b1b3dd573b543 +DIST libbpf-0.0.5.tar.gz 160335 BLAKE2B 2cf4a3e6edc002b3a32f9d08bb22a07863d8f6f90472e9593a9e9a93b08a00f0557d5a59fa841325b947e6f7b129232e7cd1fdc906f45de57b0dbe594548f1c2 SHA512 e42f6cc8f834f2d3cf9138d655bd3727b2693850f7f6409ec4d536336bc5fa479a64eefc802a5915e333677eca843f8f1bd0132589bba10bdc89064eee0c diff --git a/dev-libs/libbpf/files/libbpf-0.0.5-paths.patch b/dev-libs/libbpf/files/libbpf-0.0.5-paths.patch new file mode 100644 index 000..e9eda9c2dce --- /dev/null +++ b/dev-libs/libbpf/files/libbpf-0.0.5-paths.patch @@ -0,0 +1,38 @@ +diff --git a/Makefile b/Makefile +index 6992fbf..cefc77a 100644 +--- a/Makefile b/Makefile +@@ -64,7 +64,7 @@ endif + PREFIX ?= /usr + LIBDIR ?= $(PREFIX)/$(LIBSUBDIR) + INCLUDEDIR ?= $(PREFIX)/include +-UAPIDIR ?= $(PREFIX)/include ++UAPIDIR ?= $(PREFIX)/include/bpf/uapi + + all: $(STATIC_LIBS) $(SHARED_LIBS) $(PC_FILE) + +@@ -85,6 +85,7 @@ $(OBJDIR)/libbpf.so.$(LIBBPF_VERSION): $(SHARED_OBJS) + $(OBJDIR)/libbpf.pc: + sed -e "s|@PREFIX@|$(PREFIX)|" \ + -e "s|@LIBDIR@|$(LIBDIR)|" \ ++ -e "s|@UAPIDIR@|$(UAPIDIR)|" \ + -e "s|@VERSION@|$(LIBBPF_VERSION)|" \ + < libbpf.pc.template > $@ + +diff --git a/libbpf.pc.template b/libbpf.pc.template +index ac17fce..6d385d9 100644 +--- a/libbpf.pc.template b/libbpf.pc.template +@@ -3,10 +3,11 @@ + prefix=@PREFIX@ + libdir=@LIBDIR@ + includedir=${prefix}/include ++uapidir=@UAPIDIR@ + + Name: libbpf + Description: BPF library + Version: @VERSION@ + Libs: -L${libdir} -lbpf + Requires.private: libelf +-Cflags: -I${includedir} ++Cflags: -I${includedir} -I${uapidir} diff --git a/dev-libs/libbpf/libbpf-0.0.5.ebuild b/dev-libs/libbpf/libbpf-0.0.5.ebuild new file mode 100644 index 000..7e265723db9 --- /dev/null +++ b/dev-libs/libbpf/libbpf-0.0.5.ebuild @@ -0,0 +1,47 @@ +# Copyright 2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +HOMEPAGE="https://github.com/libbpf/libbpf; +DESCRIPTION="Stand-alone build of libbpf from the Linux kernel" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1 BSD-2" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+static-libs" + +COMMON_DEPEND="virtual/libelf + !<=dev-util/bcc-0.7.0" +DEPEND="${COMMON_DEPEND} + sys-kernel/linux-headers" +RDEPEND="${COMMON_DEPEND}" + +S="${WORKDIR}/${P}/src" + +PATCHES=( + "${FILESDIR}/libbpf-0.0.5-paths.patch" +) + +src_compile() { + emake \ + BUILD_SHARED=y \ + LIBSUBDIR="$(get_libdir)" \ + $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ + CC="$(tc-getCC)" +} + +src_install() { + emake \ + BUILD_SHARED=y \ + LIBSUBDIR="$(get_libdir)" \ + DESTDIR="${D}" \ + $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ + install install_uapi_headers + + insinto /usr/$(get_libdir)/pkgconfig + doins ${PN}.pc +}
[gentoo-commits] repo/gentoo:master commit in: dev-libs/libbpf/files/, dev-libs/libbpf/
commit: 97ee7b866fe6d8537f18912ca72ff91387f3c5c3 Author: Patrick McLean sony com> AuthorDate: Fri Jun 14 20:58:41 2019 + Commit: Patrick McLean gentoo org> CommitDate: Fri Jun 14 21:03:35 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97ee7b86 dev-libs/libbpf: Version bump to 0.0.3 Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.67, Repoman-2.3.14 Signed-off-by: Patrick McLean gentoo.org> dev-libs/libbpf/Manifest | 1 + dev-libs/libbpf/files/libbpf-0.0.3-paths.patch | 50 ++ dev-libs/libbpf/libbpf-0.0.3.ebuild| 47 3 files changed, 98 insertions(+) diff --git a/dev-libs/libbpf/Manifest b/dev-libs/libbpf/Manifest index eed781dd6e0..bd324ded2d4 100644 --- a/dev-libs/libbpf/Manifest +++ b/dev-libs/libbpf/Manifest @@ -1,2 +1,3 @@ +DIST libbpf-0.0.3.tar.gz 127328 BLAKE2B eaa1be54f0a7fcc6fd41eb2adaad2f405f76db3bd7c7466a5484ead1cca5a9fe775e331838cd5645d7399cb5b1a5b2fcb3814fb45643660fd3f7d84b9986bae6 SHA512 ee489d968cd9a20a1f091dcd2696d3807ab0db2a001613684402de2c696391eea033f3bd961eaf1d0df95c1e15f4f0ccfb7003ff98c3f08f24a7e9a8db22cdad DIST libbpf-0.20190311.tar.gz 110782 BLAKE2B b660b2677abd3068aa37f390e817c755ee06cf683e357cad6a9537d8e509d53f24ac66e472148f5b66cbcdca7849db10fc34ff8e6f85bd54a0570a52846ff933 SHA512 dbac8efce3b4c6d4faf40b22de6f71bee630fc8b71aa96e136920474ed7aa5f66a3c1f5871ec1c27dc71b87bec3ce5138096590fb9238d4d696a722f358d DIST libbpf-0.20190404.tar.gz 115495 BLAKE2B a159d75163cee051e7784c20018020e650d88e3b011928b1a748199f88b22de713000d3557d083cbbfc3450b6ded9b891d0afb487611044cf2af93fd5691ff8c SHA512 724fe12c9a028a9b6d5a05ee679a3c7f687a32f403bbee3c90730005dac20e0a5e9e6c21df02780d329a88acf4ec525411e448f537b49ce2767de8eae6012661 diff --git a/dev-libs/libbpf/files/libbpf-0.0.3-paths.patch b/dev-libs/libbpf/files/libbpf-0.0.3-paths.patch new file mode 100644 index 000..8f905819f65 --- /dev/null +++ b/dev-libs/libbpf/files/libbpf-0.0.3-paths.patch @@ -0,0 +1,50 @@ +diff --git a/Makefile b/src/Makefile +index 82a650c..549779d 100644 +--- a/Makefile b/src/Makefile +@@ -36,7 +36,10 @@ OBJDIR ?= . + OBJS := $(addprefix $(OBJDIR)/,bpf.o btf.o libbpf.o libbpf_errno.o netlink.o \ + nlattr.o str_error.o libbpf_probes.o bpf_prog_linfo.o xsk.o) + +-LIBS := $(OBJDIR)/libbpf.a ++ifdef BUILD_STATIC ++ LIBS := $(OBJDIR)/libbpf.a ++endif ++ + ifndef BUILD_STATIC_ONLY + LIBS += $(OBJDIR)/libbpf.so \ + $(OBJDIR)/libbpf.so.$(VERSION) \ +@@ -63,7 +66,7 @@ endif + PREFIX ?= /usr + LIBDIR ?= $(PREFIX)/$(LIBSUBDIR) + INCLUDEDIR ?= $(PREFIX)/include +-UAPIDIR ?= $(PREFIX)/include ++UAPIDIR ?= $(PREFIX)/include/bpf/uapi + + all: $(LIBS) $(PC_FILE) + +@@ -84,6 +87,7 @@ $(OBJDIR)/libbpf.so.$(LIBBPF_VERSION): $(OBJS) + $(OBJDIR)/libbpf.pc: + sed -e "s|@PREFIX@|$(PREFIX)|" \ + -e "s|@LIBDIR@|$(LIBDIR)|" \ ++ -e "s|@UAPIDIR@|$(UAPIDIR)|" \ + -e "s|@VERSION@|$(LIBBPF_VERSION)|" \ + < libbpf.pc.template > $@ + +diff --git a/libbpf.pc.template b/src/libbpf.pc.template +index ac17fce..6d385d9 100644 +--- a/libbpf.pc.template b/src/libbpf.pc.template +@@ -3,10 +3,11 @@ + prefix=@PREFIX@ + libdir=@LIBDIR@ + includedir=${prefix}/include ++uapidir=@UAPIDIR@ + + Name: libbpf + Description: BPF library + Version: @VERSION@ + Libs: -L${libdir} -lbpf + Requires.private: libelf +-Cflags: -I${includedir} ++Cflags: -I${includedir} -I${uapidir} diff --git a/dev-libs/libbpf/libbpf-0.0.3.ebuild b/dev-libs/libbpf/libbpf-0.0.3.ebuild new file mode 100644 index 000..b455107a401 --- /dev/null +++ b/dev-libs/libbpf/libbpf-0.0.3.ebuild @@ -0,0 +1,47 @@ +# Copyright 2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +HOMEPAGE="https://github.com/libbpf/libbpf; +DESCRIPTION="Stand-alone build of libbpf from the Linux kernel" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1 BSD-2" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+static-libs" + +COMMON_DEPEND="virtual/libelf + !<=dev-util/bcc-0.7.0" +DEPEND="${COMMON_DEPEND} + sys-kernel/linux-headers" +RDEPEND="${COMMON_DEPEND}" + +S="${WORKDIR}/${P}/src" + +PATCHES=( + "${FILESDIR}/libbpf-0.0.3-paths.patch" +) + +src_compile() { + emake \ + BUILD_SHARED=y \ + LIBSUBDIR="$(get_libdir)" \ + $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ + CC="$(tc-getCC)" +} + +src_install() { + emake \ + BUILD_SHARED=y \ + LIBSUBDIR="$(get_libdir)" \ + DESTDIR="${D}" \ + $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ + install install_uapi_headers + + insinto /usr/$(get_libdir)/pkgconfig + doins ${PN}.pc +}
[gentoo-commits] repo/gentoo:master commit in: dev-libs/libbpf/files/, dev-libs/libbpf/
commit: ae04e432802ec32e6d759582ce04116630fb92fe Author: Patrick McLean sony com> AuthorDate: Tue Mar 12 00:25:43 2019 + Commit: Patrick McLean gentoo org> CommitDate: Tue Mar 12 00:25:43 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae04e432 dev-libs/libbpf: New package Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.62, Repoman-2.3.12 Signed-off-by: Patrick McLean gentoo.org> dev-libs/libbpf/Manifest| 1 + dev-libs/libbpf/files/libbpf-makefile.patch | 24 +++ dev-libs/libbpf/libbpf-0.20190311.ebuild| 67 + dev-libs/libbpf/metadata.xml| 10 + 4 files changed, 102 insertions(+) diff --git a/dev-libs/libbpf/Manifest b/dev-libs/libbpf/Manifest new file mode 100644 index 000..27e7e9bf4c9 --- /dev/null +++ b/dev-libs/libbpf/Manifest @@ -0,0 +1 @@ +DIST libbpf-0.20190311.tar.gz 110782 BLAKE2B b660b2677abd3068aa37f390e817c755ee06cf683e357cad6a9537d8e509d53f24ac66e472148f5b66cbcdca7849db10fc34ff8e6f85bd54a0570a52846ff933 SHA512 dbac8efce3b4c6d4faf40b22de6f71bee630fc8b71aa96e136920474ed7aa5f66a3c1f5871ec1c27dc71b87bec3ce5138096590fb9238d4d696a722f358d diff --git a/dev-libs/libbpf/files/libbpf-makefile.patch b/dev-libs/libbpf/files/libbpf-makefile.patch new file mode 100644 index 000..a98cbb8762b --- /dev/null +++ b/dev-libs/libbpf/files/libbpf-makefile.patch @@ -0,0 +1,24 @@ +diff --git a/Makefile b/Makefile +index 7ea1ff1..75ca998 100644 +--- a/Makefile b/Makefile +@@ -22,7 +22,9 @@ OBJDIR ?= . + OBJS := $(addprefix $(OBJDIR)/,bpf.o btf.o libbpf.o libbpf_errno.o netlink.o \ + nlattr.o str_error.o libbpf_probes.o bpf_prog_linfo.o xsk.o) + +-LIBS := $(OBJDIR)/libbpf.a ++ifdef BUILD_STATIC ++ LIBS := $(OBJDIR)/libbpf.a ++endif + ifdef BUILD_SHARED + LIBS += $(OBJDIR)/libbpf.so + endif +@@ -52,7 +54,7 @@ $(OBJDIR)/libbpf.a: $(OBJS) + $(AR) rcs $@ $^ + + $(OBJDIR)/libbpf.so: $(OBJS) +- $(CC) -shared $(LDFLAGS) $^ -o $@ ++ $(CC) -shared $(LDFLAGS) $^ -Wl,-soname,libbpf.so -o $@ + + $(OBJDIR)/%.o: %.c + $(CC) $(ALL_CFLAGS) -c $< -o $@ diff --git a/dev-libs/libbpf/libbpf-0.20190311.ebuild b/dev-libs/libbpf/libbpf-0.20190311.ebuild new file mode 100644 index 000..fdbc1a51645 --- /dev/null +++ b/dev-libs/libbpf/libbpf-0.20190311.ebuild @@ -0,0 +1,67 @@ +# Copyright 2019 Sony Interactive Entertainment Inc. +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +EGIT_COMMIT="cb658e9724e3c34973eee913b1ff0cb9c50b8e53" + +HOMEPAGE="https://github.com/libbpf/libbpf; +DESCRIPTION="Stand-alone build of libbpf from the Linux kernel" +SRC_URI="https://github.com/${PN}/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1 BSD-2" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="static-libs" + +COMMON_DEPEND="virtual/libelf" +DEPEND="${COMMON_DEPEND} + sys-kernel/linux-headers" +RDEPEND="${COMMON_DEPEND}" + +S="${WORKDIR}/${PN}-${EGIT_COMMIT}/src" + +PATCHES=( + "${FILESDIR}/libbpf-makefile.patch" +) + +src_prepare() { + # upstream doesn't provide a pkgconfig file, so + # let's make one + printf 'prefix=/usr\nexec_prefix=${prefix}\nlibdir=%s\n' \ + "/usr/$(get_libdir)" \ + > ${PN}.pc + printf 'includedir=${prefix}/include\n\n' \ + >> ${PN}.pc + + printf 'Name: %s\nDescription: %s\nVersion: %s\nLibs: -lbpf %s\n' \ + "${PN}" \ + "${DESCRIPTION}" \ + "${PV}" \ + "$($(tc-getPKG_CONFIG) --libs libelf)" \ + >> ${PN}.pc + + default +} + +src_compile() { + emake \ + BUILD_SHARED=y \ + LIBSUBDIR="$(get_libdir)" \ + $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ + CC="$(tc-getCC)" +} + +src_install() { + emake \ + BUILD_SHARED=y \ + LIBSUBDIR="$(get_libdir)" \ + DESTDIR="${D}" \ + $(usex static-libs 'BUILD_STATIC=y' '' '' '') \ + install + + insinto /usr/$(get_libdir)/pkgconfig + doins ${PN}.pc +} diff --git a/dev-libs/libbpf/metadata.xml b/dev-libs/libbpf/metadata.xml new file mode 100644 index 000..401d77a76ee --- /dev/null +++ b/dev-libs/libbpf/metadata.xml @@ -0,0 +1,10 @@ + +http://www.gentoo.org/dtd/metadata.dtd;> + + +chutz...@gentoo.org + + +libbpf/libbpf + +