forked from Imagelibrary/rtems
260 lines
5.9 KiB
Plaintext
260 lines
5.9 KiB
Plaintext
|
|
%define gcc_pkgvers @GCC_PKGVERS@
|
|
%define gcc_version @GCC_VERS@
|
|
%define gcc_rpmvers %{expand:%(echo "@GCC_VERS@" | tr - _ )}
|
|
|
|
%if %build_newlib
|
|
%define newlib_pkgvers @NEWLIB_PKGVERS@
|
|
%define newlib_version @NEWLIB_VERS@
|
|
%endif
|
|
|
|
Name: @rpmprefix@@tool_target@-gcc
|
|
Summary: @tool_target@ gcc
|
|
|
|
Group: Development/Tools
|
|
Version: %{gcc_rpmvers}
|
|
Release: @GCC_RPMREL@
|
|
License: GPL
|
|
URL: http://gcc.gnu.org
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
%define _use_internal_dependency_generator 0
|
|
|
|
BuildRequires: %{_host_rpmprefix}gcc
|
|
|
|
# FIXME: Disable lto for now, to avoid dependencies on libelf
|
|
%bcond_with lto
|
|
|
|
# FIXME: Disable python gdb scripts
|
|
# ATM, no idea how to package them
|
|
%bcond_with pygdb
|
|
|
|
# FIXME: Disable GCC-plugin
|
|
# Bug in gcc-4.5-20100318, doesn't build them on x86_84 hosts.
|
|
%bcond_with plugin
|
|
|
|
# EXPERIMENTAL: Use gcc's stdint.h instead of newlib's
|
|
# Should be applicable to gcc >= 4.5.0
|
|
%bcond_with gcc_stdint
|
|
|
|
# versions of libraries, we conditionally bundle if necessary
|
|
%global mpc_version 0.8.1
|
|
%global mpfr_version 2.4.2
|
|
%global gmp_version 4.3.2
|
|
%global libelf_version 0.8.13
|
|
|
|
# versions of libraries these distros are known to ship
|
|
%if 0%{?fc16}
|
|
%global mpc_provided 0.8.3
|
|
%global mpfr_provided 3.0.0
|
|
%global gmp_provided 4.3.2
|
|
%endif
|
|
|
|
%if 0%{?fc15}
|
|
%global mpc_provided 0.8.3
|
|
%global mpfr_provided 3.0.0
|
|
%global gmp_provided 4.3.2
|
|
%endif
|
|
|
|
%if 0%{?fc14}
|
|
%global mpc_provided 0.8.1
|
|
%global mpfr_provided 2.4.2
|
|
%global gmp_provided 4.3.1
|
|
%endif
|
|
|
|
%if 0%{?fc13}
|
|
%global mpc_provided 0.8.1
|
|
%global mpfr_provided 2.4.2
|
|
%global gmp_provided 4.3.1
|
|
%endif
|
|
|
|
%if 0%{?el6}
|
|
%global mpc_provided %{nil}
|
|
%global mpfr_provided 2.4.1
|
|
%global gmp_provided 4.3.1
|
|
%endif
|
|
|
|
%if 0%{?el5}
|
|
%global mpc_provided %{nil}
|
|
%global mpfr_provided %{nil}
|
|
%global gmp_provided 4.1.4
|
|
%endif
|
|
|
|
%if 0%{?suse11_3}
|
|
%global mpc_provided 0.8.1
|
|
%global mpfr_provided 2.4.2
|
|
%global gmp_provided 4.3.2
|
|
%endif
|
|
|
|
%if 0%{?suse11_4}
|
|
%global mpc_provided 0.8.2
|
|
%global mpfr_provided 3.0.0
|
|
%global gmp_provided 5.0.1
|
|
%endif
|
|
|
|
%if 0%{?cygwin}
|
|
%global mpc_provided 0.8
|
|
%global mpfr_provided 2.4.1
|
|
%global gmp_provided 4.3.1
|
|
%endif
|
|
|
|
%if 0%{?mingw32}
|
|
%global mpc_provided 0.8.1
|
|
%global mpfr_provided 2.4.1
|
|
%global gmp_provided 4.3.2
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.2.0"
|
|
%if %build_fortran
|
|
%define gmp_required 4.1
|
|
%define mpfr_required 2.2.1
|
|
%endif
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.3.0"
|
|
%define gmp_required 4.1
|
|
%define mpfr_required 2.3.1
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.3.3"
|
|
%define cloog_required 0.15
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.4.0"
|
|
%define mpfr_required 2.3.2
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.5.0"
|
|
%define mpc_required 0.8
|
|
%if %{with lto}
|
|
%define libelf_required 0.8.12
|
|
%endif
|
|
%endif
|
|
|
|
%if %{defined mpc_required}
|
|
%if "%{mpc_provided}" >= "%{mpc_required}"
|
|
%{?fedora:BuildRequires: libmpc-devel >= %{mpc_required}}
|
|
%{?suse:BuildRequires: mpc-devel >= %{mpc_required}}
|
|
%if "%{_build}" != "%{_host}"
|
|
BuildRequires: %{_host_rpmprefix}mpc-devel >= %{mpc_required}
|
|
%endif
|
|
%else
|
|
%define _build_mpc 1
|
|
%define gmp_required 4.2
|
|
%endif
|
|
%endif
|
|
|
|
%if %{defined gmp_required}
|
|
%if "%{gmp_provided}" >= "%{gmp_required}"
|
|
BuildRequires: gmp-devel >= %{gmp_required}
|
|
%if "%{_build}" != "%{_host}"
|
|
BuildRequires: %{_host_rpmprefix}gmp-devel >= %{gmp_required}
|
|
%endif
|
|
%else
|
|
%define _build_gmp 1
|
|
%endif
|
|
%endif
|
|
|
|
%if %{defined libelf_required}
|
|
%if "%{libelf_provided}" >= "%{libelf_required}"
|
|
BuildRequires: libelf-devel >= %{libelf_required}
|
|
%if "%{_build}" != "%{_host}"
|
|
BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required}
|
|
%endif
|
|
%else
|
|
%define _build_libelf 1
|
|
%endif
|
|
%endif
|
|
|
|
|
|
%if %{defined cloog_required}
|
|
%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required}
|
|
%{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required}
|
|
%{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required}
|
|
%{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required}
|
|
%{?el6:BuildRequires: cloog-ppl-devel >= %cloog_required}
|
|
%{?suse11_4:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
|
|
%{?suse11_3:BuildRequires: cloog-devel >= %cloog_required, ppl-devel}
|
|
%endif
|
|
|
|
|
|
%if %{defined mpfr_required}
|
|
%if "%{mpfr_provided}" >= "%{mpfr_required}"
|
|
BuildRequires: mpfr-devel >= %{mpfr_required}
|
|
%if "%{_build}" != "%{_host}"
|
|
BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required}
|
|
%endif
|
|
%else
|
|
%define _build_mpfr 1
|
|
%endif
|
|
%endif
|
|
|
|
%if "%{_build}" != "%{_host}"
|
|
BuildRequires: @rpmprefix@@tool_target@-gcc = %{gcc_rpmvers}
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.2.0"
|
|
BuildRequires: flex bison
|
|
%endif
|
|
|
|
%if %build_gcj
|
|
# Building gcj requires bison and zlib
|
|
BuildRequires: bison
|
|
%endif
|
|
|
|
BuildRequires: texinfo >= 4.2
|
|
BuildRequires: @rpmprefix@@tool_target@-binutils
|
|
BuildRequires: @rpmprefix@@tool_target@-sys-root
|
|
BuildRequires: @rpmprefix@@tool_target@-w32api-sys-root
|
|
|
|
%if %build_infos
|
|
Requires: @rpmprefix@gcc-common
|
|
%endif
|
|
Requires: @rpmprefix@@tool_target@-binutils
|
|
Requires: @rpmprefix@@tool_target@-sys-root
|
|
Requires: @rpmprefix@@tool_target@-w32api-sys-root
|
|
Requires: @rpmprefix@@tool_target@-gcc-libgcc = %{gcc_rpmvers}-%{release}
|
|
%if %build_newlib
|
|
Requires: @rpmprefix@@tool_target@-newlib = %{newlib_version}-@NEWLIB_RPMREL@
|
|
%endif
|
|
|
|
%if "%{gcc_version}" >= "4.5.0"
|
|
BuildRequires: zlib-devel
|
|
%if "%{_build}" != "%{_host}"
|
|
BuildRequires: %{_host_rpmprefix}zlib-devel
|
|
%endif
|
|
%else
|
|
%if %build_gcj
|
|
BuildRequires: zlib-devel
|
|
%endif
|
|
%endif
|
|
%if %build_gnat
|
|
# Building gnat requires gnat
|
|
BuildRequires: gcc-gnat
|
|
BuildRequires: @rpmprefix@@tool_target@-newlib < %{newlib_version}-@NEWLIB_RPMREL@
|
|
%endif
|
|
|
|
%global _gcclibdir %{_prefix}/lib
|
|
|
|
@SOURCES@
|
|
|
|
%if 0%{?_build_mpfr}
|
|
Source60: http://www.mpfr.org/mpfr-%{mpfr_version}/mpfr-%{mpfr_version}.tar.bz2
|
|
%endif
|
|
|
|
%if 0%{?_build_mpc}
|
|
Source61: http://www.multiprecision.org/mpc/download/mpc-%{mpc_version}.tar.gz
|
|
%endif
|
|
|
|
%if 0%{?_build_gmp}
|
|
Source62: ftp://ftp.gnu.org/gnu/gmp/gmp-%{gmp_version}.tar.bz2
|
|
%endif
|
|
|
|
%if 0%{?_build_libelf}
|
|
Source63: http://www.mr511.de/software/libelf-%{libelf_version}.tar.gz
|
|
%endif
|
|
|
|
%description
|
|
Cross gcc for @tool_target@.
|
|
|