我正在寻找一种自动生成头文件的方法。这个文件是一个库的公共接口,我想在编译之前“填充”一些结构和东西。
例如,在私有标头中,我有一个包含有用字段的结构:
typedef struct mystuff_attr_t {
int _detachstate;
mystuff_scope_t _scope;
cpu_set_t _cpuset;
size_t _stacksize;
void* _stackaddr;
} mystuff_attr_t;
我想在公共标头中有这个结构,没有字段,但大小相同(目前手动完成):
typedef struct mystuff_attr_t {
char _opaque[ 20 ];
} mystuff_attr_t;
我希望在创建构建系统时由 CMake 自动生成它,以避免在我更改私有标头中的结构时在公共接口中出现错误大小的结构。