From 25ca5ceefcea1d3edce38f9701e50421a372465e Mon Sep 17 00:00:00 2001 From: Dmitry Samoylik Date: Tue, 24 Dec 2024 12:08:17 +0300 Subject: [PATCH] import freexl-2.0.0-11.el10 --- .freexl.metadata | 1 + .gitignore | 1 + SOURCES/freexl-2.0.0-iconv-mingw32.patch | 12 + SPECS/freexl.spec | 416 +++++++++++++++++++++++ 4 files changed, 430 insertions(+) create mode 100644 .freexl.metadata create mode 100644 .gitignore create mode 100644 SOURCES/freexl-2.0.0-iconv-mingw32.patch create mode 100644 SPECS/freexl.spec diff --git a/.freexl.metadata b/.freexl.metadata new file mode 100644 index 0000000..d3bbb43 --- /dev/null +++ b/.freexl.metadata @@ -0,0 +1 @@ +43d218aa6e5c5ac65354e51a5ed572f700911ff1 SOURCES/freexl-2.0.0.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5a92d58 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/freexl-2.0.0.tar.gz diff --git a/SOURCES/freexl-2.0.0-iconv-mingw32.patch b/SOURCES/freexl-2.0.0-iconv-mingw32.patch new file mode 100644 index 0000000..638c383 --- /dev/null +++ b/SOURCES/freexl-2.0.0-iconv-mingw32.patch @@ -0,0 +1,12 @@ +diff -Naur freexl-2.0.0-original/src/freexl.c freexl-2.0.0/src/freexl.c +--- freexl-2.0.0-original/src/freexl.c 2023-07-25 01:12:29.000000000 -0400 ++++ freexl-2.0.0/src/freexl.c 2024-03-20 11:56:46.869889811 -0400 +@@ -280,7 +280,7 @@ + { + /* converting a string to UTF8 */ + char *utf8buf = 0; +-#if !defined(__MINGW32__) && defined(_WIN32) ++#if defined(_WIN32) + const char *pBuf; + #else + char *pBuf; diff --git a/SPECS/freexl.spec b/SPECS/freexl.spec new file mode 100644 index 0000000..cb35786 --- /dev/null +++ b/SPECS/freexl.spec @@ -0,0 +1,416 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.3) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 11; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +# Doxygen HTML help is not suitable for packaging due to a minified JavaScript +# bundle inserted by Doxygen itself. See discussion at +# https://bugzilla.redhat.com/show_bug.cgi?id=2006555. +# +# We can enable the Doxygen PDF documentation as a substitute. +%bcond doc_pdf 1 + +%bcond autoreconf 1 + +# Not (yet) in EPEL10: +# mingw{32,64}-{expat,libcharset,minizip} +%bcond mingw %{expr:!0%{?el10}} + +Name: freexl +Version: 2.0.0 +%global so_version 1 +Release: %autorelease +Summary: Library to extract data from within an Excel spreadsheet + +# The entire source is triply-licensed as (MPL-1.1 OR GPL-2.0-or-later OR +# LGPL-2.1-or-later), except for some build-system files that do not contribute +# to the license of the binary RPMs: +# - aclocal.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4, and +# m4/lt~obsolete.m4 are FSFULLR +# - compile, config.guess, config.sub, depcomp, ltmain.sh, missing, and +# test-driver are GPL-2.0-or-later +# - configure is FSFUL, or, more likely, +# (FSFUL AND (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later)) +# - install-sh is X11 +# - m4/libtool.m4 is (FSFULLR AND GPL-2.0-or-later) +License: MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later +URL: https://www.gaia-gis.it/fossil/freexl/index +Source: https://www.gaia-gis.it/gaia-sins/freexl-%{version}.tar.gz + +# Fix incompatible pointer type in the mingw32 build +# +# Freexl calls iconv with incompatible pointer type in mingw32 builds +# https://www.gaia-gis.it/fossil/freexl/tktview/79f730a917ae90257a88acb974490daf115c2192 +Patch: freexl-2.0.0-iconv-mingw32.patch + +%if %{with autoreconf} +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: libtool +%endif + +BuildRequires: expat-devel +BuildRequires: gcc +BuildRequires: make +BuildRequires: minizip-ng-compat-devel + +%if %{with mingw} +BuildRequires: mingw32-filesystem +BuildRequires: mingw32-gcc +BuildRequires: mingw32-expat +BuildRequires: mingw32-libcharset +BuildRequires: mingw32-minizip +BuildRequires: mingw32-win-iconv + +BuildRequires: mingw64-filesystem +BuildRequires: mingw64-gcc +BuildRequires: mingw64-expat +BuildRequires: mingw64-libcharset +BuildRequires: mingw64-minizip +BuildRequires: mingw64-win-iconv +%endif + + +%description +FreeXL is a library to extract valid data from within spreadsheets. + +Design goals: + • to be simple and lightweight + • to be stable, robust and efficient + • to be easily and universally portable + • completely ignoring any GUI-related oddity + + +%package doc +Summary: Documentation and examples for FreeXL +BuildArch: noarch +%if %{with doc_pdf} +BuildRequires: doxygen +BuildRequires: doxygen-latex +%endif + +%description doc +%{summary}. + + +%package devel +Summary: Development Libraries for FreeXL +Requires: freexl%{?_isa} = %{version}-%{release} + +%description devel +The freexl-devel package contains libraries and header files for +developing applications that use freexl. + + +%if %{with mingw} +%package -n mingw32-%{name} +Summary: MinGW Windows freexl library +BuildArch: noarch + +%description -n mingw32-%{name} +MinGW Windows freexl library. + + +%package -n mingw64-%{name} +Summary: MinGW Windows freexl library +BuildArch: noarch + +%description -n mingw64-%{name} +MinGW Windows freexl library. + + +%{?mingw_debug_package} +%endif + + +%prep +%autosetup -p1 + +# We want to install a “clean” version of the examples +mkdir -p clean +cp -rp examples clean/ +# Automake files don’t work without a configure.ac; don’t bother installing +# them. +rm -vf clean/examples/Makefile.* + +%if %{with doc_pdf} +# We enable the Doxygen PDF documentation as a substitute. We must enable +# GENERATE_LATEX and LATEX_BATCHMODE; the rest are precautionary and should +# already be set as we like them. We also disable GENERATE_HTML, since we will +# not use it. +sed -r -i \ + -e "s/^([[:blank:]]*(GENERATE_LATEX|LATEX_BATCHMODE|USE_PDFLATEX|\ +PDF_HYPERLINKS)[[:blank:]]*=[[:blank:]]*)NO[[:blank:]]*/\1YES/" \ + -e "s/^([[:blank:]]*(LATEX_TIMESTAMP|GENERATE_HTML)\ +[[:blank:]]*=[[:blank:]]*)YES[[:blank:]]*/\1NO/" \ + Doxyfile.in +%endif + +# Prepare native build dir with testdata +mkdir build_native +cp -a tests build_native + + +%build +%if %{with autoreconf} +autoreconf --force --install --verbose +%endif + +pushd build_native +%global _configure ../configure +%configure --disable-static +%make_build +popd + +%if %{with mingw} +%mingw_configure --disable-static +%mingw_make_build +%endif + +%if %{with doc_pdf} +pushd build_native +doxygen Doxyfile +%make_build -C latex +mv latex/refman.pdf latex/FreeXL.pdf +popd +%endif + + +%install +%make_install -C build_native + +%if %{with mingw} +%mingw_make_install +%mingw_debug_install_post +%endif + +# Delete undesired libtool archives +find '%{buildroot}' -type f -name '*.la' -print -delete + + +%check +%make_build -C build_native check + + +%files +%license COPYING +%{_libdir}/libfreexl.so.%{so_version}{,.*} + +%files devel +%{_includedir}/freexl.h +%{_libdir}/libfreexl.so +%{_libdir}/pkgconfig/freexl.pc + +%files doc +%license COPYING +%doc AUTHORS +%doc README +%doc clean/examples/ +%if %{with doc_pdf} +%doc build_native/latex/FreeXL.pdf +%endif + +%if %{with mingw} +%files -n mingw32-%{name} +%license COPYING +%{mingw32_bindir}/libfreexl-1.dll +%{mingw32_includedir}/freexl.h +%{mingw32_libdir}/libfreexl.dll.a +%{mingw32_libdir}/pkgconfig/freexl.pc + +%files -n mingw64-%{name} +%license COPYING +%{mingw64_bindir}/libfreexl-1.dll +%{mingw64_includedir}/freexl.h +%{mingw64_libdir}/libfreexl.dll.a +%{mingw64_libdir}/pkgconfig/freexl.pc +%endif + + +%changelog +* Tue Dec 24 2024 Dmitriy Samoylik - 2.0.0-11 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Tue Oct 15 2024 Benjamin A. Beasley - 2.0.0-11 +- Disable MingGW subpackages for EPEL10 + +* Wed Jul 17 2024 Fedora Release Engineering - 2.0.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Mar 20 2024 Benjamin A. Beasley - 2.0.0-7 +- Fix mingw32 build error due to incompatible pointer type + +* Wed Jan 24 2024 Fedora Release Engineering - 2.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 2.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Dec 04 2023 Lukas Javorsky - 2.0.0-3 +- Rebuilt for minizip-ng transition Fedora change + +* Sat Aug 05 2023 Sandro Mani - 2.0.0-2 +- Add mingw build + +* Fri Aug 04 2023 Sandro Mani - 2.0.0-1 +- Update to 2.0.0 + +* Wed Jul 19 2023 Fedora Release Engineering - 1.0.6-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jun 17 2023 Benjamin A. Beasley - 1.0.6-24 +- Use new (rpm 4.17.1+) bcond style + +* Sun Jan 22 2023 Benjamin A. Beasley - 1.0.6-21 +- Revert "Work around missing dependency on texlive-wasy" + +* Thu Jan 19 2023 Benjamin A. Beasley - 1.0.6-20 +- Work around missing dependency on texlive-wasy + +* Thu Jan 19 2023 Fedora Release Engineering - 1.0.6-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Mon Aug 01 2022 Benjamin A. Beasley - 1.0.6-18 +- Update License field to SPDX + +* Thu Jul 21 2022 Fedora Release Engineering - 1.0.6-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 1.0.6-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Dec 16 2021 Benjamin A. Beasley - 1.0.6-4 +- Modernize and clean up the spec file +- Make it harder to miss any .so version change +- Properly install the license file +- Remove an obsolete sed-patch +- Move documentation and examples to a -doc subpackage +- Build PDF instead of HTML documentation + +* Wed Jul 21 2021 Fedora Release Engineering - 1.0.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 1.0.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sun Aug 02 2020 Volker Fröhlich - 1.0.6-1 +- New upstream release + +* Mon Jul 27 2020 Fedora Release Engineering - 1.0.5-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jan 28 2020 Fedora Release Engineering - 1.0.5-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jul 25 2019 Fedora Release Engineering - 1.0.5-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 1.0.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 1.0.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Feb 22 2018 Volker Fröhlich - 1.0.5-1 +- New upstream release + +* Thu Feb 08 2018 Volker Fröhlich - 1.0.4-3 +- Remove Group keyword + +* Wed Feb 07 2018 Fedora Release Engineering - 1.0.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Sep 08 2017 Volker Fröhlich - 1.0.4-1 +- New release + +* Wed Aug 02 2017 Fedora Release Engineering - 1.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Jul 23 2017 Volker Fröhlich 1.0.3-1 +- New release + +* Fri Feb 10 2017 Fedora Release Engineering - 1.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Feb 03 2016 Fedora Release Engineering - 1.0.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Jul 28 2015 Volker Froehlich - 1.0.2-2 +- Release bump to work around the f23 build being wrongly tagged for f24 + +* Wed Jul 15 2015 Volker Fröhlich 1.0.2-1 +- New release + +* Wed Jun 17 2015 Fedora Release Engineering - 1.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun Mar 22 2015 Volker Fröhlich 1.0.1-1 +- New release + +* Fri Mar 6 2015 Volker Fröhlich 1.0.0i-1 +- New release with security fixes + +* Sat Aug 16 2014 Fedora Release Engineering - 1.0.0f-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 1.0.0f-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sat Nov 30 2013 Volker Fröhlich 1.0.0f-1 +- Drop obsolete patch for aarch64 + +* Sat Aug 03 2013 Fedora Release Engineering - 1.0.0d-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue Apr 2 2013 Volker Fröhlich 1.0.0d-4 +- Add patch for aarch64 + +* Wed Feb 13 2013 Fedora Release Engineering - 1.0.0d-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 1.0.0d-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jun 19 2012 Volker Fröhlich 1.0.0d-1 +- New upstream bugfix release + +* Fri Jan 13 2012 Volker Fröhlich 1.0.0a-3 +- Remove coverage tests and BR for lcov (fail in Rawhide) + +* Fri Jan 13 2012 Fedora Release Engineering - 1.0.0a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Sun Jan 08 2012 Volker Fröhlich 1.0.0a-1 +- Correct versioning scheme to post-release +- Correct Source and setup macro accordingly + +* Fri Nov 18 2011 Volker Fröhlich 1.0.0-0.1.a +- Move development lib symlink to devel +- Don't build static lib +- Add README +- Build with enable-gcov +- BR lcov and doxygen +- Shorten description and summary +- Use macros in Source tag +- Add check section +- Change version and release +- Correct URL +- Correct to multiple licensing scenario +- Drop defattr +- Add pkgconfig and isa macro to devel's BR +- Use upstream tarball, as file size is different +- Remove EPEL 5 specific elements + +* Fri Nov 26 2010 Peter Hopfgartber 1.0.0a-0.1 +- Initial packaging + +## END: Generated by rpmautospec