Packaging improvements, mostly backported from the version 1.12 RPM in

Fedora 34:
- Build API documentation with Doxygen
- Update summaries and descriptions from upstream
- Enable at least XPath tests
- Drop unused old tarball and patches from source RPM
This commit is contained in:
Benjamin Beasley 2020-12-09 12:12:11 -05:00
parent 487394949e
commit 31274e91d4
3 changed files with 69 additions and 6792 deletions

View File

@ -1,75 +0,0 @@
The STL headers in gcc-4.3 have been cleaned up, so that the headers don't drag in
unnecessary dependencies which aren't requested by the standard.
This fixes build for gcc-4.3
Lubomir Kundrak <lkundrak@redhat.com>
diff -urp xml-xalan.orig/c/src/xalanc/PlatformSupport/DirectoryEnumerator.hpp xml-xalan/c/src/xalanc/PlatformSupport/DirectoryEnumerator.hpp
--- xml-xalan.orig/c/src/xalanc/PlatformSupport/DirectoryEnumerator.hpp 2005-05-05 02:32:04.000000000 +0200
+++ xml-xalan/c/src/xalanc/PlatformSupport/DirectoryEnumerator.hpp 2008-01-04 23:15:13.000000000 +0100
@@ -31,6 +31,7 @@
#include <sys/stat.h>
#include <errno.h>
#endif
+#include <cstring>
diff -urp xml-xalan.orig/c/src/xalanc/XalanDOM/XalanDOMString.cpp xml-xalan/c/src/xalanc/XalanDOM/XalanDOMString.cpp
--- xml-xalan.orig/c/src/xalanc/XalanDOM/XalanDOMString.cpp 2005-08-08 17:25:52.000000000 +0200
+++ xml-xalan/c/src/xalanc/XalanDOM/XalanDOMString.cpp 2008-01-04 23:17:08.000000000 +0100
@@ -26,6 +26,7 @@
#include <cstdlib>
+#include <cstring>
diff -urp xml-xalan.orig/c/src/xalanc/XalanExe/XalanExe.cpp xml-xalan/c/src/xalanc/XalanExe/XalanExe.cpp
--- xml-xalan.orig/c/src/xalanc/XalanExe/XalanExe.cpp 2005-04-29 23:39:46.000000000 +0200
+++ xml-xalan/c/src/xalanc/XalanExe/XalanExe.cpp 2008-01-04 23:23:09.000000000 +0100
@@ -24,6 +24,7 @@
#else
#include <iostream>
#endif
+#include <cstring>
diff -urp xml-xalan.orig/c/src/xalanc/XMLSupport/FormatterToHTML.cpp xml-xalan/c/src/xalanc/XMLSupport/FormatterToHTML.cpp
--- xml-xalan.orig/c/src/xalanc/XMLSupport/FormatterToHTML.cpp 2005-06-30 23:52:35.000000000 +0200
+++ xml-xalan/c/src/xalanc/XMLSupport/FormatterToHTML.cpp 2008-01-04 23:23:26.000000000 +0100
@@ -26,6 +26,7 @@
#include <cassert>
+#include <cstring>
diff -urp xml-xalan.orig/c/src/xalanc/XSLT/ElemNumber.cpp xml-xalan/c/src/xalanc/XSLT/ElemNumber.cpp
--- xml-xalan.orig/c/src/xalanc/XSLT/ElemNumber.cpp 2005-07-26 22:09:17.000000000 +0200
+++ xml-xalan/c/src/xalanc/XSLT/ElemNumber.cpp 2008-01-04 23:24:01.000000000 +0100
@@ -15,6 +15,7 @@
*/
#include "ElemNumber.hpp"
+#include <cstring>
#include <xercesc/sax/AttributeList.hpp>
diff -urpxml-xalan/c/src/xalanc.orig/PlatformSupport/DoubleSupport.cpp xml-xalan/c/src/xalanc/PlatformSupport/DoubleSupport.cpp
--- xml-xalan/c/src/xalanc.orig/PlatformSupport/DoubleSupport.cpp 2010-02-12 11:11:30.000000000 +0000
+++ xml-xalan/c/src/xalanc/PlatformSupport/DoubleSupport.cpp 2010-02-12 11:12:15.000000000 +0000
@@ -19,9 +19,7 @@
#include <clocale>
#include <cmath>
-#if !defined(XALAN_NO_STD_NUMERIC_LIMITS)
-#include <limits>
-#endif
+#include <climits>
#include "DOMStringHelper.hpp"

File diff suppressed because it is too large Load Diff

View File

