130 lines
6.2 KiB
Text
130 lines
6.2 KiB
Text
|
#!/usr/bin/bash
|
||
|
# JOBoRun : Joe's window manager OpenBox RUNit
|
||
|
# Based on Obarun : git.obarun.org/pkg
|
||
|
# Maintainer : Joe Bo Run <joborun@disroot.org>
|
||
|
# PkgSource : url="https://gittea.disroot.org/joborun/jobcore/openldap"
|
||
|
#-----------------------------------------------------------------------------------------------
|
||
|
# ObarunSource : https://git.obarun.org/pkg/core/not-yet
|
||
|
#-----------------------------------------| DESCRIPTION |---------------------------------------
|
||
|
# https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/openldap/trunk/PKGBUILD
|
||
|
|
||
|
pkgbase=openldap
|
||
|
pkgname=('openldap' 'libldap')
|
||
|
pkgver=2.4.59
|
||
|
pkgrel=3
|
||
|
arch=('x86_64')
|
||
|
url="https://www.openldap.org/"
|
||
|
makedepends=('libtool' 'libsasl' 'e2fsprogs' 'util-linux' 'chrpath' 'unixodbc' 'libsodium')
|
||
|
options=('!makeflags' 'emptydirs')
|
||
|
source=(https://www.openldap.org/software/download/OpenLDAP/openldap-release/${pkgbase}-${pkgver}.tgz{,.asc}
|
||
|
openldap.tmpfiles openldap.sysusers)
|
||
|
|
||
|
prepare() {
|
||
|
cd ${pkgbase}-${pkgver}
|
||
|
sed -i 's|-m 644 $(LIBRARY)|-m 755 $(LIBRARY)|' libraries/{liblber,libldap,libldap_r}/Makefile.in
|
||
|
sed -i 's|#define LDAPI_SOCK LDAP_RUNDIR LDAP_DIRSEP "run" LDAP_DIRSEP "ldapi"|#define LDAPI_SOCK LDAP_DIRSEP "run" LDAP_DIRSEP "openldap" LDAP_DIRSEP "ldapi"|' include/ldap_defaults.h
|
||
|
sed -i 's|%LOCALSTATEDIR%/run|/run/openldap|' servers/slapd/slapd.{conf,ldif}
|
||
|
sed -i 's|-$(MKDIR) $(DESTDIR)$(localstatedir)/run|-$(MKDIR) $(DESTDIR)/run/openldap|' servers/slapd/Makefile.in
|
||
|
}
|
||
|
|
||
|
build() {
|
||
|
cd ${pkgbase}-${pkgver}
|
||
|
autoconf
|
||
|
CFLAGS="${CFLAGS} -DLDAP_CONNECTIONLESS" ./configure --prefix=/usr --libexecdir=/usr/lib \
|
||
|
--sysconfdir=/etc --localstatedir=/var/lib/openldap --sbindir=/usr/bin \
|
||
|
--enable-dynamic --enable-syslog --enable-ipv6 --enable-local \
|
||
|
--enable-crypt --enable-spasswd --enable-modules \
|
||
|
--enable-backends --disable-ndb --enable-overlays=mod \
|
||
|
--with-cyrus-sasl --with-threads
|
||
|
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
|
||
|
|
||
|
make
|
||
|
|
||
|
make -C contrib/slapd-modules/nssov OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
|
||
|
make -C contrib/slapd-modules/autogroup OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
|
||
|
make -C contrib/slapd-modules/lastbind OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
|
||
|
make -C contrib/slapd-modules/passwd/sha2 OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
|
||
|
make -C contrib/slapd-modules/passwd/argon2 OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
|
||
|
}
|
||
|
|
||
|
check() {
|
||
|
cd ${pkgbase}-${pkgver}
|
||
|
# make test
|
||
|
}
|
||
|
|
||
|
package_libldap() {
|
||
|
pkgdesc="Lightweight Directory Access Protocol (LDAP) client libraries"
|
||
|
depends=('libsasl' 'e2fsprogs')
|
||
|
backup=('etc/openldap/ldap.conf')
|
||
|
|
||
|
cd ${pkgbase}-${pkgver}
|
||
|
for dir in include libraries doc/man/man3 ; do
|
||
|
pushd ${dir}
|
||
|
make DESTDIR="${pkgdir}" install
|
||
|
popd
|
||
|
done
|
||
|
install -Dm644 doc/man/man5/ldap.conf.5.tmp "${pkgdir}"/usr/share/man/man5/ldap.conf.5
|
||
|
|
||
|
# get rid of duplicate default conf files
|
||
|
rm "${pkgdir}"/etc/openldap/*.default
|
||
|
|
||
|
ln -sf liblber.so "${pkgdir}"/usr/lib/liblber.so.2
|
||
|
ln -sf libldap.so "${pkgdir}"/usr/lib/libldap.so.2
|
||
|
|
||
|
install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
|
||
|
}
|
||
|
|
||
|
package_openldap() {
|
||
|
pkgdesc="Lightweight Directory Access Protocol (LDAP) client and server"
|
||
|
depends=("libldap>=${pkgver}" 'libtool' 'unixodbc' 'perl')
|
||
|
optdepends=('libsodium: for argon2 password module')
|
||
|
backup=('etc/openldap/slapd.conf' 'etc/openldap/slapd.ldif')
|
||
|
|
||
|
cd ${pkgbase}-${pkgver}
|
||
|
for dir in clients servers doc/man/man{1,5,8}; do
|
||
|
pushd ${dir}
|
||
|
make DESTDIR="${pkgdir}" install
|
||
|
popd
|
||
|
done
|
||
|
|
||
|
make -C contrib/slapd-modules/autogroup prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
|
||
|
make -C contrib/slapd-modules/lastbind prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
|
||
|
make -C contrib/slapd-modules/passwd/sha2 prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
|
||
|
make -C contrib/slapd-modules/passwd/argon2 prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
|
||
|
make -C contrib/slapd-modules/nssov prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
|
||
|
install -m644 contrib/slapd-modules/nssov/slapo-nssov.5 "${pkgdir}"/usr/share/man/man5/slapo-nssov.5
|
||
|
install -m644 contrib/slapd-modules/autogroup/slapo-autogroup.5 "${pkgdir}"/usr/share/man/man5/slapo-autogroup.5
|
||
|
install -m644 contrib/slapd-modules/lastbind/slapo-lastbind.5 "${pkgdir}"/usr/share/man/man5/slapo-lastbind.5
|
||
|
|
||
|
rm "${pkgdir}"/usr/share/man/man5/ldap.conf.5
|
||
|
rm -r "${pkgdir}"/run
|
||
|
|
||
|
# get rid of duplicate default conf files
|
||
|
rm "${pkgdir}"/etc/openldap/*.default
|
||
|
|
||
|
ln -s ../lib/slapd "${pkgdir}"/usr/bin/slapd
|
||
|
|
||
|
chown root:439 "${pkgdir}"/etc/openldap/{slapd.{conf,ldif},DB_CONFIG.example}
|
||
|
chmod 640 "${pkgdir}"/etc/openldap/{slapd.{conf,ldif},DB_CONFIG.example}
|
||
|
|
||
|
install -dm700 -o 439 -g 439 "${pkgdir}"/var/lib/openldap
|
||
|
chown -R 439:439 "${pkgdir}"/var/lib/openldap
|
||
|
|
||
|
install -dm700 -o 439 -g 439 "${pkgdir}"/etc/openldap/slapd.d
|
||
|
install -Dm644 "${srcdir}"/openldap.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/openldap.conf
|
||
|
install -Dm644 "${srcdir}"/openldap.sysusers "${pkgdir}"/usr/lib/sysusers.d/openldap.conf
|
||
|
install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
|
||
|
}
|
||
|
|
||
|
#---- license gpg-key sha512sums ----
|
||
|
|
||
|
license=('custom')
|
||
|
sha512sums=(
|
||
|
'233459ab446da6e107a7fc4ecd5668d6b08c11a11359ee76449550393e8f586a29b59d7ae09a050a1fca4fcf388ea61438ef60831b3ae802d92c048365ae3968' # openldap-2.4.59.tgz
|
||
|
'0932d4586ff32c7706f820cdfe5017f9ce6fac56ddf484f35b9b78f68e69fa4cccd691fa5f16e8ed1d39d12eb52a967dfaa4b806db5202d57c904d8ce6fc98ee' # openldap-2.4.59.tgz.asc
|
||
|
'b232ff77c490eaa1f6da8c5f142ea8de7fc815a8a6648f3fdc9aff0475cefe48c5501a2221fa67cfbbea6c11888e240f9a63d103b7ea5a09d91fe2df856a6b93' # openldap.tmpfiles
|
||
|
'ee1f5fa3fc52c301746687d88f403f48d02b60e213d68693ad6c9a59088363b846fbe658779b9ecce3e608074a80f7db9df442cbce5803ccacfd37097584d686' # openldap.sysusers
|
||
|
)
|
||
|
|
||
|
validpgpkeys=('3CE269B5398BC8B785645E987F67D5FD1CE1CBCE') # OpenLDAP Project <project@openldap.org> https://www.openldap.org/software/download/OpenLDAP/gpg-pubkey.txt
|