Update french/aster to version 12.6.0.4
[dports.git] / databases / redis / Makefile
1 # Created by: Sergey Skvortsov <skv@protey.ru>
2 # $FreeBSD$
3
4 PORTNAME=       redis
5 DISTVERSION=    3.2.4
6 CATEGORIES=     databases
7 MASTER_SITES=   http://download.redis.io/releases/
8
9 MAINTAINER=     osa@FreeBSD.org
10 COMMENT=        Persistent key-value database with built-in net interface
11
12 LICENSE=        BSD3CLAUSE
13
14 USES=           execinfo
15
16 OPTIONS_DEFINE= TESTS TRIB
17 OPTIONS_RADIO=  EXTLUA
18 OPTIONS_RADIO_EXTLUA=   LUA LUAJIT
19 OPTIONS_SUB=    yes
20 LUA_DESC=       Use lang/lua instead of builtin lua
21 LUAJIT_DESC=    Use lang/luajit instead of builtin lua
22 TESTS_DESC=     Install lang/tcl for redis unit tests
23 TRIB_DESC=      Install redis-trib.rb (lang/ruby req.)
24
25 .include <bsd.port.options.mk>
26
27 .if ${PORT_OPTIONS:MTRIB}
28 CATEGORIES+=    ruby
29 USE_RUBY=       yes
30 RUN_DEPENDS=    rubygem-redis>=2.2:databases/rubygem-redis
31 .endif
32
33 .if ${PORT_OPTIONS:MLUA}
34 USES+=          lua:51
35 EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile.lua
36 .endif
37
38 .if ${PORT_OPTIONS:MLUAJIT}
39 LIB_DEPENDS+=   libluajit-5.1.so:lang/luajit
40 EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile.luajit
41 .endif
42
43 .if ${PORT_OPTIONS:MLUA} || ${PORT_OPTIONS:MLUAJIT}
44 CFLAGS+=        -fPIC
45 LDFLAGS+=       -Wl,-E
46 .endif
47
48 .if ${PORT_OPTIONS:MTESTS}
49 USES+=          tcl:build
50 .endif
51
52 CFLAGS+=        -I${LOCALBASE}/include
53 LDFLAGS+=       -L${LOCALBASE}/lib -lpthread -lm -lexecinfo
54
55 CONFLICTS?=     redis-devel-3.*
56
57 USES+=          gmake
58 MAKE_ENV=       "V=yo"
59 USE_RC_SUBR=    redis sentinel
60 BIN_FILES=      redis-benchmark redis-check-aof redis-check-rdb \
61                 redis-cli redis-sentinel redis-server
62
63 PKGMESSAGE=     ${WRKDIR}/pkg-message
64
65 USERS=  redis
66 GROUPS= redis
67
68 REDIS_DBDIR?=   /var/db/redis
69 REDIS_RUNDIR?=  /var/run/redis
70 REDIS_LOGDIR?=  /var/log/redis
71
72 SUB_FILES=      pkg-message
73 SUB_LIST+=      PORTNAME=${PORTNAME} \
74         REDIS_USER=${USERS} \
75         REDIS_DBDIR=${REDIS_DBDIR} \
76         REDIS_LOGDIR=${REDIS_LOGDIR} \
77         REDIS_RUNDIR=${REDIS_RUNDIR}
78
79 PLIST_SUB+=     REDIS_USER=${USERS} \
80         REDIS_GROUP=${GROUPS} \
81         REDIS_LOGDIR=${REDIS_LOGDIR} \
82         REDIS_DBDIR=${REDIS_DBDIR} \
83         REDIS_RUNDIR=${REDIS_RUNDIR}
84
85 .if ${PORT_OPTIONS:MLUAJIT} || ${PORT_OPTIONS:MLUA}
86 post-patch:
87         @cd ${WRKSRC}/deps/lua/src && ${CP} fpconv.* lua_* strbuf.* ${WRKSRC}/src/
88 .endif
89
90 post-build:
91         ${SED} ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
92                 ${WRKSRC}/redis.conf > ${WRKDIR}/redis.conf
93
94 do-install:
95         ${INSTALL_PROGRAM} ${BIN_FILES:C!^!${WRKSRC}/src/!} ${STAGEDIR}${PREFIX}/bin/
96 .if ${PORT_OPTIONS:MTRIB}
97         ${INSTALL_SCRIPT} ${WRKSRC}/src/redis-trib.rb ${STAGEDIR}${PREFIX}/bin/
98 .endif
99         ${INSTALL_DATA} ${WRKDIR}/redis.conf ${STAGEDIR}${PREFIX}/etc/redis.conf.sample
100         ${INSTALL_DATA} ${WRKSRC}/sentinel.conf ${STAGEDIR}${PREFIX}/etc/sentinel.conf.sample
101         ${MKDIR} ${STAGEDIR}${REDIS_LOGDIR} \
102                 ${STAGEDIR}${REDIS_DBDIR} \
103                 ${STAGEDIR}${REDIS_RUNDIR}
104
105 regression-test: build
106         @cd ${WRKSRC} && ${TCLSH} tests/test_helper.tcl
107
108 .include <bsd.port.mk>