$shibayu36->blog;読者になる$shibayu36->blog;株式会社アンドパッドでエンジニアをしています。プログラミングや読書のことなどについて書いています。話を見ていて、興味が湧いたというのと、CPANモジュールを作ってもそういうところは無視してしまっていたので、これは良くないと思い少しだけ調べた。CPANモジュールのパッケージングの歴史に非常によく説明されているので、これを見るのが一番手っ取り早い。xtこの辺りは説明はいらなそう。libは本体のモジュール、binは実行ファイル、tはテスト、xtはAuthorテストを入れていることが多い。LICENSEここも説明はいらなそう。READMEは言わずもがな、Changesは変更、LICENSEはライセンス情報。Makefile.PLビルド用の情報を設定しておくファイル。author情報とかversion情報とか依存関係とか。META.jsonこのあたりからよくわからないファイルとしてこれまで扱っていた。META.ymlは本当に簡単に言うと、単なるモジュールのメタデータ。author情報とかversion情報とか依存関係とかが書かれている。ここまで聞くとBuild.PLとかと同じ情報ばっかりという感じなのだが、これがあることで例えばCPANのサイトでBuild.PLを実行しなくとも依存モジュールなどの情報を知ることが出来る。Build.PLを実行する前にどのモジュールが必要かということを知るためにも利用することが可能。これがconfigure_requiresと言われているもの。技術評論社https://www.socialtext.net/perl5/configure_requiresさらにMETA.jsonはそれをjson化したもの。[blogs.perl.org]あたりが詳しそう。MYMETA.jsonこのファイルについてはいまいちよく分からなかった。user側で作られるファイルらしい。パッケージングには含めない。具体的にどのような状況下で有用になるのか、僕にはよく分からなかった。blibモジュールがインストールされる実際の配置通りに作られる。testした時、MANIFESTに漏れがあるとテストが動かないとかでわかるみたいなのがありそう。beweging>あたりがblibについてと、モジュールをインストールする際のmakeの挙動について詳しい。Browserあたりを参照。まとめ今回はCPANモジュールを作るときによく見るファイルについて調べたことについてまとめてみた。いう感じで興味に湧いたことをなんとなく調べるのは楽しい。このへんの知識があるとcpanmとかcartonのコードが読めそうな気がするので、今度読んでみようと思う。この辺りについてはあまり詳しくないので、情報の正確性については保証しません。2リンクプライバシーポリシーはてなブログをはじめよう!shiba_yu36さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。