Update gitignore to account for subdirs / missing files.
[shibboleth/cpp-opensaml.git] / opensaml.spec.in
index 352f2a8..3a72b92 100644 (file)
@@ -1,28 +1,30 @@
-Name:          @PACKAGE@
+Name:          @PACKAGE_NAME@
 Version:       @PACKAGE_VERSION@
 Release:       1
-Summary:    OpenSAML SAML library
-Group:         System Environment/Libraries
-Vendor:                Internet2
+Summary:       OpenSAML SAML library
+Group:         Development/Libraries/C and C++
+Vendor:                Shibboleth Consortium
 License:       Apache 2.0
 URL:           http://www.opensaml.org/
-Source0:       %{name}-%{version}.tar.gz
+Source0:       %{name}-%{version}.tar.bz2
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
-%if 0%{?suse_version} > 1030
-BuildRequires:  libXerces-c-devel >= 2.8.0
+%if 0%{?rhel} >= 7 || 0%{?centos_version} >= 700
+BuildRequires:  xerces-c-devel >= 3.1
+%else
+BuildRequires:  libxerces-c-devel >= 3.1
+%endif
 BuildRequires:  libxml-security-c-devel >= 1.4.0
-BuildRequires:  libxmltooling-devel >= 1.2
+BuildRequires:  libxmltooling-devel >= 1.4
 %{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
-%{!?_with_log4cpp:BuildRequires: liblog4shib-devel}
-%else
-BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
-BuildRequires:  xml-security-c-devel >= 1.4.0
-BuildRequires:  xmltooling-devel >= 1.2
-%{?_with_log4cpp:BuildRequires: log4cpp-devel >= 1.0}
-%{!?_with_log4cpp:BuildRequires: log4shib-devel}
+%{!?_with_log4cpp:BuildRequires: liblog4shib-devel >= 1.0.4}
+BuildRequires:  gcc-c++, boost-devel >= 1.32.0
+%if 0%{?suse_version} > 1000
+BuildRequires: pkg-config
 %endif
-BuildRequires:  gcc-c++
 %{!?_without_doxygen:BuildRequires: doxygen}
+%if "%{_vendor}" == "redhat"
+BuildRequires: redhat-rpm-config
+%endif
 
 %if "%{_vendor}" == "suse"
 %define pkgdocdir %{_docdir}/%{name}
@@ -35,54 +37,63 @@ OpenSAML is an open source implementation of the OASIS Security Assertion
 Markup Language Specification. It contains a set of open source C++ classes
 that support the SAML 1.0, 1.1, and 2.0 specifications.
 
-%if 0%{?suse_version} > 1030
-%package -n libsaml4
+%package -n @PACKAGE_NAME@-bin
+Summary:    Utilities for OpenSAML library
+Group:      Development/Libraries/C and C++
+
+%description -n @PACKAGE_NAME@-bin
+OpenSAML is an open source implementation of the OASIS Security Assertion
+Markup Language Specification. It contains a set of open source C++ classes
+that support the SAML 1.0, 1.1, and 2.0 specifications.
+
+This package contains the utility programs.
+
+%package -n libsaml8
 Summary:    OpenSAML SAML library
-Group:      Development/Libraries
-Provides:   @PACKAGE@ = %{version}
+Group:      Development/Libraries/C and C++
+Provides:   @PACKAGE_NAME@ = %{version}-%{release}
+Obsoletes:  @PACKAGE_NAME@ < %{version}-%{release}
 
-%description -n libsaml4
+%description -n libsaml8
 OpenSAML is an open source implementation of the OASIS Security Assertion
 Markup Language Specification. It contains a set of open source C++ classes
 that support the SAML 1.0, 1.1, and 2.0 specifications.
 
 This package contains just the shared library.
-%endif
 
-%if 0%{?suse_version} > 1030
 %package -n libsaml-devel
-Requires: libsaml4 = %version
+Summary:       OpenSAML development Headers
+Group:         Development/Libraries/C and C++
+Requires:      libsaml8 = %{version}-%{release}
+Provides:      @PACKAGE_NAME@-devel = %{version}-%{release}
+Obsoletes:     @PACKAGE_NAME@-devel < %{version}-%{release}
+%if 0%{?rhel} >= 7 || 0%{?centos_version} >= 700
+Requires:  xerces-c-devel >= 3.1
 %else
-%package devel
-Requires: %name = %version
+Requires:  libxerces-c-devel >= 3.1
 %endif
-Summary: OpenSAML development Headers
-Group: Development/Libraries
-%if 0%{?suse_version} > 1030
-Requires: libXerces-c-devel >= 2.8.0
 Requires: libxml-security-c-devel >= 1.4.0
-Requires: libxmltooling-devel >= 1.2
+Requires: libxmltooling-devel >= 1.4
 %{?_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
-Requires: xmltooling-devel >= 1.2
-%{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
-%{!?_with_log4cpp:Requires: log4shib-devel}
-%endif
+%{!?_with_log4cpp:Requires: liblog4shib-devel >= 1.0.4}
 
-%if 0%{?suse_version} > 1030
 %description -n libsaml-devel
-%else
-%description devel
-%endif
 OpenSAML is an open source implementation of the OASIS Security Assertion
 Markup Language Specification. It contains a set of open source C++ classes
 that support the SAML 1.0, 1.1, and 2.0 specifications.
 
 This package includes files needed for development with OpenSAML.
 
+%package -n @PACKAGE_NAME@-schemas
+Summary:       OpenSAML schemas and catalog
+Group:         Development/Libraries/C and C++
+
+%description -n @PACKAGE_NAME@-schemas
+OpenSAML is an open source implementation of the OASIS Security Assertion
+Markup Language Specification. It contains a set of open source C++ classes
+that support the SAML 1.0, 1.1, and 2.0 specifications.
+
+This package includes XML schemas and related files.
 
 %prep
 %setup -q
@@ -103,43 +114,56 @@ This package includes files needed for development with OpenSAML.
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %ifnos solaris2.8 solaris2.9 solaris2.10
-%if 0%{?suse_version} > 1030
-%post -n libsaml4 -p /sbin/ldconfig
-%else
-%post -p /sbin/ldconfig
-%endif
+%post -n libsaml8 -p /sbin/ldconfig
 %endif
 
 %ifnos solaris2.8 solaris2.9 solaris2.10
-%if 0%{?suse_version} > 1030
-%postun -n libsaml4 -p /sbin/ldconfig
-%else
-%postun -p /sbin/ldconfig
-%endif
+%postun -n libsaml8 -p /sbin/ldconfig
 %endif
 
-%files
+%files -n @PACKAGE_NAME@-bin
 %defattr(-,root,root,-)
 %{_bindir}/samlsign
-%if 0%{?suse_version} > 1030
-%files -n libsaml4
+
+%files -n libsaml8
 %defattr(-,root,root,-)
-%endif
 %{_libdir}/libsaml.so.*
-%dir %{_datadir}/xml/@PACKAGE@
-%{_datadir}/xml/@PACKAGE@/*
 
-%if 0%{?suse_version} > 1030
+%files -n @PACKAGE_NAME@-schemas
+%defattr(-,root,root,-)
+%dir %{_datadir}/xml/@PACKAGE_NAME@
+%{_datadir}/xml/@PACKAGE_NAME@/*
+
 %files -n libsaml-devel
-%else
-%files devel
-%endif
 %defattr(-,root,root,-)
 %{_includedir}/*
 %{_libdir}/*.so
+%{_libdir}/pkgconfig/@PACKAGE_NAME@.pc
 %doc %{pkgdocdir}
 
 %changelog
+* Mon Mar 9 2015 Scott Cantor <cantor.2@osu.edu> - 2.5.4-1
+- Require Xerces 3.1 even on older platforms
+- Switch to bz2 source to avoid future SuSE issues
+
+* Tue May 13 2014 Ian Young <ian@iay.org.uk> - 2.5.3-1.2
+- Update package dependencies for RHEL/CentOS 7
+- Fixed bogus dates in changelog
+
+* Wed Dec 14 2011 Scott Cantor  <cantor.2@osu.edu>  - 2.5-1
+- Update lib package number.
+- Add boost-devel dependency.
+
+* Tue Oct 26 2010  Scott Cantor  <cantor.2@osu.edu>  - 2.4-1
+- Update version
+- Add pkg-config support.
+- Sync package names for side by side install.
+- Adjust Xerces dependency name and Group setting
+- Split out schemas into separate subpackage
+
+* Mon Aug 31 2009   Scott Cantor  <cantor.2@osu.edu>  - 2.3-1
+- Bump soname for SUSE packaging.
+
 * Sat Aug 8 2009  Scott Cantor  <cantor.2@osu.edu>  - 2.2.1-1
 - SuSE conventions
 - Stop packaging unit tester
@@ -166,5 +190,5 @@ This package includes files needed for development with OpenSAML.
 * Fri Jul 13 2007  Scott Cantor  <cantor.2@osu.edu>  - 2.0-2
 - Second alpha.
 
-* Sun Apr 16 2007  Scott Cantor  <cantor.2@osu.edu>  - 2.0-1
+* Mon Apr 16 2007  Scott Cantor  <cantor.2@osu.edu>  - 2.0-1
 - First SPEC file for 2.0.