From 526ffc53e9cd27ec1d9d28790cfff81afde1866f Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 19 Apr 2013 02:37:06 +0000 Subject: [PATCH] configure.in: -g and -fstack-protector flags can't work together on SmartOS * configure.in (stack_protector): control use of -fstack-protector. * configure.in (debugflags): let -fstack-protector precede and disable debugflags, because they can't work together on SmartOS. [Bug #8268] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 9 +++++++++ configure.in | 14 +++++++------- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 94cc44dfa5..33b1905303 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Fri Apr 19 11:36:53 2013 Nobuyoshi Nakada + + together on SmartOS + + * configure.in (stack_protector): control use of -fstack-protector. + + * configure.in (debugflags): let -fstack-protector precede and disable + debugflags, because they can't work together on SmartOS. [Bug #8268] + Fri Apr 19 07:43:52 2013 NARUSE, Yui * test/openssl/test_cipher.rb: Correct a typo diff --git a/configure.in b/configure.in index ede3f9c3c3..6fce07860f 100644 --- a/configure.in +++ b/configure.in @@ -705,10 +705,6 @@ if test "$GCC:${warnflags+set}:no" = yes::no; then warnflags= fi if test "$GCC" = yes; then - test "${debugflags+set}" || {RUBY_TRY_CFLAGS(-ggdb3, [debugflags=-ggdb3])} - test "${debugflags+set}" || {RUBY_TRY_CFLAGS(-ggdb, [debugflags=-ggdb])} - test "${debugflags+set}" || {RUBY_TRY_CFLAGS(-g3, [debugflags=-g3])} - # -D_FORTIFY_SOURCE # When defined _FORTIFY_SOURCE, glibc enables some additional sanity # argument check. The performance drop is very little and Ubuntu enables @@ -720,13 +716,13 @@ if test "$GCC" = yes; then AS_CASE(["$target_os"], [mingw*|nacl|haiku], [ stack_protector=no - ], - [ + ]) + if test -z "${stack_protector+set}"; then RUBY_TRY_CFLAGS(-fstack-protector, [stack_protector=yes], [stack_protector=no]) if test "x$stack_protector" = xyes; then RUBY_TRY_LDFLAGS(-fstack-protector, [], [stack_protector=broken]) fi - ]) + fi if test "x$stack_protector" = xyes; then RUBY_APPEND_OPTION(XCFLAGS, -fstack-protector) RUBY_APPEND_OPTION(XLDFLAGS, -fstack-protector) @@ -758,6 +754,10 @@ if test "$GCC" = yes; then # suppress annoying -Wstrict-overflow warnings RUBY_TRY_CFLAGS(-fno-strict-overflow, [RUBY_APPEND_OPTION(XCFLAGS, -fno-strict-overflow)]) + + test "${debugflags+set}" || {RUBY_TRY_CFLAGS(-ggdb3, [debugflags=-ggdb3])} + test "${debugflags+set}" || {RUBY_TRY_CFLAGS(-ggdb, [debugflags=-ggdb])} + test "${debugflags+set}" || {RUBY_TRY_CFLAGS(-g3, [debugflags=-g3])} fi test $ac_cv_prog_cc_g = yes && : ${debugflags=-g}