Optimize makefile and check in draft spec file improvements.
[shibboleth/xmltooling.git] / xmltooling.spec.in
index b016883..f53f1fb 100644 (file)
@@ -1,12 +1,12 @@
 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
@@ -14,7 +14,7 @@ BuildRequires:  libXerces-c-devel >= 2.8.0
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
 %endif
 BuildRequires: xml-security-c-devel >= 1.4.0
 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
+BuildRequires: gcc-c++, openssl-devel, curl-devel >= 7.10.6
 %{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
 
 %{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
 
@@ -25,12 +25,31 @@ 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
 %else
 %if 0%{?suse_version} > 1030
 Requires: libXerces-c-devel >= 2.8.0
 %else
@@ -41,23 +60,19 @@ Requires: openssl-devel, curl-devel >= 7.10.6
 %{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:Requires: log4shib-devel}
 
 %{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:Requires: log4shib-devel}
 
-%description 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.
 
 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
@@ -67,10 +82,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
 %{__make} install DESTDIR=$RPM_BUILD_ROOT
-find $RPM_BUILD_ROOT/%{_bindir} -type f |
-  %{__sed} -e "s|$RPM_BUILD_ROOT||" | sort > rpm.binlist
+# Don't package unit tester if present.
+{__rm} $RPM_BUILD_ROOT/%{_bindir}/xmltoolingtest
 
 %check
 %{__make} check
 
 %check
 %{__make} check
@@ -78,20 +92,41 @@ 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
+
+%if 0%{?suse_version} > 1030
+%files -n libxmltooling-devel
+%else
+%files devel
+%endif
+%defattr(-,root,root,-)
+%{_includedir}/*
+%{_libdir}/*.so
 %docdir %{_datadir}/doc/xmltooling
 %{_datadir}/doc/xmltooling/README.txt
 %{_datadir}/doc/xmltooling/LICENSE.txt
 %docdir %{_datadir}/doc/xmltooling
 %{_datadir}/doc/xmltooling/README.txt
 %{_datadir}/doc/xmltooling/LICENSE.txt
@@ -99,21 +134,16 @@ find $RPM_BUILD_ROOT/%{_bindir} -type f |
 %{_datadir}/doc/xmltooling/CURL.LICENSE
 %{_datadir}/doc/xmltooling/LOG4CPP.LICENSE
 %{_datadir}/doc/xmltooling/OPENSSL.LICENSE
 %{_datadir}/doc/xmltooling/CURL.LICENSE
 %{_datadir}/doc/xmltooling/LOG4CPP.LICENSE
 %{_datadir}/doc/xmltooling/OPENSSL.LICENSE
-
-%files devel
-%defattr(-,root,root,-)
-%{_includedir}
-%{_libdir}/libxmltooling.so
-%{_libdir}/libxmltooling-lite.so
-
-%files docs
-%defattr(644,root,root,755)
 %doc %{_datadir}/doc/xmltooling/api
 
 %changelog
 %doc %{_datadir}/doc/xmltooling/api
 
 %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.