From tsuchiya @ namazu.org Sun Dec 9 11:56:42 2007 From: tsuchiya @ namazu.org (TSUCHIYA Masatoshi) Date: Sun, 09 Dec 2007 11:56:42 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <87ejis3lv6.fsf@tsuchiya.vaj.namazu.org> (TSUCHIYA Masatoshi's message of "Sat, 28 Jul 2007 18:42:37 +0900") References: <87ejis3lv6.fsf@tsuchiya.vaj.namazu.org> Message-ID: <87prxg7ez9.fsf@tsuchiya.vaj.namazu.org> お久しぶりです. xdvik-22.84.13 に追従したパッチを作成しました.必要な方は, https://sourceforge.jp/projects/xdvi/ からダウンロードしてください. 今回のパッチ作成では,1点だけ問題が発生しました.単純に merge して build すると, gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -W -Wall -Wunused -I.. -I./.. -DPS_GS -DXSERVER_INFO -g -c help-window.c -o help-window.o In file included from ../xdvi.h:189, from help-window.c:29: /usr/include/stdint.h:52: error: duplicate 'unsigned' というようなエラーで失敗します.原因を探ってみたところ,xdvik の c-auto.h とシステム標準の stdint.h の両方で uint32_t を定義してしまっていることが 判明しました. configure.in には, AC_CHECK_TYPE(uint32_t, unsigned long) と書かれているので,本来なら,システム標準のヘッダファイルで uint32_t が 定義されていれば,c-auto.h では定義されないはずです.しかし,uint32_t が 定義されているかどうかをチェックしている箇所を見てみると, #line 3816 "configure" #include "confdefs.h" #include #if STDC_HEADERS #include #include #endif となっており,sys/types.h は考慮されているのですが,stdint.h は考慮されて いないため,uint32_t は「定義されていない」と誤判定されて,uint32_t が重 複定義されてしまっています. この問題をきちんと解決するためには,autoconf のマクロに手を入れる必要が あるのではないかと思いますが,私の手には余りましたので,c-auto.in に添付 のような ad-hoc な修正を入れておきました. という状態ですが,きちんと解決する方法をご存じの方は教えていただけないで しょうか.よろしくお願いします. -- 土屋 雅稔 ( TSUCHIYA Masatoshi ) -------------- next part -------------- テキスト形式以外の添付ファイルを保管しました... ファイル名: 無し 型: text/x-diff サイズ: 352 バイト 説明: 無し URL: http://lists.sourceforge.jp/mailman/archives/xdvi-users/attachments/20071209/c916e865/attachment.diff -------------- next part -------------- テキスト形式以外の添付ファイルを保管しました... ファイル名: 無し 型: application/pgp-signature サイズ: 188 バイト 説明: 無し URL: http://lists.sourceforge.jp/mailman/archives/xdvi-users/attachments/20071209/c916e865/attachment.pgp From tutimura @ nn.iij4u.or.jp Mon Dec 10 18:46:39 2007 From: tutimura @ nn.iij4u.or.jp (Nobuyuki Tsuchimura) Date: Mon, 10 Dec 2007 18:46:39 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <87prxg7ez9.fsf@tsuchiya.vaj.namazu.org> References: <87ejis3lv6.fsf@tsuchiya.vaj.namazu.org> <87prxg7ez9.fsf@tsuchiya.vaj.namazu.org> Message-ID: <20071210184639P.tutimura@nn.iij4u.or.jp> 土村です。 From: TSUCHIYA Masatoshi Subject: xdvik-jp-22.84.13-j1.34 Date: Sun, 09 Dec 2007 11:56:42 +0900 Message-ID: <87prxg7ez9.fsf @ tsuchiya.vaj.namazu.org> > お久しぶりです. > > xdvik-22.84.13 に追従したパッチを作成しました.必要な方は, > > https://sourceforge.jp/projects/xdvi/ > > からダウンロードしてください. 作業ありがとうございます。 > この問題をきちんと解決するためには,autoconf のマクロに手を入れる必要が > あるのではないかと思いますが,私の手には余りましたので,c-auto.in に添付 > のような ad-hoc な修正を入れておきました. この問題に関係することですが、 実は上流の xdvik にお願いして uint32_t 関連の変更を提案したのは私です。 XeTeX との相性が悪くて、両方まとめてコンパイルする TeX Live 2007 で不具合が発生していました。 そこで、xdvi 側の uint32_t の検出を XeTeX の方法に揃えてもらいました。 http://sourceforge.net/tracker/index.php?func=detail&aid=1819017&group_id=23164&atid=377583 > という状態ですが,きちんと解決する方法をご存じの方は教えていただけないで > しょうか.よろしくお願いします. 書いていただいた説明だけでは判断がつかなかったのですが、 状況を勘案すると、上流のバグなんですよね? # ad-hoc な修正はなくても、Vine ではちゃんと動きますし、 # Debian なら日本語パッチ抜きでも動作不良を起こします。 上流のバグだとしたら、日本語パッチで対処する必要はないと思います。 むしろ上流に報告して、日本語パッチでは敢えて対処しないでおく、 という選択もありだと思います。 上流での修正方法によっては、我々が作業しても無駄になってしまいますから。 ----- 土村 展之 Nobuyuki Tsuchimura From tsuchiya @ namazu.org Mon Dec 10 19:53:07 2007 From: tsuchiya @ namazu.org (TSUCHIYA Masatoshi) Date: Mon, 10 Dec 2007 19:53:07 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <20071210184639P.tutimura@nn.iij4u.or.jp> (Nobuyuki Tsuchimura's message of "Mon, 10 Dec 2007 18:46:39 +0900") References: <87ejis3lv6.fsf@tsuchiya.vaj.namazu.org> <87prxg7ez9.fsf@tsuchiya.vaj.namazu.org> <20071210184639P.tutimura@nn.iij4u.or.jp> Message-ID: <87bq8yq0rw.fsf@tsuchiya.vaj.namazu.org> >> On Mon, 10 Dec 2007 18:46:39 +0900 >> tutimura @ nn.iij4u.or.jp (Nobuyuki Tsuchimura) said as follows: >> という状態ですが,きちんと解決する方法をご存じの方は教えていただけない >> でしょうか.よろしくお願いします. >書いていただいた説明だけでは判断がつかなかったのですが、状況を勘案すると、 >上流のバグなんですよね? ああ,そうです.上流のバグです.日本語化パッチと組み合わせた試験しかして なかったので見落としていましたが,単体で build してみても失敗しました. ># ad-hoc な修正はなくても、Vine ではちゃんと動きますし、 ># Debian なら日本語パッチ抜きでも動作不良を起こします。 Debian ならというより,使っている glibc のバージョン依存だと思います. /usr/include/stdint.h でも uint32_t が定義されているにも関わらず, c-auto.h でも uint32_t を定義しようとしていることが原因ですから. したがって,/usr/include/stdint.h でも uint32_t が定義されている glibc を 使っている環境(少なくとも glibc-2.3.6 以後)なら該当するはずで,手元で試し たところ Fedora Core 7 も駄目ですね. >上流のバグだとしたら、日本語パッチで対処する必要はないと思います。むしろ >上流に報告して、日本語パッチでは敢えて対処しないでおく、という選択もあり >だと思います。上流での修正方法によっては、我々が作業しても無駄になってし >まいますから。 というわけで,当面は ad-hoc な対応で様子を見ましょう. ただ,uint32_t が定義されていない /usr/include/stdint.h がある環境では, 問題が発生するはずなのが,ちょっと問題なんですが. -- 土屋 雅稔 ( TSUCHIYA Masatoshi ) From tutimura @ nn.iij4u.or.jp Tue Dec 11 01:37:15 2007 From: tutimura @ nn.iij4u.or.jp (Nobuyuki Tsuchimura) Date: Tue, 11 Dec 2007 01:37:15 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <87bq8yq0rw.fsf@tsuchiya.vaj.namazu.org> References: <87prxg7ez9.fsf@tsuchiya.vaj.namazu.org> <20071210184639P.tutimura@nn.iij4u.or.jp> <87bq8yq0rw.fsf@tsuchiya.vaj.namazu.org> Message-ID: <20071211013715M.tutimura@nn.iij4u.or.jp> 土村です。 From: TSUCHIYA Masatoshi Subject: Re: xdvik-jp-22.84.13-j1.34 Date: Mon, 10 Dec 2007 19:53:07 +0900 Message-ID: <87bq8yq0rw.fsf @ tsuchiya.vaj.namazu.org> > /usr/include/stdint.h でも uint32_t が定義されているにも関わらず, > c-auto.h でも uint32_t を定義しようとしていることが原因ですから. stdint.h のチェックをすればよいということなら、 添付のパッチでどうでしょう。 texk/etc/autoconf/acgeneral.m4 への変更ですから、 日本語パッチからは手の出せないファイルです。 > >上流に報告して、日本語パッチでは敢えて対処しないでおく、という選択もあり > >だと思います。上流での修正方法によっては、我々が作業しても無駄になってし > >まいますから。 > > というわけで,当面は ad-hoc な対応で様子を見ましょう. ad-hoc な対応も不要、というつもりで書いたのですが、 今さらどうこうするほどでもありませんね。 とりあえず、上流に報告しましょう。 土屋さんのほうが状況にお詳しそうではあるのですが、 変更を提案したのが私なので、責任も感じています。 私から報告すると言うことでよろしいでしょうか。 ----- 土村 展之 Nobuyuki Tsuchimura diff -u -r1.1.1.2 acgeneral.m4 --- texk/etc/autoconf/acgeneral.m4 19 Oct 2003 12:59:43 -0000 1.1.1.2 +++ texk/etc/autoconf/acgeneral.m4 10 Dec 2007 16:28:32 -0000 @@ -2037,6 +2037,7 @@ #if STDC_HEADERS #include #include +#include #endif], ac_cv_type_$1=yes, ac_cv_type_$1=no)])dnl AC_MSG_RESULT($ac_cv_type_$1) if test $ac_cv_type_$1 = no; then From tsuchiya @ namazu.org Tue Dec 11 09:07:17 2007 From: tsuchiya @ namazu.org (TSUCHIYA Masatoshi) Date: Tue, 11 Dec 2007 09:07:17 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <20071211013715M.tutimura@nn.iij4u.or.jp> (Nobuyuki Tsuchimura's message of "Tue, 11 Dec 2007 01:37:15 +0900") References: <87prxg7ez9.fsf@tsuchiya.vaj.namazu.org> <20071210184639P.tutimura@nn.iij4u.or.jp> <87bq8yq0rw.fsf@tsuchiya.vaj.namazu.org> <20071211013715M.tutimura@nn.iij4u.or.jp> Message-ID: <87tzmqnlfu.fsf@tsuchiya.vaj.namazu.org> >> On Tue, 11 Dec 2007 01:37:15 +0900 >> tutimura @ nn.iij4u.or.jp (Nobuyuki Tsuchimura) said as follows: >> /usr/include/stdint.h でも uint32_t が定義されているにも関わらず, >> c-auto.h でも uint32_t を定義しようとしていることが原因ですから. > stdint.h のチェックをすればよいということなら、添付のパッチでどうでしょ > う。 多分,inttypes.h のチェックもした方が良いと思います.それと,全ての環境で stdint.h があるとは限らないので,HAVE_STDINT_H でガードした方が良いと思い ます. で,このパッチで良いかとなると,まだ疑問があります. AC_CHECK_TYPE マクロは,型が define されているかどうかを検討する汎用マク ロだと思うのですが,ここに uint32_t のための変更を入れるのは良いのでしょ うか? > ad-hoc な対応も不要、というつもりで書いたのですが、今さらどうこうするほ >どでもありませんね。とりあえず、上流に報告しましょう。土屋さんのほうが状 >況にお詳しそうではあるのですが、変更を提案したのが私なので、責任も感じて >います。私から報告すると言うことでよろしいでしょうか。 よろしくお願いします. -- 土屋 雅稔 ( TSUCHIYA Masatoshi ) -------------- next part -------------- テキスト形式以外の添付ファイルを保管しました... ファイル名: 無し 型: text/x-diff サイズ: 403 バイト 説明: 無し URL: http://lists.sourceforge.jp/mailman/archives/xdvi-users/attachments/20071211/6a0bf84e/attachment.diff From tutimura @ nn.iij4u.or.jp Tue Dec 11 13:27:53 2007 From: tutimura @ nn.iij4u.or.jp (Nobuyuki Tsuchimura) Date: Tue, 11 Dec 2007 13:27:53 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <87tzmqnlfu.fsf@tsuchiya.vaj.namazu.org> References: <87bq8yq0rw.fsf@tsuchiya.vaj.namazu.org> <20071211013715M.tutimura@nn.iij4u.or.jp> <87tzmqnlfu.fsf@tsuchiya.vaj.namazu.org> Message-ID: <20071211132753F.tutimura@nn.iij4u.or.jp> 土村です。 From: TSUCHIYA Masatoshi Subject: Re: xdvik-jp-22.84.13-j1.34 Date: Tue, 11 Dec 2007 09:07:17 +0900 Message-ID: <87tzmqnlfu.fsf @ tsuchiya.vaj.namazu.org> > 多分,inttypes.h のチェックもした方が良いと思います.それと,全ての環境で > stdint.h があるとは限らないので,HAVE_STDINT_H でガードした方が良いと思い > ます. 確かにそうですね。 > で,このパッチで良いかとなると,まだ疑問があります. > > AC_CHECK_TYPE マクロは,型が define されているかどうかを検討する汎用マク > ロだと思うのですが,ここに uint32_t のための変更を入れるのは良いのでしょ > うか? 言われてみれば、その通りです。 心配になったので、自分でコードを起こすことはせず、 TeX Live から輸入することにしようと思います。 http://tug.org/svn/texlive/trunk/Build/source/texk/etc/autoconf/ http://tug.org/svn/texlive/trunk/Build/source/texk/etc/autoconf/acgeneral.m4?view=log これを xdvik のものと比較してみました。 --- xdvik-22.84.13/texk/etc/autoconf/acgeneral.m4 2003-10-18 09:13:57.000000000 +0900 +++ ./acgeneral.m4 2007-12-11 13:14:43.000000000 +0900 <...snip> @@ -2037,6 +2050,9 @@ #if STDC_HEADERS #include #include +#endif +#if HAVE_STDINT_H +#include #endif], ac_cv_type_$1=yes, ac_cv_type_$1=no)])dnl AC_MSG_RESULT($ac_cv_type_$1) if test $ac_cv_type_$1 = no; then  このように HAVE_STDINT_H のガードが入っています。 しかし inttypes.h のチェックは入っていません。 これでいいのか、私にはよくわかりません。 > >います。私から報告すると言うことでよろしいでしょうか。 > よろしくお願いします. TeX Live と同じにして下さい、というお願いがしやすいので、 ひとます stdint.h のチェックを追加するという方針で 報告しておくことにします。 ----- 土村 展之 Nobuyuki Tsuchimura From tutimura @ nn.iij4u.or.jp Thu Dec 13 20:37:13 2007 From: tutimura @ nn.iij4u.or.jp (Nobuyuki Tsuchimura) Date: Thu, 13 Dec 2007 20:37:13 +0900 Subject: xdvik-jp-22.84.13-j1.34 In-Reply-To: <20071211132753F.tutimura@nn.iij4u.or.jp> References: <20071211013715M.tutimura@nn.iij4u.or.jp> <87tzmqnlfu.fsf@tsuchiya.vaj.namazu.org> <20071211132753F.tutimura@nn.iij4u.or.jp> Message-ID: <20071213203713X.tutimura@nn.iij4u.or.jp> 土村です。 From: Nobuyuki Tsuchimura Subject: Re: xdvik-jp-22.84.13-j1.34 Date: Tue, 11 Dec 2007 13:27:53 +0900 Message-ID: <20071211132753F.tutimura @ nn.iij4u.or.jp> 土村> TeX Live と同じにして下さい、というお願いがしやすいので、 土村> ひとます stdint.h のチェックを追加するという方針で 土村> 報告しておくことにします。 TeX Live からのコードを取り込んでもらいました。 http://xdvi.cvs.sourceforge.net/xdvi/xdvik/texk/etc/autoconf/acgeneral.m4 本家でも不具合には気づいてて、 別の方法で回避していたようですが、 こちらの修正案に振り替えてもらえました。 https://sourceforge.net/tracker/?func=detail&atid=377583&aid=1819017&group_id=23164 ----- 土村 展之 Nobuyuki Tsuchimura