[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:003641] Re: ruby gemについて
- To: "Takeshi Horinouchi" <horinout@xxxxxxxxxxxxxxxxx>
- Subject: [dennou-ruby:003641] Re: ruby gemについて
- From: Youhei SASAKI <uwabami@xxxxxxxxxxxxxx>
- Date: Tue, 02 Apr 2013 17:43:49 +0900
- Cc: dennou-ruby@xxxxxxxxxxx
佐々木です.
手前味噌ですが, RDtool に関しては bundler 等は使わずに gem を生成していま
す. racc からファイルを生成する部分があるので, ちょっと素の場合とは違い
ますが, 御参考までに.
https://github.com/uwabami/rdtool/blob/master/Rakefile
At 2 Apr 2013 17:13:59 +0900,
"Takeshi Horinouchi" <horinout@xxxxxxxxxxxxxxxxx> wrote:
>
> 堀之内です。
>
> > > 2年ほど?前 に、dennou-ruby プロダクトの顔をそろえましょうという提案をし、
> > > http://davis.gfd-dennou.org/rubygadgets/ja/?%28Others%29+Dennou+Ruby+%C0%BD%C9%CA%A5%C6%A5%F3%A5%D7%A5%EC%A1%BC%A5%C8
> > > に案を作りました。
>
> について質問です。(面倒かけてすみませんがよろしくお願いします。)
>
> | == ディレクトリ構成
> ...
> | == インストール
> ...
> | rake nongeminstall とする (名前は要検討)
>
> は特に異論ありません。rake のタスク名も nongeminstall
> でまあいいかと。カッコよくはないですがわかりやすいし,
> 基本 (rake install) は gem というので良いと思います。
>
> | == Gem
> | * スペックを name.gemspec ファイルにわかるか、 Rakefile に書くか
> | * 分けたほうがそれぞれ変更しやすいのでは?
>
> すみませんが,分けるかどうかといっても何をどうというのがないと
> わかってない私にはつらいです。解説か具体例がほしいなぁ。
>
> | * rake build で作成
> | * build という名前は bundler の仕様
>
> タスクの名前が bundler に合わせてあること自体は構わないです。
>
> | * lib/numru/a/b/ ディレクトリ以下に、version.rb を用意し、
> | NumRu::A::B::VERSION 定数を定義するようにする
>
> これもいいと思います。
>
> | == Rakefile
> | * 拡張ライブラリのコンパイル、インストール、gem 作成、
> | source tar ball, test 実行のタスクを定義する
>
> すみません,その具体例がほしいです。
> 前のメールに私がかいたように,なにか良いチュートリアルページ
> ないですかね。
>
> | === テンプレート案
> | # -*- mode: ruby; coding: utf-8 -*-
> | require 'rake/packagetask'
> | require 'rake/clean'
> | begin
> | require 'bundler/gem_tasks'
>
> これは bundler を使う例ですね。
>
> とりあえず bundler 等のツールを使わないで,
> 「Dennou Ruby 製品テンプレート」案に
> 準拠した例がほしいです。拡張ライブラリも含むのが良いです。
> rb-grib はまさに準拠してる?(迷ってた部分は結局どうしましたか)
> 他にはいい例ないでしょうか。
>
> # あとは外部の依存ライブラリ判断をしてるのがあれば
> というところでしょうか。
---
Youhei SASAKI, Ph.D.
Department of Mathematics, Kyoto University
E-mail: <uwabami@xxxxxxxxxxxxxx>
<uwabami@xxxxxxxxxxxxxxxxxx>
GPG fingerprint:
4096/RSA: 66A4 EA70 4FE2 4055 8D6A C2E6 9394 F354 891D 7E07