You've already forked macports-ports
mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
140 lines
4.3 KiB
Tcl
140 lines
4.3 KiB
Tcl
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
|
|
|
|
PortSystem 1.0
|
|
PortGroup legacysupport 1.1
|
|
PortGroup muniversal 1.0
|
|
PortGroup xcode_workaround 1.0
|
|
PortGroup makefile 1.0
|
|
|
|
# clock_gettime
|
|
legacysupport.newest_darwin_requires_legacy 15
|
|
|
|
name redis
|
|
version 8.8.0
|
|
revision 0
|
|
conflicts redis7
|
|
checksums rmd160 42f751d72d3cd943b0da375c3336edcfe212f252 \
|
|
sha256 88422181efb0c9c0abba332e3e391d409e1e13714b838931669235e5796f704b \
|
|
size 4480031
|
|
|
|
categories databases
|
|
license AGPL-3
|
|
maintainers nomaintainer
|
|
|
|
description Redis is an open source, advanced key-value store.
|
|
long_description {*}${description}
|
|
|
|
set redis_domain redis.io
|
|
homepage https://${redis_domain}
|
|
master_sites https://download.${redis_domain}/releases/
|
|
|
|
# https://trac.macports.org/ticket/59245
|
|
xcode_workaround.fixed_xcode_version 11.2
|
|
|
|
patchfiles patch-redis.conf.diff \
|
|
patch-hiredis.diff \
|
|
patch-gh-12585.diff
|
|
|
|
# https://github.com/redis/redis/pull/13534
|
|
patchfiles-append 0001-config.h-fix-Availability-macros-so-they-actually-wo.patch \
|
|
0002-debug.c-do-not-use-arm-code-on-ppc.patch \
|
|
0003-debug.c-fix-PowerPC-case-in-uc_mcontext.patch
|
|
|
|
# ld: warning: directory '/usr/local/opt/openssl/lib' following -L not found
|
|
patchfiles-append 0004-Remove-brewisms.patch
|
|
|
|
# The build now uses ld directly where the compiler is supposed to be used.
|
|
# ld: unknown option: -Wl,-headerpad_max_install_names
|
|
patchfiles-append patch-tests-Makefile.diff
|
|
|
|
post-patch {
|
|
reinplace "s|@PREFIX@|${prefix}|g" \
|
|
${worksrcpath}/redis.conf \
|
|
${worksrcpath}/deps/hiredis/Makefile
|
|
}
|
|
|
|
# redis and dep makefiles have their own optflags
|
|
configure.optflags
|
|
|
|
# avoid build conflict with lua
|
|
configure.cppflags-replace \
|
|
-I${prefix}/include \
|
|
-isystem${prefix}/include
|
|
|
|
# redis doesn't know about CPPFLAGS so pass it this way
|
|
build.args-append REDIS_CFLAGS="${configure.cppflags}"
|
|
|
|
# disable silent rules
|
|
build.args-append V=1
|
|
|
|
# use jemalloc
|
|
build.args-append MALLOC=jemalloc
|
|
|
|
# enable TLS.
|
|
build.args-append BUILD_TLS=yes
|
|
depends_lib path:lib/libssl.dylib:openssl
|
|
|
|
# see ${worksrcpath}/deps/jemalloc/Makefile
|
|
compiler.cxx_standard 2014
|
|
configure.cxxflags-append -std=c++14
|
|
|
|
# https://github.com/redis/redis/issues/13535
|
|
if {[string match *gcc* ${configure.compiler}]} {
|
|
configure.ldflags-append -latomic
|
|
}
|
|
|
|
destroot.keepdirs ${destroot}${prefix}/var/db/redis
|
|
installs_libs no
|
|
makefile.has_destdir no
|
|
|
|
post-destroot {
|
|
foreach conffile {redis.conf sentinel.conf} {
|
|
if {[file exists ${worksrcpath}/${conffile}]} {
|
|
xinstall -m 0644 ${worksrcpath}/${conffile} \
|
|
${destroot}${prefix}/etc/${conffile}.sample
|
|
}
|
|
}
|
|
}
|
|
|
|
post-activate {
|
|
foreach conffile {redis.conf sentinel.conf} {
|
|
if {![file exists ${prefix}/etc/${conffile}] && [file exists ${prefix}/etc/${conffile}.sample]} {
|
|
file copy ${prefix}/etc/${conffile}.sample ${prefix}/etc/${conffile}
|
|
}
|
|
}
|
|
xinstall -d ${prefix}/var/log
|
|
touch ${prefix}/var/log/redis.log
|
|
}
|
|
|
|
startupitem.create yes
|
|
startupitem.executable ${prefix}/bin/redis-server ${prefix}/etc/redis.conf
|
|
|
|
livecheck.regex ${name}-(\\d+.\\d+.\\d+)
|
|
|
|
notes "
|
|
If you prefer to start a redis server manually, rather than using 'port load', then use this command:
|
|
|
|
redis-server ${prefix}/etc/redis.conf
|
|
|
|
Redis is now licensed under the dual Server Side Public License or Redis Source Available License.
|
|
The BSD-licensed community fork is valkey; you can install a redis-compatible port with:
|
|
|
|
port install valkey +redis_compat
|
|
"
|
|
|
|
# Legacy/LTS subport: redis7
|
|
subport redis7 {
|
|
version 7.4.9
|
|
revision 0
|
|
conflicts redis
|
|
distname redis-${version}
|
|
|
|
checksums rmd160 66535b09659b9208c8a35469f348e8630d13abde \
|
|
sha256 a71a67b47b2705d3448f0400573e3ad5c4c9f8c18236f426dc6acc7284bf42ad \
|
|
size 3542936
|
|
|
|
patchfiles-delete patch-tests-Makefile.diff
|
|
|
|
livecheck.regex ${name}-(7.\\d+.\\d+)
|
|
}
|