[#47383] [ruby-trunk - Feature #8469][Open] ABI checker とか導入しませんか — "kosaki (Motohiro KOSAKI)" <kosaki.motohiro@...>

21 messages 2013/06/01
[#47394] [ruby-trunk - Feature #8469] ABI checker とか導入しませんか — "usa (Usaku NAKAMURA)" <usa@...> 2013/06/04

[#47395] Re: [ruby-trunk - Feature #8469] ABI checker とか導入しませんか — KOSAKI Motohiro <kosaki.motohiro@...> 2013/06/04

> CIに組み込んでもらえるとちょー助かる感じですぅ

[#47396] Re: [ruby-trunk - Feature #8469] ABI checker とか導入しませんか — Tanaka Akira <akr@...> 2013/06/04

2013年6月4日 14:23 KOSAKI Motohiro <[email protected]>:

[#47397] Re: [ruby-trunk - Feature #8469] ABI checker とか導入しませんか — KOSAKI Motohiro <kosaki.motohiro@...> 2013/06/04

>> CI って誰に相談すればいいんですかね。今のツールだと比較対象のバイナリまたは

[#47399] Re: [ruby-trunk - Feature #8469] ABI checker とか導入しませんか — Tanaka Akira <akr@...> 2013/06/05

2013年6月4日 15:26 KOSAKI Motohiro <[email protected]>:

[#47402] Re: [ruby-trunk - Feature #8469] ABI checker とか導入しませんか — KOSAKI Motohiro <kosaki.motohiro@...> 2013/06/05

>>> 比較対象を用意しないといけないのが面倒くさそうでほったらかしてたんですが。

[#47422] [ruby-trunk - Feature #8526][Open] Removing tk from Ruby repository — "naruse (Yui NARUSE)" <naruse@...>

26 messages 2013/06/14

[ruby-dev:47432] [ruby-trunk - Bug #8524] r40755以降 No rule to make target `.ext/include/sparc64-solaris2.10/ruby/config.h でビルドできない

From: "knu (Akinori MUSHA)" <knu@...>
Date: 2013-06-14 12:36:17 UTC
List: ruby-dev #47432
Issue #8524 has been updated by knu (Akinori MUSHA).


${var:+val} がサポートされていないってのはちょっとした驚きでした。少なくともSUSv2/UNIX98では定義されているので。
OpenIndianaだと/bin/shはksh93になっているようで、エラーは出ませんでした。

後学のために教えていただきたいのですが、 ${var+val} だとOKでしょうか。
あと、 ${var:-val} / ${var-val} もよく使うので気になります…。
----------------------------------------
Bug #8524: r40755以降 No rule to make target `.ext/include/sparc64-solaris2.10/ruby/config.h でビルドできない
https://bugs.ruby-lang.org/issues/8524#change-39930

Author: ngoto (Naohisa Goto)
Status: Closed
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: build
Target version: 
ruby -v: -
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


r40755以降、Solarisでは、以下のように .ext/include/アーキテクチャ/ruby/config.h が作成されません。

原因は、r40755にて以下の行が./tool/ifchange に追加されたためです。

 @@ -30,6 +37,7 @@
      rm -f "$temp"
  else
      echo "$target updated"
 +    ${keepsuffix:+ mv -f "$target" "${target}${keepsuffix}" }
      mv -f "$temp" "$target"
  fi

この tool/ifchangeは #!/bin/sh なのに、基本的な/bin/shでは解釈できない(bash依存?)記述が追加されたため、Solarisのようにピュアな/bin/shを持つOSでは、そこで処理がストップし、しかしconfigureではエラーを検知できないらしく、そのままconfig.hが作成されないままconfigureが正常終了してしまうのが原因のようです。

 $ ./configure --prefix=/hoge/hoge/hoge
 (中略)
 checking for nroff... /usr/bin/nroff
 .ext/include/sparc64-solaris2.10/ruby/config.h updated
 ./tool/ifchange: bad substitution
 verconf.h updated
 ./tool/ifchange: bad substitution
 ruby library version = 2.1.0
 configure: creating ./config.status
 config.status: creating GNUmakefile
 config.status: creating Makefile
 config.status: creating ruby-2.1.pc
 $ make V=1
        CC = cc
        LD = /usr/ccs/bin/ld
        LDSHARED = cc -G
        CFLAGS = -xO1 -xtarget=sparc64viiplus -m64
        XCFLAGS = -DRUBY_EXPORT
        CPPFLAGS = -I/usr/local/64/lib/libffi-3.0.10/include -I/usr/local/64/include   -I. -I.ext/include/sparc64-solaris2.10 -I./include -I.
        DLDFLAGS = -m64  -L/usr/local/64/lib -R/usr/local/64/lib  -m64
        SOLIBS = 
 cc: Sun C 5.12 SunOS_sparc 2011/11/16
 make: *** No rule to make target `.ext/include/sparc64-solaris2.10/ruby/config.h', needed by `main.o'.  Stop.


 


-- 
http://bugs.ruby-lang.org/

In This Thread