通过`make dist`复制的文件,而不是通过`make distcheck`复制的文件

|| 在使用GNU Autotools构建的项目中,我有一个脚本,需要按ѭ0进行修改以包含安装路径。这是一个小例子: configure.ac:
AC_INIT(foobar, 1.0)
AC_PREREQ(2.66)
AC_CONFIG_HEADERS(config.h)
AM_INIT_AUTOMAKE(foreign)
AC_CONFIG_FILES([Makefile blah/Makefile])
AC_OUTPUT
Makefile.am:
SUBDIRS = blah
等等/Makefile.am:
all: myscript

myscript: myscript.in
        sed -e \'s,@datadir\\@,$(pkgdatadir),g\' myscript.in > myscript
        chmod +x myscript

EXTRA_DIST = myscript.in
./configure; make
成功创建
myscript
。同上,
make dist; tar xvzf foobar-1.0.tar.gz; cd foobar-1.0; ./configure; make
。但是,
make distcheck
失败是因为缺少文件
myscript.in
(但已成功地用
make dist
复制了文件)。 有什么想法为什么文件
myscript.in
没有被
make distcheck
复制?     
已邀请:
        myscript.in在发行版的tarball中,但是make distcheck会执行VPATH构建,其中的configure是从其他目录运行的。例如,代替\“ ./ configure \”,它执行的操作类似于\“ mkdir build-dir; cd build-dir; / path / to / configure; \”在Makefile.am中,您需要替换以下实例: myscript规则和依赖项行中的\“ myscript.in \”和\“ $(srcdir)/myscript.in \”     

要回复问题请先登录注册