Thursday 9 February 2017

cmake

最近は cmake と格闘しているんですが、

add_executable(hoge hoge.c fuga.cc )

とかでできるのは良いのだが、そこから先何かしようとすると、結構、厳しい。

ソースコードを生成してからコンパイルするには、

add_custom_command

というのを使うんだけど、それを動的に生成しないといけないらしい。それには、macro が使えるんですが、かなりのクソです。

まぁ、世の中のマクロ処理系でクソでないものって存在しないんじゃないか説。Cのあれとか、Lispのあれとか、C++のあれとか、TeXのあれとか...

で、今度は CbC compiler と Cuda を両立させようとするわけですが...

cmake はそのもそも複数のcompilerを取り扱うようにできてない

らしい。external project でできるという説もあるらしいですが、どちらかのcompilerを add_custom_command するしかないみたい。その部分は闇になると。

まぁ、とりあえず、なんとかする方法はわかったので良いか...

No comments: