336a062
Name: xsd
107a782
Version: 4.1.0
a24e356
Release: 0.7.a11%{?dist}
336a062
Summary: W3C XML schema to C++ data binding compiler
3238aca
# Exceptions permit otherwise GPLv2 incompatible combination with ASL 2.0
336a062
License: GPLv2 with exceptions and ASL 2.0  
107a782
URL: https://www.codesynthesis.com/products/xsd/
107a782
Source0: https://codesynthesis.com/~boris/tmp/xsd/%{version}.a11/xsd-%{version}.a11+dep.tar.bz2
90def86
ae575a9
# Sent suggestion to upstream via e-mail 20090707
47aa94d
# http://anonscm.debian.org/cgit/collab-maint/xsd.git/tree/debian/patches/0001-xsd_xsdcxx-rename.patch
107a782
Patch0: %{name}-%{version}-xsdcxx-rename.patch
3238aca
b22228c
# Remove tests for character reference values unsupported by Xerces-C++ 3.2
b22228c
# https://anonscm.debian.org/cgit/collab-maint/xsd.git/diff/debian/patches/0110-xerces-c3.2.patch?id=442e98604d4158dae11056c4f94aaa655cb480fa
107a782
Patch1: %{name}-xerces_3-2.patch
b22228c
ebfb97e
BuildRequires: make
5333859
BuildRequires: m4, xerces-c-devel, libcutl-devel, gcc-c++
096a19a
096a19a
%if 0%{?rhel} >= 8 || 0%{?fedora}
096a19a
BuildRequires: boost-devel
096a19a
%else
90def86
BuildRequires: boost148-devel
4575521
Requires: boost148%{?_isa}
90def86
%endif
90def86
3238aca
%description
3238aca
CodeSynthesis XSD is an open-source, cross-platform W3C XML Schema to
3238aca
C++ data binding compiler. Provided with an XML instance specification
3238aca
(XML Schema), it generates C++ classes that represent the given
3238aca
vocabulary as well as parsing and serialization code.
3238aca
You can then access the data stored in XML using types and functions
3238aca
that semantically correspond to your application domain rather than
3238aca
dealing with intricacies of reading and writing XML.
3238aca
90def86
%package   doc
90def86
BuildArch: noarch
107a782
BuildRequires: ghostscript
90def86
Summary:   API documentation files for %{name}
3238aca
3238aca
%description    doc
3238aca
This package contains API documentation for %{name}.
3238aca
3238aca
%prep
107a782
%autosetup -p0 -n xsd-%{version}.a11+dep
3238aca
90def86
##Unbundle libcutl
90def86
rm -rf libcutl
3238aca
3238aca
%build
107a782
%if 0%{?rhel} < 7
90def86
%{!?__global_ldflags: %global __global_ldflags -Wl,-z,relro}
ae575a9
%endif
5f201fa
%make_build verbose=1 CXX=g++ CC=gcc CXXFLAGS="$RPM_OPT_FLAGS -std=c++14 -fPIC -pie -Wl,-z,now" LDFLAGS="%{__global_ldflags} -fPIC -pie -Wl,-z,now" BOOST_LINK_SYSTEM=y EXTERNAL_LIBCUTL=y
3238aca
3238aca
%install
6ed4f90
rm -rf apidocdir
6ed4f90
4575521
%make_install LDFLAGS="%{__global_ldflags}" install_prefix=$RPM_BUILD_ROOT%{_prefix} \
90def86
 install_bin_dir=$RPM_BUILD_ROOT%{_bindir} install_man_dir=$RPM_BUILD_ROOT%{_mandir} EXTERNAL_LIBCUTL=y BOOST_LINK_SYSTEM=y
