Just another Ruby porter,

〜2002年4月下旬〜


<Older(,) | Newer(.)> | Recent(/)>> | RDF

2002-04-21 (Sun)

[Cygwin] latest, contrib -> release

なにげなくCygwinのmirror siteを見に行くとディレクトリ構成が変わっていた。 latest, contribはreleaseという1個のディレクトリに統合されたようだ。 ほぅ。release/XFree86というディレクトリまである。

[Ruby] ext/socket/extconf.rb

have_struct_memberを使うべきだったか?

have_struct_member("sockaddr_storage", "ss_family",
  /mswin32|mingw/ =~ RUBY_PLATFORM ? nil :
    %w[sys/types.h netdb.h string.h sys/socket.h])

うーむ。あまりうれしくない。 それはそれとしてtry_compileってなかったのか。

ccacheの不思議

cache missした場合どのくらい遅くなるのか、Rubyをmakeして計ってみた。

% time make
make  889.25s user 59.64s system 97% cpu 16:11.20 total
% rm -rf ~/.ccache/*
% vi config.cache # ac_cv_prog_CCとac_cv_prog_CPPにccacheをprefix
% ./cofnig.cache
% time make
make  893.82s user 64.05s system 98% cpu 16:09.27 total

変わらないよ。なぜに?

cvs 1.11.2

更新。

[Ruby] cleanups

いっそのことMichal Rokosさんにはcommitterになってもらうのがいいという気も。

[Ruby] socket

typoがあって常にsockaddr_storageがないことになってました。

[GCC] rsync server

% rsync rsync://gcc.gnu.org/

でリストが得られる。cygwin-cvsもあるのか。でも思ってたのと違うなあ。

AC_INIT

他のソフトではどうなっているのか、動向を探る。 ccacheもrsyncも引数に何も指定してない。 なるほど単に

AC_INIT()

だけでいいわけだ。そうしよう。

spam

最近mortgageという単語を含むsubjectのspamが多い。


2002-04-22 (Mon)

[GCC] rsync server

gcc.gnu.org::で公開してるのはCVSのrepositoryだった。 cygwinだと

gcc.gnu.org::src-cvs/winsup/

にある。これを取ってくるということは結局CVSupと変わりないんだよね。

[Ruby] rsync server

Rubyもrsync serverで公開するってのはどうだろう? CVSだとfirewallに阻まれるとかあるし。 commit権がない人にはrsyncで十分のような気も。

[Cygwin] mirror

というわけで

% rsync -auvz --delete --progress gcc.gnu.org::cygwin-ftp/'[rs]*' .

でmirrorしてみる。lftpgetでmirrorするよりは速い。

メールの流量

なぜだか今日はメールの量が少なかった。いつもの半分ぐらいだ。


2002-04-23 (Tue)

Ruby アプリケーションプログラミング

来ました。ありがとうございます。 連休前というのがなかなかぴったりの時期だ。 欄外に JARH が載ってるのでよろしく。 自分も何が選ばれたのか知らないので楽しみ。

Win32OLE 0.4.8

更新。

ruby-google 0.3.0

更新。

MinGW版ruby

1.7のsample/test.rbの最後にあるコードなんだけど、MinGW版rubyでSEGVになる。

class S
  def initialize(a)
    @a = a
  end
end
l=nil
100000.times {
  l = S.new(l)
}

1.6.6あたりで実行してもSEGVだ。うぅむ。

[Ruby] SH3 でクロスコンパイル

それはたぶん

--host=i686-pc-linux-gnu

じゃなくて

--host=sh3-linux

かな。


2002-04-24 (Wed)

PR#294, 295, 296, 297, 298

これってvirusだよね。困ったもんだな。

ruby-core

ruby-dev MLの英語版。

mkmf.rbを利用してextmk.rbを書く

LINKは$hdrdirじゃなくて$topdirにする。 じゃなくて、%sにして topdirを外から与える。

require 'mkmf'

の後に再度

$topdir = File.expand_path("..")

しとけばよさそう。そういった意味ではLINKはブロックになってると、 評価された時点での変数の値を参照できて都合よさげ? なんとなく [ruby-list:34885] から始まる話の逆のような気も。

install_rbの引数に互換性がない。 あ、この中で閉じてると思えば別に構わないか。

なんとかなりそう?

stack overflow

GNU ldのChangeLogによるとstack sizeがいつのまにか32MBから2MBに変更されてた。

2001-06-05  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>

        * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.

とりあえず以前のように32MB確保しとく。


2002-04-25 (Thu)

うたばん

Gackt面白すぎ。

ruby-talk news gateway

また止まってるらしい。がくっとメールの量が減るのでなんとなくわかる。

mkmf.rbを利用してextmk.rbを書く

create_makefileを一行ずつ比較してみた。mkmf.rbでは

lib.sub!(/-l(.*)/, '"lib\1.a"')

で、extmk.rbは

lib.sub!(/-l(.*)/, %%"lib\\1.#{$LIBEXT}"%)

となっているのが気になる。 $LIBEXTという存在が悩ましい。 OBJEXTやEXEEXTと基本的には同じものなので、 rbconfig.rbにあるべきか? とりあえずはmkmf.rbへ移動だな。

STDOUT.flushが多用されてるのにも気づいた。これもsyncで良さそう。

LINKとCPPの$topdirは関数にするだけで十分だと気づく。

そういえばdefflagはdeffileに名前を変えるべきだったか? でもmswin32ではflagとして使うかもしれないし、このままにしとこう。

LIBRUBYARGの処理も微妙に違うなあ。

うーむ。なかなか進まん。


2002-04-26 (Fri)

mkmf.rbを利用してextmk.rbを書く

グローバル変数が多いよねえ。やはりcreate_makefileがかなりやっかいだ。 これだけはextmk.rbに残すという手もあるが、それは負けだ。 てゆかかなり負け気味ではある。

それより1.7のmkmf.rbを見てたらクロスの環境が心配になってきた。 そっちの確認のほうが先だな。


2002-04-27 (Sat)

[Ruby] NArray

NArrayが標準添付になるかもしれないので、DJGPPでコンパイルしてみる。 sincosでエラーになる。あまり聞いたことのない関数だが、NArrayでは

void sincos(double x, double *s, double *c);

を期待してる模様。一方DJGPPでは

void sincos(double *s, double *c, double x);

なので引数が違う。 /usr/include/bits/mathinline.hやdietlibcのmath.hを見るとDJGPPが間違っているようだ。 これはちょっといやだな。

patch 2.5.4

@niftyのFLINUXでの情報によるとpatch 2.5.3だとDOS line endingsなパッチファイルも

(Stripping trailing CRs from patch.)

という警告だけでちゃんと処理するらしい。 というわけで最新らしいpatch 2.5.4に上げてみた。


2002-04-28 (Sun)

impgen.rb

bcc対応のパッチを見てて、 どうせならlibtoolのimpgen.cをRubyへ移植してみたらどうだろうと思い作ってみた。

あ、これってDLLのsymbolだけなのか。だめじゃん。


2002-04-29 (Mon)

extmk.log

try_cppの結果は標準エラー出力だけのほうがいいな。

dnsmasq 1.5

更新。

REXML

更新。

OpenPATCH

fgetlnというのがBSD特有の関数らしい。


2002-04-30 (Tue)

Undo

C-x uとか。

Borland C++ Compiler C 5.5.1

変なところ。-Eが別の意味になっている。-o, -eの後には空白があってはいけない。 chcp 437してもメッセージが日本語のまま。 Makefileの中では{}が特別な意味を持つ。あ、これはmakeの話。

PR#302

MIME-Versionとかmultipartとかのヘッダを削除してしまうのなら、 最初から受け付けなくてもいいんじゃないかな。 この手のうっとうしいvirusとか、こわれてしまうパッチとか来てもうれしくないし。

@nifty

とりあえずあと一ヶ月やめるかどうか考えよう。


<Older(,) | Newer(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!