Fix documentation directory and eliminate special handling in spec file.
[shibboleth/sp.git] / shibboleth.spec.in
1 Name:           shibboleth
2 Summary:        Open source system to enable inter-institutional resource sharing
3 Version:        @-VERSION-@
4 Release:        3
5 #Copyright:     Internet2
6 Group:          System Environment/Libraries
7 License:        Apache style
8 URL:            http://shibboleth.internet2.edu/
9 Source0:        http://shibboleth.internet2.edu/downloads/%{name}-%{version}.tar.gz
10 BuildRoot:      %{_tmppath}/%{name}-%{version}-root
11 BuildRequires:  openssl-devel, curl-devel >= 7.10.6
12 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.6.1, xml-security-c-devel >= 1.4.0
13 BuildRequires:  zlib-devel, opensaml-devel >= 2.0
14 %{?_with_log4cpp:BuildRequires: log4cpp-devel >= 0.3.5}
15 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
16 %{!?_without_odbc:BuildRequires: unixODBC-devel}
17 %if "%{_vendor}" == "redhat"
18 %{!?_without_builtinapache:BuildRequires: httpd-devel}
19 %endif
20 %if "%{_vendor}" == "suse"
21 %{!?_without_builtinapache:BuildRequires: apache2-devel}
22 %endif
23
24
25 %description
26 Shibboleth, a project of Internet2/MACE, is developing architectures,
27 policy structures, practical technologies, and an open source
28 implementation to support inter-institutional sharing of web resources
29 subject to access controls. In addition, Shibboleth will develop a
30 policy framework that will allow inter-operation within the higher
31 education community.
32
33 This package contains the shibboleth runtime library and apache module.
34
35 %package devel
36 Summary: Shibboleth development Headers
37 Group: Development/Libraries
38 Requires: %{name} = %{version}
39
40 %description devel
41 Shibboleth, a project of Internet2/MACE, is developing architectures,
42 policy structures, practical technologies, and an open source
43 implementation to support inter-institutional sharing of web resources
44 subject to access controls. In addition, Shibboleth will develop a
45 policy framework that will allow inter-operation within the higher
46 education community.
47
48 This package contains the headers and other necessary files to build
49 applications that use the shibboleth library.
50
51 %prep
52 %setup -q
53
54 %build
55 %configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?shib_options}
56 %{__make}
57
58 %install
59 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
60 %{__make} install DESTDIR=$RPM_BUILD_ROOT
61
62 %if "%{_vendor}" == "suse"
63         %{__sed} -i "s/\/var\/log\/httpd/\/var\/log\/apache2/g" \
64                 $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/native.logger
65 %endif
66
67 find $RPM_BUILD_ROOT/%{_libexecdir} -type f -or -type l |
68   %{__sed} -e "s|$RPM_BUILD_ROOT||" | sort > rpm.filelist
69
70 %check || :
71 %{__make} check
72
73 %clean
74 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
75
76 %post
77 %ifnos solaris2.8 solaris2.9 solaris2.10
78 /sbin/ldconfig
79 %endif
80
81
82 # Plug the SP into Apache on a recognized system.
83 APACHE_CONFIG="no"
84 if [ -f $RPM_BUILD_ROOT/%{_libexecdir}/mod_shib_13.so ] ; then
85         APACHE_CONFIG="apache.config"
86 fi
87 if [ -f $RPM_BUILD_ROOT/%{_libexecdir}/mod_shib_20.so ] ; then
88         APACHE_CONFIG="apache2.config"
89 fi
90 if [ -f $RPM_BUILD_ROOT/%{_libexecdir}/mod_shib_22.so ] ; then
91         APACHE_CONFIG="apache22.config"
92 fi
93 if [ "$APACHE_CONFIG" != "no" ] ; then
94         APACHE_CONFD="no"
95         if [ -d %{_sysconfdir}/httpd/conf.d ] ; then
96                 APACHE_CONFD="%{_sysconfdir}/httpd/conf.d"
97         fi
98         if [ -d %{_sysconfdir}/apache2/conf.d ] ; then
99                 APACHE_CONFD="%{_sysconfdir}/apache2/conf.d"
100         fi
101         if [ "$APACHE_CONFD" != "no" ] ; then
102                 if [ ! -f $APACHE_CONFD/shib.conf ] ; then
103 %if "%{_vendor}" == "suse"
104                     %{__sed} "s/\/usr\/doc\/%{name}/\/usr\/share\/doc\/packages\/%{name}/g" \
105                                 %{_sysconfdir}/%{name}/$APACHE_CONFIG \
106                                 > $APACHE_CONFD/shib.conf
107 %else
108                         %{__sed} "s/\/usr\/doc\/%{name}/\/usr\/share\/doc\/%{name}-@-VERSION-@/g" \
109                             %{_sysconfdir}/%{name}/$APACHE_CONFIG \
110                             > $APACHE_CONFD/shib.conf
111 %endif
112                 fi
113         fi
114 fi
115
116 # Install the shibd init.d scripts and service
117 %if "%{_vendor}" == "redhat"
118         if [ -d %{_sysconfdir}/init.d ] ; then
119                 if [ ! -f %{_sysconfdir}/init.d/shibd ] ; then
120                         %{__cp} -p %{_sysconfdir}/%{name}/shibd-%{_vendor} %{_sysconfdir}/init.d/shibd
121                         %{__chmod} 755 %{_sysconfdir}/init.d/shibd
122                         chkconfig --add shibd
123                 fi
124         fi
125 %endif
126
127 %postun
128 %ifnos solaris2.8 solaris2.9 solaris2.10
129 /sbin/ldconfig
130 %endif
131
132 # delete the Apache configuration if we're being removed
133 [ "$1" = 0 ] || exit 0
134 [ -f %{_sysconfdir}/httpd/conf.d/shib.conf ] && \
135     %{__rm} -f %{_sysconfdir}/httpd/conf.d/shib.conf
136 [ -f %{_sysconfdir}/apache2/conf.d/shib.conf ] && \
137     %{__rm} -f %{_sysconfdir}/apache2/conf.d/shib.conf
138
139 # clear init.d state
140 %if "%{_vendor}" == "redhat"
141         chkconfig --del shibd
142         [ -f %{_sysconfdir}/init.d/shibd ] && \
143             %{__rm} -f %{_sysconfdir}/init.d/shibd
144 %endif
145
146 %files -f rpm.filelist
147 %defattr(-,root,root,-)
148 %{_sbindir}/shibd
149 %{_bindir}/mdquery
150 %{_bindir}/resolvertest
151 %{_libdir}/libshibsp.so.*
152 %{_libdir}/libshibsp-lite.so.*
153 %dir %{_localstatedir}/log/%{name}
154 %dir %{_datadir}/xml/%{name}
155 %{_datadir}/xml/%{name}
156 %dir %{_sysconfdir}/%{name}
157 %config(noreplace) %{_sysconfdir}/%{name}/*.xml
158 %config(noreplace) %{_sysconfdir}/%{name}/*.html
159 %config(noreplace) %{_sysconfdir}/%{name}/*.logger
160 %config %{_sysconfdir}/%{name}/sp-example.crt
161 %config %{_sysconfdir}/%{name}/sp-example.key
162 %{_sysconfdir}/%{name}/*.dist
163 %{_sysconfdir}/%{name}/apache*.config
164 %{_sysconfdir}/%{name}/shibd-redhat
165 %{_sysconfdir}/%{name}/shibd-debian
166 %{_sysconfdir}/%{name}/shibd-osx.plist
167 %exclude %{_libexecdir}/*.la
168 %docdir %{_datadir}/doc/%{name}
169 %{_datadir}/doc/%{name}
170
171 %files devel
172 %defattr(-,root,root,-)
173 %{_includedir}
174 %{_libdir}/libshibsp.so
175 %{_libdir}/libshibsp-lite.so
176
177 %changelog
178 * Thu Aug 16 2007 Scott Cantor  <cantor.2@osu.edu>  - 2.0-3
179 - First public beta.
180
181 * Fri Jul 13 2007 Scott Cantor  <cantor.2@osu.edu>  - 2.0-2
182 - Second alpha release.
183
184 * Sun Jun 10 2007 Scott Cantor  <cantor.2@osu.edu>  - 2.0-1
185 - First alpha release.
186
187 * Mon Oct 2 2006 Scott Cantor   <cantor.2@osu.edu>  - 1.3-11
188 - Applied fix for secadv 20061002
189 - Fix for metadata loader loop
190
191 * Wed Jun 15 2006 Scott Cantor  <cantor.2@osu.edu>  - 1.3-10
192 - Applied fix for sec 20060615
193
194 * Fri Apr 15 2006 Scott Cantor  <cantor.2@osu.edu>  - 1.3-9
195 - Misc. patches, SuSE, Apache 2.2, gcc 4.1, and 64-bit support
196
197 * Mon Jan 9 2006 Scott Cantor  <cantor.2@osu.edu>  - 1.3-8
198 - Applied new fix for secadv 20060109
199
200 * Tue Nov 8 2005 Scott Cantor  <cantor.2@osu.edu>  - 1.3-7
201 - Applied new fix for secadv 20050901 plus rollup
202
203 * Fri Sep 23 2005 Scott Cantor  <cantor.2@osu.edu>  - 1.3-6
204 - Minor patches and default config changes
205 - pidfile patch
206 - Fix shib.conf creation
207 - Integrated init.d script
208 - Prevent replacement of config files
209
210 * Thu Sep 1 2005  Scott Cantor  <cantor.2@osu.edu>  - 1.3-5
211 - Applied fix for secadv 20050901 plus rollup of NSAPI fixes
212
213 * Sun Apr 24 2005  Scott Cantor  <cantor.2@osu.edu>  - 1.3-1
214 - Updated test programs and location of schemas.
215 - move siterefresh to to sbindir
216
217 * Fri Apr  1 2005  Derek Atkins  <derek@ihtfp.com>  - 1.3-1
218 - Add selinux-targeted-policy package
219 - move shar to sbindir
220
221 * Tue Oct 19 2004  Derek Atkins  <derek@ihtfp.com>  - 1.2-1
222 - Create SPEC file based on various versions in existence.