1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
# $NetBSD: Makefile,v 1.20 2013/09/09 13:39:10 fhajny Exp $
#
DISTNAME= apache-couchdb-1.4.0
PKGNAME= ${DISTNAME:S/apache-//}
CATEGORIES= databases
MASTER_SITES= ${MASTER_SITE_APACHE:=couchdb/source/${PKGVERSION_NOREV}/}
MAINTAINER= filip@joyent.com
HOMEPAGE= http://couchdb.apache.org/
COMMENT= Document database server, accessible via a RESTful JSON API
LICENSE= apache-2.0
GNU_CONFIGURE= yes
USE_LANGUAGES= c c++
USE_TOOLS+= gmake
USE_LIBTOOL= yes
INFO_FILES= yes
BUILD_DEFS+= VARBASE
BUILD_DEPENDS+= help2man-[0-9]*:../../converters/help2man
.include "../../mk/bsd.prefs.mk"
COUCH_DBDIR?= ${VARBASE}/db/couchdb
COUCH_EGDIR= ${PREFIX}/share/examples/couchdb
COUCH_LOGDIR?= ${VARBASE}/log/couchdb
COUCH_USER?= couchdb
COUCH_GROUP?= ${COUCH_USER}
PKG_GROUPS+= ${COUCH_GROUP}
PKG_USERS+= ${COUCH_USER}:${COUCH_GROUP}
PKG_GECOS.${COUCH_USER}=CouchDB Server User
PKG_HOME.${COUCH_USER}= ${COUCH_DBDIR}
PKG_SHELL.${COUCH_USER}=${COMMAND_SHELL}
# Solaris /var/run is root only
.if ${OPSYS} == "SunOS"
COUCH_RUNDIR?= ${VARBASE}/spool/couchdb
.else
COUCH_RUNDIR?= ${VARBASE}/run/couchdb
.endif
OWN_DIRS= ${COUCH_LOGDIR} ${COUCH_DBDIR} ${COUCH_RUNDIR} ${PKG_SYSCONFDIR}
OWN_DIRS_PERMS+= ${COUCH_DBDIR} ${COUCH_USER} ${COUCH_GROUP} 0770
OWN_DIRS_PERMS+= ${COUCH_LOGDIR} ${COUCH_USER} ${COUCH_GROUP} 0770
OWN_DIRS_PERMS+= ${COUCH_RUNDIR} ${COUCH_USER} ${COUCH_GROUP} 0770
PKG_SYSCONFSUBDIR= couchdb
PKG_SYSCONFDIR_PERMS= ${COUCH_USER} ${COUCH_GROUP} 0775
CONF_FILES_PERMS+= ${COUCH_EGDIR}/default.ini ${PKG_SYSCONFDIR}/default.ini ${COUCH_USER} ${COUCH_GROUP} 0660
CONF_FILES_PERMS+= ${COUCH_EGDIR}/local.ini ${PKG_SYSCONFDIR}/local.ini ${COUCH_USER} ${COUCH_GROUP} 0660
CONFIGURE_ARGS+= --disable-init
CONFIGURE_ARGS+= --localstatedir=${VARBASE}
CONFIGURE_ARGS+= --with-erlang=${BUILDLINK_PREFIX.erlang}/lib/erlang/usr/include
CONFIGURE_ARGS+= --with-js-include=${BUILDLINK_PREFIX.spidermonkey}
CONFIGURE_ARGS+= --with-js-lib=${BUILDLINK_PREFIX.spidermonkey}
.if ${OPSYS} == "SunOS"
REPLACE_INTERPRETER+= sh
REPLACE.sh.old= /bin/sh
REPLACE.sh.new= /bin/ksh
REPLACE_FILES.sh= bin/couchdb.tpl.in
.endif
SUBST_CLASSES+= paths
SUBST_MESSAGE.paths= Setting standard paths
SUBST_STAGE.paths= pre-configure
SUBST_FILES.paths+= configure bin/couchdb.tpl.in
SUBST_SED.paths= -e 's,@EGDIR@,${COUCH_EGDIR},g'
SUBST_SED.paths+= -e 's,@RUNDIR@,${COUCH_RUNDIR},g'
SUBST_SED.paths+= -e 's,@ERLANG_PREFIX@,${BUILDLINK_PREFIX.erlang},g'
# This works around libtool abuse installing "couchspawnkillable". Will
# hopefully get fixed properly upstream.
SUBST_CLASSES+= unstrip
SUBST_MESSAGE.unstrip= Avoiding trying to strip a shell script
SUBST_STAGE.unstrip= post-configure
SUBST_FILES.unstrip+= src/couchdb/priv/Makefile
SUBST_SED.unstrip= -e '/^INSTALL_PROGRAM =/s, -s,,'
PLIST_SUBST+= VERSION.ejson=${VERSION.ejson}
PLIST_SUBST+= VERSION.ibrowse=${VERSION.ibrowse}
PLIST_SUBST+= VERSION.mochiweb=${VERSION.mochiweb}
PLIST_SUBST+= VERSION.snappy=${VERSION.snappy}
.include "Makefile.versions"
.include "../../lang/erlang/buildlink3.mk"
.include "../../lang/spidermonkey/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../textproc/icu/buildlink3.mk"
.include "../../www/curl/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
|