コード移植方法のドキュメント
FreeBSD のプロトコルスタックを Mona に移植する計画がある。そこでコードを移植する際の一般的な方法論をまとめた記事を探しているがなかなか見つからない。
根性で移植というのはいやなので探してみた。英語では「Source code porting」がキーワードのようだ。
(PDF 注意)http://ftp.stratus.com/vos/posix/Porting_Open-Source_Code.pdf が探していた物に近い。もっと詳しい物をご存じでしたら教えてください。
簡単なまとめ
- 参考ビルド環境を作れ
- ビルドが通る事が分かっている安定した環境
- パッケージ依存が分かる
- 本命のビルドで困ったときの参考になる
- ヘッダがないとき
- どこからか持ってくる。もしくは書く。
- FreeBSD から 持ってくるのが良い。
- 移植のベースを修正せず維持せよ
- 移植元のオリジナル
- 移植元に更新があったら 3 way-merge tool で merge せよ
- Just remember that, however long it takes, porting it is still faster than writing it yourself!
- 移植にどんなに時間がかかっても、自分で全部書くよりは早い事を覚えておこう