]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blame - openldap/openldap.nm
Merge remote-tracking branch 'stevee/pcre'
[people/ms/ipfire-3.x.git] / openldap / openldap.nm
CommitLineData
8b63a194 1###############################################################################
802ea3af
MT
2# IPFire.org - An Open Source Firewall Solution #
3# Copyright (C) - IPFire Development Team <info@ipfire.org> #
8b63a194 4###############################################################################
5
802ea3af 6name = openldap
b0a34906 7version = 2.4.32
f2dfd577 8release = 5
8b63a194 9
802ea3af
MT
10groups = System/Daemons
11url = http://www.openldap.org/
12license = OpenLDAP
13summary = LDAP support libraries.
8b63a194 14
802ea3af
MT
15description
16 OpenLDAP is an open source suite of LDAP (Lightweight Directory Access
17 Protocol) applications and development tools. LDAP is a set of
18 protocols for accessing directory services over the Internet, similar
19 to the way DNS information is propagated over the Internet. The
20 openldap package contains configuration files, libraries, and
8b63a194 21 documentation for OpenLDAP.
802ea3af 22end
8b63a194 23
641c402a 24source_dl = ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/
802ea3af 25sources = %{thisapp}.tgz
8b63a194 26
802ea3af
MT
27build
28 requires
29 db4-devel
30 cyrus-sasl-devel
31 groff
32 libtool
33 libtool-devel
34 openssl-devel
35 pth-devel
d236d00d 36 shadow-utils
802ea3af 37 end
25d74477 38
802ea3af 39 configure_options += \
c8784213 40 --libexecdir=%{libdir} \
802ea3af
MT
41 --sysconfdir=/etc \
42 --localstatedir=/var \
43 --with-threads=posix \
44 --disable-perl \
45 --enable-dynamic \
46 --enable-crypt \
47 --enable-modules \
48 --enable-rlookups \
49 --enable-backends=mod \
50 --enable-overlays=mod \
51 --enable-sql=no \
52 --enable-ndb=no \
8fed81c8
SS
53 --enable-hdb=yes \
54 --enable-monitor=yes \
802ea3af 55 --disable-static
8b63a194 56
d236d00d
SS
57 prepare_cmds
58 %{create_user}
59 end
60
802ea3af 61 install_cmds
c8784213 62 mv -v %{BUILDROOT}%{libdir}/slapd %{BUILDROOT}/usr/sbin/slapd
802ea3af
MT
63 ln -svf slapd %{BUILDROOT}/usr/sbin/slapacl
64 ln -svf slapd %{BUILDROOT}/usr/sbin/slapadd
65 ln -svf slapd %{BUILDROOT}/usr/sbin/slapauth
66 ln -svf slapd %{BUILDROOT}/usr/sbin/slapcat
67 ln -svf slapd %{BUILDROOT}/usr/sbin/slapdn
68 ln -svf slapd %{BUILDROOT}/usr/sbin/slapindex
69 ln -svf slapd %{BUILDROOT}/usr/sbin/slappasswd
70 ln -svf slapd %{BUILDROOT}/usr/sbin/slapschema
71 ln -svf slapd %{BUILDROOT}/usr/sbin/slaptest
72
d236d00d 73 # Remove unneeded files.
8fed81c8 74 rm -rvf %{BUILDROOT}%{sysconfidir}/slapd.{conf,ldif}
d236d00d
SS
75 rm -rvf %{BUILDROOT}%{localstatedir}/openldap-data
76 rm -rvf %{BUILDROOT}%{localstatedir}/run
802ea3af
MT
77
78 for LINK in lber ldap ldap_r; do
c8784213 79 chmod -v 0755 %{BUILDROOT}%{libdir}/$(readlink %{BUILDROOT}%{libdir}/lib${LINK}.so)
802ea3af
MT
80 done
81
8fed81c8
SS
82 # Install configuration file.
83 mkdir -pv %{BUILDROOT}%{datadir}/%{name}
84 cp -vf %{DIR_SOURCE}/openldap-conf.ldif \
85 %{BUILDROOT}%{datadir}/%{name}/
d236d00d 86
f2dfd577
SS
87 # Install ldapcert.sh script.
88 install -m 0755 %{DIR_SOURCE}/ldapcert.sh \
89 %{BUILDROOT}%{datadir}/%{name}/
90
d236d00d
SS
91 # Create directoires.
92 mkdir -pv %{BUILDROOT}%{sysconfdir}/%{name}/slapd.d
f2dfd577 93 mkdir -pv %{BUILDROOT}%{sysconfdir}/%{name}/certs
58568575 94 mkdir -pv %{BUILDROOT}/run/%{name}
d236d00d
SS
95 mkdir -pv %{BUILDROOT}%{sharedstatedir}/ldap
96
97 # Fix permissions and ownerships.
98 chown -Rv ldap:ldap %{BUILDROOT}%{sysconfdir}/%{name}
99 chown ldap:ldap %{BUILDROOT}/run/%{name}
100 chown ldap:ldap %{BUILDROOT}%{sharedstatedir}/ldap
101 chmod 700 -Rv %{BUILDROOT}%{sharedstatedir}/ldap
802ea3af
MT
102 end
103end
8b63a194 104
d236d00d
SS
105create_user
106 getent group ldap >/dev/null || groupadd -r ldap
107 getent passwd ldap >/dev/null || useradd -r -g ldap \
108 -d /var/lib/ldap -s /sbin/nologin -c "OpenLDAP server" ldap
109end
110
802ea3af
MT
111packages
112 package %{name}
f2dfd577
SS
113 prerequires
114 openssl
115 shadow-utils
116 end
d236d00d
SS
117
118 script prein
119 %{create_user}
120 end
121
122 datafiles
123 %{sysconfdir}/%{name}/slapd.d
f2dfd577 124 %{sysconfdir}/%{name}/certs
d236d00d
SS
125 %{sharedstatedir}/ldap
126 end
127
b0a34906
SS
128 script postin
129 systemctl daemon-reload >/dev/null 2>&1 || :
d236d00d 130 systemctl enable openldap.socket >/dev/null 2>&1 || :
b0a34906
SS
131 end
132
133 script preun
134 systemctl --no-reload disable openldap.service >/dev/null 2>&1 || :
d236d00d 135 systemctl --no-reload disable openldap.socket >/dev/null 2>&1 || :
b0a34906 136 systemctl stop openldap.service >/dev/null 2>&1 || :
d236d00d 137 systemctl stop openldap.socket >/dev/null 2>&1 || :
b0a34906
SS
138 end
139
140 script postun
141 systemctl daemon-reload >/dev/null 2>&1 || :
142 end
143
144 script postup
145 systemctl daemon-reload >/dev/null 2>&1 || :
146 systemctl try-restart openldap.service >/dev/null 2>&1 || :
147 end
148 end
8b63a194 149
802ea3af
MT
150 package %{name}-libs
151 template LIBS
152 end
8b63a194 153
802ea3af
MT
154 package %{name}-devel
155 template DEVEL
156 end
1f9bc2f0
MT
157
158 package %{name}-debuginfo
159 template DEBUGINFO
160 end
802ea3af 161end