gtk2 fix from upstream not expected to make final release
authorJory Pratt <anarchy@gentoo.org>
Sat, 26 Nov 2005 04:20:33 +0000 (04:20 +0000)
committerJory Pratt <anarchy@gentoo.org>
Sat, 26 Nov 2005 04:20:33 +0000 (04:20 +0000)
Package-Manager: portage-2.0.53_rc7

www-client/mozilla-firefox/ChangeLog
www-client/mozilla-firefox/Manifest
www-client/mozilla-firefox/files/1.5/mozilla-firefox-1.5rc3-gtk.patch [new file with mode: 0644]
www-client/mozilla-firefox/files/digest-mozilla-firefox-1.5_rc3-r2 [new file with mode: 0644]
www-client/mozilla-firefox/mozilla-firefox-1.5_rc3-r2.ebuild [new file with mode: 0644]

index ce6dc06c67531c26c55ccac92cb4b540e13be62c..80d2a65db2bc91bfe7ce47a1d0b907deaef4bfbe 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for www-client/mozilla-firefox
 # Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/mozilla-firefox/ChangeLog,v 1.108 2005/11/24 03:45:18 anarchy Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/mozilla-firefox/ChangeLog,v 1.109 2005/11/26 04:20:32 anarchy Exp $
+
+*mozilla-firefox-1.5_rc3-r2 (26 Nov 2005)
+
+  26 Nov 2005; Jory A. Pratt <anarchy@gentoo.org>
+  +files/1.5/mozilla-firefox-1.5rc3-gtk.patch,
+  +mozilla-firefox-1.5_rc3-r2.ebuild:
+  gtk2 fix from upstream not expected to make final release
 
   24 Nov 2005; <anarchy@gentoo.org> +files/1.5/firefox-1.1-visibility.patch,
   mozilla-firefox-1.5_rc3-r1.ebuild:
index 6526655b755f88e4854752e94335548f0c910294..89ce5c02adef92f8690f2c832e4f261cf3ec3450 100644 (file)
@@ -1,15 +1,17 @@
-MD5 700fcbd77de6239d7ffaf5d56f7ae5eb ChangeLog 36726
+MD5 63877877f58ca4e1b1f6caa4d5b39f85 ChangeLog 36965
 MD5 cc5756b8c7af5c88b248b86c73fc5c8d files/1.5/firefox-1.1-visibility.patch 930
 MD5 7847d262e628dcac303586fe02f2e8c4 files/1.5/firefox-cairo-canvas.patch 446
 MD5 91661761f2f232b08b74f5adc4f1eff0 files/1.5/firefox-nopangoxft.patch 839
 MD5 362f9e0b0f25b964f7120b68fb629ee0 files/1.5/firefox-visibility.patch 689
 MD5 23d1fbd03cc6dd346a4e4ce8f2d88ebf files/1.5/mozilla-1.3-alpha-stubs.patch 4646
 MD5 ff2980bf169954f9b255029e4312b6f8 files/1.5/mozilla-firefox-1.1a2-ia64.patch 2864
+MD5 79c1e7c219dedb67d4e39ca753059b03 files/1.5/mozilla-firefox-1.5rc3-gtk.patch 2621
 MD5 8f8d70da6eb8cf07acbbb85fb0f08636 files/1.5/mozilla-hppa.patch 7863
 MD5 1652483bf7e1d08241cd5e0436bea2ae files/10MozillaFirefox 32
 MD5 1d1a1fe09e04d58a8d9faa9f14ffd0c6 files/digest-mozilla-firefox-1.0.7-r2 231
 MD5 1d1a1fe09e04d58a8d9faa9f14ffd0c6 files/digest-mozilla-firefox-1.0.7-r3 231
 MD5 be57f8b6663426f9fa2f58ed85f56595 files/digest-mozilla-firefox-1.5_rc3-r1 292
+MD5 be57f8b6663426f9fa2f58ed85f56595 files/digest-mozilla-firefox-1.5_rc3-r2 292
 MD5 8e7d6f3220336cd4467d20bbe402e09a files/embedprompter-modal.patch 1548
 MD5 48baf2f328e6478812c24e59037ff99c files/firefox-0.9-init.tar.bz2 3322
 MD5 2bd0dd9035dcb875b8340be358347e8d files/firefox-1.1-uriloader.patch 15300
