vine-users ML アーカイブ



[vine-users:050186] mkkpkg の挙動 on 2.5CR

  • From: Eitetsu Oomoto <oomoto@xxxxxxxxxxxxxxxxxx>
  • Subject: [vine-users:050186] mkkpkg の挙動 on 2.5CR
  • Date: Tue, 7 May 2002 15:30:23 +0900
大本@京都産業大学と申します.


Vine2.5CRのカーネルパッケージ作成スクリプトである
	/usr/sbin/mkkpkg
の挙動が不審です.
具体的には,ホームディレクトリに存在する.rpmmacrosから,_topdirマクロ定義を 取りだす部分で失敗しています.もちろん,ホームディレクトリに.rpmmacroは用意 されていて,該当マクロは
	%_topdir ${HOME}/rpm
と書かれてます.デフォルトのままです.

失敗しているのは,以下の関数部分のように思えます.

rpm3var () {
        var=`rpm --showrc | sed -e "s/%{name}/$NAME/" \
         | awk "/-[0-9]+[:=][[:blank:]]+$1[[:blank:]]/ {print \\$3}"`
        while test -n "`echo $var | egrep '%\{[_a-zA-Z]+\}'`"; do
                v=`echo $var | sed 's/.*%{\([_a-zA-Z]\+\)}.*/\1/'`
                w="`rpm3var $v`"
                var=`echo $var | sed "s,%{\\([_a-zA-Z]\\+\\)},$w,g"`
        done
        echo $var
}

本来はこの関数は`rpm3var _topdir`と呼ぶと,
	/home/foo/rpm
という形式のパス名文字列を返すことを意図していると思うのですが,実際は
	${HOME}/rpm
を返してきます.
#有る意味,間違っちゃいないが....(^^;;

パッチを作る元気が今無いので,とりあえずご報告まで.
#とりあえず,.rpmmacrosを書き換えるのが安直な解決法であった.
--
京都産業大学 工学部情報通信工学科  大本 英徹
E-mail: oomoto@xxxxxxxxxxxxxxxxxx    Tel: 075-705-1904 (Dial In)
(*^.^*) (*^_^*) (*^o^*) (*^.^*)   Fax: 075-705-1914 PHS: 050-267-2302