リリース用シェルスクリプト2009年10月27日 23時28分21秒

特に何の話題もないといっては何だけど、リリース用のスクリプトをメモっておきます。

  • ほんとはWindows環境でのクロスコンパイラで使用するソース
  • なのに、勝手にLinux環境で開発
  • UTF8+LFとSJIS+CRLFの変換が必要
  • タイムスタンプは変えたくない

ということで簡単に作ったシェルスクリプトです。

#!/bin/sh
# Release script
#
reld="release`date +%F`"
echo $reld
old=$2
ind=$1
outd=$reld
mkdir $outd
cd $outd
mkdir src
mkdir srcu
mkdir test
mkdir doxygen
cd ..
#
# common file release
#
unix2dos readme.txt >$outd/readme.txt
touch -r readme.txt $outd/readme.txt
unix2dos history.txt >$outd/history.txt
touch -r history.txt $outd/history.txt
diffcheck.sh $old $ind | unix2dos >$outd/diff.txt
#
# src file release
#
cd $ind
srcfile=`ls *.h *.c`
for file in $srcfile
do
       echo $file "release"
       unix2dos $file >../$reld/src/$file
       touch -r $file ../$reld/src/$file
done
cd ..

ちなみに、unix2dosってのもnkfを使ったシェルスクリプトで以下です。

#!/bin/sh
nkf -s -Lw -c $1