diff --git a/dtc.spec b/dtc.spec index 2e2573b..aeda78a 100644 --- a/dtc.spec +++ b/dtc.spec @@ -1,8 +1,14 @@ +%global with_mingw 0 + +%if 0%{?fedora} +%global with_mingw 1 +%endif + %undefine _auto_set_build_flags Name: dtc Version: 1.6.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Device Tree Compiler License: GPLv2+ URL: https://devicetree.org/ @@ -13,6 +19,14 @@ BuildRequires: gcc make BuildRequires: flex bison swig BuildRequires: python3-devel python3-setuptools +%if %{with_mingw} +BuildRequires: mingw32-filesystem >= 95 +BuildRequires: mingw32-gcc-c++ + +BuildRequires: mingw64-filesystem >= 95 +BuildRequires: mingw64-gcc-c++ +%endif + %description Devicetree is a data structure for describing hardware. Rather than hard coding every detail of a device into an operating system, many aspects of the hardware @@ -50,12 +64,37 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %description -n python3-libfdt This package provides python2 bindings for libfdt +%if %{with_mingw} +%package -n mingw32-libfdt +Summary: MinGW Device tree library +BuildArch: noarch + +%description -n mingw32-libfdt +libfdt is a library to process Open Firmware style device trees on various +architectures. + +%package -n mingw64-libfdt +Summary: MinGW Device tree library +BuildArch: noarch + +%description -n mingw64-libfdt +libfdt is a library to process Open Firmware style device trees on various +architectures. + +%{?mingw_debug_package} +%endif + %prep %autosetup -p1 %build %{make_build} EXTRA_CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" +%if %{with_mingw} +%mingw_meson -Dtools=false +%mingw_ninja +%endif + %install %{make_install} DESTDIR=%{buildroot} PREFIX=%{buildroot}/%{_prefix} \ LIBDIR=%{_libdir} BINDIR=%{_bindir} INCLUDEDIR=%{_includedir} @@ -63,6 +102,11 @@ This package provides python2 bindings for libfdt # we don't want ftdump and it conflicts with freetype-demos, so drop it (rhbz 797805) rm -f $RPM_BUILD_ROOT/%{_bindir}/ftdump +%if %{with_mingw} +%mingw_ninja_install +%mingw_debug_install_post +%endif + %ldconfig_scriptlets -n libfdt %files @@ -85,7 +129,26 @@ rm -f $RPM_BUILD_ROOT/%{_bindir}/ftdump %files -n python3-libfdt %{python3_sitearch}/* +%if %{with_mingw} +%files -n mingw32-libfdt +%license GPL +%{mingw32_bindir}/libfdt-1.dll +%{mingw32_includedir}/*fdt*.h +%{mingw32_libdir}/libfdt.dll.a +%{mingw32_libdir}/pkgconfig/libfdt.pc + +%files -n mingw64-libfdt +%license GPL +%{mingw64_bindir}/libfdt-1.dll +%{mingw64_includedir}/*fdt*.h +%{mingw64_libdir}/libfdt.dll.a +%{mingw64_libdir}/pkgconfig/libfdt.pc +%endif + %changelog +* Wed Sep 14 2022 Marc-André Lureau - 1.6.1-6 +- Add mingw sub-packages. Fixes rhbz#1997511 + * Thu Jul 21 2022 Fedora Release Engineering - 1.6.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild