summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-libs/hiredis/Manifest1
-rw-r--r--dev-libs/hiredis/hiredis-0.14.1.ebuild81
-rw-r--r--net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch16
-rw-r--r--net-libs/libpcap/libpcap-1.9.1-r3.ebuild84
4 files changed, 182 insertions, 0 deletions
diff --git a/dev-libs/hiredis/Manifest b/dev-libs/hiredis/Manifest
index 8da38f2fc132..bee3dbedda04 100644
--- a/dev-libs/hiredis/Manifest
+++ b/dev-libs/hiredis/Manifest
@@ -1 +1,2 @@
+DIST hiredis-0.14.1.tar.gz 64372 BLAKE2B 9846b05e21bfadb876e26ab45bf5c29a3283b602ef725dfbd877815be690bb5579551f0c452e1d8abf9ae985f6b71408a3b86b343ca5d6dce58dd4897640996a SHA512 a7310f2d65075df0c17636a0220e16487759471a3442b1de2595ab747565f6b6262e37131613b13e396b31050bcbe5529c35d420cd43fd7d500d9d563d469c4f
DIST hiredis-1.0.0.tar.gz 97507 BLAKE2B 247852d53be96e36dbdd7d4d8cfbda4406aa66281f26c28c3f80ab4593679122fd59430b2d5f04d20126b4459fc75af0a1fd67f1ee1db691d8db575debad2b61 SHA512 eb56201121eecdbfc8d42e8c2c141ae77bea248eeb36687ac6835c9b2404f5475beb351c4d8539d552db4d88e933bb2bd5b73f165e62b130bb11aeff39928e69
diff --git a/dev-libs/hiredis/hiredis-0.14.1.ebuild b/dev-libs/hiredis/hiredis-0.14.1.ebuild
new file mode 100644
index 000000000000..d3827b66b401
--- /dev/null
+++ b/dev-libs/hiredis/hiredis-0.14.1.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+DESCRIPTION="Minimalistic C client library for the Redis database"
+HOMEPAGE="https://github.com/redis/hiredis"
+SRC_URI="https://github.com/redis/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/0.14"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 s390 sparc x86 ~x64-solaris"
+IUSE="examples static-libs test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-db/redis )"
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}"/${PN}-0.13.3-disable-network-tests.patch
+ "${FILESDIR}"/${PN}-0.14.1-honor-AR.patch
+ )
+ default
+
+ # use GNU ld syntax on Solaris
+ sed -i -e '/DYLIB_MAKE_CMD=.* -G/d' Makefile || die
+}
+
+_build() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ PREFIX="${EPREFIX}/usr" \
+ LIBRARY_PATH="$(get_libdir)" \
+ DEBUG_FLAGS= \
+ OPTIMIZATION= \
+ "$@"
+}
+
+src_compile() {
+ # The static lib re-uses the same objects as the shared lib, so
+ # overhead is low w/creating it all the time. It's also needed
+ # by the tests.
+ _build dynamic static hiredis.pc
+}
+
+src_test() {
+ local REDIS_PID="${T}"/hiredis.pid
+ local REDIS_SOCK="${T}"/hiredis.sock
+ local REDIS_PORT=56379
+ local REDIS_TEST_CONFIG="daemonize yes
+ pidfile ${REDIS_PID}
+ port ${REDIS_PORT}
+ bind 127.0.0.1
+ unixsocket //${REDIS_SOCK}"
+
+ _build hiredis-test
+
+ /usr/sbin/redis-server - <<< "${REDIS_TEST_CONFIG}" || die
+ ./hiredis-test -h 127.0.0.1 -p ${REDIS_PID} -s ${REDIS_SOCK}
+ local ret=$?
+
+ kill "$(<"${REDIS_PID}")" || die
+ [ ${ret} != "0" ] && die "tests failed"
+}
+
+src_install() {
+ _build PREFIX="${ED}/usr" install
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins ${PN}.pc
+
+ local DOCS=( CHANGELOG.md README.md )
+ use examples && DOCS+=( examples )
+ einstalldocs
+}
diff --git a/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch b/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch
new file mode 100644
index 000000000000..0b69e43a3f7d
--- /dev/null
+++ b/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch
@@ -0,0 +1,16 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -1493,10 +1493,9 @@
+ AC_DEFINE(PCAP_SUPPORT_USB, 1, [target host supports USB sniffing])
+ USB_SRC=pcap-usb-linux.c
+ AC_MSG_RESULT(yes)
+- ac_usb_dev_name=`udevinfo -q name -p /sys/class/usb_device/usbmon 2>/dev/null`
+- if test $? -ne 0 ; then
+- ac_usb_dev_name="usbmon"
+- fi
++
++ ac_usb_dev_name="usbmon"
++
+ AC_DEFINE_UNQUOTED(LINUX_USB_MON_DEV, "/dev/$ac_usb_dev_name", [path for device for USB sniffing])
+ AC_MSG_NOTICE(Device for USB sniffing is /dev/$ac_usb_dev_name)
+ #
diff --git a/net-libs/libpcap/libpcap-1.9.1-r3.ebuild b/net-libs/libpcap/libpcap-1.9.1-r3.ebuild
new file mode 100644
index 000000000000..5e862ad5bd47
--- /dev/null
+++ b/net-libs/libpcap/libpcap-1.9.1-r3.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools multilib-minimal
+
+DESCRIPTION="A system-independent library for user-level network packet capture"
+HOMEPAGE="
+ https://www.tcpdump.org/
+ https://github.com/the-tcpdump-group/libpcap
+"
+SRC_URI="
+ https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug"
+
+RDEPEND="
+ bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
+ dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
+ rdma? ( sys-cluster/rdma-core )
+ usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ sys-devel/flex
+ virtual/yacc
+ dbus? ( virtual/pkgconfig )
+"
+
+S=${WORKDIR}/${PN}-${P/_}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.8.1-usbmon.patch
+ "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch
+)
+
+src_prepare() {
+ default
+
+ echo ${PV} > VERSION || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" \
+ econf \
+ $(use_enable bluetooth) \
+ $(use_enable dbus) \
+ $(use_enable rdma) \
+ $(use_enable remote) \
+ $(use_enable usb) \
+ $(use_enable yydebug) \
+ $(use_with netlink libnl) \
+ --enable-ipv6
+}
+
+multilib_src_compile() {
+ emake all shared
+}
+
+multilib_src_install_all() {
+ dodoc CREDITS CHANGES VERSION TODO README.* doc/README.*
+
+ # remove static libraries (--disable-static does not work)
+ if ! use static-libs; then
+ find "${ED}" -name '*.a' -exec rm {} + || die
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+
+ # We need this to build pppd on G/FBSD systems
+ if [[ "${USERLAND}" == "BSD" ]]; then
+ insinto /usr/include
+ doins pcap-int.h portability.h
+ fi
+}