JOI2008本選・・・の前に(44)
環境整備が面倒臭かった。
CygwinじゃなくてDebian使ってるのでスクリプトの文字コードの変換とかするMakefileを書いた。
やってることは改行コードのCRとcsh呼び出しの/usrプレフィックスと.exe拡張子の取り除き。
#!/bin/make TARGET = t1 SCRIPTS = compile__$(TARGET) run__$(TARGET) eval__$(TARGET) .PHONY : all clean scripts all : scripts clean : $(RM) $(SCRIPTS) scripts : $(SCRIPTS) compile__$(TARGET) : compile_$(TARGET) nkf -Lu compile_$(TARGET) | sed -e 's/\/usr//g' > compile__$(TARGET) chmod a+x $@ run__$(TARGET) : run_$(TARGET) nkf -Lu run_$(TARGET) | sed -e 's/\/usr//g;s/\.exe//g' > run__$(TARGET) chmod a+x $@ eval__$(TARGET) : eval_$(TARGET) nkf -Lu eval_$(TARGET) | sed -e 's/\/usr//g;s/\.exe//g' > eval__$(TARGET) chmod a+x $@
次に、本番採点用の簡易プログラムを予選用のを改造して作る。data.zip内に置いて./t1とかの実効ファイルに対して実行する。
#!/bin/sh exam=2008-ho for i in 1 2 3 4 5 6 7 8 9 10 do echo "validating t$1-$i" cp $exam-t$1-in$i input.txt ./t$1 diff --unified output.txt $exam-t$1-out$i done
ふう、これでやっと出来る・・・