false .out出力を無効にするためにこのMakefileをリファクタリングするにはどうすればよいですか?

false .out出力を無効にするためにこのMakefileをリファクタリングするにはどうすればよいですか?

それぞれをテストしましたが、tests/FILENAME-test.shDockerコンテナ内でスクリプトを実行したいと思います。

TEST_OUTPUTSこのMakefileが私のように動作しないように、どのようにリファクタリングできますか?

docker runまた、各コマンドを並列に実行するにはどうすればよいですか?

.PHONY: test image

TESTS=$(wildcard tests/*-test.sh)
TEST_OUTPUTS=$(patsubst %.sh,%.out,$(TESTS))

%.out: %.sh image
    @sudo docker run -t box-test /bin/bash "-c" "./$^"

test: $(TEST_OUTPUTS)
    @echo

image:
    @sudo docker build -q -t box-test .

答え1

ここにいる:

.PHONY: test image

TESTS=$(wildcard tests/*-test.sh)

test: $(TESTS)

$(TESTS): image
        @sudo docker run -t box-test /bin/bash "-c" "./$@"

image:
        @sudo docker build -q -t box-test .

docker runコマンドを並列に実行するには、以下を使用します(make -j testを使用して最大同時実行数を指定できます-j)。

関連情報