PSPでCMake

@rshhhさんが@take_cheezeの投げ出したPSPのToolchain Scriptをやってたのでまとめてみたり。
0
@rshhh

おー、pspdev用のCMakeのToolchain script、通った。アーカイブ(static library)は無事に作れるようになった。あとはEBOOT.PBPの方かなー。なんにせよ、これでクロスコンパイルが楽になる。

2011-04-08 06:53:16
@rshhh

EBOOT.PBPの方が通るようになって実機で動作確認したらななしーと憂煉さんには送るか>CMakeのToolchain script

2011-04-08 06:53:54
@rshhh

書いた / CMake: listの展開時はクォーテーションで囲まない - らっしゅ! http://t.co/GMX0ZJc

2011-04-08 08:12:08
take-cheeze @take_cheeze

CMakeはSETでappend的なコトをしてたけど、やっぱりソレ用の機能があるんだね…

2011-04-08 08:16:06
@rshhh

@take_cheeze そうそう、俺も最初はそれやってたんですけど、他のマクロを調べてる時に偶然見つけてlist知りました。べんり。 / ところで、前にブログでPSPSDK用のCMake Toolchain script書いてましたよね?あれすごく参考になりました。

2011-04-08 08:18:07
take-cheeze @take_cheeze

@rshhh アレが役に立ってたんですが…。途中で投げ出したんですが、役に立ってよかったです。

2011-04-08 08:20:03
take-cheeze @take_cheeze

@rshhh FIND_PACKGE()はどれくらい使えますか?

2011-04-08 08:20:26
take-cheeze @take_cheeze

prefix関係でModuleをコピペしないといけないフラグがたってて詰んだりしてた…。わたしのディレクトリ構造の理解がアバウトすぎんだよね。

2011-04-08 08:26:17
@rshhh

@take_cheeze FIND_PACKAGE()は全然使ってないです。俺は外部のライブラリ入れるときは自前でPSP用にコンパイルしてできたバイナリを/usr/local/pspdev/lib とかに突っ込んじゃうので大体はパス通っちゃってます。使ったほうがいいんですかねー

2011-04-08 08:26:47
@rshhh

というかFIND_PACKAGE()は依存関係が満たせるかどうかをチェックするための機能のはずだから、使わないとダメなんだよな。クロスコンパイルするならなおさら。

2011-04-08 08:27:47
@rshhh

ただ、Find*.cmake は結構泥臭いコードだからアレなんだよなー

2011-04-08 08:30:47
take-cheeze @take_cheeze

@rshhh わたしはREQUIREDを渡してcmakeする段階で足りないライブラリを知りたいので使ってます。メジャーなライブラリは一通り見つかりますし、手間がかかることも大体できます。(マクロや全ての依存ライブラリなど…)

2011-04-08 08:30:53
take-cheeze @take_cheeze

PSPのSDLは依存ライブラリがキモすぎる…

2011-04-08 08:32:58
@rshhh

@take_cheeze やっぱそうかぁ。使う方向でやってみます

2011-04-08 08:33:01
@rshhh

ああ、でもToolchain scriptは依存ライブラリとか無いからいいのか。自分が作ってるアプリの依存周りをチェックするのに使えっていう話か

2011-04-08 08:33:48
take-cheeze @take_cheeze

Boostのライブラリの依存関係もほとんどわからない。シンボル名検索するのもけっこう癪

2011-04-08 08:33:52
take-cheeze @take_cheeze

FFmpegが無いのは地味にくる。たぶん、簡単に動かなくなるコードばっかりになる。でも、libavに分裂したんだっけ…

2011-04-08 08:35:12
@rshhh

Boost はめんどくさかったからアーカイブの中のboost/ を $PSPDEV/include/ にブチ込んだ……

2011-04-08 08:35:49
@rshhh

これだとヘッダオンリーじゃないライブラリ(FilesystemとかThreadとかSerializationとか)は使えないけど、使わないから問題ない(おい

2011-04-08 08:37:21
@rshhh

Toolchain script とは別に、PSPSDKのbuild.mak を fork してよしなにやってくれるコードのCMake版も作った。もとのbuild.mak がNew BSDライセンスだからライセンス条項だけ貼っつけて配布しちゃえばいいかなー

2011-04-08 08:38:59