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