3238aca
3238aca
# Split API documentation to -doc subpackage.
90def86
mkdir -p apidocdir
3238aca
mv $RPM_BUILD_ROOT%{_datadir}/doc/xsd/*.{xhtml,css} apidocdir/
3238aca
mv $RPM_BUILD_ROOT%{_datadir}/doc/xsd/cxx/ apidocdir/
3238aca
mv $RPM_BUILD_ROOT%{_datadir}/doc/xsd/ docdir/
3238aca
3238aca
# Convert to utf-8.
3238aca
for file in docdir/NEWS; do
3238aca
    mv $file timestamp
3238aca
    iconv -f ISO-8859-1 -t UTF-8 -o $file timestamp
3238aca
    touch -r timestamp $file
3238aca
done
3238aca
3238aca
# Rename binary to xsdcxx to avoid conflicting with mono-web package.
ae575a9
# Sent suggestion to upstream via e-mail 20090707
ae575a9
# they will consider renaming in 4.0.0
3238aca
mv $RPM_BUILD_ROOT%{_bindir}/xsd $RPM_BUILD_ROOT%{_bindir}/xsdcxx
3238aca
mv $RPM_BUILD_ROOT%{_mandir}/man1/xsd.1 $RPM_BUILD_ROOT%{_mandir}/man1/xsdcxx.1
3238aca
3238aca
# Remove duplicate docs.
3238aca
rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libxsd
3238aca
3238aca
# Remove Microsoft Visual C++ compiler helper files.
3238aca
rm -rf $RPM_BUILD_ROOT%{_includedir}/xsd/cxx/compilers
3238aca
6ed4f90
# Remove redundant PostScript files that rpmlint grunts about not being UTF8
6ed4f90
# See: https://bugzilla.redhat.com/show_bug.cgi?id=502024#c27
6ed4f90
# for Boris Kolpackov's explanation about those
6ed4f90
find apidocdir -name "*.ps" | xargs rm -f
6ed4f90
# Remove other unwanted crap
6ed4f90
find apidocdir -name "*.doxygen" \
6ed4f90
            -o -name "makefile" \
6ed4f90
            -o -name "*.html2ps" | xargs rm -f
3238aca
90def86
##Test failed on EPEL6 due to "bad" xerces-c
90def86
##http://codesynthesis.com/pipermail/xsd-users/2015-October/004696.html
336a062
##https://bugzilla.redhat.com/show_bug.cgi?id=1270978
336a062
%if 0%{?fedora} || 0%{?rhel} >= 7
90def86
%check
90def86
make -j 1 test EXTERNAL_LIBCUTL=y BOOST_LINK_SYSTEM=y
90def86
%endif
3238aca
3238aca
%files
90def86
%doc docdir/README docdir/NEWS docdir/FLOSSE
90def86
%license docdir/GPLv2 docdir/LICENSE
3238aca
%{_bindir}/xsdcxx
3238aca
%{_mandir}/man1/xsdcxx.1*
dfec486
%{_includedir}/xsd/
3238aca
3238aca
%files doc
90def86
%doc docdir/README docdir/NEWS docdir/FLOSSE
90def86
%license docdir/GPLv2 docdir/LICENSE
3238aca
%doc apidocdir/*
3238aca
3238aca
%changelog
a24e356
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-0.7.a11
a24e356
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
a24e356
9cf2ce7
* Thu Jan 28 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-0.6.a11
9cf2ce7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
9cf2ce7
5f201fa
* Wed Jul 29 2020 Jeff Law <law@redhat.com> - 4.1.0-0.5.a11
5f201fa
- Force C++14 as this code is not C++17 ready
5f201fa
e1b10a0
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-0.4.a11
e1b10a0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
e1b10a0
ad5162f
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-0.3.a11
ad5162f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
ad5162f
25d3267
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-0.2.a11
25d3267
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
25d3267
107a782
* Fri Feb 15 2019 Antonio Trande <sagitter@fedoraproject.org> - 4.1.0-0.1.a11
107a782
- Pre-release 4.1.0.a11
107a782
5f7c286
* Thu Feb 07 2019 Antonio Trande <sagitter@fedoraproject.org> - 4.0.0-27
5f7c286
- Fix BR required for rhel8
5f7c286
214dc79
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-26
214dc79
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
214dc79
4575521
* Sat Nov 03 2018 Antonio Trande <sagitter@fedoraproject.org> - 4.0.0-25
4575521
- Some minor changes
4575521
5222d50
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-24
5222d50
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
5222d50
5333859
* Thu Feb 22 2018 Antonio Trande <sagitter@fedoraproject.org> - 4.0.0-23
5333859
- Add gcc-c++ BR
5333859
b22228c
* Fri Feb 16 2018 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-22
b22228c
- Patched for xerces-c-3.2 (patch from Debian)
b22228c
b13b4e4
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-21
b13b4e4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
b13b4e4
6635258
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-20
6635258
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
6635258
165cbf3
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-19
165cbf3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
165cbf3
19d8582
* Tue Jul 18 2017 Jonathan Wakely <jwakely@redhat.com> - 4.0.0-18
19d8582
- Rebuilt for Boost 1.64
19d8582
c0dba4f
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.0-17
c0dba4f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
c0dba4f
bdc9532
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-16
bdc9532
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
bdc9532
9fa9759
* Sun Jun 26 2016 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-15
9fa9759
- Remove conditional macro for the Patch1 (bz#1350231)
9fa9759
ec46203
* Fri Feb 05 2016 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-14
ec46203
- Set flags for hardened builds
ec46203
c822d05
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-13
c822d05
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
c822d05
037c6a4
* Mon Jan 18 2016 Jonathan Wakely <jwakely@redhat.com> - 4.0.0-12
037c6a4
- Rebuilt for Boost 1.60
037c6a4
7fdd8a1
* Wed Nov 25 2015 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-11
7fdd8a1
- Rebuild for libcutl
7fdd8a1
336a062
* Fri Nov 06 2015 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-10
336a062
- Add patch to fix bug in C++/Parser Expat Support in EPEL builds
336a062
dfec486
* Mon Oct 12 2015 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-9
dfec486
- Header files included again in main package
dfec486
90def86
* Mon Oct 12 2015 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-8
90def86
- Requires explicitely Boost148 in EPEL
90def86
- Tests not performed in EPEL6
90def86
90def86
* Thu Oct 08 2015 Antonio Trande <sagitterATfedoraproject.org> - 4.0.0-7
90def86
- Used %%license tag
90def86
- libcutl libraries unbundled
90def86
- Header files packaged apart
90def86
- Made tests
90def86
ebea1e9
* Thu Aug 27 2015 Jonathan Wakely <jwakely@redhat.com> - 4.0.0-6
ebea1e9
- Rebuilt for Boost 1.59
ebea1e9
a7303a0
* Wed Jul 29 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.0-5
a7303a0
- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159
a7303a0
4d46c2e
* Wed Jul 22 2015 David Tardon <dtardon@redhat.com> - 4.0.0-4
4d46c2e
- rebuild for Boost 1.58
4d46c2e
e1fb816
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.0-3
e1fb816
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
e1fb816
968d4b4
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 4.0.0-2
968d4b4
- Rebuilt for GCC 5 C++11 ABI change
968d4b4
47aa94d
* Sat Mar 28 2015 Kalev Lember <kalevlember@gmail.com> - 4.0.0-1
47aa94d
- Update to 4.0.0
47aa94d
Rex Dieter 9c89509
* Wed Feb 25 2015 Rex Dieter <rdieter@fedoraproject.org> 3.3.0-23
Rex Dieter 9c89509
- rebuild (gcc5)
Rex Dieter 9c89509
Petr Machata 64d6f34
* Tue Jan 27 2015 Petr Machata <pmachata@redhat.com> - 3.3.0-22
Petr Machata 64d6f34
- Rebuild for boost 1.57.0
Petr Machata 64d6f34
a050b70
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-21
a050b70
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
a050b70
1c36376
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-20
1c36376
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
1c36376
6b40f98
* Thu Jun  5 2014 Peter Robinson <pbrobinson@fedoraproject.org> 3.3.0-19
6b40f98
- Update config.* to fix FTBFS on aarch64/ppc64le
6b40f98
Petr Machata a0593b2
* Thu May 22 2014 Petr Machata <pmachata@redhat.com> - 3.3.0-18
Petr Machata a0593b2
- Rebuild for boost 1.55.0
Petr Machata a0593b2
72bbf3d
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-17
72bbf3d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
72bbf3d
Petr Machata 1aa019e
* Sat Jul 27 2013 pmachata@redhat.com - 3.3.0-16
Petr Machata 1aa019e
- Rebuild for boost 1.54.0
Petr Machata 1aa019e
8b3aa4b
* Sat Feb 09 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 3.3.0-15
8b3aa4b
- Rebuild for Boost-1.53.0
8b3aa4b
9f1f11c
* Sun Aug 12 2012 Rex Dieter <rdieter@fedoraproject.org> 3.3.0-14
a104297
- xsd-3.3.0-2+dep 
9f1f11c
fd62293
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-13
fd62293
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
fd62293
d9bd0cd
* Wed Apr 18 2012 Kalev Lember <kalevlember@gmail.com> - 3.3.0-12
d9bd0cd
- Update to xsd-3.3.0-1+dep upstream tarball, which includes the gcc 4.7 patch
d9bd0cd
c8cdc7a
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-11
c8cdc7a
- Rebuilt for c++ ABI breakage
c8cdc7a
a430663
* Thu Jan 19 2012 Ralf Corsépius <corsepiu@fedoraproject.org> - 3.3.0-10
a430663
- Add xsd-3.3.0-gcc47.patch (Fix mass rebuild FTBFS).
a430663
97f29f9
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-9
97f29f9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
97f29f9
Thomas Spura 4a9895f
* Sat Nov 26 2011 Thomas Spura <tomspur@fedoraproject.org> - 3.3.0-8
Thomas Spura 4a9895f
- rebuild for https://fedoraproject.org/wiki/Features/F17Boost148
Thomas Spura 4a9895f
27c9672
* Fri Jul 22 2011 Antti Andreimann <Antti.Andreimann@mail.ee> - 3.3.0-7
27c9672
- Rebuilt for boost 1.47.0
27c9672
Kalev Lember 7d52fd1
* Wed Apr 06 2011 Kalev Lember <kalev@smartlink.ee> - 3.3.0-6
Kalev Lember 7d52fd1
- Rebuilt for boost 1.46.1 soname bump
Kalev Lember 7d52fd1
Kalev Lember f9e2432
* Thu Mar 10 2011 Kalev Lember <kalev@smartlink.ee> - 3.3.0-5
Kalev Lember f9e2432
- Rebuilt with xerces-c 3.1
Kalev Lember f9e2432
e694fc6
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.0-4
e694fc6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
e694fc6
dc46efc
* Sun Feb 06 2011 Thomas Spura <tomspur@fedoraproject.org> - 3.3.0-3
aded2b5
- rebuild for new boost (thanks Petr Machata for the fix)
dc46efc
Antti Andreimann 1f97436
* Mon Aug 02 2010 Antti Andreimann <Antti.Andreimann@mail.ee> 3.3.0-2
Antti Andreimann 1f97436
- Rebuild for new boost
Antti Andreimann 1f97436
ae575a9
* Sun Jun 20 2010 Antti Andreimann <Antti.Andreimann@mail.ee> 3.3.0-1
ae575a9
- Updated to version 3.3.0
ae575a9
- Implemented a workaround for gcc segfault on el5
ae575a9
Caolan McNamara b5a83f4
* Sun Feb 07 2010 Caolán McNamara <caolanm@redhat.com> - 3.2.0-7
Caolan McNamara b5a83f4
- Rebuild for xerces soname bump
Caolan McNamara b5a83f4
c2c59ef
* Fri Jan 22 2010 Rahul Sundaram <sundaram@fedoraproject.org> - 3.2.0-6
c2c59ef
- Rebuild for Boost soname bump
c2c59ef
2668911
* Mon Jul 27 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.0-5
2668911
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
2668911
6ed4f90
* Tue Jul 07 2009 Antti Andreimann <Antti.Andreimann@mail.ee> 3.2.0-4
6ed4f90
- Removed redundant PostScript files from the doc package
6ed4f90
3238aca
* Mon Jul 06 2009 Antti Andreimann <Antti.Andreimann@mail.ee> 3.2.0-3
3238aca
- Added ACE homepage to SPEC file comments
3238aca
- Added verbose=1 to MAKEFLAGS so compiler flags could be
3238aca
  verified from build logs.
3238aca
90def86
* Sat Jul 04 2009 Antti Andreimann <Antti.Andreimann@mail.ee> 3.2.0-2
3238aca
- Changed License tag to clarify which exceptions we are talking about
3238aca
3238aca
* Wed May 20 2009 Antti Andreimann <Antti.Andreimann@mail.ee> 3.2.0-1
3238aca
- Initial RPM release.