Namazu-devel-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: getopt.c is moving from lib/ to nmz/ (Re: compilation on MacOSX)
- From: Tadamasa Teranishi <yw3t-trns@xxxxxxxxxxxxxxx>
- Date: Mon, 14 Jul 2003 01:15:48 +0900
- X-ml-name: namazu-devel-ja
- X-mail-count: 03057
- References: <yfmsmpalj9c.wl@harry.ki.nu>
寺西です。
藤原 誠 / Makoto Fujiwara wrote:
>
> namazu-users-ja の方で話題になっていた
> MacOS X での compile patch ですが、寺西さんの提案のようにしよ
> うとして、
# ちょっと違うような...。
> ○ nmz/support.h の中に、次のように書いています。
>
> #ifndef __APPLE__
> # define optopt _nmz_optopt
> # define getopt _nmz_getopt
> # define opterr _nmz_opterr
> # define optind _nmz_optind
> #endif
これはまずいのでは?
1. __APPLE__ が定義されていなくて、システムの getopt が使えれば、
それを使う。
2. そうでないなら、ローカルな getopt を使う。
だと思うので、以下のようになるのでは?
#ifndef __APPLE__
#ifdef ELIDE_CODE
# define _nmz_optopt optopt
# define _nmz_getopt getopt
# define _nmz_opterr opterr
# define _nmz_optind optind
#endif
#endif
この前に ELIDE_CODE の判定をしないといけませんけど。
あと、グローバル関数の定義も必要です。
> src の下とのやりとりは一行だけなので lib に残っていてもいいので
> はという気もしますし、nmz/strcasecmp.c 等があるので、移動した
> 方がいいかなとも思います。
いや、optind だけではなくて、getopt_long() とかグローバル関数も変え
ちゃいましょうというのが趣旨です。
Namazu のソースの中では、getopt系は使わず _nmz_getopt 系を使うことと
いう規則をつけるということです。
--
=====================================================================
寺西 忠勝(TADAMASA TERANISHI) yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E