2 %define _mochiwebver r97
3 %define _ibrowsever 1.5.2
5 Summary: Apache CouchDB
11 Source0: http://www.apache.org/dist/couchdb/%{version}/%{name}-%{version}.tar.gz
12 # Source0-md5: 227886b5ecbb6bcbbdc538aac4592b0e
14 Patch0: %{name}-aclocal.patch
15 URL: http://couchdb.apache.org/
16 BuildRequires: autoconf >= 2.59
17 BuildRequires: automake >= 1.6.3
18 BuildRequires: curl-devel
19 BuildRequires: erlang >= 1:R12B5
20 BuildRequires: help2man
21 BuildRequires: js-devel
22 BuildRequires: libicu-devel
23 BuildRequires: libtool
24 BuildRequires: pkgconfig
25 BuildRequires: rpmbuild(macros) >= 1.228
26 Requires(post,preun): /sbin/chkconfig
27 Requires(postun): /usr/sbin/groupdel
28 Requires(postun): /usr/sbin/userdel
29 Requires(pre): /bin/id
30 Requires(pre): /usr/bin/getgid
31 Requires(pre): /usr/sbin/groupadd
32 Requires(pre): /usr/sbin/useradd
33 Requires: erlang >= 1:R12B5
34 Requires: libicu-devel
36 # these came from readme, need to check if these are really needed
37 #Requires: Mozilla-SpiderMonkey
41 Provides: group(couchdb)
42 Provides: user(couchdb)
43 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46 Apache CouchDB is a distributed, fault-tolerant and schema-free
47 document-oriented database accessible via a RESTful HTTP/JSON API.
48 Among other features, it provides robust, incremental replication with
49 bi-directional conflict detection and resolution, and is queryable and
50 indexable using a table-oriented view engine with JavaScript acting as
51 the default view definition language.
69 rm -rf $RPM_BUILD_ROOT
71 DESTDIR=$RPM_BUILD_ROOT
73 rm -rf $RPM_BUILD_ROOT%{_docdir}/couchdb
74 install -d $RPM_BUILD_ROOT/var/log/couchdb
76 install -d $RPM_BUILD_ROOT/etc/sysconfig
77 mv $RPM_BUILD_ROOT/etc/default/couchdb $RPM_BUILD_ROOT/etc/sysconfig
79 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
80 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/couchdb
83 rm -rf $RPM_BUILD_ROOT
86 %groupadd -g 203 -r -f couchdb
87 %useradd -u 203 -r -d /var/lib/couchdb -s /bin/sh -c "CouchDB Administrator" -g couchdb couchdb
90 /sbin/chkconfig --add couchdb
91 %service couchdb restart
94 if [ "$1" = "0" ]; then
95 %service -q couchdb stop
96 /sbin/chkconfig --del couchdb
100 if [ "$1" = "0" ]; then
106 %defattr(644,root,root,755)
107 %doc AUTHORS BUGS CHANGES NEWS NOTICE README THANKS
108 %dir %{_sysconfdir}/couchdb
109 %dir %{_sysconfdir}/couchdb/default.d
110 %attr(755,couchdb,couchdb) %{_sysconfdir}/couchdb/default.d
111 %attr(755,couchdb,couchdb) %dir %{_sysconfdir}/couchdb/local.d
112 %attr(644,couchdb,couchdb) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/couchdb/default.ini
113 %attr(644,couchdb,couchdb) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/couchdb/local.ini
115 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sysconfig/couchdb
116 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/couchdb
117 %attr(754,root,root) /etc/rc.d/init.d/couchdb
119 %dir /var/log/couchdb
120 %attr(755,couchdb,couchdb) /var/log/couchdb
123 %attr(755,root,root) %{_bindir}/couchdb
124 %attr(755,root,root) %{_bindir}/couchjs
125 %{_mandir}/man1/couchdb.1*
126 %{_mandir}/man1/couchjs.1*
128 %dir %{_libdir}/couchdb
130 %dir %{_libdir}/couchdb/bin
131 %attr(755,root,root) %{_libdir}/couchdb/bin/couchjs
133 %dir %{_libdir}/couchdb/erlang
134 %dir %{_libdir}/couchdb/erlang/lib
135 # XXX: better have unversioned dirs?
136 %dir %{_libdir}/couchdb/erlang/lib/couch-%{version}
137 %dir %{_libdir}/couchdb/erlang/lib/couch-%{version}/ebin
138 %{_libdir}/couchdb/erlang/lib/couch-%{version}/ebin/*.beam
139 %{_libdir}/couchdb/erlang/lib/couch-%{version}/ebin/*.app
140 # XXX check if this include is needed runtime
141 %dir %{_libdir}/couchdb/erlang/lib/couch-%{version}/include
142 %{_libdir}/couchdb/erlang/lib/couch-%{version}/include/couch_db.hrl
144 # XXX: check if .la is needed
145 %dir %{_libdir}/couchdb/erlang/lib/couch-%{version}/priv
146 %{_libdir}/couchdb/erlang/lib/couch-%{version}/priv/couchspawnkillable
148 %dir %{_libdir}/couchdb/erlang/lib/couch-%{version}/priv/lib
149 %{_libdir}/couchdb/erlang/lib/couch-%{version}/priv/lib/couch_erl_driver.la
150 %attr(755,root,root) %{_libdir}/couchdb/erlang/lib/couch-%{version}/priv/lib/couch_erl_driver.so
152 # XXX: better have unversioned dirs?
153 %dir %{_libdir}/couchdb/erlang/lib/mochiweb-%{_mochiwebver}
154 %dir %{_libdir}/couchdb/erlang/lib/mochiweb-%{_mochiwebver}/ebin
155 %{_libdir}/couchdb/erlang/lib/mochiweb-%{_mochiwebver}/ebin/*.beam
156 %{_libdir}/couchdb/erlang/lib/mochiweb-%{_mochiwebver}/ebin/*.app
158 %dir %{_libdir}/couchdb/erlang/lib/etap
159 %{_libdir}/couchdb/erlang/lib/etap/ebin
161 %dir %{_libdir}/couchdb/erlang/lib/erlang-oauth
162 %{_libdir}/couchdb/erlang/lib/erlang-oauth/ebin
164 %dir %{_libdir}/couchdb/erlang/lib/ibrowse-%{_ibrowsever}
165 %{_libdir}/couchdb/erlang/lib/ibrowse-%{_ibrowsever}/ebin
167 %attr(755,couchdb,couchdb) %{_datadir}/couchdb