diff options
author | Petr Vaněk <arkamar@atlas.cz> | 2023-08-16 16:50:47 +0200 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-08-17 07:22:35 +0100 |
commit | 5e664103008aca17204231ff46d55c01362ea5b8 (patch) | |
tree | fbc2f6b213294bf1d1b4b6a6d2374dd55337b77a /dev-libs/hiredis/hiredis-1.1.0-r1.ebuild | |
parent | app-portage/smart-live-rebuild: Keyword 1.4.1 ppc, #911892 (diff) | |
download | gentoo-5e664103008aca17204231ff46d55c01362ea5b8.tar.gz gentoo-5e664103008aca17204231ff46d55c01362ea5b8.tar.bz2 gentoo-5e664103008aca17204231ff46d55c01362ea5b8.zip |
dev-libs/hiredis: Correct prefix in hiredis_ssl.pc
Ensure hiredis_ssl.pc is generated during the compile phase. Without
this, it contains the $ED prefix from the install phase. It's safe to
generate it, even if not installed when USE=-ssl is specified.
Closes: https://bugs.gentoo.org/912367
Signed-off-by: Petr Vaněk <arkamar@atlas.cz>
Closes: https://github.com/gentoo/gentoo/pull/32345
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/hiredis/hiredis-1.1.0-r1.ebuild')
-rw-r--r-- | dev-libs/hiredis/hiredis-1.1.0-r1.ebuild | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/dev-libs/hiredis/hiredis-1.1.0-r1.ebuild b/dev-libs/hiredis/hiredis-1.1.0-r1.ebuild new file mode 100644 index 000000000000..193ec8133864 --- /dev/null +++ b/dev-libs/hiredis/hiredis-1.1.0-r1.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +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" +# Always check "Upgrading from ..." in README +# e.g. https://github.com/redis/hiredis#upgrading-to-110 +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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 + dev-libs/libevent + ) +" + +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) \ + TEST_ASYNC=$(usex test 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() { + # Compare with https://github.com/redis/hiredis/blob/648763c36e9f6493b13a77da35eb33ef0652b4e2/Makefile#L32 + 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 +} |