在使用GNU Autotools構建的項目中,我有一個腳本,需要修改make
以包含安裝路徑。這裏有一個小例子:由`make dist`複製而不是`make distcheck`的文件
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
?
非常好,非常感謝! – Leo