[#37041] [ANN] Exerb/Exerb-CC 2.6.0 — Yuya Kato <yuya-ml@4th.to>

未踏ユース終了まで1ヶ月を切って、焦り気味のYuyaです。

27 messages 2003/02/02
[#37202] Re: [ANN] Exerb/Exerb-CC 2.6.0 — "TOYOFUKU Chikanobu" <toyofuku@...> 2003/03/02

豊福です。

[#37206] Re: [ANN] Exerb/Exerb-CC 2.6.0 — Yuya Kato <yuya-ml@4th.to> 2003/03/04

Yuyaです。

[#37058] Re: Local variables & blocks — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

27 messages 2003/02/05
[#37059] Re: Local variables & blocks — ichimal@... 2003/02/06

皆様、初めまして鈴木です。

[#37063] Re: Local variables & blocks — matz@... (Yukihiro Matsumoto) 2003/02/07

まつもと ゆきひろです

[#37110] Re: Local variables & blocks — ichimal@... 2003/02/16

鈴木です。

[#37115] Re: Local variables & blocks — Tanaka Akira <akr@...17n.org> 2003/02/17

In article <200302161629.h1GGTvJ5008901@fenix.ne.jp>,

[#37123] 私はこれにハマリました。 — Shin-ichiro HARA <sinara@...> 2003/02/18

原です。

[ruby-list:37084] Re: setup.rb: Patch to ignore CVS,*~,...

From: Minero Aoki <aamine@...>
Date: 2003-02-10 10:14:16 UTC
List: ruby-list #37084
あおきです。

  In mail "[ruby-list:37083] Re: setup.rb: Patch to ignore CVS,*~,..."
    "Shirai,Kaoru" <shirai@korinkan.co.jp> wrote:

>  白井です。

> > もうちょっと言うなら、ruby を使った開発スタイル全体をトータル
> > で考えなおす必要があるのではないでしょうか。そもそもあの面倒な
> > ディレクトリツリーをどうやって開発中に用意しているのかわからな
> > いのですが、どういう状況で開発しているんでしょうか? また、
> > その方法は普遍的に通用するんでしょうか。
> 
>  面倒なとおっしゃいますが、よく考えられた綺麗なツリーだと思いますよ。私
> の場合、あのツリーのまま CVS に入れています。ですから、 install.rb を放
> り込めばそれだけで配布パッケージが完成してしまいます。例えば:

うーむ、本当にそのままなんですね……。それは考えてませんでした。

あのツリーは直接使うにはちょっとツリーが深すぎるような気がするん
ですよ。あと言ったとおり、小さいツールとかをパラパラとその場に
置けないのが嫌です。CVS/ もありますし。


> 今のところ、このツリー以外の形で開発用のソースツリーを持つ理由は考えられ
> ません。青木さんの場合は、開発用と配布用とでは全く別のツリーで管理してい
> るのでしょうか?

はい。ぼくのはこんな感じです。

~/r/
    amstd/
    fileutils/
    missing/
    net/
    strscan/
    tmail/
        T/
            extctrl.rb
            myassert.rb
            testaddress.rb
            testencode.rb
            testheader.rb
                 :
        base64/
            tmbase64.c
        mails/
            cmails.c
        doc/
            address.rrd
            basics.rd
            config.rrd
                :
	ChangeLog
	DEPENDS
	Incompatibilities
	Incompatibilities.ja
            :
	tmail.rb
	tmbase64.so
	unifytmail.rb
	utils.rb
    racc/
        cparse/
    refe/
    remake/
    ripper/

で、開発中は次のようなシンボリックリンクのみのディレクトリを
作っておいて、RUBYLIB=~/lib/ruby としてます。

lib
    ruby
        cscan.so    -> ~/r/strscan/cscan.so
        strscan.rb  -> ~/r/strscan/strscan.rb
        tmail.rb    -> ~/r/tmail/_loadlib.rb
        tmail       -> ~/r/tmail      ※ ファイル単位でリンクを張ることもある
        racc        -> ~/r/racc

そうするといちいちインストールしなくていいので楽なんです。
その代わり中途半端なバージョンのファイルが混じる可能性があります。

配布用には remake というコマンドを使ってゼロから再配置してます。
次のようなファイルを作っておいて remake pack と打つと全部やって
くれるようになってます。(でも pack の定義はここにはない。
environ('rubyprog/tmail') の時点で rubyprog から継承している)


  mount 'racc'

  environ( 'rubyprog/tmail' ) {
    $version   = '0.10.6'

    $packaging = %w( single multi )
    $type      = 'ruby'
    $instpath  = 'tmail'
    $topfile   = '_loadlib.rb'

    $extern_libs = %w( raccrt )

    $view_name = 'TMail'
    $category  = 'mail library'
    $format    = 'ruby script, ruby extention'
    $require   = 'ruby(>=1.6), C compiler'
    $license   = 'LGPL'

    $manual = true
    $since  = 1998

    $description = {}
    $description['ja'] = <<'----'
        ……略……
    ----

    $rubysrc = %w(
      _loadlib.rb
      address.rb
      base64.rb
        ……略……

    environ( 'mails' ) {
      $dir      = $dir + '/sc'

      $type     = 'ext'
      $package  = 'tmail'
      $instpath = 'tmail'
      $topfile  =  nil

      $c        = %w( mails.c )
      $tools    = %w( extconf.rb depend MANIFEST )
    }

    environ( 'b64' ) {
      $dir      = $dir + '/b64'

      $type     = 'ext'
      $package  = 'tmail'
      $instpath = 'tmail'
      $topfile  =  nil

      $c     = %w( tmbase64.c )
      $tools = %w( extconf.rb depend MANIFEST )
    }
  }


このツールは便利って言えば便利なんですが、ちょっとデータを連動させ
すぎて逆に不便になってきたんで、作り直そうと思ってるところです。
-------------------------------------------------------------------
青木峰郎

In This Thread