ruby-changes:18415
From: nobu <ko1@a...>
Date: Fri, 31 Dec 2010 11:47:01 +0900 (JST)
Subject: [ruby-changes:18415] Ruby:r30438 (trunk): * configure.in (warnflags), lib/mkmf.rb (configuration): turn
nobu 2010-12-31 11:46:50 +0900 (Fri, 31 Dec 2010) New Revision: 30438 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=30438 Log: * configure.in (warnflags), lib/mkmf.rb (configuration): turn warnings into errors only for bundled extensions. [ruby-core:33815] Modified files: trunk/ChangeLog trunk/configure.in trunk/lib/mkmf.rb Index: configure.in =================================================================== --- configure.in (revision 30437) +++ configure.in (revision 30438) @@ -444,10 +444,23 @@ ]) if test "$GCC:${warnflags+set}:no" = yes::no; then - for wflag in -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings \ + particular_werror_flags=yes + for wflag in -Wno-unused-parameter -Wno-parentheses -Wno-long-long \ + -Wno-missing-field-initializers \ + -Werror=pointer-arith \ + -Werror=write-strings \ -Werror=declaration-after-statement \ - -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long; do - RUBY_TRY_CFLAGS($wflag, [warnflags="${warnflags+$warnflags }$wflag"]) + -Werror=shorten-64-to-32; do + test "$particular_werror_flags" = yes || wflag=`echo x$wflag | sed 's/^x-Werror=/-W/'` + ok=no + RUBY_TRY_CFLAGS($wflag, [warnflags="${warnflags+$warnflags }$wflag" ok=yes]) + AS_CASE([$ok:$wflag], [no:-Werror=*], [ + wflag=`echo x$wflag | sed 's/^x-Werror=/-W/'` + RUBY_TRY_CFLAGS($wflag, [ + warnflags="${warnflags+$warnflags }$wflag" + particular_werror_flags=no + ]) + ]) done AS_CASE([" $warnflags "],[*" -Wno-missing-field-initializers "*], [wflag=-Wextra], [wflag=-Wall]) Index: ChangeLog =================================================================== --- ChangeLog (revision 30437) +++ ChangeLog (revision 30438) @@ -1,3 +1,9 @@ +Fri Dec 31 11:46:47 2010 Nobuyoshi Nakada <nobu@r...> + + * configure.in (warnflags), lib/mkmf.rb (configuration): turn + warnings into errors only for bundled extensions. + [ruby-core:33815] + Fri Dec 31 11:15:57 2010 Nobuyoshi Nakada <nobu@r...> * ext/zlib/zlib.c (sizeof): zlib.h mistakenly assumes the result Index: lib/mkmf.rb =================================================================== --- lib/mkmf.rb (revision 30437) +++ lib/mkmf.rb (revision 30438) @@ -1658,6 +1658,10 @@ end possible_command = (proc {|s| s if /top_srcdir/ !~ s} unless $extmk) extconf_h = $extconf_h ? "-DRUBY_EXTCONF_H=\\\"$(RUBY_EXTCONF_H)\\\" " : $defs.join(" ") << " " + if warnflags = CONFIG['warnflags'] and CONFIG['GCC'] == 'yes' and !$extmk + # turn warnings into errors only for bundled extensions. + warnflags = warnflags.gsub(/(?:\A|\s)-Werror=/, '\1-W') + end mk << %{ CC = #{CONFIG['CC']} CXX = #{CONFIG['CXX']} @@ -1672,7 +1676,7 @@ cflags = #{CONFIG['cflags']} optflags = #{CONFIG['optflags']} debugflags = #{CONFIG['debugflags']} -warnflags = #{CONFIG['warnflags']} +warnflags = #{warnflags} CFLAGS = #{$static ? '' : CONFIG['CCDLFLAGS']} #$CFLAGS #$ARCH_FLAG INCFLAGS = -I. #$INCFLAGS DEFS = #{CONFIG['DEFS']} -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/