首页 > 解决方案 > 按顺序使用命令运行makefile

问题描述

当您在 CLI 中输入 make 时,我有以下 Makefile 运行所有目标,我知道您可以使用特定目标运行 make,但是有没有办法使用多个目标运行 make?

例如通过 cli 运行module1 pack cleanup

有了这个订单

  1. 模块1
  2. 清理

(因为这只是 module2 不会运行)我不想为上面的 3 个步骤创建新目标这是例如 make

all: module1 module2

.PHONY: module1
module1:
    @echo "run module 1"
    DIR=$(PWD)
    @echo $(DIR)

.PHONY: module2
module2:
    @echo "run module2”

pack:
    pack $(DIR)

cleanup: 
    gbt clean $(DIR)

标签: linuxmakefilegnu-make

解决方案


您不想“按顺序”运行它们。make 的全部目的是让它决定做什么和按什么顺序。Makefile 用于列出规则和依赖项,以便 make 可以正常工作。

如果您希望命令按顺序运行,请编写脚本。


推荐阅读