めっちゃ内輪ネタです。
背景
提出されたプログラムを評価するTAやってます。うちの大学はなかなかに癖のある大学で、提出されたプログラムの評価も一苦労です。なぜなら皆EclipseでC言語を書いているからです。なので、大抵の人はMakefile書けないんですね。だから、みんなソースコード(.c |.h)だけ送ってきます。たまにMakefileも添付してくれる学生もいます。優しい。
そんなわけで、評価する我々としては
のいずれかをしてソースコードをコンパイルする必要があります。5人ぐらいだったらまだ良いですが、担当は15人ぐらい居るので、それらを1つ1つ丁寧に人間のぬくもりを感じる手作業でコンパイルするのは非常に大変です。Makefileを作るにしても、人によってhoge.c
だったりfuga.c
だったりするので大変。
しかも、コンパイルできれば終わり!というものではなく、30個以上あるテストファイルを全部評価して、出てきた結果を確認する必要があります。バッチ処理でもしなければ死にます。
作った
あまりにもめんどくさいので作りました。
FromAtom/software5-TA-tool · GitHub
コマンド一発で
- Makefileの自動生成
- makeの実行
- 生成されたプログラムを用いて全テストファイルを評価
- ついでにmake clean
してくれます。さらに、「makeだけ試したいけど、評価はしなくていい。」とかできるように、オプションを追加できるようにしました。超便利。
最後に
「こういう処理の方がいいんじゃね?」みたいなプラクティスあったら教えて下さいませ!