-Name: xmltooling
-Summary: Open source XMLTooling library
-Version: @-VERSION-@
+Name: @PACKAGE_NAME@
+Version: @PACKAGE_VERSION@
Release: 1
+Summary: OpenSAML XMLTooling library
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
-BuildRequires: xerces%{?xercesver}-c-devel >= 2.8.0
-BuildRequires: xml-security-c-devel >= 1.4.0
-BuildRequires: openssl-devel, curl-devel >= 7.10.6
-%{?_with_log4cpp:BuildRequires: log4cpp-devel >= 1.0}
-%{!?_with_log4cpp:BuildRequires: log4shib-devel}
+%if 0%{?suse_version} > 1030
+BuildRequires: libXerces-c-devel >= 2.8.0
+%else
+BuildRequires: libxerces-c-devel >= 2.8.0
+%endif
+BuildRequires: libxml-security-c-devel >= 1.4.0
+%{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
+%{!?_with_log4cpp:BuildRequires: liblog4shib-devel}
+BuildRequires: gcc-c++, openssl-devel, curl-devel >= 7.10.6
+%{!?_without_doxygen:BuildRequires: doxygen}
+%if "%{_vendor}" == "redhat"
+BuildRequires: redhat-rpm-config
+%endif
+
+%if "%{_vendor}" == "suse"
+%define pkgdocdir %{_docdir}/%{name}
+%else
+%define pkgdocdir %{_docdir}/%{name}-%{version}
+%endif
%description
The XMLTooling library contains generic XML parsing and processing
classes to add value around the DOM, as well as signing and encryption
support.
-This package contains the xmltooling runtime library.
+%package -n lib@PACKAGE_NAME@5
+Summary: OpenSAML XMLTooling library
+Group: Development/Libraries
+Provides: @PACKAGE_NAME@ = %{version}-%{release}
+Obsoletes: @PACKAGE_NAME@ < %{version}-%{release}
-%package devel
-Summary: XMLTooling development Headers
-Group: Development/Libraries
-Requires: %{name} = %{version}
+%description -n lib@PACKAGE_NAME@5
+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.
+
+%package -n lib@PACKAGE_NAME@-devel
+Summary: XMLTooling development Headers
+Group: Development/Libraries
+Requires: lib@PACKAGE_NAME@5 = %{version}-%{release}
+Provides: @PACKAGE_NAME@-devel = %{version}-%{release}
+Obsoletes: @PACKAGE_NAME@-devel < %{version}-%{release}
+%if 0%{?suse_version} > 1030
+Requires: libXerces-c-devel >= 2.8.0
+%else
+Requires: libxerces-c-devel >= 2.8.0
+%endif
+Requires: libxml-security-c-devel >= 1.4.0
+%{?_with_log4cpp:Requires: liblog4cpp-devel >= 1.0}
+%{!?_with_log4cpp:Requires: liblog4shib-devel}
+Requires: openssl-devel, curl-devel >= 7.10.6
-%description devel
+%description -n lib@PACKAGE_NAME@-devel
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 includes files needed for development with XMLTooling.
-%package docs
-Summary: XMLTooling API Documentation
-Group: Development/Libraries
-Requires: %{name} = %{version}
+%package -n @PACKAGE_NAME@-schemas
+Summary: XMLTooling schemas and catalog
+Group: Development/Libraries
-%description docs
-XMLTooling Library API documentation generated by doxygen.
+%description -n @PACKAGE_NAME@-schemas
+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 includes XML schemas and related files.
%prep
%setup -q
%build
-%configure %{?xmltooling_options}
+%configure %{?@PACKAGE_NAME@_options}
%{__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}/@PACKAGE_NAME@test
-%check || :
+%check
%{__make} check
%clean
[ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
-%ifnos solaris2.8 solaris2.9 solaris2.10
-%post -p /sbin/ldconfig
+%ifnos solaris2.8 solaris2.9 solaris2.10
+%post -n lib@PACKAGE_NAME@5 -p /sbin/ldconfig
%endif
-%ifnos solaris2.8 solaris2.9 solaris2.10
-%postun -p /sbin/ldconfig
+%ifnos solaris2.8 solaris2.9 solaris2.10
+%postun -n lib@PACKAGE_NAME@5 -p /sbin/ldconfig
%endif
-%files -f rpm.binlist
+%files -n lib@PACKAGE@5
%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
-
-%files devel
+%{_libdir}/*.so.*
+
+%files -n @PACKAGE_NAME@-schemas
%defattr(-,root,root,-)
-%{_includedir}
-%{_libdir}/libxmltooling.so
-%{_libdir}/libxmltooling-lite.so
+%dir %{_datadir}/xml/@PACKAGE_NAME@
+%{_datadir}/xml/@PACKAGE_NAME@/*
-%files docs
-%defattr(644,root,root,755)
-%doc %{_datadir}/doc/xmltooling/api
+%files -n lib@PACKAGE_NAME@-devel
+%defattr(-,root,root,-)
+%{_includedir}/*
+%{_libdir}/*.so
+%{_libdir}/pkgconfig/@PACKAGE_NAME@.pc
+%doc %{pkgdocdir}
%changelog
+* Thu Dec 24 2009 Scott Cantor <cantor.2@osu.edu> - 1.4-1
+- Add pkg-config support.
+- Sync package names for side by side install.
+
+* Mon Aug 31 2009 Scott Cantor <cantor.2@osu.edu> - 1.3-1
+- Bump soname for SUSE packaging.
+
+* 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.