File mingw64-cross-gcc-bootstrap.spec of Package mingw64-gcc

#
# spec file for package mingw64-cross-gcc-bootstrap
#
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%define __os_install_post %{_prefix}/lib/rpm/brp-compress %{nil}
Name:           mingw64-cross-gcc-bootstrap
Version:        9.2.0
Release:        0
Summary:        MinGW Windows cross-compiler (GCC) for C
License:        GPL-3.0-or-later
Group:          Development/Languages/C and C++
URL:            http://www.mingw.org/
Source:         ftp://ftp.gnu.org/gnu/gcc/gcc-%{version}/gcc-%{version}.tar.xz
BuildRequires:  gcc-c++
BuildRequires:  gmp-devel >= 4.2.0
BuildRequires:  mingw64-cross-binutils
BuildRequires:  mingw64-filesystem
BuildRequires:  mingw64-headers
BuildRequires:  mingw64-headers-dummy-pthread
BuildRequires:  mpc-devel >= 0.8.0
BuildRequires:  mpfr-devel >= 2.4.0
BuildRequires:  texinfo
BuildRequires:  xz
BuildRequires:  zlib-devel
#!BuildIgnore:  gcc-PIE
#!BuildIgnore:  post-build-checks
# NB: Explicit mingw64-filesystem dependency is REQUIRED here.
Requires:       mingw64-cross-binutils
Requires:       mingw64-cross-cpp-bootstrap >= %{version}
Requires:       mingw64-filesystem
Requires:       mingw64-headers
Requires:       mingw64-headers-dummy-pthread

%description
MinGW Windows cross-compiler (GCC) for C

%package -n mingw64-cross-cpp-bootstrap
Summary:        MinGW Windows cross-C Preprocessor
Group:          Development/Languages/C and C++

%description -n mingw64-cross-cpp-bootstrap
MinGW Windows cross-C Preprocessor

%prep
%setup -q -c

%build
cd gcc-%{version}

mkdir -p build
cd build

languages="c"

CC="gcc %{optflags}" \
../configure \
  --prefix=%{_prefix} \
  --bindir=%{_bindir} \
  --includedir=%{_includedir} \
  --libdir=%{_libdir} \
  --libexecdir=%{_libexecdir} \
  --mandir=%{_mandir} \
  --infodir=%{_infodir} \
  --datadir=%{_datadir} \
  --build=%{_build} --host=%{_host} \
  --target=%{_mingw64_target} \
  --with-gnu-as --with-gnu-ld --verbose \
  --without-newlib \
  --disable-multilib \
  --enable-shared \
  --disable-plugin \
  --with-system-zlib \
  --disable-nls --without-included-gettext \
  --disable-win32-registry \
  --enable-version-specific-runtime-libs \
  --with-sysroot=%{_mingw64_sysroot} \
  --enable-languages="$languages" \
  --enable-fully-dynamic-string \
  --enable-vtable-verify \
  --with-pkgversion="SUSE Linux"

make %{?_smp_mflags} all-gcc || make all-gcc

%install
cd gcc-%{version}
cd build
make DESTDIR=%{buildroot} install-gcc

# These files conflict with existing installed files.
rm -rf %{buildroot}%{_infodir}
rm -f %{buildroot}%{_libdir}/libiberty*
rm -f %{buildroot}%{_mandir}/man7/*
rm -f %{buildroot}%{_bindir}/vxaddr2line

mkdir -p %{buildroot}/lib
ln -sf ..%{_bindir}/%{_mingw64_target}-cpp \
  %{buildroot}/lib/%{_mingw64_target}-cpp

%files
%{_bindir}/%{_mingw64_target}-gcc*
%{_bindir}/%{_mingw64_target}-gcov*
%dir %{_libdir}/gcc/%{_mingw64_target}
%dir %{_libdir}/gcc/%{_mingw64_target}/%{version}
%dir %{_libdir}/gcc/%{_mingw64_target}/%{version}/include
%dir %{_libdir}/gcc/%{_mingw64_target}/%{version}/include-fixed
%{_libdir}/gcc/%{_mingw64_target}/%{version}/include-fixed/README
%{_libdir}/gcc/%{_mingw64_target}/%{version}/include-fixed/*.h
%{_libdir}/gcc/%{_mingw64_target}/%{version}/include/*.h
%dir %{_libdir}/gcc/%{_mingw64_target}/%{version}/install-tools
%{_libdir}/gcc/%{_mingw64_target}/%{version}/install-tools/*
%dir %{_libexecdir}/gcc/%{_mingw64_target}/%{version}/install-tools
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/install-tools/*
%{_mandir}/man1/%{_mingw64_target}-gcc.1*
%{_mandir}/man1/%{_mingw64_target}-gcov.1*
%{_mandir}/man1/%{_mingw64_target}-gcov-dump.1*
%{_mandir}/man1/%{_mingw64_target}-gcov-tool.1*
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/collect2
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/lto-wrapper
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/lto1
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/liblto_plugin.so*
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/liblto_plugin.la

%files -n mingw64-cross-cpp-bootstrap
/lib/%{_mingw64_target}-cpp
%{_bindir}/%{_mingw64_target}-cpp
%{_mandir}/man1/%{_mingw64_target}-cpp.1*
%dir %{_libdir}/gcc/%{_mingw64_target}
%dir %{_libdir}/gcc/%{_mingw64_target}/%{version}
%{_libexecdir}/gcc/%{_mingw64_target}/%{version}/cc1

%changelog
openSUSE Build Service is sponsored by