From: Ulya Trofimovich Date: Tue, 2 Jun 2015 21:29:19 +0000 (+0100) Subject: Respect user CXXFLAGS. X-Git-Tag: 0.15~223 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=658b27b00a59ae5876d631d933bfbd85ef329f27;p=re2c Respect user CXXFLAGS. As automake manual (chapter 27.6 "Flag Variables Ordering") states, CXXFLAGS is a user variable and should be left for users to override C++ compiler flags. Thus we should leave CXXFLAGS as is and modify AM_CXXFLAGS insted. --- diff --git a/re2c/Makefile.am b/re2c/Makefile.am index 2b87c6bc..a510b1d0 100644 --- a/re2c/Makefile.am +++ b/re2c/Makefile.am @@ -1,5 +1,6 @@ # flags # do *not* add CXXFLAGS here, add them in configure.ac +AM_CXXFLAGS = $(CXXFLAGSDEFAULT) BISONFLAGS = -y -d --no-lines RE2CFLAGS = -bi diff --git a/re2c/configure.ac b/re2c/configure.ac index a76725db..6a8dac0d 100644 --- a/re2c/configure.ac +++ b/re2c/configure.ac @@ -33,6 +33,9 @@ AC_PROG_INSTALL # checks for C++ compiler flags +AC_SUBST(CXXFLAGSDEFAULT, []) +# TRY_CXXFLAG (flag) +# appends 'flag' to CXXFLAGSDEFAULT iff C++ compiler knows this flag AC_DEFUN([TRY_CXXFLAG], [ AC_MSG_CHECKING([C++ compiler flag $1]) AS_VAR_SET([CXXFLAGS_BACKUP], ["$CXXFLAGS"]) @@ -40,13 +43,14 @@ AC_DEFUN([TRY_CXXFLAG], [ AC_LANG_PUSH([C++]) AC_COMPILE_IFELSE( [AC_LANG_PROGRAM()], - [AS_VAR_SET([TRY_CXXFLAG_RESULT], [yes])], [ - AS_VAR_SET([TRY_CXXFLAG_RESULT], [no]) - AS_VAR_SET([CXXFLAGS], ["$CXXFLAGS_BACKUP"]) - ] + AS_VAR_SET([TRY_CXXFLAG_RESULT], [yes]) + AS_VAR_SET([CXXFLAGSDEFAULT], ["$CXXFLAGSDEFAULT $1"]) + ], + [AS_VAR_SET([TRY_CXXFLAG_RESULT], [no])] ) AC_LANG_POP([C++]) + AS_VAR_SET([CXXFLAGS], ["$CXXFLAGS_BACKUP"]) AC_MSG_RESULT([$TRY_CXXFLAG_RESULT]) ]) TRY_CXXFLAG([-W])