Convert chkconfig calls to SuSE macros.
[shibboleth/cpp-sp.git] / shibboleth.spec.in
index d32461c..c18ff11 100644 (file)
@@ -1,5 +1,5 @@
-Name:          shibboleth
-Version:       @-VERSION-@
+Name:          @PACKAGE@
+Version:       @PACKAGE_VERSION@
 Release:       1
 Summary:    Open source system for attribute-based Web SSO
 Group:         System Environment/Libraries
@@ -8,7 +8,9 @@ License:        Apache 2.0
 URL:           http://shibboleth.internet2.edu/
 Source:     %{name}-sp-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
+PreReq:     openssl
 %if 0%{?suse_version} > 1030
+PreReq:         %insserv_prere
 BuildRequires:  libXerces-c-devel >= 2.8.0
 BuildRequires:  libxml-security-c-devel >= 1.4.0
 BuildRequires:  libxmltooling-devel >= 1.2
@@ -25,6 +27,7 @@ BuildRequires:  opensaml-devel >= 2.2
 %endif
 BuildRequires:  gcc-c++
 %{!?_without_doxygen:BuildRequires: doxygen}
+%{!?_without_odbc:BuildRequires:unixODBC-devel}
 BuildRequires:  zlib-devel
 %{?_with_fastcgi:BuildRequires: fcgi-devel}
 %if "%{_vendor}" == "redhat"
@@ -81,7 +84,7 @@ This package includes files needed for development with Shibboleth.
 
 %build
 %configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?_with_fastcgi} %{?_with_memcached} %{?shib_options}
-%{__make}
+%{__make} pkgdocdir=%{pkgdocdir}
 
 %install
 %{__make} install NOKEYGEN=1 DESTDIR=$RPM_BUILD_ROOT pkgdocdir=%{pkgdocdir}
@@ -119,11 +122,14 @@ if [ "$APACHE_CONFIG" != "no" ] ; then
     fi
 fi
 
-%if "%{_vendor}" == "redhat"
+%if "%{_vendor}" == "redhat" || "%{_vendor}" == "suse"
        # %{_initddir} not yet in RHEL5, use deprecated %{_initrddir}
        mkdir -p $RPM_BUILD_ROOT%{_initrddir}
-       %{__cp} -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/shibd-%{_vendor} $RPM_BUILD_ROOT%{_initrddir}/shibd
-       %{__chmod} 755 $RPM_BUILD_ROOT%{_initrddir}/shibd
+       install -d -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/shibd-%{_vendor} $RPM_BUILD_ROOT%{_initrddir}/shibd
+%if "%{_vendor}" == "suse"
+       install -d -m 0755 $RPM_BUILD_ROOT/%{_sbindir}
+       %{__ln} -sf $RPM_BUILD_ROOT%{_initrddir}/shibd $RPM_BUILD_ROOT/%{_sbindir}/rcshibd
+%endif
 %endif
 
 %check
@@ -150,12 +156,9 @@ sh ./keygen.sh -b
         %{!?_without_builtinapache:/etc/init.d/httpd status 1>/dev/null && /etc/init.d/httpd restart 1>/dev/null}
     fi
 %endif
-
 %if "%{_vendor}" == "suse"
-    # On upgrade, restart components if they're already running.
-    if [ "$1" -gt "1" ] ; then
-        %{!?_without_builtinapache:/etc/init.d/apache2 status 1>/dev/null && /etc/init.d/apache2 restart 1>/dev/null}
-    fi
+    # This adds the proper /etc/rc*.d links for the script
+    %insserv_force_if_yast shibd
 %endif
 
 %preun
@@ -165,9 +168,17 @@ sh ./keygen.sh -b
                /sbin/chkconfig --del shibd
        fi
 %endif
+%if "%{_vendor}" == "suse"
+    %stop_on_removal shibd
+%endif
 
+%postun
 %ifnos solaris2.8 solaris2.9 solaris2.10
-%postun -p /sbin/ldconfig
+/sbin/ldconfig
+%endif
+%if "%{_vendor}" == "suse"
+%restart_on_update shibd apache2
+%insserv_cleanup
 %endif
 
 %posttrans
@@ -200,14 +211,15 @@ sh ./keygen.sh -b
 %config(noreplace) %{_sysconfdir}/%{name}/*.xml
 %config(noreplace) %{_sysconfdir}/%{name}/*.html
 %config(noreplace) %{_sysconfdir}/%{name}/*.logger
-%if "%{_vendor}" == "redhat"
-%attr(755, root, root) %{_initrddir}/shibd
+%if "%{_vendor}" == "redhat" || "%{_vendor}" == "suse"
+%config %{_initrddir}/shibd
+%endif
+%if "%{_vendor}" == "suse"
+%{_sbindir}/rcshibd
 %endif
 %{_sysconfdir}/%{name}/*.dist
 %{_sysconfdir}/%{name}/apache*.config
-%{_sysconfdir}/%{name}/shibd-redhat
-%{_sysconfdir}/%{name}/shibd-debian
-%{_sysconfdir}/%{name}/shibd-osx.plist
+%{_sysconfdir}/%{name}/shibd-*
 %attr(755, root, root) %{_sysconfdir}/%{name}/keygen.sh
 %attr(755, root, root) %{_sysconfdir}/%{name}/metagen.sh
 %{_sysconfdir}/%{name}/*.xsl
@@ -222,8 +234,9 @@ sh ./keygen.sh -b
 %doc %{pkgdocdir}/api
 
 %changelog
-* Sat Aug 8 2009 Scott Cantor  <cantor.2@osu.edu>  - 2.2.1-1
+* Mon Aug 10 2009 Scott Cantor  <cantor.2@osu.edu>  - 2.2.1-1
 - Doc handling changes
+- SuSE init script
 
 * Tue Aug 4 2009 Scott Cantor  <cantor.2@osu.edu>  - 2.2.1-1
 - Initial version for 2.2.1, with shibd/httpd restart on upgrade