From: SHIROYAMA Takayuki Date: 1998-11-27T17:16:14+09:00 Subject: [ruby-list:11105] Re: ruby 1.1c9 released 白山@Stellarです。 # これから Linuxセミナー行きです。。。。うぅ、今日が # オフだとわかってたら空けておいたのに。。。しくしく ruby-1.1c9 を MacOS X Server( Rhapsody )でコンパイルする 為のパッチです。 主な修正点は * MacOS X Server( Rhapsody )を認識する為に config.guess, configure.in を変更 * eval.cの thread_createがライブラリの内部関数とあたるので ごまかし (これは、great renaming がおこなわれれば不要になります) の2点です。うちでは dynamic loadを含め、すべて快調に動いて おります。 とりいそぎ、御報告まで --- SHIROYAMA Takayuki : psi@tokyo.stellar.co.jp diff -rcN ruby-1.1c9.org/configure.in ruby-1.1c9/configure.in *** ruby-1.1c9.org/configure.in Mon Nov 16 11:03:49 1998 --- ruby-1.1c9/configure.in Fri Nov 27 16:36:59 1998 *************** *** 34,66 **** AC_ARG_ENABLE( fat-binary, [--enable-fat-binary build a NeXT/Apple Multi Architecture Binary. ], [ fat_binary=$enableval ] ) ! if test "$fat_binary" = yes ; then AC_MSG_CHECKING( target architecture ) ! if test "$host_os" = "rhapsody" ; then ! echo -n "Rhapsody: " ! if test "$TARGET_ARCHS" = "" ; then ! TARGET_ARCHS="ppc i486" ! fi ! else ! echo -n "NeXTSTEP/OPENSTEP: " if test "$TARGET_ARCHS" = "" ; then if test `/usr/bin/arch` = "m68k" ; then TARGET_ARCHS="m68k i486" ! else TARGET_ARCHS="m68k `/usr/bin/arch`" fi fi ! fi ! # /usr/lib/arch_tool -archify_list $TARGET_ARCHS ! for archs in $TARGET_ARCHS ! do ! ARCH_FLAG="$ARCH_FLAG -arch $archs " ! echo -n " $archs" ! done ! AC_DEFINE( NEXT_FAT_BINARY ) ! echo "." fi AC_ARG_PROGRAM --- 34,69 ---- AC_ARG_ENABLE( fat-binary, [--enable-fat-binary build a NeXT/Apple Multi Architecture Binary. ], [ fat_binary=$enableval ] ) ! if test "$fat_binary" = yes ; then AC_MSG_CHECKING( target architecture ) ! case "$host_os" in ! rhapsody*) ! echo -n "MacOS X Server: " ! if test "$TARGET_ARCHS" = "" ; then ! TARGET_ARCHS="ppc i386" ! fi ! ;; ! nextstep*|openstep*) ! echo -n "NeXTSTEP/OPENSTEP: " if test "$TARGET_ARCHS" = "" ; then if test `/usr/bin/arch` = "m68k" ; then TARGET_ARCHS="m68k i486" ! else # Black and Native one TARGET_ARCHS="m68k `/usr/bin/arch`" fi fi ! ;; ! esac ! # /usr/lib/arch_tool -archify_list $TARGET_ARCHS ! for archs in $TARGET_ARCHS ! do ! ARCH_FLAG="$ARCH_FLAG -arch $archs " ! echo -n " $archs" ! done ! AC_DEFINE( NEXT_FAT_BINARY ) ! echo "." fi AC_ARG_PROGRAM diff -rcN ruby-1.1c9.org/eval.c ruby-1.1c9/eval.c *** ruby-1.1c9.org/eval.c Tue Nov 17 18:12:30 1998 --- ruby-1.1c9/eval.c Fri Nov 27 16:39:04 1998 *************** *** 6256,6262 **** --- 6256,6267 ---- static VALUE thread_raise _((int, VALUE*, VALUE)); + /* Dirty patch;-( */ + #if defined( NeXT ) && defined( __APPLE__ ) && defined(__MACH__) + static VALUE + #else VALUE + #endif thread_create(fn, arg) VALUE (*fn)(); void *arg; diff -rcN ruby-1.1c9.org/config.guess ruby-1.1c9/config.guess *** ruby-1.1c9.org/config.guess Tue Jun 16 10:25:16 1998 --- ruby-1.1c9/config.guess Fri Nov 27 17:04:51 1998 *************** *** 740,745 **** --- 740,760 ---- BePC:BeOS:*:*) echo i586-pc-beos exit 0 ;; + + *:Rhapsody:*:*) + arch=`/usr/bin/arch` + case "$arch" in + ppc) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + ;; + i[3456]86) + echo i386-apple-rhapsody${UNAME_RELEASE} + ;; + *) + echo $arch-apple-rhapsody${UNAME_RELEASE} + ;; + esac + exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2