我正在自动工具化一个库项目,这个项目有一些示例程序。我希望示例程序在 dist 中分发,但不安装。
目前演示程序的组织方式如下:
src/*.cpp (library source)
include/*.h (library headers)
demos/demo.cpp (example program)
demos/RunDemo (script to run demo)
重要的是 RunDemo 在构建软件后可以运行,而不需要“安装”步骤。
到目前为止,我已经能够使用noinst_PROGRAMS
目标构建“演示”可执行文件。但是,make
在 VPATH 构建之后,以下内容可用:
build/src/.libs/libxxx.so (etc..)
build/demos/demo
如您所见,执行“demo”所需的 RunDemo 脚本并未复制到 $(builddir)。我已经尝试了一些东西,例如,添加RunDemo
到dist_noinst_SCRIPTS
,以及添加我自己的复制目标并尝试挂钩all
.. 无论我尝试什么,我总是得到输出,
$ make RunDemo
make: Nothing to be done for `../../../projects/demo/RunDemo'.
我似乎无法在 builddir 中创建一个目标,上面写着“如果此文件不在 builddir 中,请从 srcdir 复制它”。
这可能与自动制作吗?