From: Nobuyoshi Nakada Date: 2008-07-11T14:18:22+09:00 Subject: [ruby-dev:35437] Re: cc always picks ruby/ruby.h on OS X なかだです。 At Wed, 9 Jul 2008 22:12:21 +0900, Nobuyoshi Nakada wrote in [ruby-dev:35412]: > >  OS X の gcc には仕掛けがあり、 ruby 1.9 が入っていなくても > > #include は > > > > /System/Library/Frameworks/Ruby.framework/Headers/ruby.h > > > > を拾ってしまいます。(framework名/Headers以下のパス) > > その場合、ruby/ruby.hを読むためには #include > としなければならないんでしょうか。 少なくとも #inlcude "ruby.h" は動くんですよね。以下のようにして みようかと思いますが、OS Xで問題はでないでしょうか。 Index: regint.h =================================================================== --- regint.h (revision 18021) +++ regint.h (working copy) @@ -814,5 +814,5 @@ extern int onig_is_code_in_cc_len P_((i typedef void hash_table_type; #ifdef RUBY -#include +#include "ruby/st.h" typedef st_data_t hash_data_type; #else Index: include/ruby.h =================================================================== --- include/ruby.h (revision 18021) +++ include/ruby.h (working copy) @@ -13,7 +13,25 @@ #define RUBY_H 1 -#include +#define HAVE_RUBY_DEFINES_H 1 +#define HAVE_RUBY_ENCODING_H 1 +#define HAVE_RUBY_INTERN_H 1 +#define HAVE_RUBY_IO_H 1 +#define HAVE_RUBY_MISSING_H 1 +#define HAVE_RUBY_MVM_H 1 +#define HAVE_RUBY_NODE_H 1 +#define HAVE_RUBY_ONIGURUMA_H 1 +#define HAVE_RUBY_RE_H 1 +#define HAVE_RUBY_REGEX_H 1 +#define HAVE_RUBY_RUBY_H 1 +#define HAVE_RUBY_SIGNAL_H 1 +#define HAVE_RUBY_ST_H 1 +#define HAVE_RUBY_UTIL_H 1 +#ifdef _WIN32 +#define HAVE_RUBY_WIN32_H 1 +#endif + +#include "ruby/ruby.h" #if RUBY_VM -#include +#include "ruby/mvm.h" #endif Index: include/rubyio.h =================================================================== --- include/rubyio.h (revision 18021) +++ include/rubyio.h (working copy) @@ -1 +1 @@ -#include +#include "ruby/io.h" Index: include/rubysig.h =================================================================== --- include/rubysig.h (revision 18021) +++ include/rubysig.h (working copy) @@ -1 +1 @@ -#include +#include "ruby/signal.h" Index: include/ruby/intern.h =================================================================== --- include/ruby/intern.h (revision 18021) +++ include/ruby/intern.h (working copy) @@ -27,5 +27,5 @@ extern "C" { # include #endif -#include +#include "ruby/st.h" /* -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