Linuxでは、「makefolder/path/clean」はフォルダ/パスで「make clean」コマンドを実行するのと同じですか?

Linuxでは、「makefolder/path/clean」はフォルダ/パスで「make clean」コマンドを実行するのと同じですか?

私はまだLinux、特にMakefileに慣れていません。

Linuxでは、「makefolder/path/clean」はフォルダ/path/で「make clean」コマンドを実行するのと同じですか?

(フォルダ/パス/は任意のディレクトリを表します。)

この質問とは別に、Linuxでこの構文(コマンドとパラメータ)を一般化することは可能ですか?

コメントと提案の回答に基づいて更新:ありがとう。新しいことを学びました。私はまた、私が使用したMakefile(openwrt)がより多くの機能を持っているので、一般的なGNU Makefileとは異なることを発見しました。

要約すると、主な質問の2つのコマンドが異なります。

答え1

make clean実行folder/pathするには

make -C folder/path clean

ただし、このスイッチはPOSIXではありません-C(説明を参照)。少なくともGNUでは動作し、Linuxを実行している場合はmakeGNUがあります。make

答え2

まったくそうではありません。で実行されているディレクトリにルールがない場合、folder/path/clean構文は機能しませんmake folder/path/clean

たとえば、目的の効果を得るために make ファイルに再帰的なクリーンアップルールを作成できます。たとえば、

recursive-clean:
  (cd folder/path; make clean)
  ...

持っているすべてのディレクトリに対して、またはすべてのディレクトリなどに対してforループを実行します。

関連情報