# # spec file for package libxslt # # Copyright (c) 2022-2023 ZhuningOS # %define libname %{name}1 %define exname libexslt0 Name: libxslt Version: 1.1.34 Release: 150400.3.3.1 Summary: XSL Transformation Library License: GPL-2.0-or-later AND MIT Group: Development/Libraries/C and C++ URL: http://xmlsoft.org/XSLT/ Source0: ftp://xmlsoft.org/libxslt/libxslt-%{version}.tar.gz Source1: ftp://xmlsoft.org/libxslt/libxslt-%{version}.tar.gz.asc Source2: %{name}.keyring Source3: xslt-config.1 Source99: baselibs.conf Patch0: %{name}-1.1.24-no-net-autobuild.patch Patch1: libxslt-config-fixes.patch Patch2: 0009-Make-generate-id-deterministic.patch Patch3: libxslt-random-seed.patch # PATCH-FIX-UPSTREAM gitlab.gnome.org/GNOME/libxslt/commit/9ae2f94df1721e002941b40665efb762aefcea1a Patch4: libxslt-Stop-using-maxParserDepth-XPath-limit.patch # PATCH-FIX-UPSTREAM gitlab.gnome.org/GNOME/libxslt/commit/77c26bad0433541f486b1e7ced44ca9979376908 Patch5: libxslt-Do-not-set-maxDepth-in-XPath-contexts.patch Patch6: Recreate-xsltproc-man-page-with-old-Docbook-styleshe.patch # PATCH-FIX-UPSTREAM bsc#1208574 CVE-2021-30560 Use after free in Blink XSLT Patch7: libxslt-CVE-2021-30560.patch BuildRequires: libgcrypt-devel BuildRequires: libgpg-error-devel BuildRequires: libtool BuildRequires: libxml2-devel >= 2.9.12 BuildRequires: pkgconfig Obsoletes: libxslt-python %description This C library allows you to transform XML files into other XML files (or HTML, text, and more) using the standard XSLT stylesheet transformation mechanism. It is based on libxml (version 2) for XML parsing, tree manipulation, and XPath support. It is written in plain C, making as few assumptions as possible and sticks closely to ANSI C/POSIX for easy embedding. It includes support for the EXSLT set of extension functions as well as some common extensions present in other XSLT engines. %package -n %{libname} Summary: XSL Transformation Library License: LGPL-2.1-or-later Group: System/Libraries %description -n %{libname} This C library allows you to transform XML files into other XML files (or HTML, text, and more) using the standard XSLT stylesheet transformation mechanism. It is based on libxml (version 2) for XML parsing, tree manipulation, and XPath support. It is written in plain C, making as few assumptions as possible and sticks closely to ANSI C/POSIX for easy embedding. It includes support for the EXSLT set of extension functions as well as some common extensions present in other XSLT engines. %package devel Summary: Development files for libxslt License: LGPL-2.1-or-later Group: Development/Libraries/C and C++ Requires: %{libname} = %{version} Requires: %{name}-tools = %{version} Requires: glibc-devel Requires: libgcrypt-devel Requires: libgpg-error-devel %description devel libxslt allows you to transform XML files into other XML files (or HTML, text, and more) using the standard XSLT stylesheet transformation mechanism. This subpackage contains the header files for developing applications that want to make use of the XSLT libraries. %package tools Summary: Extended Stylesheet Language (XSL) Transformation utilities License: GPL-2.0-or-later AND MIT Group: Development/Tools/Other Provides: %{name} = %{version} Provides: xsltproc = %{version} %description tools This package contains xsltproc, a command line interface to the XSLT engine. xtend the %prep %setup -q %patch0 %patch1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %build autoreconf -fvi %configure \ --disable-static \ --without-python \ --disable-silent-rules make %{?_smp_mflags} %check make %{?_smp_mflags} check %install %make_install # Unwanted doc stuff rm -fr %{buildroot}%{_datadir}/doc # the manual page is required install -D -m0644 %{SOURCE3} %{buildroot}%{_mandir}/man1/xslt-config.1 #kill all "la" files find %{buildroot} -type f -name "*.la" -delete -print %post -n %{libname} -p /sbin/ldconfig %postun -n %{libname} -p /sbin/ldconfig %files -n %{libname} %{_libdir}/libxslt.so.* %{_libdir}/libexslt.so.* %files tools %license COPYING* Copyright %doc AUTHORS NEWS README TODO FEATURES %{_bindir}/xsltproc %{_mandir}/man1/xsltproc.1%{?ext_man} %files devel %{_libdir}/libxslt.so %{_libdir}/libexslt.so %{_libdir}/*.sh %{_libdir}/pkgconfig/libxslt.pc %{_libdir}/pkgconfig/libexslt.pc %{_includedir}/* %{_datadir}/aclocal/* %{_bindir}/xslt-config %{_mandir}/man1/xslt-config.1%{?ext_man} %{_mandir}/man3/* %doc doc/*.html doc/html doc/tutorial doc/*.gif %changelog