blob: 270ad5486d11b6dd586f8fe3d4c1c38ff7332458 [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001SUMMARY = "A high-performance memory object caching system"
2DESCRIPTION = "\
3 memcached optimizes specific high-load serving applications that are designed \
4 to take advantage of its versatile no-locking memory access system. Clients \
5 are available in several different programming languages, to suit the needs \
6 of the specific application. Traditionally this has been used in mod_perl \
7 apps to avoid storing large chunks of data in Apache memory, and to share \
8 this burden across several machines."
9SECTION = "web"
10HOMEPAGE = "http://memcached.org/"
11LICENSE = "BSD-3-Clause"
12
13LIC_FILES_CHKSUM = "file://COPYING;md5=7e5ded7363d335e1bb18013ca08046ff"
14
Andrew Geissler87f5cff2022-09-30 13:13:31 -050015inherit autotools pkgconfig
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080016
17DEPENDS += "libevent"
Patrick Williams213cb262021-08-07 19:21:33 -050018RDEPENDS:${PN} += "perl perl-module-posix perl-module-autoloader \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080019 perl-module-tie-hash bash \
20 "
21
22SRC_URI = "http://www.memcached.org/files/${BP}.tar.gz \
23 file://memcached-add-hugetlbfs-check.patch \
Andrew Geissler87f5cff2022-09-30 13:13:31 -050024 file://0001-Fix-function-protypes.patch \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080025 "
Andrew Geissler87f5cff2022-09-30 13:13:31 -050026SRC_URI[sha256sum] = "2055e373613d8fc21529aff9f0adce3e23b9ce01ba0478d30e7941d9f2bd1224"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080027
28# set the same COMPATIBLE_HOST as libhugetlbfs
Andrew Geissler82c905d2020-04-13 13:39:40 -050029COMPATIBLE_HOST = "(i.86|x86_64|powerpc|powerpc64|aarch64|arm).*-linux*"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080030
Andrew Geissler87f5cff2022-09-30 13:13:31 -050031# assoc.c:83:9: error: variable 'depth' set but not used [-Werror,-Wunused-but-set-variable]
32CFLAGS:append:toolchain-clang = " -Wno-error=unused-but-set-variable"
33
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080034python __anonymous () {
35 endianness = d.getVar('SITEINFO_ENDIANNESS')
36 if endianness == 'le':
37 d.appendVar('EXTRA_OECONF', " ac_cv_c_endian=little")
38 else:
39 d.appendVar('EXTRA_OECONF', " ac_cv_c_endian=big")
40}
41
42PACKAGECONFIG ??= ""
43PACKAGECONFIG[hugetlbfs] = "--enable-hugetlbfs, --disable-hugetlbfs, libhugetlbfs"
44
45inherit update-rc.d
46
47INITSCRIPT_NAME = "memcached"
48INITSCRIPT_PARAMS = "defaults"
49
Patrick Williams213cb262021-08-07 19:21:33 -050050do_install:append() {
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080051 install -D -m 755 ${S}/scripts/memcached-init ${D}${sysconfdir}/init.d/memcached
52 mkdir -p ${D}/usr/share/memcached/scripts
53 install -m 755 ${S}/scripts/memcached-tool ${D}/usr/share/memcached/scripts
54 install -m 755 ${S}/scripts/start-memcached ${D}/usr/share/memcached/scripts
55}