summaryrefslogtreecommitdiff
path: root/dev-libs/hiredis/hiredis-1.0.2-r3.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-08-17 09:31:54 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-08-17 09:31:54 +0100
commit5a21cec0c36dba03507dcbd5e8ab6698d00b39bf (patch)
treeaa76c2f85f9c77c2f9a5af47ae0aa6509585770a /dev-libs/hiredis/hiredis-1.0.2-r3.ebuild
parent280d9db9f9470686aae5ce1fa4cfa57b26e9beb2 (diff)
gentoo auto-resync : 17:08:2023 - 09:31:54
Diffstat (limited to 'dev-libs/hiredis/hiredis-1.0.2-r3.ebuild')
-rw-r--r--dev-libs/hiredis/hiredis-1.0.2-r3.ebuild89
1 files changed, 89 insertions, 0 deletions
diff --git a/dev-libs/hiredis/hiredis-1.0.2-r3.ebuild b/dev-libs/hiredis/hiredis-1.0.2-r3.ebuild
new file mode 100644
index 000000000000..b990a555460f
--- /dev/null
+++ b/dev-libs/hiredis/hiredis-1.0.2-r3.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2023 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"
+# 1.0.1 erroneously bumped SONAME but we're stuck with it now. Force another
+# rebuild so everybody is on the right one though (1.0.0).
+SLOT="0/1.0.2"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~x64-solaris"
+IUSE="examples ssl static-libs test"
+RESTRICT="!test? ( test )"
+
+DEPEND="ssl? ( dev-libs/openssl:= )"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-db/redis )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0.0-disable-network-tests.patch
+)
+
+src_prepare() {
+ 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)" \
+ USE_SSL=$(usex ssl 1 0) \
+ 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{,_ssl}.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
+
+ "${EPREFIX}"/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
+}