Form generator for discovery along with sample form.
[shibboleth/sp.git] / shibboleth.spec.in
index 88b8e5a..2b8358b 100644 (file)
@@ -1,22 +1,25 @@
 Name:          shibboleth
 Summary:       Open source system to enable inter-institutional resource sharing
 Version:       @-VERSION-@
 Name:          shibboleth
 Summary:       Open source system to enable inter-institutional resource sharing
 Version:       @-VERSION-@
-Release:       2
+Release:       6
 #Copyright:    Internet2
 Group:         System Environment/Libraries
 License:       Apache style
 URL:           http://shibboleth.internet2.edu/
 Source0:       http://shibboleth.internet2.edu/downloads/%{name}-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 #Copyright:    Internet2
 Group:         System Environment/Libraries
 License:       Apache style
 URL:           http://shibboleth.internet2.edu/
 Source0:       http://shibboleth.internet2.edu/downloads/%{name}-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
-
-BuildRequires: openssl-devel, curl-devel >= 7.10.6, xerces%{?xercesver}-c-devel >= 2.6.1
-BuildRequires: xml-security-c-devel >= 1.3.1, log4cpp-devel >= 0.3.5
+BuildRequires: openssl-devel
+BuildRequires: xerces%{?xercesver}-c-devel >= 2.8.0
+BuildRequires:  xml-security-c-devel >= 1.4.0
 BuildRequires: zlib-devel, opensaml-devel >= 2.0
 BuildRequires: zlib-devel, opensaml-devel >= 2.0
