forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
2 changed files
with
95 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST memcached-1.4.33.tar.gz 389813 SHA256 83726c8d68258c56712373072abb25a449c257398075a39ec0867fd8ba69771d SHA512 00af5a2f46702fb8e606b1035cdaad125445d8eb701927a3ccccd7cd6c12e0811efb3ad917e3118043fd993b5c313f1aa0c4b2a471218e971a21fed7c896e136 WHIRLPOOL 05ee1d4ea931a1f1792283b1d947ffa48752cb6ad1417d06221f967b00e638f5fa21448080efc1de1adf7457bd202b6102ae1495ba1e01368fcba04565c95299 | ||
DIST memcached-1.4.34.tar.gz 391131 SHA256 5064c87f91a37d822dfeab8768490c55fe686a742f07f67c7121101e48d87c79 SHA512 e91aa784674501313cd7464bad22f1898b998c836492a52efe68d097a01249a4fffd3b23b79af86957dd3dc11794f2bff476a4891b9cfa172ff9c29dfb50789f WHIRLPOOL 7e6025c3dd7e10d0bb65bb576aa47e901043a6d62c4240ce427d0b54cc92086fb4cb81b2d18ad0f4dc76b998600897a542ba7dd57904076161fa5cde733e57f3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=5 | ||
inherit autotools eutils flag-o-matic systemd user | ||
|
||
MY_PV="${PV/_rc/-rc}" | ||
MY_P="${PN}-${MY_PV}" | ||
|
||
DESCRIPTION="High-performance, distributed memory object caching system" | ||
HOMEPAGE="http://memcached.org/" | ||
SRC_URI="https://www.memcached.org/files/${MY_P}.tar.gz | ||
https://www.memcached.org/files/old/${MY_P}.tar.gz" | ||
|
||
LICENSE="BSD" | ||
SLOT="0" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" | ||
IUSE="test slabs-reassign debug sasl selinux" # hugetlbfs later | ||
|
||
RDEPEND=">=dev-libs/libevent-1.4:= | ||
dev-lang/perl | ||
sasl? ( dev-libs/cyrus-sasl ) | ||
selinux? ( sec-policy/selinux-memcached )" | ||
DEPEND="${RDEPEND} | ||
test? ( virtual/perl-Test-Harness >=dev-perl/Cache-Memcached-1.24 )" | ||
|
||
S="${WORKDIR}/${MY_P}" | ||
|
||
src_prepare() { | ||
epatch "${FILESDIR}/${PN}-1.2.2-fbsd.patch" | ||
epatch "${FILESDIR}/${PN}-1.4.0-fix-as-needed-linking.patch" | ||
epatch "${FILESDIR}/${PN}-1.4.4-as-needed.patch" | ||
epatch "${FILESDIR}/${PN}-1.4.17-EWOULDBLOCK.patch" | ||
sed -i -e 's,-Werror,,g' configure.ac || die | ||
sed -i -e 's,AM_CONFIG_HEADER,AC_CONFIG_HEADERS,' configure.ac || die | ||
eautoreconf | ||
use slabs-reassign && append-flags -DALLOW_SLABS_REASSIGN | ||
|
||
# Tweak upstream systemd unit to use Gentoo variables/envfile. | ||
# As noted by bug #587440 | ||
sed -i -e '/^ExecStart/{ | ||
s,{USER},{MEMCACHED_RUNAS},g; | ||
s,{CACHESIZE},{MEMUSAGE},g; | ||
s,OPTIONS,MISC_OPTS,g; | ||
}; | ||
/Environment=/{s,OPTIONS,MISC_OPTS,g;}; | ||
/EnvironmentFile=/{s,/sysconfig/,/conf.d/,g;}; | ||
' \ | ||
"${S}"/scripts/memcached.service | ||
} | ||
|
||
src_configure() { | ||
econf \ | ||
--disable-docs \ | ||
$(use_enable sasl) | ||
# The xml2rfc tool to build the additional docs requires TCL :-( | ||
# `use_enable doc docs` | ||
} | ||
|
||
src_compile() { | ||
# There is a heavy degree of per-object compile flags | ||
# Users do NOT know better than upstream. Trying to compile the testapp and | ||
# the -debug version with -DNDEBUG _WILL_ fail. | ||
append-flags -UNDEBUG -pthread | ||
emake testapp memcached-debug CFLAGS="${CFLAGS}" | ||
filter-flags -UNDEBUG | ||
emake | ||
} | ||
|
||
src_install() { | ||
emake DESTDIR="${D}" install | ||
dobin scripts/memcached-tool | ||
use debug && dobin memcached-debug | ||
|
||
dodoc AUTHORS ChangeLog NEWS README.md doc/{CONTRIBUTORS,*.txt} | ||
|
||
newconfd "${FILESDIR}/memcached.confd" memcached | ||
newinitd "${FILESDIR}/memcached.init2" memcached | ||
systemd_dounit "${S}/scripts/memcached.service" | ||
} | ||
|
||
pkg_postinst() { | ||
enewuser memcached -1 -1 /dev/null daemon | ||
|
||
elog "With this version of Memcached Gentoo now supports multiple instances." | ||
elog "To enable this you should create a symlink in /etc/init.d/ for each instance" | ||
elog "to /etc/init.d/memcached and create the matching conf files in /etc/conf.d/" | ||
elog "Please see Gentoo bug #122246 for more info" | ||
} | ||
|
||
src_test() { | ||
emake -j1 test | ||
} |