]> git.pld-linux.org Git - packages/389-admin.git/blob - 389-admin.spec
d9bbf759f8f8cededc6dc70aa3854bc8e9174131
[packages/389-admin.git] / 389-admin.spec
1 # TODO
2 # - merge with fedora-ds-admin.spec
3 # - apache2 only package? the apache deps seems overkill
4
5 #%global selinux_variants mls targeted
6
7 %define         subver  .a1
8 %define         rel             0.1
9 Summary:        389 Administration Server (admin)
10 Name:           389-admin
11 Version:        1.1.11
12 Release:        0%{?subver}.%{rel}
13 License:        GPL v2 and ASL 2.0
14 Group:          Daemons
15 URL:            http://directory.fedoraproject.org/
16 Source0:        http://directory.fedoraproject.org/sources/%{name}-%{version}%{subver}.tar.bz2
17 # Source0-md5:  2d5c5e2058429086bbced744590aba7f
18 #Patch1:        f11-httpd.patch
19 BuildRequires:  389-adminutil-devel
20 BuildRequires:  apache-devel
21 BuildRequires:  apr-devel
22 BuildRequires:  apr-util-devel
23 BuildRequires:  cyrus-sasl-devel
24 BuildRequires:  icu
25 BuildRequires:  libicu-devel >= 4.2.1
26 BuildRequires:  mozldap-devel
27 BuildRequires:  nspr-devel
28 BuildRequires:  nss-devel
29 BuildRequires:  svrcore-devel
30 %if %{with selinux}
31 # The following are needed to build the SELinux policy
32 BuildRequires:  /usr/share/selinux/devel/Makefile
33 BuildRequires:  389-ds-base-selinux-devel
34 BuildRequires:  checkpolicy
35 BuildRequires:  selinux-policy-devel
36 %endif
37 Requires:       389-ds-base
38 Requires:       apache-mod_actions
39 Requires:       apache-mod_alias
40 Requires:       apache-mod_auth_basic
41 Requires:       apache-mod_authn_file
42 Requires:       apache-mod_authz_host
43 Requires:       apache-mod_cache
44 Requires:       apache-mod_deflate
45 Requires:       apache-mod_dir
46 Requires:       apache-mod_env
47 Requires:       apache-mod_expires
48 Requires:       apache-mod_headers
49 Requires:       apache-mod_log_config
50 Requires:       apache-mod_mime_magic
51 Requires:       apache-mod_negotiation
52 Requires:       apache-mod_nss
53 Requires:       apache-mod_rewrite
54 Requires:       apache-mod_setenvif
55 Requires:       apache-mod_unique_id
56 Requires:       apache-mod_vhost_alias
57 # the following are needed for some of our scripts
58 Requires:       nss-tools
59 Requires:       perl-Mozilla-LDAP
60 # for the init script
61 Requires(post,preun):   /sbin/chkconfig
62 Requires:       rc-scripts
63 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
64
65 %description
66 389 Administration Server is an HTTP agent that provides management
67 features for 389 Directory Server. It provides some management web
68 apps that can be used through a web browser. It provides the
69 authentication, access control, and CGI utilities used by the console.
70
71 %package selinux
72 Summary:        SELinux policy for 389 Administration Server
73 Group:          Daemons
74 Requires:       %{name} = %{version}-%{release}
75 Requires:       389-ds-base-selinux
76 Requires:       selinux-policy
77
78 %description selinux
79 SELinux policy for the 389 Adminstration Server package.
80
81 %prep
82 %setup -q -n %{name}-%{version}%{subver}
83 #%patch1
84
85 %build
86 %{__aclocal} -I m4
87 %{__automake}
88 %{__autoconf}
89 export CFLAGS="%{rpmcflags} $(apu-1-config --includes)"
90 %configure \
91         --disable-rpath \
92         %{?with_selinux:--with-selinux}
93
94 %ifarch x86_64 ppc64 ia64 s390x sparc64
95 export USE_64=1
96 %endif
97
98 %{__make}
99
100 %if %{with selinux}
101 # Build the SELinux policy module for each variant
102 cd selinux-built
103 cp %{_datadir}/dirsrv-selinux/dirsrv.if .
104 cp %{_datadir}/dirsrv-selinux/dirsrv.te .
105 for selinuxvariant in %{selinux_variants}; do
106         %{__make} NAME=${selinuxvariant} -f %{_datadir}/selinux/devel/Makefile
107         mv dirsrv-admin.pp dirsrv-admin.pp.${selinuxvariant}
108         %{__make} NAME=${selinuxvariant} -f %{_datadir}/selinux/devel/Makefile clean
109 done
110 cd -
111 %endif
112
113 %install
114 rm -rf $RPM_BUILD_ROOT
115
116 %{__make} install \
117         DESTDIR=$RPM_BUILD_ROOT
118
119 # make console jars directory
120 install -d $RPM_BUILD_ROOT%{_datadir}/dirsrv/html/java
121
122 # remove libtool and static libs
123 rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
124 rm -f $RPM_BUILD_ROOT%{_libdir}/*.so
125 rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
126 rm -f $RPM_BUILD_ROOT%{_libdir}/dirsrv/modules/*.a
127 rm -f $RPM_BUILD_ROOT%{_libdir}/dirsrv/modules/*.la
128
129 %if %{with selinux}
130 # Install the SELinux policy
131 cd selinux-built
132 for selinuxvariant in %{selinux_variants}; do
133         install -d $RPM_BUILD_ROOT%{_datadir}/selinux/${selinuxvariant}
134         install -p -m 644 dirsrv-admin.pp.${selinuxvariant} \
135                 $RPM_BUILD_ROOT%{_datadir}/selinux/${selinuxvariant}/dirsrv-admin.pp
136 done
137 cd -
138 %endif
139
140 %clean
141 rm -rf $RPM_BUILD_ROOT
142
143 %post
144 /sbin/chkconfig --add dirsrv-admin
145 /sbin/ldconfig
146
147 %preun
148 if [ "$1" = 0 ]; then
149         %service dirsrv-admin stop
150         /sbin/chkconfig --del dirsrv-admin
151 fi
152
153 %postun -p /sbin/ldconfig
154
155 %if %{with selinux}
156 %post selinux
157 if [ "$1" -le "1" ]; then # First install
158         for selinuxvariant in %{selinux_variants}; do
159                 semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/dirsrv-admin.pp 2>/dev/null || :
160         done
161         fixfiles -R %{name} restore || :
162         %service dirsrv-admin condrestart
163 fi
164
165 %preun selinux
166 if [ "$1" -lt "1" ]; then # Final removal
167         for selinuxvariant in %{selinux_variants}; do
168                 semodule -s ${selinuxvariant} -r dirsrv-admin 2>/dev/null || :
169         done
170         fixfiles -R %{name} restore || :
171         %service dirsrv-admin condrestart
172 fi
173
174 %postun selinux
175 if [ "$1" -ge "1" ]; then # Upgrade
176         for selinuxvariant in %{selinux_variants}; do
177                 semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/dirsrv-admin.pp 2>/dev/null || :
178         done
179 fi
180 %endif
181
182 %files
183 %defattr(644,root,root,755)
184 %doc LICENSE
185 %dir %{_sysconfdir}/dirsrv/admin-serv
186 %config(noreplace)%{_sysconfdir}/dirsrv/admin-serv/*.conf
187 %{_datadir}/dirsrv
188 %attr(754,root,root) /etc/rc.d/init.d/dirsrv-admin
189 %config(noreplace)%verify(not md5 mtime size) /etc/sysconfig/dirsrv-admin
190 %attr(755,root,root) %{_sbindir}/*
191 %attr(755,root,root) %{_libdir}/*.so.*
192 %{_libdir}/dirsrv
193 %{_mandir}/man8/*
194
195 %if %{with selinux}
196 %files selinux
197 %defattr(644,root,root,755)
198 %{_datadir}/selinux/*/dirsrv-admin.pp
199 %endif
This page took 0.059593 seconds and 2 git commands to generate.