_ [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
    

    コメントアウト。

  1. 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 に恥ずかしいエントリで載っちゃったよ。