MozFx 0.10.1 GNOME/GConf 調査, etc.
_ [comp] MozFx 0.10.1 GNOME/GConf 調査
日記みたいな何かの 2004年 10月 3日 (日) にて、MozFF GNOME/GConf 調査 について触れられているのを発見。ああ、そんなのもあったっけ。すっかり忘れていた。ということで再度調査。変更点は大幅に増えている。
- ソースツリーのトップで grep -ir gnome * 及び grep -ir gconf * してひとまず怪しそうなファイルをピックアップ。
- ファイルを一つずつチェック。@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
コメントアウト。
- 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.patch と vd_mozfx-0.10.1_without-gnome-and-gconf.patch を当てて作成。
_ [comp] net-snmp IPv6 addr_string fix
[ 942155 ] IPv6 addr_string fix に報告したのをすっかり忘れていたけど、commit されたようだ。README に恥ずかしいエントリで載っちゃったよ。