r*g 发帖数: 186 | 1 问个CMake的问题, project结构如下:
proj
|
+-------proj_1
| |
| +-------main.cpp
| +-------txxd.cpp
| +-------abc.ft
| +-------def.ft
|
+-------proj_2
| |
| +-------main.cpp
| +-------xxx.cpp
| +-------ghi.ft
| +-------klm.ft
+-------proj_3
|
+-------main.cpp
+-------xxx.cpp
+-------opq.ft
+-------rst.ft
每个proj_x将生成不同的可执行文件. 然后对于xxxxxx.ft, 将会调用外部命令生成
xxxxx.hpp和xxxxx.cpp, 然后分别被对应proj_x下面的其他cpp文件include和link.
生成文件格式为
guimaker xxxx.tf -h xxxx.hpp -c xxxxx.cpp
如何在cmake中写这个规则? 我希望生成的文件不在source文件夹proj中, 而在编译
文件夹中, 这样免得污染src, 谢谢 |
m******t 发帖数: 1171 | 2 嵌套结构:
ADD_SUBDIRECTORY
外部编译:
在你要外部编译文件夹下invoke cmake 就行。
XXXX.ft -> XXXX.h XXXX.cpp:
cmake支持这种预执行命令,你查一下。我一下子忘了。
【在 r*g 的大作中提到】 : 问个CMake的问题, project结构如下: : proj : | : +-------proj_1 : | | : | +-------main.cpp : | +-------txxd.cpp : | +-------abc.ft : | +-------def.ft : |
|
r*g 发帖数: 186 | 3 我现在用的是add_custom_command来引入xxx.dt -> xxx.cpp xxx.hpp
但是表现的不太正常
比如修改了xxx.ft我希望重新生成xxx.cpp就不行
除非把当前生成的xxx.cpp删了
【在 m******t 的大作中提到】 : 嵌套结构: : ADD_SUBDIRECTORY : 外部编译: : 在你要外部编译文件夹下invoke cmake 就行。 : XXXX.ft -> XXXX.h XXXX.cpp: : cmake支持这种预执行命令,你查一下。我一下子忘了。
|
m******t 发帖数: 1171 | 4 在add_custom_command中使用DEPENDS了吗?
【在 r*g 的大作中提到】 : 我现在用的是add_custom_command来引入xxx.dt -> xxx.cpp xxx.hpp : 但是表现的不太正常 : 比如修改了xxx.ft我希望重新生成xxx.cpp就不行 : 除非把当前生成的xxx.cpp删了
|