«前の日記(2004-10-06(水)) 最新 次の日記(2004-10-08(金))»

vdrめも

検索キーワード:
[PR]:「Chef活用ガイド コードではじめる構成管理 (大型本), (Kindle版)」発売中です。


2004-10-07(木) いきなりトップギア [長年日記]

_ [comp] MozFx 0.10.1 GNOME/GConf 調査

日記みたいな何かの 2004年 10月 3日 (日) にて、MozFF GNOME/GConf 調査 について触れられているのを発見。ああ、そんなのもあったっけ。すっかり忘れていた。ということで再度調査。変更点は大幅に増えている。

  1. ソースツリーのトップで grep -ir gnome * 及び grep -ir gconf * してひとまず怪しそうなファイルをピックアップ。
  2. ファイルを一つずつチェック。@gnome.org のようなメールアドレスや gConfig... のような無関係なものにもマッチしているので、そのようなものをまず除去。単なるテキストファイルも見なかったことにしておく。
    • Makefile.in

      ifdef MOZ_ENABLE_GTK2
      tier_9_dirs    += toolkit/components/gnome
      endif
      

      コメントアウト。

    • accessible/src/atk/nsAppRootAccessible.cpp

      どうしようもない?

    • allmakefiles.sh

      MAKEFILES_gnome="
          toolkit/Makefile
          toolkit/components/Makefile
          toolkit/components/gnome/Makefile
      "
      

      gnomevfs ) MAKEFILES_extensions="$MAKEFILES_extensions
             extensions/gnomevfs/Makefile
             " ;;
      

      if test -n "$MOZ_ENABLE_GTK2"; then
          add_makefiles "$MAKEFILES_gnome"
      fi
      

      コメントアウト。

    • browser/components/build/Makefile.in

      ifeq ($(MOZ_WIDGET_TOOLKIT), gtk2)
      EXTRA_DSO_LIBS += gkgfx
      endif
      

      ifneq (,$(filter windows mac gtk2, $(MOZ_WIDGET_TOOLKIT)))
      SHARED_LIBRARY_LIBS += $(DIST)/lib/$(LIB_PREFIX)shellservice_s.$(LIB_SUFFIX)
      endif
      

      コメントアウト。2つ目をコメントアウトしておかないと、存在しない libshellservice_s.a をリンクしようとして失敗する。

    • browser/components/build/nsModule.cpp

      先頭に #undef MOZ_WIDGET_GTK2 追加。

    • browser/components/shell/src/Makefile.in

      else
      ifeq ($(MOZ_WIDGET_TOOLKIT), gtk2)
      CPPSRCS = nsGNOMEShellService.cpp
      REQUIRES += mozgnome
      endif
      

      コメントアウト。これで browser/components/shell/src/nsGNOMEShellService.{cpp,h} の対処も OK。結果的に libshellservice_s.a は作成されなくなる。

    • browser/config/mozconfig

      --enable-extensions から gnomevfs を削除。

    • browser/installer/unix/packages-static

      bin/components/libmozgnome.so
      bin/components/mozgnome.xpt
      bin/components/libnkgnomevfs.so
      

      コメントアウト。

    • embedding/browser/gtk/tests/Makefile.in

      ifdef ENABLE_GNOME
      ifdef ENABLE_TESTS
      CPPSRCS        += TestGtkEmbedMDI.cpp
      endif
      endif
      

      ifdef ENABLE_GNOME
      CXXFLAGS        += `gnome-config --cflags gnomeui`
      EXTRA_LIBS      += `gnome-config --libs gnomeui`
      endif
      

      コメントアウト。これで embedding/browser/gtk/tests/TestGtkEmbedMDI.cpp の対処も OK。

    • extensions/gnomevfs/{Makefile.in,nsGnomeVFSProtocolHandler.cpp}

      configure で --disable-gnomevfs にするので手を出さなくていいはず。

    • extensions/pref/Makefile.in

      ifdef MOZ_ENABLE_GTK2
      DIRS           += system-pref
      endif
      

      コメントアウト。

    • extensions/pref/system-pref/src/Makefile.in

      ifdef MOZ_ENABLE_GTK2
      DIRS            = gconf
      endif
      

      ifdef MOZ_ENABLE_GTK2
      INCLUDES        += \
                      -I$(srcdir)/gconf \
                      $(NULL)
      endif
      

      コメントアウト。これで extensions/pref/system-pref/src/{gconf/gconf_pref_list.inc,gconf/nsSystemPrefService.cpp,gconf/nsSystemPrefService.h,nsSystemPref.h} の対処も OK。

    • netwerk/base/src/nsIOService.cpp

      #ifdef MOZ_X11 〜 #endif をまるごとコメントアウト。

    • toolkit/components/gnome/{Makefile.in,nsGConfService.cpp,nsGConfService.h,nsGnomeModule.cpp}

      allmakefiles.sh あたりで無効にしたので OK?

    • toolkit/components/gnome/{nsGnomeVFSService.cpp,nsGnomeVFSService.h,nsIGConfService.idl,nsIGnomeVFSService.idl}

      configure で --disable-gnomevfs にするので手を出さなくていいはず。

    • toolkit/themes/Makefile.in

      ifneq (,$(filter gtk2,$(MOZ_WIDGET_TOOLKIT)))
      DIRS    += gnomestripe
      endif
      

      コメントアウト。

    • uriloader/exthandler/Makefile.in

      ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
      OSHELPER        += nsGNOMERegistry.cpp
      endif
      

      コメントアウト。これで uriloader/exthandler/unix/nsGNOMERegistry.cpp の対処も OK。

    • uriloader/exthandler/unix/{nsGNOMERegistry.h,nsOSHelperAppService.cpp}

      先頭に #undef MOZ_WIDGET_GTK2 追加。

    • widget/src/gtk2/nsWindow.{cpp,h}

      #ifdef ACCESSIBILITY の直前に #undef ACCESSIBILITY 追加。

    • xpinstall/packager/packages-unix

      bin/components/libnkgnomevfs.so
      

      コメントアウト。

  3. build & check

gconfd-2 も動かなくなって、MozFx 自体もきちんと動いている様子だ。ついでにパッチにしてみた。ものはこれ。もちろん無保証。

_ [debian] mozilla-firefox 0.10.1+1.0PR-1vd2

ということで vd_bugzilla-jp_bug-1476_attachment-1656_for-mozfx-0.9.3.patchvd_mozfx-0.10.1_without-gnome-and-gconf.patch を当てて作成。

_ [comp] net-snmp IPv6 addr_string fix

[ 942155 ] IPv6 addr_string fix に報告したのをすっかり忘れていたけど、commit されたようだ。README に恥ずかしいエントリで載っちゃったよ。

_ [research] in/out-plug いじり

ちょっと手直しとか。

STDIN.gets で食うか STDIN.readlines で食うか考えたけど、EOF じゃなくて空行でデータの終わりとしたいから STDIN.gets か。

空行まで食ってから out に渡すか、逐一 out に渡して out で空行までと処理するか。いろいろやったが後者の手でいこう。


2004年
10月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

[amd64 | audacious | comp | debian | gkrelluim | kip | misc | movie | research | rime | unicon | vdr | work | えふえふ]

書いてる人: dai

パッチ等(無保証)

GPG Fingerprint = 0B29 D88E 42E6 B765 B8D8 EA50 7839 619D D439 668E