我将创建一个“库”,并希望使用 autotoolset 管理每个单独的项目。此外,我希望能够同时构建整套库。
个别图书馆:
- libyarconveniencezzz
- libyarfoo
- 自由行
- 利比亚巴兹
我怀疑我可能只需要手工编写一个顶级 Makefile,然后让每个单独的库/便利库成为它自己的 autotoolset 包。
我做过类似的事情(四五年前),但我丢失了参考代码。我真正记得的唯一一件事是花了几个月的时间在自动工具中摸索,然后才按我想要的方式进行所有设置。
我使用以下代码构建了几个由 autotools 管理的包(尽管它们都创建“普通”二进制文件而不是“库库”):
配置.ac:
AC_INIT(bigpackage, 1.0, bigpackage@email.org)
AM_INIT_AUTOMAKE
AC_CONFIG_FILES(Makefile)
AC_CONFIG_SUBDIRS([package1 package2 package3])
AC_OUTPUT
生成文件.am:
SUBDIRS = package1 package2 package3
然后可以像往常一样设置所有这些:
touch NEWS README AUTHORS ChangeLog
autoreconf -i
./configure
make
我不一定称它为“最佳方式”,但它可以工作并且很好地将所有标志传递给子包。