Commit ebc81933 authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Peter Korsgaard
Browse files

Revert "toolchain-internal: skip gcc-intermediate when possible"



While the idea of skipping the intermediate gcc step seems to work
fine in most situations, it causes problems with the SSP
support. Until we can figure out a proper solution for this problem,
we need to revert back to the previous solution of a three stages
build.

This reverts commit 2babed4a.

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
parent 47c463fe
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -3,12 +3,6 @@ comment "GCC Options"
config BR2_GCC_NEEDS_MPC
	bool

# Until gcc 4.7, a three stage build process was needed when using
# NPTL. This hidden option tells whether gcc is a version that
# requires this three stage build process.
config BR2_GCC_VERSION_NEEDS_THREE_STAGE_BUILD
	bool

choice
	prompt "GCC compiler Version"
	default BR2_GCC_VERSION_4_4_X if BR2_sparc_sparchfleon || BR2_sparc_sparchfleonv8 || BR2_sparc_sparcsfleon || BR2_sparc_sparcsfleonv8
@@ -22,13 +16,11 @@ choice
	config BR2_GCC_VERSION_4_2_2_AVR32_2_1_5
		depends on BR2_avr32
		bool "gcc 4.2.2-avr32-2.1.5"
		select BR2_GCC_VERSION_NEEDS_THREE_STAGE_BUILD

	config BR2_GCC_VERSION_4_3_X
		depends on !BR2_arc && !BR2_avr32 && !BR2_sparc_sparchfleon && !BR2_sparc_sparchfleonv8 && !BR2_sparc_sparcsfleon && !BR2_sparc_sparcsfleonv8 && !BR2_cortex_a5 && !BR2_cortex_a7 && !BR2_cortex_a8 && !BR2_cortex_a9 && !BR2_cortex_a15 && !BR2_x86_atom && !BR2_powerpc_e300c2 && !BR2_powerpc_e300c3 && !BR2_powerpc_e500mc && !BR2_powerpc_464 && !BR2_powerpc_464fp && !BR2_powerpc_476 && !BR2_powerpc_476fp && !BR2_fa526 && !BR2_pj4
		depends on !BR2_ARM_EABIHF
		bool "gcc 4.3.x"
		select BR2_GCC_VERSION_NEEDS_THREE_STAGE_BUILD

	config BR2_GCC_VERSION_4_4_X
		depends on !BR2_arc && !BR2_avr32 && !BR2_cortex_a5 && !BR2_cortex_a7 && !BR2_cortex_a15 && !BR2_x86_atom && !BR2_powerpc_476 && !BR2_powerpc_476fp && !BR2_fa526 && !BR2_pj4
@@ -37,7 +29,6 @@ choice
		depends on !BR2_ARM_EABIHF
		# VFPv4 support appeared in gcc 4.5
		depends on !BR2_ARM_FPU_VFPV4 && !BR2_ARM_FPU_VFPV4D16
		select BR2_GCC_VERSION_NEEDS_THREE_STAGE_BUILD

	config BR2_GCC_VERSION_4_5_X
		depends on !BR2_arc && !BR2_avr32 && !BR2_cortex_a7 && !BR2_cortex_a15 && !BR2_sparc_sparchfleon && !BR2_sparc_sparchfleonv8 && !BR2_sparc_sparcsfleon && !BR2_sparc_sparcsfleonv8 && !BR2_fa526 && !BR2_pj4
@@ -45,13 +36,11 @@ choice
		# ARM EABIhf support appeared in gcc 4.6
		depends on !BR2_ARM_EABIHF
		bool "gcc 4.5.x"
		select BR2_GCC_VERSION_NEEDS_THREE_STAGE_BUILD

	config BR2_GCC_VERSION_4_6_X
		depends on !BR2_arc && !BR2_avr32 && !BR2_bfin && !BR2_cortex_a7 && !BR2_sparc_sparchfleon && !BR2_sparc_sparchfleonv8 && !BR2_sparc_sparcsfleon && !BR2_sparc_sparcsfleonv8 && !BR2_pj4
		select BR2_GCC_NEEDS_MPC
		bool "gcc 4.6.x"
		select BR2_GCC_VERSION_NEEDS_THREE_STAGE_BUILD

	config BR2_GCC_VERSION_4_7_X
		depends on !BR2_arc && !BR2_avr32 && !BR2_bfin && !BR2_sparc_sparchfleon && !BR2_sparc_sparchfleonv8 && !BR2_sparc_sparcsfleon && !BR2_sparc_sparcsfleonv8 && !BR2_pj4
+0 −8
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@ HOST_GCC_INITIAL_CONF_OPT = \
	--enable-languages=c \
	--disable-shared \
	--without-headers \
	--disable-threads \
	--with-newlib \
	--disable-largefile \
	--disable-nls \
@@ -41,11 +40,4 @@ HOST_GCC_INITIAL_CONF_ENV = \
HOST_GCC_INITIAL_MAKE_OPT = all-gcc
HOST_GCC_INITIAL_INSTALL_OPT = install-gcc

ifeq ($(BR2_TOOLCHAIN_NEEDS_THREE_STAGE_BUILD),)
ifeq ($(BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE),y)
HOST_GCC_INITIAL_MAKE_OPT += all-target-libgcc
HOST_GCC_INITIAL_INSTALL_OPT += install-target-libgcc
endif
endif

$(eval $(host-autotools-package))
+2 −3
Original line number Diff line number Diff line
@@ -28,9 +28,8 @@ ifeq ($(BR2_TOOLCHAIN_BUILDROOT_EGLIBC),y)
GLIBC_DEPENDENCIES += host-gawk
endif

# Before (e)glibc is built, we must have the second stage
# cross-compiler, for some gcc versions
glibc-build: $(if $(BR2_TOOLCHAIN_NEEDS_THREE_STAGE_BUILD),host-gcc-intermediate)
# Before (e)glibc is built, we must have the second stage cross-compiler
eglibc-build: host-gcc-intermediate

GLIBC_SUBDIR = build

+0 −1
Original line number Diff line number Diff line
@@ -115,7 +115,6 @@ choice
	config BR2_PTHREADS_NATIVE
		bool "Native POSIX Threading (NPTL)"
		select BR2_TOOLCHAIN_HAS_THREADS
		select BR2_TOOLCHAIN_LIBC_NEEDS_THREE_STAGE_BUILD
		depends on !BR2_arc
		depends on !BR2_avr32
		depends on !BR2_bfin
+2 −3
Original line number Diff line number Diff line
@@ -22,9 +22,8 @@ UCLIBC_INSTALL_STAGING = YES
# cross-compiler and the kernel headers
UCLIBC_DEPENDENCIES = host-gcc-initial linux-headers

# Before uClibc is built, we must have the second stage
# cross-compiler, for some gcc versions, and when NPTL is used.
uclibc-build: $(if $(BR2_TOOLCHAIN_NEEDS_THREE_STAGE_BUILD),host-gcc-intermediate)
# Before uClibc is built, we must have the second stage cross-compiler
uclibc-build: host-gcc-intermediate

# specifying UCLIBC_CONFIG_FILE on the command-line overrides the .config
# setting.
Loading