A note about Devel::PPPort 3.18_01

Devel::PPPortに大きなパッチを送り,3.18_01に取り込まれた。ppportはパッチの作り方が特殊なので記録しておく。

まず,ppportにはHACKERSというドキュメントがあるので,パッチを書く際には目を通すのが望ましい。

さてHACKERSによれば,ppport.hはparts/inc/*のパーツファイルから自動的に作られる。したがって,パッチを書く際にはparts/inc/*を編集する。一つのパーツファイルはメタ情報・実装コード・テスト用XSコード・テストコードからなる。また,新しいパーツファイルを作成したときは,PPPort_pm.PLに%includeディレクティブを追加する必要がある。パーツファイルを編集したあとは,make regenでPPPort.pmとテストコードを作りなおし,テストを行う。
今回は,一部新しくパーツファイルを作り,一部は既存のパーツファイルに追記するという形をとった。

ところでppportはperl 5.003にも対応しているため,CPANから5.003_07を落として見てみた。なんとtar.gzファイルが約2MBしかない。5.10.0がtar.gzで15MBなので隔世の感がある。