C库 - 从一组私有标头生成公共标头

时间:2017-04-08 15:29:12

标签: c header-files

我有一组C库的内部头文件。我想生成一个包含某个声明子集的公共头。想到一个明显的解决方案是使用// EXPORT标记某些块(通过"块"我的意思是一系列非空白行)。然后很容易整理一个脚本来完成工作。

是否有更好的和/或标准的方法?

EDIT。这是一个骨架示例:

/*foo.h*/
...
int foo();
...

/*foo.c*/
int foo()
{
...
}


/*bar.h*/
...
int bar();
...

/*bar.c*/
#include "foo.h"
int bar()
{
    foo();
...
}


/*my_lib_single_public.h*/
...
int foo();
int bar();

模块foo和bar理想地做一件事并且做得很好(它们仍然可以很大并且在其他模块中调用很多东西)并且我想通过保持这种内部结构来强调这一点。整件事打包成一个库:my_lib.so + my_lib_single_public.h。我想要的是自动生成my_lib_single_public.h,这样我就不必手动复制/粘贴声明。

由于

0 个答案:

没有答案