Clean up doclist.
[shibboleth/cpp-xmltooling.git] / xmltooling.spec.in
index 58a2383..db333f8 100644 (file)
@@ -1,18 +1,30 @@
 Name:          xmltooling
 Name:          xmltooling
-Summary:       Open source XMLTooling library
 Version:       @-VERSION-@
 Version:       @-VERSION-@
-Release:       4
+Release:       1
+Summary:    OpenSAML XMLTooling library
 Group:         System Environment/Libraries
 Vendor:                Internet2
 License:       Apache 2.0
 URL:           http://www.opensaml.org/
 Group:         System Environment/Libraries
 Vendor:                Internet2
 License:       Apache 2.0
 URL:           http://www.opensaml.org/
-Source0:       %{name}-%{version}.tar.gz
+Source:            %{name}-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
+%if 0%{?suse_version} > 1030
+%define libpkgprefix lib
+BuildRequires:  libXerces-c-devel >= 2.8.0
+%else
+%define libpkgprefix
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
-BuildRequires: xml-security-c-devel >= 1.4.0
-BuildRequires: openssl-devel
-%{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
-%{!?_with_log4cpp:BuildRequires: log4shib-devel}
+%endif
+BuildRequires: %{libpkgprefix}xml-security-c-devel >= 1.4.0
+BuildRequires: gcc-c++, openssl-devel, curl-devel >= 7.10.6
+%{?_with_log4cpp:BuildRequires:        %{libpkgprefix}log4cpp-devel >= 1.0}
+%{!?_with_log4cpp:BuildRequires: %{libpkgprefix}log4shib-devel}
+
+%if "%{_vendor}" == "suse"
+%define pkgdocdir %{_docdir}/%{name}
+%else
+%define pkgdocdir %{_docdir}/%{name}-%{version}
+%endif
 
 %description
 The XMLTooling library contains generic XML parsing and processing
 
 %description
 The XMLTooling library contains generic XML parsing and processing
@@ -21,30 +33,54 @@ for declaring element- and type-specific API and implementation
 classes to add value around the DOM, as well as signing and encryption
 support.
 
 classes to add value around the DOM, as well as signing and encryption
 support.
 
-This package contains the xmltooling runtime library.
-
-%package devel
-Summary: XMLTooling development Headers
-Group: Development/Libraries
-Requires: %{name} = %{version}
+%if 0%{?suse_version} > 1030
+%package -n libxmltooling12
+Summary:    OpenSAML XMLTooling library
+Group:      Development/Libraries
+Provides:   xmltooling = %{version}
 
 
-%description devel
+%description -n libxmltooling12
 The XMLTooling library contains generic XML parsing and processing
 classes based on the Xerces-C DOM. It adds more powerful facilities
 for declaring element- and type-specific API and implementation
 classes to add value around the DOM, as well as signing and encryption
 support.
 
 The XMLTooling library contains generic XML parsing and processing
 classes based on the Xerces-C DOM. It adds more powerful facilities
 for declaring element- and type-specific API and implementation
 classes to add value around the DOM, as well as signing and encryption
 support.
 
-This package contains the headers and other necessary files to build
-applications or libraries that use or extend the xmltooling library.
+This package contains just the shared library.
+%endif
 
 
-%package docs
-Summary: XMLTooling API Documentation
+%if 0%{?suse_version} > 1030
+%package -n libxmltooling-devel
+Requires: libxmltooling12 = %version
+%else
+%package devel
+Requires: %name = %version
+%endif
+Summary: XMLTooling development Headers
 Group: Development/Libraries
 Group: Development/Libraries
-Requires: %{name} = %{version}
+%if 0%{?suse_version} > 1030
+Requires: libXerces-c-devel >= 2.8.0
+%else
+Requires: xerces%{?xercesver}-c-devel >= 2.8.0
+%endif
+Requires: %{libpkgprefix}xml-security-c-devel >= 1.4.0
+Requires: openssl-devel, curl-devel >= 7.10.6
+%{?_with_log4cpp:Requires: %{libpkgprefix}log4cpp-devel >= 1.0}
+%{!?_with_log4cpp:Requires: %{libpkgprefix}log4shib-devel}
+
+%if 0%{?suse_version} > 1030
+%description -n libxmltooling-devel
+Requires: libxmltooling12 = %version
+%else
+%description
+%endif
+The XMLTooling library contains generic XML parsing and processing
+classes based on the Xerces-C DOM. It adds more powerful facilities
+for declaring element- and type-specific API and implementation
+classes to add value around the DOM, as well as signing and encryption
+support.
 
 
-%description docs
-XMLTooling Library API documentation generated by doxygen.
+This package includes files needed for development with xmltooling.
 
 %prep
 %setup -q
 
 %prep
 %setup -q
@@ -54,49 +90,71 @@ XMLTooling Library API documentation generated by doxygen.
 %{__make}
 
 %install
 %{__make}
 
 %install
-[ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
-find $RPM_BUILD_ROOT/%{_bindir} -type f |
-  %{__sed} -e "s|$RPM_BUILD_ROOT||" | sort > rpm.binlist
+%{__make} install DESTDIR=$RPM_BUILD_ROOT pkgdocdir=%{pkgdocdir}
+# Don't package unit tester if present.
+%{__rm} -f $RPM_BUILD_ROOT/%{_bindir}/xmltoolingtest
 
 
-%check || :
+%check
 %{__make} check
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %{__make} check
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
-%ifnos solaris2.8 solaris2.9 solaris2.10 
+%ifnos solaris2.8 solaris2.9 solaris2.10
+%if 0%{?suse_version} > 1030
+%post -n libxmltooling12 -p /sbin/ldconfig
+%else
 %post -p /sbin/ldconfig
 %endif
 %post -p /sbin/ldconfig
 %endif
+%endif
 
 
-%ifnos solaris2.8 solaris2.9 solaris2.10 
+%ifnos solaris2.8 solaris2.9 solaris2.10
+%if 0%{?suse_version} > 1030
+%postun -n libxmltooling12 -p /sbin/ldconfig
+%else
 %postun -p /sbin/ldconfig
 %endif
 %postun -p /sbin/ldconfig
 %endif
+%endif
 
 
-%files -f rpm.binlist
+%if 0%{?suse_version} > 1030
+%files -n libxmltooling12
+%else
+%files
+%endif
 %defattr(-,root,root,-)
 %{_libdir}/libxmltooling.so.*
 %{_libdir}/libxmltooling-lite.so.*
 %dir %{_datadir}/xml/xmltooling
 %{_datadir}/xml/xmltooling
 %defattr(-,root,root,-)
 %{_libdir}/libxmltooling.so.*
 %{_libdir}/libxmltooling-lite.so.*
 %dir %{_datadir}/xml/xmltooling
 %{_datadir}/xml/xmltooling
-%docdir %{_datadir}/doc/xmltooling
-%{_datadir}/doc/xmltooling/LICENSE.txt
-%{_datadir}/doc/xmltooling/NOTICE.txt
-%{_datadir}/doc/xmltooling/CURL.LICENSE
-%{_datadir}/doc/xmltooling/LOG4CPP.LICENSE
-%{_datadir}/doc/xmltooling/OPENSSL.LICENSE
 
 
+%if 0%{?suse_version} > 1030
+%files -n libxmltooling-devel
+%else
 %files devel
 %files devel
+%endif
 %defattr(-,root,root,-)
 %defattr(-,root,root,-)
-%{_includedir}
-%{_libdir}/libxmltooling.so
-%{_libdir}/libxmltooling-lite.so
-
-%files docs
-%defattr(644,root,root,755)
-%doc %{_datadir}/doc/xmltooling/api
+%{_includedir}/*
+%{_libdir}/*.so
+%doc %{pkgdocdir}
 
 %changelog
 
 %changelog
+* Thu Aug 6 2009  Scott Cantor  <cantor.2@osu.edu>  - 1.2.1-1
+- SuSE conventions
+- Stop packaging unit tester
+
+* Wed Dec 3 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.2-1
+- Bumping for minor update.
+- Fixing SuSE Xerces dependency name.
+
+* Tue Jul 1 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.1-1
+- Bumping for minor update.
+
+* Mon Mar 17 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.0-6
+- Official release.
+
+* Fri Jan 18 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.0-5
+- Release candidate 1.
+
 * Thu Nov 08 2007  Scott Cantor  <cantor.2@osu.edu>  - 1.0-4
 - Second public beta.
 
 * Thu Nov 08 2007  Scott Cantor  <cantor.2@osu.edu>  - 1.0-4
 - Second public beta.