[OE-core] [PATCH] gcc-5.2: Fix various _FOR_BUILD and related variables

Khem Raj raj.khem at gmail.com
Tue Oct 20 04:03:03 UTC 2015


> On Oct 19, 2015, at 8:29 AM, Mark Hatle <mark.hatle at windriver.com> wrote:
> 
> When doing a FOR_BUILD thing, you have to override CFLAGS with
> CFLAGS_FOR_BUILD. And if you use C++, you also have to override
> CXXFLAGS with CXXFLAGS_FOR_BUILD.
> Without this, when building for mingw, you end up trying to use
> the mingw headers for a host build.
> 
> The same goes for other variables as well, such as CPPFLAGS,
> CPP, and GMPINC.

this is ok to install.

> 
> Signed-off-by: Peter Seebach <peter.seebach at windriver.com>
> Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
> ---
> meta/recipes-devtools/gcc/gcc-5.2.inc              |   1 +
> .../gcc/gcc-5.2/0042-cxxflags-for-build.patch      | 123 +++++++++++++++++++++
> 2 files changed, 124 insertions(+)
> create mode 100644 meta/recipes-devtools/gcc/gcc-5.2/0042-cxxflags-for-build.patch
> 
> diff --git a/meta/recipes-devtools/gcc/gcc-5.2.inc b/meta/recipes-devtools/gcc/gcc-5.2.inc
> index f6673e6..a6b385a 100644
> --- a/meta/recipes-devtools/gcc/gcc-5.2.inc
> +++ b/meta/recipes-devtools/gcc/gcc-5.2.inc
> @@ -73,6 +73,7 @@ SRC_URI = "\
>            file://0039-libcc1-fix-libcc1-s-install-path-and-rpath.patch \
>            file://0040-nativesdk-gcc-support.patch \
>            file://0041-handle-target-sysroot-multilib.patch \
> +           file://0042-cxxflags-for-build.patch \
>           "
> 
> BACKPORTS = ""
> diff --git a/meta/recipes-devtools/gcc/gcc-5.2/0042-cxxflags-for-build.patch b/meta/recipes-devtools/gcc/gcc-5.2/0042-cxxflags-for-build.patch
> new file mode 100644
> index 0000000..1105e29
> --- /dev/null
> +++ b/meta/recipes-devtools/gcc/gcc-5.2/0042-cxxflags-for-build.patch
> @@ -0,0 +1,123 @@
> +Fix various _FOR_BUILD and related variables
> +
> +When doing a FOR_BUILD thing, you have to override CFLAGS with
> +CFLAGS_FOR_BUILD. And if you use C++, you also have to override
> +CXXFLAGS with CXXFLAGS_FOR_BUILD.
> +Without this, when building for mingw, you end up trying to use
> +the mingw headers for a host build.
> +
> +The same goes for other variables as well, such as CPPFLAGS,
> +CPP, and GMPINC.
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Peter Seebach <peter.seebach at windriver.com>
> +Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
> +
> +diff --git a/Makefile.in b/Makefile.in
> +index 9370174..011c29a 100644
> +--- a/Makefile.in
> ++++ b/Makefile.in
> +@@ -152,6 +152,7 @@ BUILD_EXPORTS = \
> + 	CPP="$(CC_FOR_BUILD) -E"; export CPP; \
> + 	CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
> + 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
> ++	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
> + 	CXX="$(CXX_FOR_BUILD)"; export CXX; \
> + 	CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
> + 	GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
> +@@ -170,6 +171,9 @@ BUILD_EXPORTS = \
> + # built for the build system to override those in BASE_FLAGS_TO_PASS.
> + EXTRA_BUILD_FLAGS = \
> + 	CFLAGS="$(CFLAGS_FOR_BUILD)" \
> ++	CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
> ++	CPP="$(CC_FOR_BUILD) -E" \
> ++	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \
> + 	LDFLAGS="$(LDFLAGS_FOR_BUILD)"
> +
> + # This is the list of directories to built for the host system.
> +@@ -187,6 +191,7 @@ HOST_SUBDIR = @host_subdir@
> + HOST_EXPORTS = \
> + 	$(BASE_EXPORTS) \
> + 	CC="$(CC)"; export CC; \
> ++	CPP="$(CC) -E"; export CPP; \
> + 	ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \
> + 	CFLAGS="$(CFLAGS)"; export CFLAGS; \
> + 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
> +@@ -711,6 +715,7 @@ BASE_FLAGS_TO_PASS = \
> + 	"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
> + 	"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
> + 	"CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
> ++	"CXXFLAGS_FOR_BUILD=$(CXXFLAGS_FOR_BUILD)" \
> + 	"EXPECT=$(EXPECT)" \
> + 	"FLEX=$(FLEX)" \
> + 	"INSTALL=$(INSTALL)" \
> +diff --git a/Makefile.tpl b/Makefile.tpl
> +index 1ea1954..78a59c3 100644
> +--- a/Makefile.tpl
> ++++ b/Makefile.tpl
> +@@ -154,6 +154,7 @@ BUILD_EXPORTS = \
> + 	CC="$(CC_FOR_BUILD)"; export CC; \
> + 	CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
> + 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
> ++	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
> + 	CXX="$(CXX_FOR_BUILD)"; export CXX; \
> + 	CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
> + 	GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
> +@@ -172,6 +173,9 @@ BUILD_EXPORTS = \
> + # built for the build system to override those in BASE_FLAGS_TO_PASS.
> + EXTRA_BUILD_FLAGS = \
> + 	CFLAGS="$(CFLAGS_FOR_BUILD)" \
> ++	CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
> ++	CPP="$(CC_FOR_BUILD) -E" \
> ++	CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \
> + 	LDFLAGS="$(LDFLAGS_FOR_BUILD)"
> +
> + # This is the list of directories to built for the host system.
> +@@ -189,6 +193,7 @@ HOST_SUBDIR = @host_subdir@
> + HOST_EXPORTS = \
> + 	$(BASE_EXPORTS) \
> + 	CC="$(CC)"; export CC; \
> ++	CPP="$(CC) -E"; export CPP; \
> + 	ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \
> + 	CFLAGS="$(CFLAGS)"; export CFLAGS; \
> + 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
> +diff --git a/gcc/Makefile.in b/gcc/Makefile.in
> +index cd5bc4a..98ae4f4 100644
> +--- a/gcc/Makefile.in
> ++++ b/gcc/Makefile.in
> +@@ -762,7 +762,7 @@ BUILD_LINKERFLAGS = $(BUILD_CXXFLAGS)
> + # Native linker and preprocessor flags.  For x-fragment overrides.
> + BUILD_LDFLAGS=@BUILD_LDFLAGS@
> + BUILD_CPPFLAGS= -I. -I$(@D) -I$(srcdir) -I$(srcdir)/$(@D) \
> +-		-I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS)
> ++		-I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS_FOR_BUILD)
> +
> + # Actual name to use when installing a native compiler.
> + GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)')
> +diff --git a/gcc/configure b/gcc/configure
> +index c7ac14b..5ac63e4 100755
> +--- a/gcc/configure
> ++++ b/gcc/configure
> +@@ -11521,7 +11521,7 @@ else
> + 	CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
> + 	CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \
> + 	LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \
> +-	GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \
> ++	GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \
> + 	${realsrcdir}/configure \
> + 		--enable-languages=${enable_languages-all} \
> + 		--target=$target_alias --host=$build_alias --build=$build_alias
> +diff --git a/gcc/configure.ac b/gcc/configure.ac
> +index 50856e6..17a4dfd 100644
> +--- a/gcc/configure.ac
> ++++ b/gcc/configure.ac
> +@@ -1633,7 +1633,7 @@ else
> + 	CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
> + 	CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \
> + 	LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \
> +-	GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \
> ++	GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \
> + 	${realsrcdir}/configure \
> + 		--enable-languages=${enable_languages-all} \
> + 		--target=$target_alias --host=$build_alias --build=$build_alias
> --
> 1.9.3
> 
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 204 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20151019/ff76d40d/attachment-0002.sig>


More information about the Openembedded-core mailing list