@ledsun blog

Hのキーがhellで、Sのキーがslaveだ、と彼は思った。そしてYのキーがyouだ。

複数プログラミング言語をいっぺんに実行するスクリプトをMakefileで書く

C#JavaScriptRubyのプログラミングを比較するためにGitHub - ledsun/enumerable: C#とJavaScriptとRubyのコレクション操作を比較するためのリポジトリです。を作りました。 動作確認のために、全部のプログラムをバーンと実行するスクリプトが欲しいです。 いずれかのプログラミング言語に流儀を合わせると角が立ちます。 そこでMakefileを使ってみました。

all: csharp javascript ruby

csharp: csharp/bin/Debug/net6.0/csharp.dll
  dotnet csharp/bin/Debug/net6.0/csharp.dll   

csharp/bin/Debug/net6.0/csharp.dll: csharp/Program.cs
  dotnet build csharp

clean:
  dotnet clean csharp

.PHONY: javascript ruby

javascript:
  node javascript/index.js

ruby:
  ruby ruby/main.rb

実行すると次のようなになります。

実行結果

シェルスクリプトでもよかったでしょうか? C#のビルドが入るとMakefileが便利でした。 C#のソースファイル数が増えるとMakefileでは手に負えなくなりそうに思いました。

参考