Found this while testing the C++ conversion for vec.[ch] on the
cxx-conversion branch. We do not build the build/*.o files with g++,
so I was getting lots of syntax errors while compiling build/vec.o.
I am not completely sure if the changes are correct. But it works for
me.
Tested on x86_64. OK for trunk?
2012-05-08 Diego Novillo <dnovillo@google.com>
* Makefile.in (CXX_FOR_BUILD): Define.
(BUILD_CXX_FLAGS): Define
(COMPILER_FOR_BUILD): Set to CXX_FOR_BUILD if building with C++.
(LINKER_FOR_BUILD): Likewise.
(BUILD_COMPILERFLAGS): Set to BUILD_CXXFLAGS if building with C++.
(BUILD_LINKERFLAGS): Likewise.
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index ec27f88..1aa9dad 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -728,15 +728,27 @@ DIR = ../gcc
# Native compiler for the build machine and its switches.
CC_FOR_BUILD = @CC_FOR_BUILD@
+CXX_FOR_BUILD = @CXX_FOR_BUILD@
BUILD_CFLAGS= @BUILD_CFLAGS@ -DGENERATOR_FILE
+BUILD_CXXFLAGS = $(INTERNAL_CFLAGS) $(CXXFLAGS) -DGENERATOR_FILE
# Native compiler that we use. This may be C++ some day.
+ifneq ($(ENABLE_BUILD_WITH_CXX),yes)
COMPILER_FOR_BUILD = $(CC_FOR_BUILD)
BUILD_COMPILERFLAGS = $(BUILD_CFLAGS)
+else
+COMPILER_FOR_BUILD = $(CXX_FOR_BUILD)
+BUILD_COMPILERFLAGS = $(BUILD_CXXFLAGS)
+endif
# Native linker that we use.
+ifneq ($(ENABLE_BUILD_WITH_CXX),yes)
LINKER_FOR_BUILD = $(CC_FOR_BUILD)
BUILD_LINKERFLAGS = $(BUILD_CFLAGS)
+else
+LINKER_FOR_BUILD = $(CXX_FOR_BUILD)
+BUILD_LINKERFLAGS = $(BUILD_CXXFLAGS)
+endif
# Native linker and preprocessor flags. For x-fragment overrides.
BUILD_LDFLAGS=@BUILD_LDFLAGS@
--
This patch is available for review at http://codereview.appspot.com/6191056
On 12-05-08 15:46 , Diego Novillo wrote:
> Found this while testing the C++ conversion for vec.[ch] on the
> cxx-conversion branch. We do not build the build/*.o files with g++,
> so I was getting lots of syntax errors while compiling build/vec.o.
>
> I am not completely sure if the changes are correct. But it works for
> me.
>
> Tested on x86_64. OK for trunk?
>
> 2012-05-08 Diego Novillo<dnovillo@google.com>
>
> * Makefile.in (CXX_FOR_BUILD): Define.
> (BUILD_CXX_FLAGS): Define
> (COMPILER_FOR_BUILD): Set to CXX_FOR_BUILD if building with C++.
> (LINKER_FOR_BUILD): Likewise.
> (BUILD_COMPILERFLAGS): Set to BUILD_CXXFLAGS if building with C++.
> (BUILD_LINKERFLAGS): Likewise.
I forgot to include the changes needed in configure.ac to export
CXX_FOR_BUILD.
Without this, incremental builds from <build>/gcc will fail because
the value of CXX_FOR_BUILD will not be set.
Tested on x86_64. OK for trunk?
2012-05-08 Diego Novillo <dnovillo@google.com>
* configure.ac (CXX_FOR_BUILD): Define and substitute.
* configure: Regenerate.
diff --git a/gcc/configure.ac b/gcc/configure.ac
index b3cfed4..a05f4f9 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1848,6 +1848,7 @@ AC_SUBST(inhibit_libc)
# These are the normal (build=host) settings:
CC_FOR_BUILD='$(CC)' AC_SUBST(CC_FOR_BUILD)
+CXX_FOR_BUILD='$(CXX)' AC_SUBST(CXX_FOR_BUILD)
BUILD_CFLAGS='$(ALL_CFLAGS)' AC_SUBST(BUILD_CFLAGS)
BUILD_LDFLAGS='$(LDFLAGS)' AC_SUBST(BUILD_LDFLAGS)
STMP_FIXINC=stmp-fixinc AC_SUBST(STMP_FIXINC)
Ping. On Tue, May 8, 2012 at 6:46 PM, Diego Novillo <dnovillo@google.com> wrote: > > ...
12 years, 11 months ago
(2012-05-30 12:03:13 UTC)
#3
Ping.
On Tue, May 8, 2012 at 6:46 PM, Diego Novillo <dnovillo@google.com> wrote:
>
> Found this while testing the C++ conversion for vec.[ch] on the
> cxx-conversion branch. We do not build the build/*.o files with g++,
> so I was getting lots of syntax errors while compiling build/vec.o.
>
> I am not completely sure if the changes are correct. But it works for
> me.
>
> Tested on x86_64. OK for trunk?
>
> 2012-05-08 Diego Novillo <dnovillo@google.com>
>
> * Makefile.in (CXX_FOR_BUILD): Define.
> (BUILD_CXX_FLAGS): Define
> (COMPILER_FOR_BUILD): Set to CXX_FOR_BUILD if building with C++.
> (LINKER_FOR_BUILD): Likewise.
> (BUILD_COMPILERFLAGS): Set to BUILD_CXXFLAGS if building with C++.
> (BUILD_LINKERFLAGS): Likewise.
>
> diff --git a/gcc/Makefile.in b/gcc/Makefile.in
> index ec27f88..1aa9dad 100644
> --- a/gcc/Makefile.in
> +++ b/gcc/Makefile.in
> @@ -728,15 +728,27 @@ DIR = ../gcc
>
> # Native compiler for the build machine and its switches.
> CC_FOR_BUILD = @CC_FOR_BUILD@
> +CXX_FOR_BUILD = @CXX_FOR_BUILD@
> BUILD_CFLAGS= @BUILD_CFLAGS@ -DGENERATOR_FILE
> +BUILD_CXXFLAGS = $(INTERNAL_CFLAGS) $(CXXFLAGS) -DGENERATOR_FILE
>
> # Native compiler that we use. This may be C++ some day.
> +ifneq ($(ENABLE_BUILD_WITH_CXX),yes)
> COMPILER_FOR_BUILD = $(CC_FOR_BUILD)
> BUILD_COMPILERFLAGS = $(BUILD_CFLAGS)
> +else
> +COMPILER_FOR_BUILD = $(CXX_FOR_BUILD)
> +BUILD_COMPILERFLAGS = $(BUILD_CXXFLAGS)
> +endif
>
> # Native linker that we use.
> +ifneq ($(ENABLE_BUILD_WITH_CXX),yes)
> LINKER_FOR_BUILD = $(CC_FOR_BUILD)
> BUILD_LINKERFLAGS = $(BUILD_CFLAGS)
> +else
> +LINKER_FOR_BUILD = $(CXX_FOR_BUILD)
> +BUILD_LINKERFLAGS = $(BUILD_CXXFLAGS)
> +endif
>
> # Native linker and preprocessor flags. For x-fragment overrides.
> BUILD_LDFLAGS=@BUILD_LDFLAGS@
>
> --
> This patch is available for review at http://codereview.appspot.com/6191056
Issue 6191056: Use C++ in COMPILER_FOR_BUILD if needed
Created 13 years ago by Diego Novillo
Modified 12 years, 11 months ago
Reviewers:
Base URL:
Comments: 0