[Momonga-devel.ja:00347] Re: card service doesn't read /etc/pcmcia/*.conf?


ほそのひでともです。

  To: devel.ja@xxxxxxxxxxxxxxxxx
  From: HOSONO Hidetomo <h@xxxxxxxx>
  Subject: [Momonga-devel.ja:00346] Re: card service doesn't read /etc/pcmcia/*.conf?
  Date: Mon, 19 Aug 2002 16:56:56 +0900 (JST)
  
  > 諸悪の根源を見つけた気がします。
  > pcmcia-cs-3.1.34とpcmcia-cs-3.2.0の間で
  > cardmgr/lex_config.lの差分を取ってみたのですが、
  > 
  >   --- pcmcia-cs-3.1.34/cardmgr/lex_config.l	2002-05-16 14:51:04.000000000 +0900
  >   +++ pcmcia-cs-3.2.0/cardmgr/lex_config.l	2002-07-02 16:55:27.000000000 +0900
  >   ....
  >   @@ -64,7 +68,7 @@
  >    
  >    source		BEGIN(src); return SOURCE;
  >    <src>[ \t]*	/* skip */ ;
  >   -<src>[^ \t\n]+	do_source(yytext); BEGIN(INITIAL);
  >   +<src>[^\n]+	do_source(yytext); BEGIN(INITIAL);
  >    <<EOF>>		if (do_eof()) yyterminate();
  >    
  >    \n		current_lineno++;
  >   ....
  > 
  > って変更は正しくないような気がしています。
  > ....
  > lex知らないので、まだ正解かどうかは分かりませんが…。

正解みたいでした。:-)

  >   >     cardmgr[1152]: could not open ' ./config.opts': No such file or directory
  >   > 
  >   > で、よく見ると、./config.optsの前に半角スペースが入っています。
  > 
  > も同根なんじゃないか、と思います。従って、

というバグも含めて対応すべく、
lex_config.lに当てるパッチを書いて対処しました。
lex_config.lからlex_config.cをつくるために、kenrel-pcmcia-cs.specも
少し変更しています。

で、

* source ./config.optsが効いている。
* "*"が入ったときのglobがちゃんと行えている。
  (source ./*.optsという記述を/etc/pcmcia/configに入れて
  テストしてみました)

ことは確認済みです(つまり[Momonga-devel.ja:00272]も直っている筈です)。
というわけでkernel-pcmcia-cs-3.2.0-4mとしてcommitしました。

ただ、(私の都合上)完全にテストされているわけではないので、

* source ./config.optsで先頭に" "が入っていない
* source ./*.confが正しく解釈されている
  (/etc/pcmcia/任意の名前.confの設定をちゃんと読んでいる)

という2点について、ノートパソコンをお持ちの方にお試しいただきたいと思います。

--
ほそのひでとも