Move building of packaging files into configure.
[shibboleth/cpp-xmltooling.git] / xmltooling.spec.in
1 Name:           @PACKAGE@
2 Version:        @PACKAGE_VERSION@
3 Release:        1
4 Summary:    OpenSAML XMLTooling library
5 Group:          System Environment/Libraries
6 Vendor:         Internet2
7 License:        Apache 2.0
8 URL:            http://www.opensaml.org/
9 Source:     %{name}-%{version}.tar.gz
10 BuildRoot:      %{_tmppath}/%{name}-%{version}-root
11 %if 0%{?suse_version} > 1030
12 BuildRequires:  libXerces-c-devel >= 2.8.0
13 BuildRequires:  libxml-security-c-devel >= 1.4.0
14 %{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
15 %{!?_with_log4cpp:BuildRequires: liblog4shib-devel}
16 %else
17 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
18 BuildRequires:  xml-security-c-devel >= 1.4.0
19 %{?_with_log4cpp:BuildRequires: log4cpp-devel >= 1.0}
20 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
21 %endif
22 BuildRequires:  gcc-c++, openssl-devel, curl-devel >= 7.10.6
23 %{!?_without_doxygen:BuildRequires: doxygen}
24
25 %if "%{_vendor}" == "suse"
26 %define pkgdocdir %{_docdir}/%{name}
27 %else
28 %define pkgdocdir %{_docdir}/%{name}-%{version}
29 %endif
30
31 %description
32 The XMLTooling library contains generic XML parsing and processing
33 classes based on the Xerces-C DOM. It adds more powerful facilities
34 for declaring element- and type-specific API and implementation
35 classes to add value around the DOM, as well as signing and encryption
36 support.
37
38 %if 0%{?suse_version} > 1030
39 %package -n lib@PACKAGE@3
40 Summary:    OpenSAML XMLTooling library
41 Group:      Development/Libraries
42 Provides:   @PACKAGE@ = %{version}
43
44 %description -n lib@PACKAGE@3
45 The XMLTooling library contains generic XML parsing and processing
46 classes based on the Xerces-C DOM. It adds more powerful facilities
47 for declaring element- and type-specific API and implementation
48 classes to add value around the DOM, as well as signing and encryption
49 support.
50
51 This package contains just the shared library.
52 %endif
53
54 %if 0%{?suse_version} > 1030
55 %package -n lib@PACKAGE@-devel
56 Requires: lib@PACKAGE@3 = %version
57 %else
58 %package devel
59 Requires: %name = %version
60 %endif
61 Summary: XMLTooling development Headers
62 Group: Development/Libraries
63 %if 0%{?suse_version} > 1030
64 Requires: libXerces-c-devel >= 2.8.0
65 Requires: libxml-security-c-devel >= 1.4.0
66 %{?_with_log4cpp:Requires: liblog4cpp-devel >= 1.0}
67 %{!?_with_log4cpp:Requires: liblog4shib-devel}
68 %else
69 Requires: xerces%{?xercesver}-c-devel >= 2.8.0
70 Requires: xml-security-c-devel >= 1.4.0
71 %{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
72 %{!?_with_log4cpp:Requires: log4shib-devel}
73 %endif
74 Requires: openssl-devel, curl-devel >= 7.10.6
75
76 %if 0%{?suse_version} > 1030
77 %description -n lib@PACKAGE@-devel
78 %else
79 %description devel
80 %endif
81 The XMLTooling library contains generic XML parsing and processing
82 classes based on the Xerces-C DOM. It adds more powerful facilities
83 for declaring element- and type-specific API and implementation
84 classes to add value around the DOM, as well as signing and encryption
85 support.
86
87 This package includes files needed for development with XMLTooling.
88
89 %prep
90 %setup -q
91
92 %build
93 %configure %{?@PACKAGE@_options}
94 %{__make}
95
96 %install
97 %{__make} install DESTDIR=$RPM_BUILD_ROOT pkgdocdir=%{pkgdocdir}
98 # Don't package unit tester if present.
99 %{__rm} -f $RPM_BUILD_ROOT/%{_bindir}/@PACKAGE@test
100
101 %check
102 %{__make} check
103
104 %clean
105 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
106
107 %ifnos solaris2.8 solaris2.9 solaris2.10
108 %if 0%{?suse_version} > 1030
109 %post -n lib@PACKAGE@3 -p /sbin/ldconfig
110 %else
111 %post -p /sbin/ldconfig
112 %endif
113 %endif
114
115 %ifnos solaris2.8 solaris2.9 solaris2.10
116 %if 0%{?suse_version} > 1030
117 %postun -n lib@PACKAGE@3 -p /sbin/ldconfig
118 %else
119 %postun -p /sbin/ldconfig
120 %endif
121 %endif
122
123 %if 0%{?suse_version} > 1030
124 %files -n lib@PACKAGE@3
125 %else
126 %files
127 %endif
128 %defattr(-,root,root,-)
129 %{_libdir}/*.so.*
130 %dir %{_datadir}/xml/@PACKAGE@
131 %{_datadir}/xml/@PACKAGE@/*
132
133 %if 0%{?suse_version} > 1030
134 %files -n lib@PACKAGE@-devel
135 %else
136 %files devel
137 %endif
138 %defattr(-,root,root,-)
139 %{_includedir}/*
140 %{_libdir}/*.so
141 %doc %{pkgdocdir}
142
143 %changelog
144 * Thu Aug 6 2009  Scott Cantor  <cantor.2@osu.edu>  - 1.2.1-1
145 - SuSE conventions
146 - Stop packaging unit tester
147
148 * Wed Dec 3 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.2-1
149 - Bumping for minor update.
150 - Fixing SuSE Xerces dependency name.
151
152 * Tue Jul 1 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.1-1
153 - Bumping for minor update.
154
155 * Mon Mar 17 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.0-6
156 - Official release.
157
158 * Fri Jan 18 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.0-5
159 - Release candidate 1.
160
161 * Thu Nov 08 2007  Scott Cantor  <cantor.2@osu.edu>  - 1.0-4
162 - Second public beta.
163
164 * Thu Aug 16 2007  Scott Cantor  <cantor.2@osu.edu>  - 1.0-3
165 - First public beta.
166
167 * Fri Jul 13 2007  Scott Cantor  <cantor.2@osu.edu>  - 1.0-2
168 - Second alpha.
169
170 * Wed Apr 12 2006  Scott Cantor  <cantor.2@osu.edu>  - 1.0-1
171 - First SPEC file based on various versions in existence.