Shell “怎么做?”;“制造距离”;指挥工作?I';我被一个脚本卡住了,我需要更新它来添加新的文件和文件夹
我必须在运行Shell “怎么做?”;“制造距离”;指挥工作?I';我被一个脚本卡住了,我需要更新它来添加新的文件和文件夹,shell,makefile,automake,Shell,Makefile,Automake,我必须在运行makedist命令时创建的zip中添加一个文件和文件夹。这是一个开源项目 经过研究,我知道我必须修改Makefile.am,但在线示例不起作用,也与我当前的Makefile.am不匹配 Makefile.am SUBDIRS = bin data po src extensions docs DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-upda
makedist
命令时创建的zip中添加一个文件和文件夹。这是一个开源项目
经过研究,我知道我必须修改Makefile.am,但在线示例不起作用,也与我当前的Makefile.am不匹配
Makefile.am
SUBDIRS = bin data po src extensions docs
DISTCLEANFILES = \
intltool-extract \
intltool-merge \
intltool-update
EXTRA_DIST = \
$(bin_SCRIPTS) \
intltool-merge.in \
intltool-update.in \
intltool-extract.in
DISTCHECK_CONFIGURE_FLAGS = --disable-update-mimedb
check-po:
@for i in $(top_srcdir)/po/*.po ; do \
if ! grep -q ^`basename $$i | \
sed 's,.po,,'`$$ $(top_srcdir)/po/LINGUAS ; then \
echo '***' `basename $$i | \
sed 's,.po,,'` missing from po/LINGUAS '***' ; \
exit 1; \
fi; \
done;
lint:
flake8 --ignore E402 $(top_srcdir)/src $(top_srcdir)/extensions
test: lint check-po
PYTHONPATH=$(pkgdatadir)/extensions:$(PYTHONPATH) \
python -m sugar3.test.discover $(top_srcdir)/tests
配置.ac
AC_INIT([Sugar],[0.114],[],[sugar])
AC_PREREQ([2.59])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR([configure.ac])
SUCROSE_VERSION="0.114"
AC_SUBST(SUCROSE_VERSION)
AM_INIT_AUTOMAKE([1.9 foreign dist-xz no-dist-gzip])
AM_MAINTAINER_MODE
PYTHON=python2
AM_PATH_PYTHON
AC_PATH_PROG([EMPY], [empy])
if test -z "$EMPY"; then
AC_MSG_ERROR([python-empy is required])
fi
PKG_CHECK_MODULES(SHELL, gtk+-3.0)
IT_PROG_INTLTOOL([0.35.0])
GETTEXT_PACKAGE=sugar
AC_SUBST([GETTEXT_PACKAGE])
AM_GLIB_GNU_GETTEXT
AC_ARG_ENABLE(update-mimedb,
AC_HELP_STRING([--disable-update-mimedb],
[disable the update-mime-database after install [default=no]]),,
enable_update_mimedb=yes)
AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
GLIB_GSETTINGS
AC_CONFIG_FILES([
bin/Makefile
bin/sugar
data/icons/Makefile
data/Makefile
extensions/cpsection/aboutcomputer/Makefile
extensions/cpsection/aboutme/Makefile
extensions/cpsection/background/Makefile
extensions/cpsection/backup/Makefile
extensions/cpsection/backup/backends/Makefile
extensions/cpsection/datetime/Makefile
extensions/cpsection/frame/Makefile
extensions/cpsection/keyboard/Makefile
extensions/cpsection/language/Makefile
extensions/cpsection/modemconfiguration/Makefile
extensions/cpsection/Makefile
extensions/cpsection/network/Makefile
extensions/cpsection/power/Makefile
extensions/cpsection/updater/Makefile
extensions/cpsection/webaccount/services/Makefile
extensions/cpsection/webaccount/Makefile
extensions/deviceicon/Makefile
extensions/globalkey/Makefile
extensions/webservice/Makefile
extensions/Makefile
Makefile
po/Makefile.in
src/jarabe/config.py
src/jarabe/controlpanel/Makefile
src/jarabe/desktop/Makefile
src/jarabe/frame/Makefile
src/jarabe/intro/Makefile
src/jarabe/journal/Makefile
src/jarabe/Makefile
src/jarabe/model/Makefile
src/jarabe/model/update/Makefile
src/jarabe/util/Makefile
src/jarabe/util/telepathy/Makefile
src/jarabe/view/Makefile
src/jarabe/webservice/Makefile
src/Makefile
])
AC_OUTPUT
当我运行命令makedist
时,输出zip不包括我现在需要添加的文件和文件夹。我无法理解应该在代码(Makefile.am或configure.ac)的何处进行更改。变量听起来像这样
我必须在运行makedist
命令时创建的zip中添加一个文件和文件夹
我认为这些还没有包括在分发中。如果您不确定,那么请检查——基于汽车制造商的构建系统(如您的构建系统)会自动识别许多文件,以便包含在分发包中
假设这些文件尚未包括在内,有几种方法可以使它们被包括在内。最简单的方法是将它们添加到EXTRA\u DIST
变量中,从而产生
EXTRA_DIST = \
$(bin_SCRIPTS) \
intltool-merge.in \
intltool-update.in \
intltool-extract.in \
a_directory \
some_file.ext
如果继续使用多行表单,请不要忘记后面的反斜杠(我喜欢它,因为我发现它更容易阅读)。您可以指定文件路径、目录路径或两者。请注意,在目录的情况下,发行版中包含的不仅仅是目录本身,而是它的所有内容(递归)。这些都有记录
如果您需要更精细的控制,那么还有一个扩展点,用于以的形式管理分发内容。这包括一个名为
disthook
的make
目标。与Makefile.am
中的任何其他文字make
规则一样,您为构建该目标提供的任何规则都会复制到最终生成的Makefile
,如果存在此类规则,则其配方将作为构建分发的一部分运行,在以其他方式填充分发目录之后,但在此基础上构建归档文件之前。您可以在该目标的配方中编写或多或少的任意shell代码来调整发行版。有关血淋淋的详细信息,请按照上面的文档链接进行操作。您应该告诉我们您尝试了什么,以及请求帮助时得到了什么结果。一种显而易见的方法是将您想要包含在dist中的新内容添加到EXTRA\u dist
变量中,如下所述:。我想这对你不起作用,但我猜不出原因。