我使用 CMake 的树外构建。我有一个 CMake 自定义命令,可以从原始文件生成 *_pb2.py 文件。由于 proto-files 可能驻留在未知数量的子目录(包命名空间)中,例如$SRC/package1/package2/file.proto
.,因此构建目录将包含类似$BLD/package1/package2/file_pb2.py
.
我想从自动生成的 *_pb2.py 文件中隐式地制作包,因此,我想在所有子文件夹( , 等)中自动生成 __init__.py 文件$BLD/package1
,$BLD/package1/package2
然后安装它们。
我怎样才能做到这一点?
PS我尝试过CMake 中的宏:如何获取目录的所有子目录的名称?(将GLOB更改为GLOB_RECURSE)但它只返回包含文件的子目录。我无法package1
从上面的示例中获取 subdir。