diff options
author | Pedro Alves <palves@redhat.com> | 2016-01-21 11:18:45 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2016-01-21 11:18:45 +0000 |
commit | a994041db36c9a6058fe591c7ccd018ed7affc76 (patch) | |
tree | 92f99c044731b750b9855d971f15d6182d287210 | |
parent | aebf9be7089c1903581740851ae9ae67ffee2f4b (diff) | |
download | gdb-a994041db36c9a6058fe591c7ccd018ed7affc76.zip gdb-a994041db36c9a6058fe591c7ccd018ed7affc76.tar.gz gdb-a994041db36c9a6058fe591c7ccd018ed7affc76.tar.bz2 |
gdb: Respect CXXFLAGS when building with C++ compiler
Currently, even when built with --enable-build-with-cxx, gdb uses
CFLAGS instead of CXXFLAGS. This commit fixes it.
CXXFLAGS set in the environment when configure was run is now honored
in the generated gdb/Makefile, and you can also override CXXFLAGS in
the command like at make time, with the usual 'make CXXFLAGS="..."'
Objects built with a C compiler (e.g., gnulib) still honor CFLAGS
instead.
gdb/ChangeLog:
2016-01-21 Pedro Alves <palves@redhat.com>
* Makefile.in (COMPILER_CFLAGS): New.
(CXXFLAGS): Get it from configure.
(INTERNAL_CFLAGS_BASE, INTERNAL_LDFLAGS): Use COMPILER_CFLAGS
instead of CFLAGS.
* build-with-cxx.m4 (GDB_AC_BUILD_WITH_CXX): Set and AC_SUBST
COMPILER_CFLAGS.
* configure: Regenerate.
gdb/gdbserver/ChangeLog:
2016-01-21 Pedro Alves <palves@redhat.com>
* Makefile.in (COMPILER_CFLAGS, CXXFLAGS): New.
(INTERNAL_CFLAGS_BASE): Use COMPILER_CFLAGS instead of CFLAGS.
* configure: Regenerate.
-rw-r--r-- | gdb/ChangeLog | 10 | ||||
-rw-r--r-- | gdb/Makefile.in | 18 | ||||
-rw-r--r-- | gdb/build-with-cxx.m4 | 3 | ||||
-rwxr-xr-x | gdb/configure | 4 | ||||
-rw-r--r-- | gdb/gdbserver/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/gdbserver/Makefile.in | 7 | ||||
-rwxr-xr-x | gdb/gdbserver/configure | 4 |
7 files changed, 41 insertions, 11 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a377a32..68d10ad 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,13 @@ +2016-01-21 Pedro Alves <palves@redhat.com> + + * Makefile.in (COMPILER_CFLAGS): New. + (CXXFLAGS): Get it from configure. + (INTERNAL_CFLAGS_BASE, INTERNAL_LDFLAGS): Use COMPILER_CFLAGS + instead of CFLAGS. + * build-with-cxx.m4 (GDB_AC_BUILD_WITH_CXX): Set and AC_SUBST + COMPILER_CFLAGS. + * configure: Regenerate. + 2016-01-21 Joel Brobecker <brobecker@adacore.com> * location.h (new_address_location): Add new parameters diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 895ece6..5e8eb9a 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -81,6 +81,8 @@ CATALOGS = @CATALOGS@ # The name of the compiler to use. COMPILER = @COMPILER@ +# Set to CFLAGS or CXXFLAGS, depending on compiler/language. +COMPILER_CFLAGS = @COMPILER_CFLAGS@ # If you are compiling with GCC, make sure that either 1) You have the # fixed include files where GCC can reach them, or 2) You use the @@ -551,9 +553,10 @@ GLOBAL_CFLAGS = $(MH_CFLAGS) PROFILE_CFLAGS = @PROFILE_CFLAGS@ -# CFLAGS is specifically reserved for setting from the command line -# when running make. I.E. "make CFLAGS=-Wmissing-prototypes". +# These are specifically reserved for setting from the command line +# when running make. I.E.: "make CFLAGS=-Wmissing-prototypes". CFLAGS = @CFLAGS@ +CXXFLAGS = @CXXFLAGS@ # Set by configure, for e.g. expat. Python installations are such that # C headers are included using their basename (for example, we #include @@ -563,14 +566,9 @@ CFLAGS = @CFLAGS@ # a bit the consequences by putting the Python includes last in the list. INTERNAL_CPPFLAGS = @CPPFLAGS@ @GUILE_CPPFLAGS@ @PYTHON_CPPFLAGS@ -# Need to pass this to testsuite for "make check". Probably should be -# consistent with top-level Makefile.in and gdb/testsuite/Makefile.in -# so "make check" has the same result no matter where it is run. -CXXFLAGS = -g -O - # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. INTERNAL_CFLAGS_BASE = \ - $(CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \ + $(COMPILER_CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \ $(GDB_CFLAGS) $(OPCODES_CFLAGS) $(READLINE_CFLAGS) $(ZLIBINC) \ $(BFD_CFLAGS) $(INCLUDE_CFLAGS) $(LIBDECNUMBER_CFLAGS) \ $(INTL_CFLAGS) $(INCGNU) $(ENABLE_CFLAGS) $(INTERNAL_CPPFLAGS) @@ -585,7 +583,9 @@ LDFLAGS = @LDFLAGS@ # I think it's perfectly reasonable for a user to set -pg in CFLAGS # and have it work; that's why CFLAGS is here. # PROFILE_CFLAGS is _not_ included, however, because we use monstartup. -INTERNAL_LDFLAGS = $(CFLAGS) $(GLOBAL_CFLAGS) $(MH_LDFLAGS) $(LDFLAGS) $(CONFIG_LDFLAGS) +INTERNAL_LDFLAGS = \ + $(COMPILER_CFLAGS) $(GLOBAL_CFLAGS) $(MH_LDFLAGS) \ + $(LDFLAGS) $(CONFIG_LDFLAGS) # If your system is missing alloca(), or, more likely, it's there but # it doesn't work, then refer to libiberty. diff --git a/gdb/build-with-cxx.m4 b/gdb/build-with-cxx.m4 index d282092..6eb9143 100644 --- a/gdb/build-with-cxx.m4 +++ b/gdb/build-with-cxx.m4 @@ -33,8 +33,11 @@ AC_DEFUN([GDB_AC_BUILD_WITH_CXX], if test "$enable_build_with_cxx" = "yes"; then COMPILER='$(CXX)' + COMPILER_CFLAGS='$(CXXFLAGS)' else COMPILER='$(CC)' + COMPILER_CFLAGS='$(CFLAGS)' fi AC_SUBST(COMPILER) + AC_SUBST(COMPILER_CFLAGS) ]) diff --git a/gdb/configure b/gdb/configure index 701cfcb..26a00d8 100755 --- a/gdb/configure +++ b/gdb/configure @@ -731,6 +731,7 @@ MAKE CCDEPMODE DEPDIR am__leading_dot +COMPILER_CFLAGS COMPILER INSTALL_STRIP_PROGRAM STRIP @@ -5015,12 +5016,15 @@ fi if test "$enable_build_with_cxx" = "yes"; then COMPILER='$(CXX)' + COMPILER_CFLAGS='$(CXXFLAGS)' else COMPILER='$(CC)' + COMPILER_CFLAGS='$(CFLAGS)' fi + # Dependency checking. rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index c33c5d3..9c42fcf 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,9 @@ +2016-01-21 Pedro Alves <palves@redhat.com> + + * Makefile.in (COMPILER_CFLAGS, CXXFLAGS): New. + (INTERNAL_CFLAGS_BASE): Use COMPILER_CFLAGS instead of CFLAGS. + * configure: Regenerate. + 2016-01-21 Yao Qi <yao.qi@linaro.org> * linux-arm-low.c (arm_sigreturn_next_pc): Add parameter diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in index 4719e48..f9b9dbe 100644 --- a/gdb/gdbserver/Makefile.in +++ b/gdb/gdbserver/Makefile.in @@ -51,6 +51,8 @@ RANLIB = @RANLIB@ # The name of the compiler to use. COMPILER = @COMPILER@ +# Set to CFLAGS or CXXFLAGS, depending on compiler/language. +COMPILER_CFLAGS = @COMPILER_CFLAGS@ CC = @CC@ CXX = @CXX@ @@ -129,13 +131,14 @@ WERROR_CFLAGS = @WERROR_CFLAGS@ WARN_CFLAGS_NO_FORMAT = `echo " $(WARN_CFLAGS) " \ | sed "s/ -Wformat-nonliteral / -Wno-format-nonliteral /g"` -# CFLAGS is specifically reserved for setting from the command line +# These are specifically reserved for setting from the command line # when running make. I.E. "make CFLAGS=-Wmissing-prototypes". CFLAGS = @CFLAGS@ +CXXFLAGS = @CXXFLAGS@ CPPFLAGS = @CPPFLAGS@ # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. -INTERNAL_CFLAGS_BASE = ${CFLAGS} ${GLOBAL_CFLAGS} \ +INTERNAL_CFLAGS_BASE = ${COMPILER_CFLAGS} ${GLOBAL_CFLAGS} \ ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CPPFLAGS} INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS) INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) -DGDBSERVER diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure index 763c77d..4a6f26b 100755 --- a/gdb/gdbserver/configure +++ b/gdb/gdbserver/configure @@ -615,6 +615,7 @@ DEPDIR am__leading_dot host_noncanonical target_noncanonical +COMPILER_CFLAGS COMPILER RANLIB AR @@ -4834,12 +4835,15 @@ fi if test "$enable_build_with_cxx" = "yes"; then COMPILER='$(CXX)' + COMPILER_CFLAGS='$(CXXFLAGS)' else COMPILER='$(CC)' + COMPILER_CFLAGS='$(CFLAGS)' fi + # Set the 'development' global. . $srcdir/../../bfd/development.sh |