Revert "dev-libs/hiredis: security cleanup"
authorThomas Deutschmann <whissi@gentoo.org>
Fri, 10 Apr 2020 22:55:44 +0000 (00:55 +0200)
committerThomas Deutschmann <whissi@gentoo.org>
Fri, 10 Apr 2020 23:00:24 +0000 (01:00 +0200)
This reverts commit 7e63f04c278459cbb77c1631048619f55139b948.

<dev-libs/hiredis-0.14 is still required for dev-python/hiredis.

Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
dev-libs/hiredis/Manifest
dev-libs/hiredis/hiredis-0.13.3.ebuild [new file with mode: 0644]
dev-libs/hiredis/hiredis-0.14.0.ebuild [new file with mode: 0644]

index 6cc58a1f9b457d51d1996e934775a2c93f7c427d..f67130eed2af641370cfac7126bd0c9b0397c034 100644 (file)
@@ -1 +1,3 @@
+DIST hiredis-0.13.3.tar.gz 58291 BLAKE2B 2af5853475a48b1f05c17100197633af61663a23a1259c702545938367b6a5b9fc09b886e12f57d27f23db3f5c636bb42d7e58887cc1481b7016cea405345ddb SHA512 0d8b71d5ee4105e8aaeeee308795afc2c1f60a04b0bfe8ae873d800a0c157882ec307efa04a8d0e63b538fd3fc3f88eedf4d46cb87c8937e2403927aeb7e434c
+DIST hiredis-0.14.0.tar.gz 63061 BLAKE2B 1923a63317f5f4a5bcbc9f8fd35e11fda15c30bb766d377f3be1eaf961cf34339e16b9b7c468b5bf07e513db4913c564e49eb29a2684b945db6c914b07d01905 SHA512 57a81a35b4750f0ca9dba830789483667f8ca1559f13b0ebdc3fab3e34ad16b2809f9734cf88157041263784e11447556b7a748bfb7ef318a60bb5dda3e358a0
 DIST hiredis-0.14.1.tar.gz 64372 BLAKE2B 9846b05e21bfadb876e26ab45bf5c29a3283b602ef725dfbd877815be690bb5579551f0c452e1d8abf9ae985f6b71408a3b86b343ca5d6dce58dd4897640996a SHA512 a7310f2d65075df0c17636a0220e16487759471a3442b1de2595ab747565f6b6262e37131613b13e396b31050bcbe5529c35d420cd43fd7d500d9d563d469c4f
diff --git a/dev-libs/hiredis/hiredis-0.13.3.ebuild b/dev-libs/hiredis/hiredis-0.13.3.ebuild
new file mode 100644 (file)
index 0000000..01aa7b4
--- /dev/null
@@ -0,0 +1,79 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+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.13"
+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" )
+       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)" \
+               ARCH= \
+               DEBUG= \
+               OPTIMIZATION="${CPPFLAGS}" \
+               "$@"
+}
+
+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
+               rm "${ED%/}/usr/$(get_libdir)/libhiredis.a" || die
+       fi
+
+       insinto /usr/$(get_libdir)/pkgconfig
+       doins ${PN}.pc
+
+       local DOCS=( CHANGELOG.md README.md )
+       use examples && DOCS+=( examples )
+       einstalldocs
+}
diff --git a/dev-libs/hiredis/hiredis-0.14.0.ebuild b/dev-libs/hiredis/hiredis-0.14.0.ebuild
new file mode 100644 (file)
index 0000000..5ce5a79
--- /dev/null
@@ -0,0 +1,79 @@
+# 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" )
+       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)" \
+               ARCH= \
+               DEBUG= \
+               OPTIMIZATION="${CPPFLAGS}" \
+               "$@"
+}
+
+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
+               rm "${ED}/usr/$(get_libdir)/libhiredis.a" || die
+       fi
+
+       insinto /usr/$(get_libdir)/pkgconfig
+       doins ${PN}.pc
+
+       local DOCS=( CHANGELOG.md README.md )
+       use examples && DOCS+=( examples )
+       einstalldocs
+}