Add ucrt64 target
This commit is contained in:
parent
aed204136e
commit
823efa4f9c
@ -1,8 +1,9 @@
|
||||
%global run_testsuite 1
|
||||
%global mingw_build_ucrt64 1
|
||||
|
||||
Name: mingw-binutils
|
||||
Version: 2.37
|
||||
Release: 4%{?dist}
|
||||
Release: 5%{?dist}
|
||||
Summary: Cross-compiled version of binutils for Win32 and Win64 environments
|
||||
|
||||
License: GPLv2+ and LGPLv2+ and GPLv3+ and LGPLv3+
|
||||
@ -129,8 +130,9 @@ BuildRequires: flex
|
||||
BuildRequires: bison
|
||||
BuildRequires: texinfo
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: mingw32-filesystem >= 102
|
||||
BuildRequires: mingw64-filesystem >= 102
|
||||
BuildRequires: mingw32-filesystem >= 133
|
||||
BuildRequires: mingw64-filesystem >= 133
|
||||
BuildRequires: ucrt64-filesystem >= 133
|
||||
%if %{run_testsuite}
|
||||
BuildRequires: dejagnu
|
||||
BuildRequires: sharutils
|
||||
@ -171,6 +173,17 @@ Requires: mingw64-filesystem >= 95
|
||||
Cross compiled binutils (utilities like 'strip', 'as', 'ld') which
|
||||
understand Windows executables and DLLs.
|
||||
|
||||
%package -n ucrt64-binutils
|
||||
Summary: Cross-compiled version of binutils for the Win64 environment
|
||||
Requires: mingw-binutils-generic = %{version}-%{release}
|
||||
|
||||
# NB: This must be left in.
|
||||
Requires: ucrt64-filesystem >= 133
|
||||
|
||||
%description -n ucrt64-binutils
|
||||
Cross compiled binutils (utilities like 'strip', 'as', 'ld') which
|
||||
understand Windows executables and DLLs.
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n binutils-%{version}
|
||||
@ -222,6 +235,24 @@ CFLAGS="%{optflags}" \
|
||||
%make_build
|
||||
popd
|
||||
|
||||
mkdir build_ucrt64
|
||||
pushd build_ucrt64
|
||||
CFLAGS="%{optflags}" \
|
||||
../configure \
|
||||
--build=%_build --host=%_host \
|
||||
--target=%{ucrt64_target} \
|
||||
--disable-nls \
|
||||
--with-sysroot=%{ucrt64_sysroot} \
|
||||
--prefix=%{_prefix} \
|
||||
--bindir=%{_bindir} \
|
||||
--includedir=%{_includedir} \
|
||||
--libdir=%{_libdir} \
|
||||
--mandir=%{_mandir} \
|
||||
--infodir=%{_infodir}
|
||||
|
||||
%make_build
|
||||
popd
|
||||
|
||||
# Create multilib versions for the tools strip, objdump nm, and objcopy
|
||||
mkdir build_multilib
|
||||
pushd build_multilib
|
||||
@ -229,7 +260,7 @@ CFLAGS="%{optflags}" \
|
||||
../configure \
|
||||
--build=%_build --host=%_host \
|
||||
--target=%{mingw64_target} \
|
||||
--enable-targets=%{mingw64_target},%{mingw32_target} \
|
||||
--enable-targets=%{mingw64_target},%{mingw32_target},%{ucrt64_target} \
|
||||
--disable-nls \
|
||||
--with-sysroot=%{mingw64_sysroot} \
|
||||
--prefix=%{_prefix} \
|
||||
@ -274,6 +305,20 @@ pushd build_win64
|
||||
uuencode binutils-%{mingw64_target}.tar.bz2 binutils-%{mingw64_target}.tar.bz2
|
||||
rm -f binutils-%{mingw64_target}.tar.bz2 binutils-%{mingw64_target}-*.{sum,log}
|
||||
popd
|
||||
|
||||
pushd build_ucrt64
|
||||
make -k check < /dev/null || :
|
||||
echo ====================TESTING UCRT64 =========================
|
||||
cat {gas/testsuite/gas,ld/ld,binutils/binutils}.sum
|
||||
echo ====================TESTING UCRT64 END=====================
|
||||
for file in {gas/testsuite/gas,ld/ld,binutils/binutils}.{sum,log}
|
||||
do
|
||||
ln $file binutils-%{ucrt64_target}-$(basename $file) || :
|
||||
done
|
||||
tar cjf binutils-%{ucrt64_target}.tar.bz2 binutils-%{ucrt64_target}-*.{sum,log}
|
||||
uuencode binutils-%{ucrt64_target}.tar.bz2 binutils-%{ucrt64_target}.tar.bz2
|
||||
rm -f binutils-%{ucrt64_target}.tar.bz2 binutils-%{ucrt64_target}-*.{sum,log}
|
||||
popd
|
||||
%endif
|
||||
|
||||
|
||||
@ -374,8 +419,45 @@ rm -rf %{buildroot}%{_mandir}/man1/*
|
||||
%{_prefix}/%{mingw64_target}/bin/strip
|
||||
%{_prefix}/%{mingw64_target}/lib/ldscripts
|
||||
|
||||
%files -n ucrt64-binutils
|
||||
%{_bindir}/%{ucrt64_target}-addr2line
|
||||
%{_bindir}/%{ucrt64_target}-ar
|
||||
%{_bindir}/%{ucrt64_target}-as
|
||||
%{_bindir}/%{ucrt64_target}-c++filt
|
||||
%{_bindir}/%{ucrt64_target}-dlltool
|
||||
%{_bindir}/%{ucrt64_target}-dllwrap
|
||||
%{_bindir}/%{ucrt64_target}-elfedit
|
||||
%{_bindir}/%{ucrt64_target}-gprof
|
||||
%{_bindir}/%{ucrt64_target}-ld
|
||||
%{_bindir}/%{ucrt64_target}-ld.bfd
|
||||
%{_bindir}/%{ucrt64_target}-nm
|
||||
%{_bindir}/%{ucrt64_target}-objcopy
|
||||
%{_bindir}/%{ucrt64_target}-objdump
|
||||
%{_bindir}/%{ucrt64_target}-ranlib
|
||||
%{_bindir}/%{ucrt64_target}-readelf
|
||||
%{_bindir}/%{ucrt64_target}-size
|
||||
%{_bindir}/%{ucrt64_target}-strings
|
||||
%{_bindir}/%{ucrt64_target}-strip
|
||||
%{_bindir}/%{ucrt64_target}-windmc
|
||||
%{_bindir}/%{ucrt64_target}-windres
|
||||
%{_prefix}/%{ucrt64_target}/bin/ar
|
||||
%{_prefix}/%{ucrt64_target}/bin/as
|
||||
%{_prefix}/%{ucrt64_target}/bin/dlltool
|
||||
%{_prefix}/%{ucrt64_target}/bin/ld
|
||||
%{_prefix}/%{ucrt64_target}/bin/ld.bfd
|
||||
%{_prefix}/%{ucrt64_target}/bin/nm
|
||||
%{_prefix}/%{ucrt64_target}/bin/objcopy
|
||||
%{_prefix}/%{ucrt64_target}/bin/objdump
|
||||
%{_prefix}/%{ucrt64_target}/bin/ranlib
|
||||
%{_prefix}/%{ucrt64_target}/bin/readelf
|
||||
%{_prefix}/%{ucrt64_target}/bin/strip
|
||||
%{_prefix}/%{ucrt64_target}/lib/ldscripts
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Feb 23 2022 Marc-André Lureau <marcandre.lureau@redhat.com> - 2.37-5
|
||||
- Add ucrt64 target. Related to rhbz#2055254.
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.37-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user