+%{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
+%{!?_with_log4cpp:BuildRequires: log4shib-devel}
+%{?_with_fastcgi:BuildRequires: fcgi-devel}
 %if "%{_vendor}" == "redhat"
 %if "%{_vendor}" == "redhat"
-BuildRequires: httpd-devel
+%{!?_without_builtinapache:BuildRequires: httpd-devel}
 %endif
 %if "%{_vendor}" == "suse"
 %endif
 %if "%{_vendor}" == "suse"
-BuildRequires: apache2-devel
+%{!?_without_builtinapache:BuildRequires: apache2-devel}
 %endif
 
 
 %endif
 
 
@@ -46,61 +49,51 @@ education community.
 This package contains the headers and other necessary files to build
 applications that use the shibboleth library.
 
 This package contains the headers and other necessary files to build
 applications that use the shibboleth library.
 
-%package selinux-policy-targeted
-Summary: SELinux policy targeted configuration for Shibboleth SP
-Group: System Environment/Base
-Requires: selinux-policy-targeted-sources
-
-%description selinux-policy-targeted
-Shibboleth, a project of Internet2/MACE, is developing architectures,
-policy structures, practical technologies, and an open source
-implementation to support inter-institutional sharing of web resources
-subject to access controls. In addition, Shibboleth will develop a
-policy framework that will allow inter-operation within the higher
-education community.
+%package docs
+Summary: Shibboleth API Documentation
+Group: Development/Libraries
+Requires: %{name} = %{version}
 
 
-This package contains the SELinux Policy (source) Configuration to
-enable the Shibboleth SP to integrate into Apache HTTPD in Red Hat /
-Fedora's Policy Targeted SELinux implementation.  It requires
-rebuilding your policy, so you must have the policy-targeted-source
-installed.
+%description docs
+Shibboleth Library API documentation generated by doxygen.
 
 %prep
 %setup -q
 
 %build
 
 %prep
 %setup -q
 
 %build
-%configure %{?shib_options}
-make
-#make -C selinux
+%configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?_with_fastcgi} %{?shib_options}
+%{__make}
 
 %install
 
 %install
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
-rm -rf _docs
-make install DESTDIR=$RPM_BUILD_ROOT
-make -C selinux install DESTDIR=$RPM_BUILD_ROOT
-mv $RPM_BUILD_ROOT/usr/doc/%{name} _docs
+[ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
+%{__make} install NOKEYGEN=1 DESTDIR=$RPM_BUILD_ROOT
 
 
-find $RPM_BUILD_ROOT/%{_libexecdir} -type f -or -type l | grep \.so |
-  sed -e "s|$RPM_BUILD_ROOT||" | sort > rpm.filelist
+%if "%{_vendor}" == "suse"
+       %{__sed} -i "s/\/var\/log\/httpd/\/var\/log\/apache2/g" \
+               $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/native.logger
+%endif
 
 %check || :
 
 %check || :
-make check
+%{__make} check
 
 %clean
 
 %clean
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
+[ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %post
 
 %post
+%ifnos solaris2.8 solaris2.9 solaris2.10
 /sbin/ldconfig
 /sbin/ldconfig
+%endif
+
 
 # Plug the SP into Apache on a recognized system.
 APACHE_CONFIG="no"
 
 # Plug the SP into Apache on a recognized system.
 APACHE_CONFIG="no"
-if [ -f $RPM_BUILD_ROOT/%{_libexecdir}/mod_shib_13.so ] ; then
+if [ -f $RPM_BUILD_ROOT/%{_libdir}/%{name}/mod_shib_13.so ] ; then
        APACHE_CONFIG="apache.config"
 fi
        APACHE_CONFIG="apache.config"
 fi
-if [ -f $RPM_BUILD_ROOT/%{_libexecdir}/mod_shib_20.so ] ; then
+if [ -f $RPM_BUILD_ROOT/%{_libdir}/%{name}/mod_shib_20.so ] ; then
        APACHE_CONFIG="apache2.config"
 fi
        APACHE_CONFIG="apache2.config"
 fi
-if [ -f $RPM_BUILD_ROOT/%{_libexecdir}/mod_shib_22.so ] ; then
+if [ -f $RPM_BUILD_ROOT/%{_libdir}/%{name}/mod_shib_22.so ] ; then
        APACHE_CONFIG="apache22.config"
 fi
 if [ "$APACHE_CONFIG" != "no" ] ; then
        APACHE_CONFIG="apache22.config"
 fi
 if [ "$APACHE_CONFIG" != "no" ] ; then
@@ -113,9 +106,15 @@ if [ "$APACHE_CONFIG" != "no" ] ; then
        fi
        if [ "$APACHE_CONFD" != "no" ] ; then
                if [ ! -f $APACHE_CONFD/shib.conf ] ; then
        fi
        if [ "$APACHE_CONFD" != "no" ] ; then
                if [ ! -f $APACHE_CONFD/shib.conf ] ; then
-                       sed "s/\/usr\/doc\/%{name}/\/usr\/share\/doc\/%{name}-@-VERSION-@/g" \
+%if "%{_vendor}" == "suse"
+                   %{__sed} "s/\/usr\/doc\/%{name}/\/usr\/share\/doc\/packages\/%{name}/g" \
                                %{_sysconfdir}/%{name}/$APACHE_CONFIG \
                                > $APACHE_CONFD/shib.conf
                                %{_sysconfdir}/%{name}/$APACHE_CONFIG \
                                > $APACHE_CONFD/shib.conf
+%else
+                       %{__sed} "s/\/usr\/doc\/%{name}/\/usr\/share\/doc\/%{name}-@-VERSION-@/g" \
+                           %{_sysconfdir}/%{name}/$APACHE_CONFIG \
+                           > $APACHE_CONFD/shib.conf
+%endif
                fi
        fi
 fi
                fi
        fi
 fi
@@ -124,61 +123,73 @@ fi
 %if "%{_vendor}" == "redhat"
        if [ -d %{_sysconfdir}/init.d ] ; then
                if [ ! -f %{_sysconfdir}/init.d/shibd ] ; then
 %if "%{_vendor}" == "redhat"
        if [ -d %{_sysconfdir}/init.d ] ; then
                if [ ! -f %{_sysconfdir}/init.d/shibd ] ; then
-                       cp -p %{_sysconfdir}/%{name}/shibd %{_sysconfdir}/init.d/shibd
-                       chmod 755 %{_sysconfdir}/init.d/shibd
+                       %{__cp} -p %{_sysconfdir}/%{name}/shibd-%{_vendor} %{_sysconfdir}/init.d/shibd
+                       %{__chmod} 755 %{_sysconfdir}/init.d/shibd
                        chkconfig --add shibd
                fi
        fi
 %endif
 
                        chkconfig --add shibd
                fi
        fi
 %endif
 
+# Key generation
+cd %{_sysconfdir}/%{name}
+sh ./keygen.sh -b
+
 %postun
 %postun
+%ifnos solaris2.8 solaris2.9 solaris2.10
 /sbin/ldconfig
 /sbin/ldconfig
+%endif
 
 # delete the Apache configuration if we're being removed
 [ "$1" = 0 ] || exit 0
 [ -f %{_sysconfdir}/httpd/conf.d/shib.conf ] && \
 
 # delete the Apache configuration if we're being removed
 [ "$1" = 0 ] || exit 0
 [ -f %{_sysconfdir}/httpd/conf.d/shib.conf ] && \
-    rm -f %{_sysconfdir}/httpd/conf.d/shib.conf
+    %{__rm} -f %{_sysconfdir}/httpd/conf.d/shib.conf
 [ -f %{_sysconfdir}/apache2/conf.d/shib.conf ] && \
 [ -f %{_sysconfdir}/apache2/conf.d/shib.conf ] && \
-    rm -f %{_sysconfdir}/apache2/conf.d/shib.conf
+    %{__rm} -f %{_sysconfdir}/apache2/conf.d/shib.conf
 
 # clear init.d state
 %if "%{_vendor}" == "redhat"
        chkconfig --del shibd
        [ -f %{_sysconfdir}/init.d/shibd ] && \
 
 # clear init.d state
 %if "%{_vendor}" == "redhat"
        chkconfig --del shibd
        [ -f %{_sysconfdir}/init.d/shibd ] && \
-           rm -f %{_sysconfdir}/init.d/shibd
+           %{__rm} -f %{_sysconfdir}/init.d/shibd
 %endif
 
 %endif
 
-%triggerin selinux-policy-targeted -- %{name}
-restorecon %{_sbindir}/shibd
-
-%triggerin selinux-policy-targeted -- selinux-policy-targeted-sources
-cd %{_sysconfdir}/selinux/targeted/src/policy || exit 1
-make -W install
-make load
-restorecon %{_sbindir}/shibd
-
-%files -f rpm.filelist
+%files
 %defattr(-,root,root,-)
 %defattr(-,root,root,-)
-%doc _docs/CREDITS.txt _docs/LICENSE.txt _docs/NOTICE.txt _docs/README.txt _docs/RELEASE.txt
-%doc _docs/logo.jpg _docs/main.css
 %{_sbindir}/shibd
 %{_sbindir}/shibd
-%{_sbindir}/siterefresh
-%{_bindir}/samlquery
+%{_bindir}/mdquery
+%{_bindir}/resolvertest
 %{_libdir}/libshibsp.so.*
 %{_libdir}/libshibsp-lite.so.*
 %{_libdir}/libshibsp.so.*
 %{_libdir}/libshibsp-lite.so.*
+%dir %{_libdir}/%{name}
+%{_libdir}/%{name}/*
+%exclude %{_libdir}/%{name}/*.la
 %dir %{_localstatedir}/log/%{name}
 %dir %{_localstatedir}/log/%{name}
+%dir %{_localstatedir}/run/%{name}
 %dir %{_datadir}/xml/%{name}
 %dir %{_datadir}/xml/%{name}
-%{_datadir}/xml/%{name}
+%{_datadir}/xml/%{name}/*
 %dir %{_sysconfdir}/%{name}
 %config(noreplace) %{_sysconfdir}/%{name}/*.xml
 %config(noreplace) %{_sysconfdir}/%{name}/*.html
 %config(noreplace) %{_sysconfdir}/%{name}/*.logger
 %dir %{_sysconfdir}/%{name}
 %config(noreplace) %{_sysconfdir}/%{name}/*.xml
 %config(noreplace) %{_sysconfdir}/%{name}/*.html
 %config(noreplace) %{_sysconfdir}/%{name}/*.logger
-%config %{_sysconfdir}/%{name}/sp-example.crt
-%config %{_sysconfdir}/%{name}/sp-example.key
 %{_sysconfdir}/%{name}/*.dist
 %{_sysconfdir}/%{name}/apache*.config
 %{_sysconfdir}/%{name}/*.dist
 %{_sysconfdir}/%{name}/apache*.config
-%{_sysconfdir}/%{name}/shibd
-%exclude %{_libexecdir}/*.la
+%{_sysconfdir}/%{name}/shibd-redhat
+%{_sysconfdir}/%{name}/shibd-debian
+%{_sysconfdir}/%{name}/shibd-osx.plist
+%{_sysconfdir}/%{name}/keygen.sh
+%docdir %{_datadir}/doc/%{name}
+%{_datadir}/doc/%{name}/CREDITS.txt
+%{_datadir}/doc/%{name}/FASTCGI.LICENSE
+%{_datadir}/doc/%{name}/INSTALL.txt
+%{_datadir}/doc/%{name}/LICENSE.txt
+%{_datadir}/doc/%{name}/LOG4CPP.LICENSE
+%{_datadir}/doc/%{name}/logo.jpg
+%{_datadir}/doc/%{name}/main.css
+%{_datadir}/doc/%{name}/NOTICE.txt
+%{_datadir}/doc/%{name}/OPENSSL.LICENSE
+%{_datadir}/doc/%{name}/README.txt
+%{_datadir}/doc/%{name}/RELEASE.txt
+%exclude %{_datadir}/doc/%{name}/INSTALL-WIN32.txt
 
 %files devel
 %defattr(-,root,root,-)
 
 %files devel
 %defattr(-,root,root,-)
@@ -186,17 +197,26 @@ restorecon %{_sbindir}/shibd
 %{_libdir}/libshibsp.so
 %{_libdir}/libshibsp-lite.so
 
 %{_libdir}/libshibsp.so
 %{_libdir}/libshibsp-lite.so
 
-%files selinux-policy-targeted
-%defattr(-,root,root,-)
-%{_sysconfdir}/selinux/targeted/src/policy/file_contexts/program/*.fc
-%{_sysconfdir}/selinux/targeted/src/policy/domains/program/*.te
+%files docs
+%defattr(644,root,root,755)
+%doc %{_datadir}/doc/%{name}/api
 
 %changelog
 
 %changelog
+* Fri Jan 18 2008  Scott Cantor  <cantor.2@osu.edu>  - 2.0-5
+- Release candidate 1.
+
+* Sun Oct 21 2007 Scott Cantor  <cantor.2@osu.edu>  - 2.0-4
+- libexec -> lib/shibboleth changes
+- Added doc subpackage
+
+* Thu Aug 16 2007 Scott Cantor  <cantor.2@osu.edu>  - 2.0-3
+- First public beta.
+
 * Fri Jul 13 2007 Scott Cantor <cantor.2@osu.edu>  - 2.0-2
 * Fri Jul 13 2007 Scott Cantor <cantor.2@osu.edu>  - 2.0-2
-- Second alpha release
+- Second alpha release.
 
 * Sun Jun 10 2007 Scott Cantor <cantor.2@osu.edu>  - 2.0-1
 
 * Sun Jun 10 2007 Scott Cantor <cantor.2@osu.edu>  - 2.0-1
-- First alpha release
+- First alpha release.
 
 * Mon Oct 2 2006 Scott Cantor  <cantor.2@osu.edu>  - 1.3-11
 - Applied fix for secadv 20061002
 
 * Mon Oct 2 2006 Scott Cantor  <cantor.2@osu.edu>  - 1.3-11
 - Applied fix for secadv 20061002