检测 configure/make 是否在源目录中执行

检测 configure/make 是否在源目录中执行

我有一个安装软件的脚本。该脚本预先准备好了答案,以便输入checkinstall它们。checkinstall当源已配置/制作或未配置时,提示会有所不同。
我如何判断configure/ make/是否make install在源目录中执行?

答案1

我不确定我是否理解您的设置是什么样的,但是当使用自动工具时(就像您似乎做的那样)文件是从自动工具模板文件(如configure.in和)创建的Makefile.am

然后,不同的步骤会在构建目录中生成许多您可以检查的文件。

  • ./configure创建例如Makefileconfig.status
  • make创建下面的文件.deps.libs
  • make install不会在构建目录中留下任何痕迹,但会将文件复制到其安装位置。

要检查是否make install运行,您可以补充默认安装规则,例如添加到您的Makefile.am

install-data-local:
        @touch .installed

然后检查.installed

由于使用自动工具时不会有Makefile运行前的内容,./configure因此您必须以不同的方式处理这种情况。

相关内容