Remove duplicate require line.
[shibboleth/cpp-xmltooling.git] / xmltooling.spec.in
index eecfe38..4a19afc 100644 (file)
@@ -1,22 +1,32 @@
 Name:          xmltooling
 Name:          xmltooling
-Summary:       Open source XMLTooling library
 Version:       @-VERSION-@
 Release:       1
 Version:       @-VERSION-@
 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
 %if 0%{?suse_version} > 1030
 BuildRequires:  libXerces-c-devel >= 2.8.0
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 %if 0%{?suse_version} > 1030
 BuildRequires:  libXerces-c-devel >= 2.8.0
+BuildRequires:  libxml-security-c-devel >= 1.4.0
+%{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
+%{!?_with_log4cpp:BuildRequires: liblog4shib-devel}
 %else
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
 %else
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
-%endif
-BuildRequires: xml-security-c-devel >= 1.4.0
-BuildRequires: openssl-devel, curl-devel >= 7.10.6
-%{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
+BuildRequires:  xml-security-c-devel >= 1.4.0
+%{?_with_log4cpp:BuildRequires: log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
+%endif
+BuildRequires: gcc-c++, openssl-devel, curl-devel >= 7.10.6
+%{!?_without_doxygen:BuildRequires: doxygen}
+
+%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
@@ -25,30 +35,56 @@ 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.
+%if 0%{?suse_version} > 1030
+%package -n libxmltooling12
+Summary:    OpenSAML XMLTooling library
+Group:      Development/Libraries
+Provides:   xmltooling = %{version}
 
 
+%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.
+
+This package contains just the shared library.
+%endif
+
+%if 0%{?suse_version} > 1030
+%package -n libxmltooling-devel
+Requires: libxmltooling12 = %version
+%else
 %package devel
 %package devel
+Requires: %name = %version
+%endif
 Summary: XMLTooling development Headers
 Group: Development/Libraries
 Summary: XMLTooling development Headers
 Group: Development/Libraries
-Requires: %{name} = %{version}
+%if 0%{?suse_version} > 1030
+Requires: libXerces-c-devel >= 2.8.0
+Requires: libxml-security-c-devel >= 1.4.0
+%{?_with_log4cpp:Requires: liblog4cpp-devel >= 1.0}
+%{!?_with_log4cpp:Requires: liblog4shib-devel}
+%else
+Requires: xerces%{?xercesver}-c-devel >= 2.8.0
+Requires: xml-security-c-devel >= 1.4.0
+%{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
+%{!?_with_log4cpp:Requires: log4shib-devel}
+%endif
+Requires: openssl-devel, curl-devel >= 7.10.6
 
 
+%if 0%{?suse_version} > 1030
+%description -n libxmltooling-devel
+%else
 %description devel
 %description devel
+%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.
 
 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.
-
-%package docs
-Summary: XMLTooling API Documentation
-Group: Development/Libraries
-Requires: %{name} = %{version}
-
-%description docs
-XMLTooling Library API documentation generated by doxygen.
+This package includes files needed for development with xmltooling.
 
 %prep
 %setup -q
 
 %prep
 %setup -q
@@ -58,10 +94,9 @@ 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
 %{__make} check
 
 %check
 %{__make} check
@@ -69,42 +104,51 @@ find $RPM_BUILD_ROOT/%{_bindir} -type f |
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %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/README.txt
-%{_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.
 * Wed Dec 3 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.2-1
 - Bumping for minor update.
-- Fixing SUSE Xerces dependency name.
+- Fixing SuSE Xerces dependency name.
 
 * Tue Jul 1 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.1-1
 - Bumping for minor update.
 
 * Tue Jul 1 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.1-1
 - Bumping for minor update.