@@ -43,3 +45,4 @@ MD5 ce23390351fe8020387d93ee29e09a3d metadata.xml 160
 MD5 7ec6e77c0014718ffae4a55c76acd1db mozilla-firefox-1.0.7-r2.ebuild 8564
 MD5 b686423c9050edfcfd7ff72ea4081f09 mozilla-firefox-1.0.7-r3.ebuild 9734
 MD5 a9b9132aef328d7a91afec2cb2ec3c35 mozilla-firefox-1.5_rc3-r1.ebuild 8824
+MD5 5b0e112903cc4477714f88866cb5b3a8 mozilla-firefox-1.5_rc3-r2.ebuild 8870
diff --git a/www-client/mozilla-firefox/files/1.5/mozilla-firefox-1.5rc3-gtk.patch b/www-client/mozilla-firefox/files/1.5/mozilla-firefox-1.5rc3-gtk.patch
new file mode 100644 (file)
index 0000000..e468dc2
--- /dev/null
@@ -0,0 +1,58 @@
+--- mozilla/widget/src/gtk2/nsWindow.cpp-orig  2005-11-25 21:21:44.539138750 -0600
++++ mozilla/widget/src/gtk2/nsWindow.cpp       2005-11-25 21:28:57.330186500 -0600
+@@ -148,9 +148,9 @@
+                                            GdkEventVisibility *event);
+ static gboolean window_state_event_cb     (GtkWidget *widget,
+                                            GdkEventWindowState *event);
+-static void     style_set_cb              (GtkWidget *widget,
+-                                           GtkStyle *previous_style,
+-                                           gpointer data);
++static void     theme_changed_cb          (GtkSettings *settings,
++                                           GParamSpec *pspec,
++                                           nsWindow *data);
+ #ifdef __cplusplus
+ extern "C" {
+ #endif /* __cplusplus */
+@@ -372,6 +372,10 @@
+     mIsDestroyed = PR_TRUE;
+     mCreated = PR_FALSE;
+ 
++    g_signal_handlers_disconnect_by_func(gtk_settings_get_default(),
++                                         (gpointer)G_CALLBACK(theme_changed_cb),
++                                         this);
++
+     // ungrab if required
+     nsCOMPtr<nsIWidget> rollupWidget = do_QueryReferent(gRollupWindow);
+     if (NS_STATIC_CAST(nsIWidget *, this) == rollupWidget.get()) {
+@@ -2434,8 +2438,15 @@
+                          G_CALLBACK(delete_event_cb), NULL);
+         g_signal_connect(G_OBJECT(mShell), "window_state_event",
+                          G_CALLBACK(window_state_event_cb), NULL);
+-        g_signal_connect(G_OBJECT(mShell), "style_set",
+-                         G_CALLBACK(style_set_cb), NULL);
++        g_signal_connect_after(gtk_settings_get_default(),
++                               "notify::gtk-theme-name",
++                               G_CALLBACK(theme_changed_cb), this);
++        g_signal_connect_after(gtk_settings_get_default(),
++                               "notify::gtk-key-theme-name",
++                               G_CALLBACK(theme_changed_cb), this);
++        g_signal_connect_after(gtk_settings_get_default(),
++                               "notify::gtk-font-name",
++                               G_CALLBACK(theme_changed_cb), this);
+     }
+ 
+     if (mContainer) {
+@@ -3916,11 +3927,9 @@
+ 
+ /* static */
+ void
+-style_set_cb (GtkWidget *widget, GtkStyle *previous_style, gpointer data)
++theme_changed_cb (GtkSettings *settings, GParamSpec *pspec, nsWindow *data)
+ {
+-    nsWindow *window = get_window_for_gtk_widget(widget);
+-    if (window)
+-        window->ThemeChanged();
++      data->ThemeChanged();
+ }
+ 
+ //////////////////////////////////////////////////////////////////////
diff --git a/www-client/mozilla-firefox/files/digest-mozilla-firefox-1.5_rc3-r2 b/www-client/mozilla-firefox/files/digest-mozilla-firefox-1.5_rc3-r2
new file mode 100644 (file)
index 0000000..4438d69
--- /dev/null
@@ -0,0 +1,4 @@
+MD5 cb90e9f6097b975187892682ed286544 embed-typeaheadfind.patch 41361
+MD5 e93ff413b1cde002a104aeed9050f406 firefox-1.5rc3-source.tar.bz2 34472303
+MD5 a120cd14ade242622387f76875ca9c39 mozilla-1.7.10-nsplugins-v2.patch 1968
+MD5 7960994910bda4c14a52bc119f9ceefc mozilla-jslibmath-alpha.patch 625
diff --git a/www-client/mozilla-firefox/mozilla-firefox-1.5_rc3-r2.ebuild b/www-client/mozilla-firefox/mozilla-firefox-1.5_rc3-r2.ebuild
new file mode 100644 (file)
index 0000000..91db3c3
--- /dev/null
@@ -0,0 +1,273 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-client/mozilla-firefox/mozilla-firefox-1.5_rc3-r2.ebuild,v 1.1 2005/11/26 04:20:32 anarchy Exp $
+
+unset ALLOWED_FLAGS  # stupid extra-functions.sh ... bug 49179
+MOZ_FREETYPE2="no"   # Need to disable for newer .. remove here and in mozconfig
+                        # when older is removed from tree.
+MOZ_PANGO="yes"      # Need to enable for newer .. remove here and in mozconfig
+                        # when older is removed from tree.
+
+inherit flag-o-matic toolchain-funcs eutils mozconfig-2 mozilla-launcher makeedit multilib fdo-mime versionator
+
+MY_P="$(replace_version_separator 2 '')"
+FV=${MY_P/beta/b}
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="http://www.mozilla.org/projects/firefox/"
+SRC_URI="http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FV}/source/firefox-${FV}-source.tar.bz2
+       mirror://gentoo/mozilla-jslibmath-alpha.patch
+       mirror://gentoo/embed-typeaheadfind.patch
+       http://dev.gentoo.org/~agriffis/dist/mozilla-1.7.10-nsplugins-v2.patch"
+
+KEYWORDS="-*"
+SLOT="0"
+LICENSE="MPL-1.1 NPL-1.1"
+IUSE="java mozdevelop"
+
+RDEPEND="java? ( virtual/jre )
+       >=www-client/mozilla-launcher-1.39"
+
+DEPEND="${RDEPEND}
+       java? ( >=dev-java/java-config-0.2.0 )"
+
+S=${WORKDIR}/mozilla
+
+# Needed by src_compile() and src_install().
+# Would do in pkg_setup but that loses the export attribute, they
+# become pure shell variables.
+export MOZ_CO_PROJECT=browser
+export BUILD_OFFICIAL=1
+export MOZILLA_OFFICIAL=1
+
+src_unpack() {
+       unpack firefox-${FV}-source.tar.bz2
+       cd ${S} || die "cd failed"
+
+       ####################################
+       #
+       # architecture patches
+       #
+       ####################################
+
+       # alpha stubs patch from lfs project.
+       # <taviso@gentoo.org> (26 Jun 2003)
+       use alpha && epatch ${FILESDIR}/1.5/mozilla-1.3-alpha-stubs.patch
+
+       # addresses visibility issues on ppc and amd64
+       # will not hurt to apply on other archs as well.
+       epatch ${FILESDIR}/1.5/firefox-1.1-visibility.patch
+
+       # hppa patches from Ivar <orskaug@stud.ntnu.no>
+       # <gmsoft@gentoo.org> (22 Dec 2004)
+       epatch ${FILESDIR}/1.5/mozilla-hppa.patch
+
+       # patch to solve segfaults on ia64, from Debian, originally from David
+       # Mosberger
+       epatch ${FILESDIR}/1.5/mozilla-firefox-1.1a2-ia64.patch
+
+       # patch to fix math operations on alpha, makes maps.google.com work!
+       epatch ${DISTDIR}/mozilla-jslibmath-alpha.patch
+
+       # fix pkgconfig files properly to contain gentoo-locations
+       epatch ${FILESDIR}/firefox-gentoo-pkgconfig.patch
+
+       ####################################
+       #
+       # general compilation and run-time fixes
+       #
+       ####################################
+
+       # patch from fedora to remove the pangoxft things
+       epatch ${FILESDIR}/1.5/firefox-nopangoxft.patch
+       # cairo-canvas patch, only needed to build against system cairo
+       # epatch ${FILESDIR}/1.5/firefox-cairo-canvas.patch
+
+       # patch from fedora to stop crashing with gnome-vfs
+       epatch ${FILESDIR}/firefox-1.1-uriloader.patch
+
+       ####################################
+       #
+       # behavioral fixes
+       #
+       ####################################
+
+       # patch to fix typeahead find for browsers which embed Firefox
+       # http://bugzilla.gnome.org/show_bug.cgi?id=157435
+       epatch ${DISTDIR}/embed-typeaheadfind.patch
+       epatch ${FILESDIR}/1.5/${PN}-${FV}-gtk.patch
+
+       # rpath fix
+       epatch ${FILESDIR}/mozilla-rpath-1.patch
+       epatch ${DISTDIR}/mozilla-1.7.10-nsplugins-v2.patch
+
+       # Fix scripts that call for /usr/local/bin/perl #51916
+       ebegin "Patching smime to call perl from /usr/bin"
+       sed -i -e '1s,usr/local/bin,usr/bin,' ${S}/security/nss/cmd/smimetools/smime
+       eend $? || die "sed failed"
+
+       echo  ""
+       ewarn "Even tho this is 1.5rc3 I am gonna take bug reports"
+       ewarn "If you can attach a patch for any problems you may encounter"
+       ewarn "I will push bugs upstream if I feel it is need, do not take"
+       ewarn "offense or think I am blowing your bug report off"
+       ewarn "Thank you! Anarchy."
+}
+
+src_compile() {
+       declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}
+
+       ####################################
+       #
+       # mozconfig, CFLAGS and CXXFLAGS setup
+       #
+       ####################################
+
+       mozconfig_init
+
+       mozconfig_annotate '' --enable-extensions=default,typeaheadfind
+       mozconfig_annotate '' --disable-mailnews
+       #mozconfig_annotate '' --enable-native-uconv
+       mozconfig_annotate '' --enable-image-encoder=all
+
+       # Bug 60668: Galeon doesn't build without oji enabled, so enable it
+       # regardless of java setting.
+       mozconfig_annotate '' --enable-oji --enable-mathml
+
+       # Other ff-specific settings
+       mozconfig_use_enable mozdevelop jsd
+       mozconfig_use_enable mozdevelop xpctools
+       mozconfig_use_extension mozdevelop venkman
+       mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+
+       # Finalize and report settings
+       mozconfig_final
+
+       # hardened GCC uses -fstack-protector-all by default, which breaks us
+       has_hardened && append-flags -fno-stack-protector-all
+       # remove -fstack-protector because now it borks firefox
+       CFLAGS=${CFLAGS/-fstack-protector-all/}
+       CFLAGS=${CFLAGS/-fstack-protector/}
+       CXXFLAGS=${CXXFLAGS/-fstack-protector-all/}
+       CXXFLAGS=${CXXFLAGS/-fstack-protector/}
+
+       ####################################
+       #
+       #  Configure and build
+       #
+       ####################################
+
+       CPPFLAGS="${CPPFLAGS} -DARON_WAS_HERE" \
+       CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+       econf || die
+
+       # It would be great if we could pass these in via CPPFLAGS or CFLAGS prior
+       # to econf, but the quotes cause configure to fail.
+       sed -i -e \
+               's|-DARON_WAS_HERE|-DGENTOO_NSPLUGINS_DIR=\\\"/usr/'"$(get_libdir)"'/nsplugins\\\" -DGENTOO_NSBROWSER_PLUGINS_DIR=\\\"/usr/'"$(get_libdir)"'/nsbrowser/plugins\\\"|' \
+               ${S}/config/autoconf.mk \
+               ${S}/nsprpub/config/autoconf.mk \
+               ${S}/xpfe/global/buildconfig.html
+
+       # Fixup the RPATH
+       sed -i -e \
+               's|#RPATH_FIXER|'"${MOZILLA_FIVE_HOME}"'|' \
+               ${S}/config/rules.mk \
+               ${S}/nsprpub/config/rules.mk \
+               ${S}/security/coreconf/rules.mk
+
+       # This removes extraneous CFLAGS from the Makefiles to reduce RAM
+       # requirements while compiling
+       edit_makefiles
+
+       emake || die
+}
+
+src_install() {
+       declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}
+
+       # Most of the installation happens here
+       dodir ${MOZILLA_FIVE_HOME}
+       cp -RL ${S}/dist/bin/* ${D}${MOZILLA_FIVE_HOME}
+
+       # Create directory structure to support portage-installed extensions.
+       # See update_chrome() in mozilla-launcher
+       keepdir ${MOZILLA_FIVE_HOME}/chrome.d
+       keepdir ${MOZILLA_FIVE_HOME}/extensions.d
+       cp ${D}${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt \
+               ${D}${MOZILLA_FIVE_HOME}/chrome.d/0_base-chrome.txt
+
+       # Create /usr/bin/firefox
+       install_mozilla_launcher_stub firefox ${MOZILLA_FIVE_HOME}
+
+       # Install icon and .desktop for menu entry
+       doicon ${FILESDIR}/icon/firefox-icon.png
+       domenu ${FILESDIR}/icon/mozillafirefox.desktop
+
+       # Fix icons to look the same everywhere
+       insinto ${MOZILLA_FIVE_HOME}/icons
+       doins ${S}/dist/branding/mozicon16.xpm
+       doins ${S}/dist/branding/mozicon50.xpm
+
+       ####################################
+       #
+       # Install files necessary for applications to build against firefox
+       #
+       ####################################
+
+       ewarn "Installing includes and idl files..."
+       dodir ${MOZILLA_FIVE_HOME}/idl ${MOZILLA_FIVE_HOME}/include
+       cd ${S}/dist
+       cp -LfR include/* ${D}${MOZILLA_FIVE_HOME}/include || die "failed to copy"
+       cp -LfR idl/* ${D}${MOZILLA_FIVE_HOME}/idl || die "failed to copy"
+
+       # Dirty hack to get some applications using this header running
+       dosym ${MOZILLA_FIVE_HOME}/include/necko/nsIURI.h \
+               /usr/$(get_libdir)/${MOZILLA_FIVE_HOME##*/}/include/nsIURI.h
+
+
+       # Fix pkgconfig files and install them
+       insinto /usr/$(get_libdir)/pkgconfig
+       for x in ${S}/build/unix/*.pc; do
+               doins ${x}
+       done
+
+       ####################################
+       # 
+       # Some preferences, probably gentoo.org as start-page also
+       #
+       ####################################
+
+       dodir ${D}/${MOZILLA_FIVE_HOME}/greprefs
+       cp ${FILESDIR}/gentoo-default-prefs.js ${D}/${MOZILLA_FIVE_HOME}/greprefs/all-gentoo.js
+       dodir ${D}/${MOZILLA_FIVE_HOME}/defaults/pref
+       cp ${FILESDIR}/gentoo-default-prefs.js ${D}/${MOZILLA_FIVE_HOME}/defaults/pref/all-gentoo.js
+
+       # Install docs
+       dodoc LEGAL LICENSE
+}
+
+pkg_postinst() {
+       declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}
+
+       # This should be called in the postinst and postrm of all the
+       # mozilla, mozilla-bin, firefox, firefox-bin, thunderbird and
+       # thunderbird-bin ebuilds.
+       update_mozilla_launcher_symlinks
+
+       # Update mimedb for the new .desktop file
+       fdo-mime_desktop_database_update
+
+       echo  ""
+       ewarn "Even tho this is 1.5rc3 I am gonna take bug reports"
+       ewarn "If you can, attach a patch for any problems you may encounter"
+       ewarn "I will push bugs upstream if I feel it is need, do not take"
+       ewarn "offense or think I am blowing your bug report off"
+       ewarn "Thank you! Anarchy."
+}
+
+pkg_postrm() {
+       declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}
+
+       update_mozilla_launcher_symlinks
+}