diff --git a/.gitignore b/.gitignore index 4f2fc7f..08f7661 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,11 @@ uriparser-0.7.5.tar.gz /uriparser-0.9.2.tar.bz2 /uriparser-0.9.3.tar.bz2 /uriparser-0.9.4.tar.bz2 +/uriparser-0.9.5.tar.bz2 +/uriparser-0.9.6.tar.bz2 +/uriparser-0.9.7.tar.bz2 +/uriparser-0.9.8.tar.bz2 +/uriparser-0.9.9.tar.bz2 +/uriparser-1.0.0.tar.bz2 +/uriparser-1.0.1.tar.bz2 +/uriparser-1.0.2.tar.bz2 diff --git a/sources b/sources index 475a220..1622297 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (uriparser-0.9.4.tar.bz2) = c5e671ce2589aacd2c562e66facbee9e1cad3101e840f40b7ebdb917fa669e0c3ae7ed75623692f601655c0b82c10bcfe3086ad628beac8f965e613228e67ecd +SHA512 (uriparser-1.0.2.tar.bz2) = 23cf062e10b70e3cababbbb52e20a7e3ca17ae2cba21125ab0587a3dbee562d12d727703567ce14cba90151712f2c4c9e911eda92245292ea3a1138f88dd09fd diff --git a/uriparser.spec b/uriparser.spec index 58a594e..86fc7ee 100644 --- a/uriparser.spec +++ b/uriparser.spec @@ -1,17 +1,22 @@ -%undefine __cmake_in_source_build +%if 0%{?fedora} || 0%{?epel} >= 9 +%bcond_without mingw +%else +%bcond_with mingw +%endif Name: uriparser -Version: 0.9.4 +Version: 1.0.2 Release: 2%{?dist} Summary: URI parsing library - RFC 3986 -License: BSD +# main license is BSD-3-Clause +# test suite is licensed under the LGPL-2.1-or-later, but it is not included in the binary RPM +# fuzzing code is licensed under the Apache-2.0 license, but it is not included in the binary RPM +# /doc/rfc* are under LicenseRef-scancode-iso-8879, LicenseRef-scancode-ietf, LicenseRef-scancode-ietf-trust but not included in RPM +License: BSD-3-Clause URL: https://uriparser.github.io/ Source0: https://github.com/%{name}/%{name}/releases/download/%{name}-%{version}/%{name}-%{version}.tar.bz2 -# Don't use -isystem, pass -fPIE when building tests -Patch0: uriparser_buildtests.patch - BuildRequires: cmake BuildRequires: doxygen BuildRequires: gcc-c++ @@ -19,6 +24,15 @@ BuildRequires: graphviz BuildRequires: gtest-devel BuildRequires: make +%if %{with mingw} +BuildRequires: mingw32-filesystem >= 95 +BuildRequires: mingw32-gcc-c++ + +BuildRequires: mingw64-filesystem >= 95 +BuildRequires: mingw64-gcc-c++ +%endif + + %description Uriparser is a strictly RFC 3986 compliant URI parsing library written in C. uriparser is cross-platform, fast, supports Unicode and is @@ -42,6 +56,27 @@ BuildArch: noarch The %{name}-doc package contains HTML documentation files for %{name}. +%if %{with mingw} +%package -n mingw32-%{name} +Summary: MinGW Windows %{name} library +BuildArch: noarch + +%description -n mingw32-%{name} +MinGW Windows %{name} library. + + +%package -n mingw64-%{name} +Summary: MinGW Windows %{name} library +BuildArch: noarch + +%description -n mingw64-%{name} +MinGW Windows %{name} library. + + +%{?mingw_debug_package} +%endif + + %prep %autosetup -p1 @@ -50,39 +85,139 @@ sed -i 's/GENERATE_QHP\ =\ yes/GENERATE_QHP\ =\ no/g' doc/Doxyfile.in %build +# Native build %cmake %cmake_build +%if %{with mingw} +# MinGW build +%mingw_cmake -DURIPARSER_BUILD_TESTS=OFF -DURIPARSER_BUILD_DOCS=OFF +%mingw_make_build +%endif + %install %cmake_install +%if %{with mingw} +%mingw_make_install +%mingw_debug_install_post +%endif %check -LD_LIBRARY_PATH=".libs" make check -C %{_vpath_builddir} - - -%ldconfig_scriptlets +%ctest %files %doc THANKS AUTHORS ChangeLog -%license COPYING +%license COPYING.BSD-3-Clause %{_bindir}/uriparse %{_libdir}/lib%{name}.so.1* -%{_libdir}/cmake/%{name}-%{version}/ %files devel %{_includedir}/%{name}/ %{_libdir}/lib%{name}.so +%{_libdir}/cmake/%{name}-%{version}/ %{_libdir}/pkgconfig/lib%{name}.pc %files doc -%license COPYING +%license COPYING.BSD-3-Clause %doc %{_docdir}/%{name}/html +%if %{with mingw} +%files -n mingw32-%{name} +%license COPYING.BSD-3-Clause +%{mingw32_bindir}/uriparse.exe +%{mingw32_bindir}/lib%{name}-1.dll +%{mingw32_includedir}/%{name}/ +%{mingw32_libdir}/lib%{name}.dll.a +%{mingw32_libdir}/pkgconfig/lib%{name}.pc +%{mingw32_libdir}/cmake/%{name}-%{version}/ + +%files -n mingw64-%{name} +%license COPYING.BSD-3-Clause +%{mingw64_bindir}/uriparse.exe +%{mingw64_includedir}/%{name}/ +%{mingw64_bindir}/lib%{name}-1.dll +%{mingw64_libdir}/lib%{name}.dll.a +%{mingw64_libdir}/pkgconfig/lib%{name}.pc +%{mingw64_libdir}/cmake/%{name}-%{version}/ +%endif + %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 1.0.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Mon May 11 2026 Sandro Mani - 1.0.2-1 +- Update to 1.0.2 + +* Thu Apr 30 2026 Sandro Mani - 1.0.1-1 +- Update to 1.0.1 + +* Sat Jan 17 2026 Fedora Release Engineering - 1.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Mon Dec 15 2025 Sandro Mani - 1.0.0-1 +- Update to 1.0.0 + +* Thu Sep 04 2025 Sandro Mani - 0.9.9-1 +- Update to 0.9.9 + +* Fri Jul 25 2025 Fedora Release Engineering - 0.9.8-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 0.9.8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sat Jul 20 2024 Fedora Release Engineering - 0.9.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sun May 05 2024 Sandro Mani - 0.9.8-1 +- Update to 0.9.8 + +* Sat Jan 27 2024 Fedora Release Engineering - 0.9.7-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Neal Gompa - 0.9.7-4 +- Move cmake files to the devel subpackage + +* Sat Jul 22 2023 Fedora Release Engineering - 0.9.7-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 0.9.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Oct 07 2022 Sandro Mani - 0.9.7-1 +- Update to 0.9.7 + +* Sat Jul 23 2022 Fedora Release Engineering - 0.9.6-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Fri Mar 25 2022 Sandro Mani - 0.9.6-5 +- Rebuild with mingw-gcc-12 + +* Thu Feb 24 2022 Sandro Mani - 0.9.6-4 +- Make mingw subpackages noarch + +* Thu Feb 24 2022 Sandro Mani - 0.9.6-1 +- Add mingw subpackages + +* Sat Jan 22 2022 Fedora Release Engineering - 0.9.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jan 07 2022 Sandro Mani - 0.9.6-1 +- Update to 0.9.6 + +* Fri Jul 23 2021 Fedora Release Engineering - 0.9.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Mar 24 2021 Sandro Mani - 0.9.5-1 +- Update to 0.9.5 + +* Wed Jan 27 2021 Fedora Release Engineering - 0.9.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jul 29 2020 Fedora Release Engineering - 0.9.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild diff --git a/uriparser_buildtests.patch b/uriparser_buildtests.patch deleted file mode 100644 index 36b4ccd..0000000 --- a/uriparser_buildtests.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -rupN uriparser-0.9.4/CMakeLists.txt uriparser-0.9.4-new/CMakeLists.txt ---- uriparser-0.9.4/CMakeLists.txt 2020-05-31 17:11:30.000000000 +0200 -+++ uriparser-0.9.4-new/CMakeLists.txt 2020-06-02 09:25:06.950566977 +0200 -@@ -271,13 +271,14 @@ if(URIPARSER_BUILD_TESTS) - ${LIBRARY_CODE_FILES} - ) - -+ set_property(TARGET testrunner PROPERTY POSITION_INDEPENDENT_CODE TRUE) - target_compile_definitions(testrunner PRIVATE URI_STATIC_BUILD) - - if(MSVC) - target_compile_definitions(testrunner PRIVATE -D_CRT_SECURE_NO_WARNINGS) - endif() - -- target_include_directories(testrunner SYSTEM PRIVATE -+ target_include_directories(testrunner PRIVATE - ${GTEST_INCLUDE_DIRS} - ) -