ImNtReal

389-ds-base

May 1st, 2020
573
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.93 KB | None | 0 0
  1. # Maintainer: Sven-Hendrik Haase <svenstaro@gmail.com>
  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>
  5.  
  6. pkgname=389-ds-base
  7. pkgver=1.4.3.4
  8. pkgdesc="389 Directory Server (base)"
  9. pkgrel=3
  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=(libevent nspr nss net-snmp pam openldap python-argcomplete python-dateutil python-ldap perl)
  20. makedepends=(cargo rsync doxygen cmocka python-setuptools python-argparse-manpage)
  21. source=("https://releases.pagure.org/389-ds-base/${pkgname}-${pkgver}.tar.bz2"
  22.         389-ds-base.sysusers
  23.         389-ds-base.tmpfiles)
  24. sha512sums=('013403f49000e80b42565191153fb0e535ff6b2cbd1fc9127fb917e2bd9379e57c5e7562259d47a72126761b642af87eb854058b842fc33077e98d6e123d556f'
  25.             '8689b60f13517e6541e1faa62e61781654a8e4678990d14a3fe0cfe4673697cdde1c46763fdc7ef6203e4026286fa004c73b2857fd7fecff69483e6d1e8e6d68'
  26.             '5dff695ae866a591a711f836f2f72f2005b4afdb20760cda8711791910299e2c6ec71dff5eca9a2d9832cad8f9e9904dbbcf2d314cd9b20432bc8fd05c097868')
  27.  
  28. prepare() {
  29.   cd "${pkgbase}-${pkgver}"
  30.  
  31.   cargo vendor --manifest-path=./src/libsds/Cargo.toml
  32.   cargo fetch --manifest-path=./src/libsds/Cargo.toml
  33.   cargo vendor --manifest-path=./src/librslapd/Cargo.toml
  34.   cargo fetch --manifest-path=./src/librslapd/Cargo.toml
  35.  
  36.   autoreconf -fiv
  37. }
  38.  
  39. build() {
  40.   cd "${pkgbase}-${pkgver}"
  41.  
  42.   # Build 389-ds-base
  43.   ./configure \
  44.     --prefix=/usr \
  45.     --sysconfdir=/etc \
  46.     --sbindir=/usr/bin \
  47.     --localstatedir=/var \
  48.     --libexecdir=/usr/lib/${pkgbase} \
  49.     --with-tmpfiles-d=/usr/lib/tmpfiles.d \
  50.     --with-systemd \
  51.     --with-systemdsystemunitdir=/usr/lib/systemd/system \
  52.     --with-systemdsystemconfdir=/etc/systemd/system \
  53.     --with-journald \
  54.     --with-openldap \
  55.     --enable-autobind \
  56.     --enable-cmocka \
  57.     --enable-rust \
  58.     --enable-perl
  59.   make
  60.  
  61.   # Build lib389
  62.   cd src/lib389
  63.   python setup.py build
  64. }
  65.  
  66. check() {
  67.   cd "${pkgbase}-${pkgver}"
  68.   make check
  69. }
  70.  
  71. package() {
  72.   cd "${pkgbase}-${pkgver}"
  73.   make -j1 DESTDIR="${pkgdir}/" install
  74.  
  75.   install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
  76.  
  77.   # Upstream expects lib389 and 389-ds-base to be shipped in the same package more or less
  78.   # so that's why it's not a split package.
  79.   cd src/lib389
  80.   python setup.py install --skip-build -O1 --root="${pkgdir}"
  81.   mv "${pkgdir}"/usr/sbin/* "${pkgdir}"/usr/bin/
  82.   rmdir "${pkgdir}"/usr/sbin
  83.  
  84.   install -Dm644 "${srcdir}/${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
  85.   install -Dm644 "${srcdir}/${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
  86. }
Add Comment
Please, Sign In to add comment