db-move: moved libdmapsharing from [testing] to [extra] (x86_64)
[arch-packages.git] / 389-ds-base / trunk / PKGBUILD
blob5612decc30d796c89818e581384ef8b6e9ebb4d0
1 # Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
2 # Contributor: Javier Torres <javitonino [at] gmail [dot] com>
3 # Contributor: Jameson Pugh <imntreal@gmail.com>
4 # Contributor: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
6 pkgname=389-ds-base
7 pkgver=2.4.0
8 pkgdesc="389 Directory Server (base)"
9 pkgrel=1
10 arch=(x86_64)
11 url="http://port389.org/"
12 license=('GPL')
13 provides=('libsvrcore.so')
14 replaces=('python-lib389')
15 backup=(etc/dirsrv/config/certmap.conf
16         etc/dirsrv/config/ldap-agent.conf
17         etc/dirsrv/config/slapd-collations.conf
18         etc/dirsrv/config/template-initconfig)
19 depends=('cracklib' 'libevent' 'nspr' 'nss' 'net-snmp' 'pam' 'openldap' 'icu' 'db5.3' 'python-cryptography'
20          'python-argcomplete' 'python-dateutil' 'python-ldap' 'python-packaging' 'lmdb')
21 makedepends=('cargo' 'rsync' 'doxygen' 'cmocka' 'python-setuptools' 'python-argparse-manpage'
22              'npm' 'nodejs-lts-fermium' 'systemd')
23 source=(https://github.com/389ds/389-ds-base/archive/389-ds-base-${pkgver}.tar.gz
24         389-ds-base.sysusers
25         389-ds-base.tmpfiles)
26 sha512sums=('f4df2a04d1d1c698d01b08d8988cefed6fac67a1da09c04bd77e9e924d19620ba1a94ee3b8b59a63515183a7f2313909f96f2aa5fffb47cdf44c2d61073ecc6d'
27             '8689b60f13517e6541e1faa62e61781654a8e4678990d14a3fe0cfe4673697cdde1c46763fdc7ef6203e4026286fa004c73b2857fd7fecff69483e6d1e8e6d68'
28             '69ed8b8f3bdbf9098088b0c92c41a238f16d14ba9f86ebc2b5debe5f001b4d8e235f7cff4731d72b30b5ac70486b0f4300b99646aa3926a3fa59515a64f16402')
30 prepare() {
31   cd "${pkgname}-${pkgname}-${pkgver}"
33   ./autogen.sh
36 build() {
37   cd "${pkgname}-${pkgname}-${pkgver}"
39   # Build 389-ds-base
40   ./configure \
41     --prefix=/usr \
42     --sysconfdir=/etc \
43     --sbindir=/usr/bin \
44     --localstatedir=/var \
45     --libexecdir=/usr/lib/${pkgname} \
46     --with-tmpfiles-d=/usr/lib/tmpfiles.d \
47     --with-db-inc=/usr/include/db5.3 \
48     --with-systemd \
49     --with-systemdsystemunitdir=/usr/lib/systemd/system \
50     --with-systemdsystemconfdir=/etc/systemd/system \
51     --with-journald \
52     --with-openldap \
53     --enable-autobind \
54     --enable-cmocka \
55     --enable-rust \
56     --with-libldap_r=no
57   make
59   # Build lib389
60   cd src/lib389
61   COLUMNS=80 python setup.py build
63   # Build cockpit plugin
64   cd ../cockpit/389-console
65   npm install
66   npm run build
67   mv dist cockpit_dist
70 check() {
71   cd "${pkgname}-${pkgname}-${pkgver}"
72   make check
75 package() {
76   cd "${pkgname}-${pkgname}-${pkgver}"
77   # make DESTDIR="${pkgdir}/" install
78   make -j1 DESTDIR="${pkgdir}/" install
80   install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
82   # Upstream expects lib389 and 389-ds-base to be shipped in the same package more or less
83   # so that's why it's not a split package.
84   cd src/lib389
85   python setup.py install --skip-build -O1 --root="${pkgdir}"
86   mv "${pkgdir}"/usr/sbin/* "${pkgdir}"/usr/bin/
87   rmdir "${pkgdir}"/usr/sbin
89   install -Dm644 "${srcdir}/${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
90   install -Dm644 "${srcdir}/${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"