[前][次][番号順一覧][スレッド一覧]

ruby-changes:33299

From: knu <ko1@a...>
Date: Fri, 21 Mar 2014 21:59:13 +0900 (JST)
Subject: [ruby-changes:33299] knu:r45378 (trunk): Fix a build problem with clang and --with-opt-dir.

knu	2014-03-21 21:59:08 +0900 (Fri, 21 Mar 2014)

  New Revision: 45378

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=45378

  Log:
    Fix a build problem with clang and --with-opt-dir.
    
    * configure.in: Fix a build problem with clang and --with-opt-dir.
      If ruby is configured with --with-opt-dir=dir when using clang
      as compiler, a warning `clang: warning: argument unused during
      compilation: '-I dir'` is emitted almost every time clang
      compiles a file.  Unfortunately, RUBY_CHECK_PRINTF_PREFIX takes
      any output from the compiler as fatal error, and the check thus
      fails due to the warning.  This is an attempt to fix the problem
      by adding a flag -Qunused-arguments to CFLAGS locally in the
      function to suppress the warning. [ruby-dev:48062] [Bug #9658]
      [Fixes GH-571] https://github.com/ruby/ruby/pull/571

  Modified files:
    trunk/ChangeLog
    trunk/configure.in
Index: configure.in
===================================================================
--- configure.in	(revision 45377)
+++ configure.in	(revision 45378)
@@ -779,6 +779,8 @@ if test "$GCC:${warnflags+set}:no" = yes https://github.com/ruby/ruby/blob/trunk/configure.in#L779
     rb_cv_warnflags="$warnflags"
     warnflags=
 fi
+RUBY_TRY_CFLAGS(-Qunused-arguments, [RUBY_APPEND_OPTIONS(rb_cv_wsuppress_flags, -Qunused-arguments)])
+
 if test "$GCC" = yes; then
     # -D_FORTIFY_SOURCE
     # When defined _FORTIFY_SOURCE, glibc enables some additional sanity
@@ -1302,7 +1304,8 @@ AC_DEFINE_UNQUOTED(PACKED_STRUCT_UNALIGN https://github.com/ruby/ruby/blob/trunk/configure.in#L1304
 AC_DEFUN([RUBY_CHECK_PRINTF_PREFIX], [
 AC_CACHE_CHECK([for printf prefix for $1], [rb_cv_pri_prefix_]AS_TR_SH($1),[
     [rb_cv_pri_prefix_]AS_TR_SH($1)=[NONE]
-    RUBY_WERROR_FLAG(for pri in $2; do
+    RUBY_WERROR_FLAG(RUBY_APPEND_OPTIONS(CFLAGS, $rb_cv_wsuppress_flags)
+    for pri in $2; do
         AC_TRY_COMPILE(
             [@%:@include <stdio.h>
 	    @%:@include <stddef.h>
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 45377)
+++ ChangeLog	(revision 45378)
@@ -1,3 +1,16 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1
+Fri Mar 21 21:57:34 2014  Akinori MUSHA  <knu@i...>
+
+	* configure.in: Fix a build problem with clang and --with-opt-dir.
+	  If ruby is configured with --with-opt-dir=dir when using clang
+	  as compiler, a warning `clang: warning: argument unused during
+	  compilation: '-I dir'` is emitted almost every time clang
+	  compiles a file.  Unfortunately, RUBY_CHECK_PRINTF_PREFIX takes
+	  any output from the compiler as fatal error, and the check thus
+	  fails due to the warning.  This is an attempt to fix the problem
+	  by adding a flag -Qunused-arguments to CFLAGS locally in the
+	  function to suppress the warning. [ruby-dev:48062] [Bug #9658]
+	  [Fixes GH-571] https://github.com/ruby/ruby/pull/571
+
 Fri Mar 21 16:31:56 2014  Zachary Scott  <e@z...>
 
 	* gc.c: [DOC] Fix call-seq for GC.start by @jasonrclark [Fixes GH-572]

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]