@ -1,85 +1,124 @@
Name: xalan-c
Version: 1.11.0
Release: 19%{?dist}
Summary: Xalan XSLT processor for C
Release: 20%{?dist}
Summary: Xalan XSLT processor for C/C++
License: ASL 2.0
URL: http://xml.apache.org/xalan-c/
Source0: http://www.us.apache.org/dist/xalan/xalan-c/sources/xalan_c-1.11-src.tar.gz
URL: https://xalan.apache.org/%{name}/
%global tag Xalan-C_%(echo '%{version}' | tr . _)
%global tar_name %{tag}
%global release_url https://github.com/apache/%{name}/archive/
Source0: %{release_url}/%{tar_name}.tar.gz
Patch0: xalan-c-1.10.0-escaping.patch
BuildRequires: make
BuildRequires: gnulib-devel
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: xerces-c-devel
%global so_version %(echo %{version} | cut -d . -f -2 | tr -d .)
%description
Xalan is an XSLT processor for transforming XML documents into HTML, text, or
other XML document types.
The Apache Xalan-C++ Project provides a library and a command line program to
transform XML documents using a stylesheet that conforms to XSLT 1.0 standards.
Xalan is a project of the Apache Software Foundation.
%package devel
Summary: Header files, libraries and development documentation for %{name}
Requires: %{name} = %{version}-%{release}
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
This package contains the header files, static libraries and development
documentation for %{name}. If you like to develop programs using %{name},
you will need to install %{name}-devel.
The %{name}-devel package contains libraries and header files for developing
applications that use %{name}.
%package doc
Summary: Documentation for Xalan XSLT processor for C
Summary: Documentation for %{name}
BuildRequires: doxygen
# Explicit BR required for EPEL8:
BuildRequires: graphviz
%description doc
Documentation for %{name}.
%prep
%setup -q -n xalan-c-1.11/c
%patch0 -p2 -b .escaping
find -type d -name CVS -print0 | xargs -0 rm -rf
chmod 644 NOTICE
%autosetup -n %{name}-%{tar_name} -p2
# Update config.guess for new architectures
cp /usr/lib/rpm/config.guess config.guess
# https://github.com/apache/xalan-c/pull/35
chmod a-x NOTICE
# Update config.guess/config.sub for new architectures (aarch64)
cp -vp \
%{_datadir}/gnulib/build-aux/config.guess \
%{_datadir}/gnulib/build-aux/config.sub \
./
%build
export XALANCROOT="${PWD}"
export XERCESROOT=%{_includedir}/xercesc/
COMMONARGS="-plinux -cgcc -xg++ -minmem"
%ifarch alpha %{power64} s390x sparc64 x86_64 aarch64
./runConfigure ${COMMONARGS} -b64 -P %{_prefix} -C --libdir="%{_libdir}" -z '%{optflags}'
%else
./runConfigure ${COMMONARGS} -b32 -P %{_prefix} -C --libdir="%{_libdir}" -z '%{optflags}'
%endif
# _smp_mflags do not work
make
./runConfigure ${COMMONARGS} -b%{__isa_bits} -P %{_prefix} -C --libdir="%{_libdir}" -z '%{optflags}'
# Parallel build does not work
%global _smp_mflags %{nil}
%make_build all tests
pushd xdocs
./make-apiDocs.sh
popd
mv -v build/docs/xalan-c build/docs/html
%install
export XALANCROOT="${PWD}"
export XERCESROOT=%{_includedir}/xercesc/
make install DESTDIR=%{buildroot}
%make_install
# Required for EPEL:
%ldconfig_scriptlets
%check
LD_LIBRARY_PATH=$PWD/lib; export LD_LIBRARY_PATH
./bin/testXPath
# ./bin/ThreadTest crashes; how inauspicious!
%files
%doc LICENSE KEYS NOTICE
%license LICENSE
%{_bindir}/Xalan
%{_libdir}/libxalan*.so.*
%{_libdir}/libxalanMsg.so.%{so_version}
%{_libdir}/libxalanMsg.so.%{so_version}.*
%{_libdir}/libxalan-c.so.%{so_version}
%{_libdir}/libxalan-c.so.%{so_version}.*
%files devel
%{_libdir}/libxalan*.so
%{_libdir}/libxalanMsg.so
%{_libdir}/libxalan-c.so
%{_includedir}/xalanc/
%files doc
%doc readme.html xdocs samples
%license LICENSE
%doc KEYS
%doc NOTICE
%doc README
%doc readme.html
%doc samples
%doc build/docs/html
%changelog
* Wed Dec 9 2020 Benjamin A. Beasley <code@musicinmybrain.net> - 1.11.0-20
- Build API documentation with Doxygen
- Update summaries and descriptions from upstream
- Enable at least the XPath tests
- Drop unused old tarball and patches from source RPM
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.0-19
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild