Set default file attrs for schemas.
[shibboleth/cpp-xmltooling.git] / xmltooling.spec.in
index db333f8..a29a849 100644 (file)
@@ -1,5 +1,5 @@
-Name:          xmltooling
-Version:       @-VERSION-@
+Name:          @PACKAGE_NAME@
+Version:       @PACKAGE_VERSION@
 Release:       1
 Summary:    OpenSAML XMLTooling library
 Group:         System Environment/Libraries
 Release:       1
 Summary:    OpenSAML XMLTooling library
 Group:         System Environment/Libraries
@@ -9,16 +9,18 @@ URL:          http://www.opensaml.org/
 Source:            %{name}-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 %if 0%{?suse_version} > 1030
 Source:            %{name}-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 %if 0%{?suse_version} > 1030
-%define libpkgprefix lib
 BuildRequires:  libXerces-c-devel >= 2.8.0
 %else
 BuildRequires:  libXerces-c-devel >= 2.8.0
 %else
-%define libpkgprefix
-BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
+BuildRequires:  libxerces-c-devel >= 2.8.0
 %endif
 %endif
-BuildRequires: %{libpkgprefix}xml-security-c-devel >= 1.4.0
+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
 BuildRequires: gcc-c++, openssl-devel, curl-devel >= 7.10.6
-%{?_with_log4cpp:BuildRequires:        %{libpkgprefix}log4cpp-devel >= 1.0}
-%{!?_with_log4cpp:BuildRequires: %{libpkgprefix}log4shib-devel}
+%{!?_without_doxygen:BuildRequires: doxygen}
+%if "%{_vendor}" == "redhat"
+BuildRequires: redhat-rpm-config
+%endif
 
 %if "%{_vendor}" == "suse"
 %define pkgdocdir %{_docdir}/%{name}
 
 %if "%{_vendor}" == "suse"
 %define pkgdocdir %{_docdir}/%{name}
@@ -33,13 +35,13 @@ 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.
 
-%if 0%{?suse_version} > 1030
-%package -n libxmltooling12
+%package -n lib@PACKAGE_NAME@5
 Summary:    OpenSAML XMLTooling library
 Group:      Development/Libraries
 Summary:    OpenSAML XMLTooling library
 Group:      Development/Libraries
-Provides:   xmltooling = %{version}
+Provides:   @PACKAGE_NAME@ = %{version}
+Obsoletes:  @PACKAGE_NAME@
 
 
-%description -n libxmltooling12
+%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
 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
@@ -47,52 +49,56 @@ classes to add value around the DOM, as well as signing and encryption
 support.
 
 This package contains just the shared library.
 support.
 
 This package contains just the shared library.
-%endif
 
 
+%package -n lib@PACKAGE_NAME@-devel
+Summary:       XMLTooling development Headers
+Group:         Development/Libraries
+Requires:      lib@PACKAGE_NAME@5 = %{version}
+Provides:      @PACKAGE_NAME@-devel = %{version}
+Obsoletes:     @PACKAGE_NAME@-devel
 %if 0%{?suse_version} > 1030
 %if 0%{?suse_version} > 1030
-%package -n libxmltooling-devel
-Requires: libxmltooling12 = %version
+Requires:  libXerces-c-devel >= 2.8.0
 %else
 %else
-%package devel
-Requires: %name = %version
+Requires:  libxerces-c-devel >= 2.8.0
 %endif
 %endif
-Summary: XMLTooling development Headers
-Group: Development/Libraries
-%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: 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
 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
+%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 includes files needed for development with XMLTooling.
+
+%package -n @PACKAGE_NAME@-schemas
+Summary:       XMLTooling schemas and catalog
+Group:         Development/Libraries
+
+%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.
 
 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 files needed for development with xmltooling.
+This package includes XML schemas and related files.
 
 %prep
 %setup -q
 
 %build
 
 %prep
 %setup -q
 
 %build
-%configure %{?xmltooling_options}
+%configure %{?@PACKAGE_NAME@_options}
 %{__make}
 
 %install
 %{__make} install DESTDIR=$RPM_BUILD_ROOT pkgdocdir=%{pkgdocdir}
 # Don't package unit tester if present.
 %{__make}
 
 %install
 %{__make} install DESTDIR=$RPM_BUILD_ROOT pkgdocdir=%{pkgdocdir}
 # Don't package unit tester if present.
-%{__rm} -f $RPM_BUILD_ROOT/%{_bindir}/xmltoolingtest
+%{__rm} -f $RPM_BUILD_ROOT/%{_bindir}/@PACKAGE_NAME@test
 
 %check
 %{__make} check
 
 %check
 %{__make} check
@@ -101,43 +107,37 @@ This package includes files needed for development with xmltooling.
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %ifnos solaris2.8 solaris2.9 solaris2.10
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %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 -n lib@PACKAGE_NAME@5 -p /sbin/ldconfig
 %endif
 
 %ifnos solaris2.8 solaris2.9 solaris2.10
 %endif
 
 %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 -n lib@PACKAGE_NAME@5 -p /sbin/ldconfig
 %endif
 
 %endif
 
-%if 0%{?suse_version} > 1030
-%files -n libxmltooling12
-%else
-%files
-%endif
+%files -n lib@PACKAGE@5
 %defattr(-,root,root,-)
 %defattr(-,root,root,-)
-%{_libdir}/libxmltooling.so.*
-%{_libdir}/libxmltooling-lite.so.*
-%dir %{_datadir}/xml/xmltooling
-%{_datadir}/xml/xmltooling
+%{_libdir}/*.so.*
 
 
-%if 0%{?suse_version} > 1030
-%files -n libxmltooling-devel
-%else
-%files devel
-%endif
+%files -n @PACKAGE_NAME@-schemas
+%defattr(-,root,root,-)
+%dir %{_datadir}/xml/@PACKAGE_NAME@
+%{_datadir}/xml/@PACKAGE_NAME@/*
+
+%files -n lib@PACKAGE_NAME@-devel
 %defattr(-,root,root,-)
 %{_includedir}/*
 %{_libdir}/*.so
 %defattr(-,root,root,-)
 %{_includedir}/*
 %{_libdir}/*.so
+%{_libdir}/pkgconfig/@PACKAGE_NAME@.pc
 %doc %{pkgdocdir}
 
 %changelog
 %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
 * Thu Aug 6 2009  Scott Cantor  <cantor.2@osu.edu>  - 1.2.1-1
 - SuSE conventions
 - Stop packaging unit tester