diff options
author | Chris Johns <chrisj@rtems.org> | 2013-04-01 15:19:56 +1100 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2013-04-01 15:19:56 +1100 |
commit | 4f26bdb2f0372abc1273f16594e9ac1fd96e0559 (patch) | |
tree | f904e09cfe49b15b35b66d96a934a139c497a132 /source-builder/config/gcc-4.5-1.cfg | |
parent | Add which type of hosts work. Some 32bit hosts have issues. (diff) | |
download | rtems-source-builder-4f26bdb2f0372abc1273f16594e9ac1fd96e0559.tar.bz2 |
Add Canadian Cross support.
Add support to build MinGW tools using Cygwin. This is a Canadian cross
build.
Do not expand the directives when parsing a configuration file. Hold
in the package object the text as read from the configuration file. Still
parse the logic but leave the macros. This allows a configuration to be
varied when the build happens. The Canadian cross uses this to build a
build compiler used to build a Cxc runtime.
Add Cxc support to the build module. In the defaults add rm and rmfile
macros, add Cxc paths and pre-build script code.
In the setbuilder check for a Cxc build and if so and the package
allow Cxc build the build host version then the host target
version.
Add cygiwn support to the defaults processing and to the Windows module.
Diffstat (limited to 'source-builder/config/gcc-4.5-1.cfg')
-rw-r--r-- | source-builder/config/gcc-4.5-1.cfg | 169 |
1 files changed, 2 insertions, 167 deletions
diff --git a/source-builder/config/gcc-4.5-1.cfg b/source-builder/config/gcc-4.5-1.cfg index fc46411..638e0d1 100644 --- a/source-builder/config/gcc-4.5-1.cfg +++ b/source-builder/config/gcc-4.5-1.cfg @@ -6,27 +6,6 @@ # # -# Default to C++ on. -# -%ifn %{defined enable_cxx} -%define enable_cxx 1 -%endif - -%include %{_configdir}/checks.cfg - -%ifn %{defined gcc_version_message} -%error No GCC Version message defined. -%endif - -Name: %{_target}-gcc-%{gcc_version}-newlib-%{newlib_version}-%{release} -Summary: GCC v%{gcc_version} and Newlib v%{newlib_version} for target %{_target} on host %{_host}. - GCC uses MPFR v%{mpfr_version}, MPC v%{mpc_version}, and GMP v%{gmp_version}. -Version: %{gcc_version} -Release: %{release} -URL: http://gcc.gnu.org/ -BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n) - -# # Source # # @@ -49,150 +28,6 @@ Source21: http://www.multiprecision.org/mpc/download/mpc-%{mpc_version}.tar.gz Source22: ftp://ftp.gnu.org/gnu/gmp/gmp-%{gmp_version}.tar.bz2 # -# The GCC library directory +# GCC Common build script. # -%global _gcclibdir %{_prefix}/lib - -# -# Prepare the source code. -# -%prep - # gcc and optional the g++ core if separate packages - %setup -q -c -n %{name}-%{version} - %{?source1:%setup -q -D -T -n %{name}-%{version} -a1} - cd gcc-%{gcc_version} - %{?patch0:%patch0 %{?patch0_opts:%{patch0_opts}}%{!?patch0_opts:-p1}} - %{?patch1:%patch1 %{?patch1_opts:%{patch1_opts}}%{!?patch1_opts:-p1}} - %{?patch2:%patch2 %{?patch2_opts:%{patch2_opts}}%{!?patch2_opts:-p1}} - %{?patch3:%patch3 %{?patch3_opts:%{patch3_opts}}%{!?patch3_opts:-p1}} - %{?patch4:%patch4 %{?patch4_opts:%{patch4_opts}}%{!?patch4_opts:-p1}} - %{?patch5:%patch5 %{?patch5_opts:%{patch5_opts}}%{!?patch5_opts:-p1}} - %{?patch6:%patch6 %{?patch6_opts:%{patch6_opts}}%{!?patch6_opts:-p1}} - %{?patch7:%patch7 %{?patch7_opts:%{patch7_opts}}%{!?patch7_opts:-p1}} - %{?patch8:%patch8 %{?patch8_opts:%{patch8_opts}}%{!?patch8_opts:-p1}} - %{?patch9:%patch9 %{?patch9_opts:%{patch9_opts}}%{!?patch9_opts:-p1}} - cd .. - - # newlib - %setup -q -D -T -n %{name}-%{version} -a10 - cd newlib-%{newlib_version} - %{?patch10:%patch10 %{?patch10_opts:%{patch10_opts}}%{!?patch10_opts:-p1}} - %{?patch11:%patch11 %{?patch11_opts:%{patch11_opts}}%{!?patch11_opts:-p1}} - %{?patch12:%patch12 %{?patch12_opts:%{patch12_opts}}%{!?patch12_opts:-p1}} - %{?patch13:%patch13 %{?patch13_opts:%{patch13_opts}}%{!?patch13_opts:-p1}} - %{?patch14:%patch14 %{?patch14_opts:%{patch14_opts}}%{!?patch14_opts:-p1}} - %{?patch15:%patch15 %{?patch15_opts:%{patch15_opts}}%{!?patch15_opts:-p1}} - %{?patch16:%patch16 %{?patch16_opts:%{patch16_opts}}%{!?patch16_opts:-p1}} - %{?patch17:%patch17 %{?patch17_opts:%{patch17_opts}}%{!?patch17_opts:-p1}} - %{?patch18:%patch18 %{?patch18_opts:%{patch18_opts}}%{!?patch18_opts:-p1}} - %{?patch19:%patch19 %{?patch19_opts:%{patch19_opts}}%{!?patch19_opts:-p1}} - cd .. - - # Link newlib into the gcc source tree - ln -s ../newlib-%{newlib_version}/newlib gcc-%{gcc_version} - - # MPFR - %setup -q -D -T -n %{name}-%{version} -a20 - cd mpfr-%{mpfr_version} - %{?patch20:%patch20 -p1} - cd .. - # Build MPFR one-tree style - ln -s ../mpfr-%{mpfr_version} gcc-%{gcc_version}/mpfr - - # MPC - %setup -q -D -T -n %{name}-%{version} -a21 - cd mpc-%{mpc_version} - %{?patch21:%patch21 -p1} - cd .. - # Build MPC one-tree style - ln -s ../mpc-%{mpc_version} gcc-%{gcc_version}/mpc - - # GMP - %setup -q -D -T -n %{name}-%{version} -a22 - cd gmp-%{gmp_version} - %{?patch22:%patch22 -p1} - cd .. - # Build GMP one-tree style - ln -s ../gmp-%{gmp_version} gcc-%{gcc_version}/gmp - - echo "%{gcc_version_message}" > gcc-%{gcc_version}/gcc/DEV-PHASE - - # Fix timestamps - cd gcc-%{gcc_version} - contrib/gcc_update --touch - cd .. - -%build - export PATH="%{_bindir}:${PATH}" - mkdir -p build - cd build - languages="c" -%if %{enable_cxx} - languages="$languages,c++" -%endif -%if "%{_build}" != "%{_host}" - CFLAGS_FOR_BUILD="-g -O2 -Wall" \ - CC="%{_host}-gcc ${SB_OPT_FLAGS}" \ -%else - # gcc is not ready to be compiled with -std=gnu99 - CC=$(echo "%{__cc} ${SB_OPT_FLAGS}" | sed -e 's,-std=gnu99 ,,') \ -%endif - ../gcc-%{gcc_version}/configure \ - --prefix=%{_prefix} \ - --bindir=%{_bindir} \ - --exec_prefix=%{_exec_prefix} \ - --includedir=%{_includedir} \ - --libdir=%{_gcclibdir} \ - --libexecdir=%{_libexecdir} \ - --mandir=%{_mandir} \ - --infodir=%{_infodir} \ - --datadir=%{_datadir} \ - --build=%_build --host=%_host \ - --target=%{_target} \ - --disable-libstdcxx-pch \ - --with-gnu-as --with-gnu-ld --verbose \ - --with-newlib \ - --with-system-zlib \ - --disable-nls --without-included-gettext \ - --disable-win32-registry \ - --enable-version-specific-runtime-libs \ - %{?with_lto:--enable-lto}%{!?with_lto:--disable-lto} \ - %{?with_threads:--enable-threads}%{!?with_threads:--disable-threads} \ - %{?with_plugin:--enable-plugin}%{!?with_plugin:--disable-plugin} \ - --enable-newlib-io-c99-formats \ - %{?with_iconv:--enable-newlib-iconv} \ -%if %{enable_obsolete} - --enable-obsolete \ -%endif - --enable-languages="$languages" - -%if "%_host" != "%_build" - # Bug in gcc-3.2.1: - # Somehow, gcc doesn't get syslimits.h right for Cdn-Xs - mkdir -p gcc/include - cp ../gcc-%{gcc_version}/gcc/gsyslimits.h gcc/include/syslimits.h -%endif - - %{__make} %{?_smp_mflags} all - cd .. - -%install - export PATH="%{_bindir}:${PATH}" - rm -rf $SB_BUILD_ROOT - - cd build - %{__make} DESTDIR=$SB_BUILD_ROOT install - cd .. - - # libiberty doesn't honor --libdir, but always installs to a - # magically guessed _libdir - rm -f ${SB_BUILD_ROOT}%{_libdir}/libiberty.a - - # We use the version from binutils - rm -f $SB_BUILD_ROOT%{_bindir}/%{_target}-c++filt%{_exeext} - - # We don't ship info/dir - rm -f $SB_BUILD_ROOT%{_infodir}/dir - - # Don't want libffi's man-pages - rm -f $SB_BUILD_ROOT%{_mandir}/man3/*ffi* +%include %{_configdir}/gcc-common-1.cfg |