summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schlemmer <azarah@gentoo.org>2002-07-07 21:24:27 +0000
committerMartin Schlemmer <azarah@gentoo.org>2002-07-07 21:24:27 +0000
commite781638501e172a0bd8bd1f13fb8a852fb82d7eb (patch)
tree4f6330378b766ddc82f1279c8c99518c3fe5041b /net-www/mozilla
parentRemoved xdirectfb mask (diff)
downloadgentoo-2-e781638501e172a0bd8bd1f13fb8a852fb82d7eb.tar.gz
gentoo-2-e781638501e172a0bd8bd1f13fb8a852fb82d7eb.tar.bz2
gentoo-2-e781638501e172a0bd8bd1f13fb8a852fb82d7eb.zip
gtk2 support; plugin (old) support with gcc-3.x
Diffstat (limited to 'net-www/mozilla')
-rw-r--r--net-www/mozilla/ChangeLog10
-rw-r--r--net-www/mozilla/files/digest-mozilla-1.0-r11
-rw-r--r--net-www/mozilla/files/digest-mozilla-1.0-r3 (renamed from net-www/mozilla/files/digest-mozilla-1.0)0
-rw-r--r--net-www/mozilla/files/digest-mozilla-1.0_rc3-r11
-rw-r--r--net-www/mozilla/files/digest-mozilla-1.0_rc3-r22
-rw-r--r--net-www/mozilla/files/digest-mozilla-1.0_rc3-r511
-rw-r--r--net-www/mozilla/files/gtk2_embed.patch.bz2bin0 -> 4153 bytes
-rw-r--r--net-www/mozilla/files/gtk2_mozilla_xft.patch70
-rw-r--r--net-www/mozilla/files/gtk2_widget.patch.bz2bin0 -> 2198 bytes
-rw-r--r--net-www/mozilla/files/gtk2mozilla.patch1012
-rw-r--r--net-www/mozilla/files/mozilla-0.9.7-post.patch10
-rw-r--r--net-www/mozilla/files/mozilla-1.0-abi-compat-wrappers.patch112
-rw-r--r--net-www/mozilla/files/mozilla-1.0-asmfixes.patch236
-rw-r--r--net-www/mozilla/files/mozilla.sh258
-rw-r--r--net-www/mozilla/mozilla-1.0-r1.ebuild351
-rw-r--r--net-www/mozilla/mozilla-1.0-r3.ebuild (renamed from net-www/mozilla/mozilla-1.0_rc3-r2.ebuild)153
-rw-r--r--net-www/mozilla/mozilla-1.0.ebuild356
-rw-r--r--net-www/mozilla/mozilla-1.0_rc3-r1.ebuild351
-rw-r--r--net-www/mozilla/mozilla-1.0_rc3-r51.ebuild356
19 files changed, 723 insertions, 2557 deletions
diff --git a/net-www/mozilla/ChangeLog b/net-www/mozilla/ChangeLog
index 6a41fab1453e..75ebf0c9d757 100644
--- a/net-www/mozilla/ChangeLog
+++ b/net-www/mozilla/ChangeLog
@@ -1,12 +1,18 @@
# ChangeLog for net-www/mozilla
# Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/ChangeLog,v 1.24 2002/06/24 23:05:28 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/ChangeLog,v 1.25 2002/07/07 21:24:27 azarah Exp $
+
+*mozilla-1.0-r3 (7 Jul 2002)
+
+ 7 Jul 2002; Martin Schlemmer <azarah@gentoo.org> mozilla-1.0-r3 :
+ Add gcc-3.1.1 support. Add support for at least the flash and realmedia
+ plugins. Add gtk2 support.
26 Jun 2002; Martin Schlemmer <azarah@gentoo.org> :
Add support to set NO_MAIL=YES to disable the mail and news components.
This hopefully resolves bug #3575.
-mozilla-1.0-r2 (7 Jun 2002)
+*mozilla-1.0-r2 (7 Jun 2002)
7 Jun 2002; Spider <spider@gentoo.org> :
modify the gtk+ dependencies. we dont want gtk2 deps just yet.
diff --git a/net-www/mozilla/files/digest-mozilla-1.0-r1 b/net-www/mozilla/files/digest-mozilla-1.0-r1
deleted file mode 100644
index b445e74f96ef..000000000000
--- a/net-www/mozilla/files/digest-mozilla-1.0-r1
+++ /dev/null
@@ -1 +0,0 @@
-MD5 033da936e48336aa2c5d8bf0aa039056 mozilla-source-1.0.tar.bz2 29620700
diff --git a/net-www/mozilla/files/digest-mozilla-1.0 b/net-www/mozilla/files/digest-mozilla-1.0-r3
index b445e74f96ef..b445e74f96ef 100644
--- a/net-www/mozilla/files/digest-mozilla-1.0
+++ b/net-www/mozilla/files/digest-mozilla-1.0-r3
diff --git a/net-www/mozilla/files/digest-mozilla-1.0_rc3-r1 b/net-www/mozilla/files/digest-mozilla-1.0_rc3-r1
deleted file mode 100644
index 473369e6da04..000000000000
--- a/net-www/mozilla/files/digest-mozilla-1.0_rc3-r1
+++ /dev/null
@@ -1 +0,0 @@
-MD5 6d247c3527b7c52bb4f29228614bbe88 mozilla-source-1.0rc3.tar.bz2 29729464
diff --git a/net-www/mozilla/files/digest-mozilla-1.0_rc3-r2 b/net-www/mozilla/files/digest-mozilla-1.0_rc3-r2
deleted file mode 100644
index 04f14972562a..000000000000
--- a/net-www/mozilla/files/digest-mozilla-1.0_rc3-r2
+++ /dev/null
@@ -1,2 +0,0 @@
-MD5 6d247c3527b7c52bb4f29228614bbe88 mozilla-source-1.0rc3.tar.bz2 29729464
-
diff --git a/net-www/mozilla/files/digest-mozilla-1.0_rc3-r51 b/net-www/mozilla/files/digest-mozilla-1.0_rc3-r51
deleted file mode 100644
index 473369e6da04..000000000000
--- a/net-www/mozilla/files/digest-mozilla-1.0_rc3-r51
+++ /dev/null
@@ -1 +0,0 @@
-MD5 6d247c3527b7c52bb4f29228614bbe88 mozilla-source-1.0rc3.tar.bz2 29729464
diff --git a/net-www/mozilla/files/gtk2_embed.patch.bz2 b/net-www/mozilla/files/gtk2_embed.patch.bz2
new file mode 100644
index 000000000000..5b7be782b8ae
--- /dev/null
+++ b/net-www/mozilla/files/gtk2_embed.patch.bz2
Binary files differ
diff --git a/net-www/mozilla/files/gtk2_mozilla_xft.patch b/net-www/mozilla/files/gtk2_mozilla_xft.patch
deleted file mode 100644
index 95c92cb1e1f3..000000000000
--- a/net-www/mozilla/files/gtk2_mozilla_xft.patch
+++ /dev/null
@@ -1,70 +0,0 @@
---- mozilla/gfx/src/gtk/nsFontMetricsGTK.cpp.old Mon May 20 18:23:23 2002
-+++ mozilla/gfx/src/gtk/nsFontMetricsGTK.cpp Mon May 20 18:24:23 2002
-@@ -3126,10 +3126,31 @@
-
- GdkRegion *rgn = nsnull;
- clipRegion->GetNativeRegion((void *&)rgn);
-- GdkRegionPrivate *priv = (GdkRegionPrivate *)rgn;
-
-- XftDrawSetClip(draw, priv->xregion);
-- }
-+// getting xregion for gdk2 so we can set the XftDrawSetClip region
-+ GdkRectangle *rectangles = nsnull;
-+ int n_rect = 0;
-+ int i;
-+
-+ gdk_region_get_rectangles (rgn, &rectangles, &n_rect);
-+
-+ Region xregion = XCreateRegion();
-+
-+ for (i=0; i<n_rect; i++) {
-+ XRectangle xrect;
-+
-+ xrect.x = CLAMP (rectangles[i].x, G_MINSHORT, G_MAXSHORT);
-+ xrect.y = CLAMP (rectangles[i].y, G_MINSHORT, G_MAXSHORT);
-+ xrect.width = CLAMP (rectangles[i].width, G_MINSHORT, G_MAXSHORT);
-+ xrect.height = CLAMP (rectangles[i].height, G_MINSHORT, G_MAXSHORT);
-+
-+ XUnionRectWithRegion (&xrect, xregion, xregion);
-+ }
-+
-+ XftDrawSetClip(draw, xregion);
-+ XDestroyRegion (xregion);
-+
-+ }
-
- XftDrawString16(draw, &color, mXftFont, aX, aY + mBaselineAdjust,
- (FcChar16 *)aString, aLength);
-@@ -3169,9 +3190,30 @@
-
- GdkRegion *rgn = nsnull;
- clipRegion->GetNativeRegion((void *&)rgn);
-- GdkRegionPrivate *priv = (GdkRegionPrivate *)rgn;
-
-- XftDrawSetClip(draw, priv->xregion);
-+// getting xregion for gdk2 so we can set the XftDrawSetClip region
-+ GdkRectangle *rectangles = nsnull;
-+ int n_rect = 0;
-+ int i;
-+
-+ gdk_region_get_rectangles (rgn, &rectangles, &n_rect);
-+
-+ Region xregion = XCreateRegion();
-+
-+ for (i=0; i<n_rect; i++) {
-+ XRectangle xrect;
-+
-+ xrect.x = CLAMP (rectangles[i].x, G_MINSHORT, G_MAXSHORT);
-+ xrect.y = CLAMP (rectangles[i].y, G_MINSHORT, G_MAXSHORT);
-+ xrect.width = CLAMP (rectangles[i].width, G_MINSHORT, G_MAXSHORT);
-+ xrect.height = CLAMP (rectangles[i].height, G_MINSHORT, G_MAXSHORT);
-+
-+ XUnionRectWithRegion (&xrect, xregion, xregion);
-+ }
-+
-+ XftDrawSetClip(draw, xregion);
-+ XDestroyRegion (xregion);
-+
- }
-
- XftDrawString8(draw, &color, mXftFont, aX, aY + mBaselineAdjust,
diff --git a/net-www/mozilla/files/gtk2_widget.patch.bz2 b/net-www/mozilla/files/gtk2_widget.patch.bz2
new file mode 100644
index 000000000000..6dbd86db001e
--- /dev/null
+++ b/net-www/mozilla/files/gtk2_widget.patch.bz2
Binary files differ
diff --git a/net-www/mozilla/files/gtk2mozilla.patch b/net-www/mozilla/files/gtk2mozilla.patch
deleted file mode 100644
index 84b1dda8cc3f..000000000000
--- a/net-www/mozilla/files/gtk2mozilla.patch
+++ /dev/null
@@ -1,1012 +0,0 @@
-diff -u mozilla/embedding/browser/Makefile.in mold/embedding/browser/Makefile.in
---- mozilla/embedding/browser/Makefile.in Wed Apr 10 04:35:58 2002
-+++ mold/embedding/browser/Makefile.in Tue May 14 13:16:45 2002
-@@ -31,6 +31,10 @@
- DIRS += gtk
- endif
-
-+ifdef MOZ_ENABLE_GTK2
-+DIRS += gtk
-+endif
-+
- ifdef MOZ_ENABLE_PHOTON
- DIRS += photon
- endif
-Common subdirectories: mozilla/embedding/browser/activex and mold/embedding/browser/activex
-Common subdirectories: mozilla/embedding/browser/build and mold/embedding/browser/build
-Common subdirectories: mozilla/embedding/browser/chrome and mold/embedding/browser/chrome
-Common subdirectories: mozilla/embedding/browser/cocoa and mold/embedding/browser/cocoa
-Common subdirectories: mozilla/embedding/browser/gtk and mold/embedding/browser/gtk
-Common subdirectories: mozilla/embedding/browser/macbuild and mold/embedding/browser/macbuild
-Common subdirectories: mozilla/embedding/browser/photon and mold/embedding/browser/photon
-Common subdirectories: mozilla/embedding/browser/powerplant and mold/embedding/browser/powerplant
-Common subdirectories: mozilla/embedding/browser/webBrowser and mold/embedding/browser/webBrowser
-Common subdirectories: mozilla/embedding/browser/gtk/src/.deps and mold/embedding/browser/gtk/src/.deps
-Common subdirectories: mozilla/embedding/browser/gtk/src/CVS and mold/embedding/browser/gtk/src/CVS
-diff -u -N mozilla/embedding/browser/gtk/src/EmbedWindow.cpp mold/embedding/browser/gtk/src/EmbedWindow.cpp
---- mozilla/embedding/browser/gtk/src/EmbedWindow.cpp Wed Apr 10 04:37:03 2002
-+++ mold/embedding/browser/gtk/src/EmbedWindow.cpp Tue May 14 10:41:23 2002
-@@ -226,9 +226,11 @@
- {
- GtkWidget* parent = GTK_WIDGET(mOwner->mOwningWidget)->parent;
-
-+#ifdef MOZ_WIDGET_GTK
- if (GTK_IS_CONTAINER(parent))
- gtk_container_focus(GTK_CONTAINER(parent),
- GTK_DIR_TAB_FORWARD);
-+#endif
- return NS_OK;
- }
-
-@@ -237,9 +239,11 @@
- {
- GtkWidget* parent = GTK_WIDGET(mOwner->mOwningWidget)->parent;
-
-+#ifdef MOZ_WIDGET_GTK
- if (GTK_IS_CONTAINER(parent))
- gtk_container_focus(GTK_CONTAINER(parent),
- GTK_DIR_TAB_BACKWARD);
-+#endif
- return NS_OK;
- }
-
-@@ -300,7 +304,9 @@
- NS_IMETHODIMP
- EmbedWindow::SetTitle(const PRUnichar *aTitle)
- {
-+ g_print ("set title\n");
- mTitle = aTitle;
-+ g_assert (mOwner->mOwningWidget != NULL);
- gtk_signal_emit(GTK_OBJECT(mOwner->mOwningWidget),
- moz_embed_signals[TITLE]);
- return NS_OK;
-@@ -405,7 +411,9 @@
- 0, 0,
- sTipWindow->allocation.width, sTipWindow->allocation.height);
-
-+#ifdef MOZ_WIDGET_GTK
- gtk_widget_popup(sTipWindow, aXCoords + root_x, aYCoords + root_y);
-+#endif /* MOZ_WIDGET_GTK */
-
- nsMemory::Free( (void*)tipString );
-
-diff -u -N mozilla/embedding/browser/gtk/src/Makefile.in mold/embedding/browser/gtk/src/Makefile.in
---- mozilla/embedding/browser/gtk/src/Makefile.in Thu Apr 11 20:27:09 2002
-+++ mold/embedding/browser/gtk/src/Makefile.in Tue May 14 10:41:23 2002
-@@ -56,6 +56,11 @@
- EmbedWindowCreator.cpp \
- EmbedStream.cpp
-
-+ifdef MOZ_ENABLE_GTK2
-+CSRCS = \
-+ gtkmozembedmarshal.c
-+endif
-+
- ifdef BUILD_STATIC_LIBS
- # Static build stuff
- DEFINES += -D_BUILD_STATIC_BIN=1
-@@ -88,12 +93,20 @@
- gtkmozembed.h \
- gtkmozembed_internal.h
-
-+ifdef MOZ_ENABLE_GTK
- EXTRA_DSO_LDOPTS = \
- $(MOZ_COMPONENT_LIBS) \
- -lgtksuperwin \
- $(NULL)
-+endif
-+
-+ifdef MOZ_ENABLE_GTK2
-+EXTRA_DSO_LDOPTS = \
-+ $(MOZ_COMPONENT_LIBS) \
-+ $(NULL)
-+endif
-
--EXTRA_DSO_LDOPTS += $(MOZ_GTK_LDFLAGS)
-+EXTRA_DSO_LDOPTS += $(MOZ_GTK_LDFLAGS) $(MOZ_GTK2_LIBS)
-
- include $(topsrcdir)/config/rules.mk
-
-@@ -108,7 +121,8 @@
- endif
- endif
-
--CXXFLAGS += $(MOZ_GTK_CFLAGS)
-+CXXFLAGS += $(MOZ_GTK_CFLAGS) $(MOZ_GTK2_CFLAGS)
-+CFLAGS += $(MOZ_GTK_CFLAGS) $(MOZ_GTK2_CFLAGS)
-
- ifdef BUILD_STATIC_LIBS
-
-diff -u -N mozilla/embedding/browser/gtk/src/gtkmozembed2.cpp mold/embedding/browser/gtk/src/gtkmozembed2.cpp
---- mozilla/embedding/browser/gtk/src/gtkmozembed2.cpp Wed Apr 10 04:37:03 2002
-+++ mold/embedding/browser/gtk/src/gtkmozembed2.cpp Tue May 14 10:41:23 2002
-@@ -36,11 +36,32 @@
- #include <nsXPIDLString.h>
- #include <nsReadableUtils.h>
-
-+#ifdef MOZ_WIDGET_GTK
-+
- // so we can get callbacks from the mozarea
- #include <gtkmozarea.h>
-
-+// so we get the right marshaler for gtk 1.2
-+#define gtkmozembed_VOID__INT_UINT \
-+ gtk_marshal_NONE__INT_INT
-+#define gtkmozembed_VOID__POINTER_INT_INT \
-+ gtk_marshal_NONE__POINTER_INT_INT
-+#define gtkmozembed_VOID__POINTER_INT_UINT \
-+ gtk_marshal_NONE__POINTER_INT_INT
-+#define gtkmozembed_VOID__POINTER_INT_POINTER \
-+ gtk_marshal_NONE__POINTER_INT_POINTER
-+
-+#endif /* MOZ_WIDGET_GTK */
-+
-+#ifdef MOZ_WIDGET_GTK2
-+
-+#include "gtkmozembedmarshal.h"
-+
-+#endif /* MOZ_WIDGET_GTK2 */
-+
- class nsIDirectoryServiceProvider;
-
-+#ifdef MOZ_WIDGET_GTK
- // Some "massaged" enum information for the GTK Type System
- static GtkFlagValue gtk_moz_embed_progress_flags_values[] = {
- { GTK_MOZ_EMBED_FLAG_START,
-@@ -138,6 +159,7 @@
- { 0,
- NULL, NULL }
- };
-+#endif /* MOZ_WIDGET_GTK */
-
-
- // class and instance initialization
-@@ -180,6 +202,7 @@
- GdkEventFocus *aGdkFocusEvent,
- GtkMozEmbed *aEmbed);
-
-+#ifdef MOZ_WIDGET_GTK
- // signal handlers for tracking the focus and and focus out events on
- // the toplevel window.
-
-@@ -189,6 +212,7 @@
- static void
- handle_toplevel_focus_out(GtkMozArea *aArea,
- GtkMozEmbed *aEmbed);
-+#endif /* MOZ_WIDGET_GTK */
-
- // globals for this type of widget
-
-@@ -249,191 +273,193 @@
- moz_embed_signals[LINK_MESSAGE] =
- gtk_signal_new ("link_message",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, link_message),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[JS_STATUS] =
- gtk_signal_new ("js_status",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, js_status),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[LOCATION] =
- gtk_signal_new ("location",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, location),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[TITLE] =
- gtk_signal_new("title",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, title),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[PROGRESS] =
- gtk_signal_new("progress",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, progress),
- gtk_marshal_NONE__INT_INT,
- GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
- moz_embed_signals[PROGRESS_ALL] =
- gtk_signal_new("progress_all",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, progress_all),
-- gtk_marshal_NONE__POINTER_INT_INT,
-+ gtkmozembed_VOID__POINTER_INT_INT,
- GTK_TYPE_NONE, 3, GTK_TYPE_STRING,
- GTK_TYPE_INT, GTK_TYPE_INT);
- moz_embed_signals[NET_STATE] =
- gtk_signal_new("net_state",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_state),
-- gtk_marshal_NONE__INT_INT,
-+ gtkmozembed_VOID__INT_UINT,
- GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_UINT);
- moz_embed_signals[NET_STATE_ALL] =
- gtk_signal_new("net_state_all",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_state_all),
-- gtk_marshal_NONE__POINTER_INT_INT,
-+ gtkmozembed_VOID__POINTER_INT_UINT,
- GTK_TYPE_NONE, 3, GTK_TYPE_STRING,
- GTK_TYPE_INT, GTK_TYPE_UINT);
- moz_embed_signals[NET_START] =
- gtk_signal_new("net_start",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_start),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[NET_STOP] =
- gtk_signal_new("net_stop",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_stop),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[NEW_WINDOW] =
- gtk_signal_new("new_window",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, new_window),
- gtk_marshal_NONE__POINTER_UINT,
- GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_UINT);
- moz_embed_signals[VISIBILITY] =
- gtk_signal_new("visibility",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, visibility),
- gtk_marshal_NONE__BOOL,
- GTK_TYPE_NONE, 1, GTK_TYPE_BOOL);
- moz_embed_signals[DESTROY_BROWSER] =
- gtk_signal_new("destroy_browser",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, destroy_brsr),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
- moz_embed_signals[OPEN_URI] =
- gtk_signal_new("open_uri",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, open_uri),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_STRING);
- moz_embed_signals[SIZE_TO] =
- gtk_signal_new("size_to",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, size_to),
- gtk_marshal_NONE__INT_INT,
- GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
- moz_embed_signals[DOM_KEY_DOWN] =
- gtk_signal_new("dom_key_down",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_key_down),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_KEY_PRESS] =
- gtk_signal_new("dom_key_press",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_key_press),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_KEY_UP] =
- gtk_signal_new("dom_key_up",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_key_up),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_MOUSE_DOWN] =
- gtk_signal_new("dom_mouse_down",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_down),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_MOUSE_UP] =
- gtk_signal_new("dom_mouse_up",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_up),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_MOUSE_CLICK] =
- gtk_signal_new("dom_mouse_click",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_click),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_MOUSE_DBL_CLICK] =
- gtk_signal_new("dom_mouse_dbl_click",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_dbl_click),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_MOUSE_OVER] =
- gtk_signal_new("dom_mouse_over",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_over),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[DOM_MOUSE_OUT] =
- gtk_signal_new("dom_mouse_out",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_out),
- gtk_marshal_BOOL__POINTER,
- GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
- moz_embed_signals[SECURITY_CHANGE] =
- gtk_signal_new("security_change",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, security_change),
- gtk_marshal_NONE__POINTER_UINT,
- GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_UINT);
- moz_embed_signals[STATUS_CHANGE] =
- gtk_signal_new("status_change",
- GTK_RUN_LAST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedClass, status_change),
-- gtk_marshal_NONE__POINTER_INT_POINTER,
-+ gtkmozembed_VOID__POINTER_INT_POINTER,
- GTK_TYPE_NONE, 3,
- GTK_TYPE_POINTER, GTK_TYPE_INT, GTK_TYPE_POINTER);
-
-+#ifdef MOZ_WIDGET_GTK
- gtk_object_class_add_signals(object_class, moz_embed_signals,
- EMBED_LAST_SIGNAL);
-+#endif /* MOZ_WIDGET_GTK */
-
- }
-
-@@ -443,6 +469,8 @@
- EmbedPrivate *priv = new EmbedPrivate();
- embed->data = priv;
- gtk_widget_set_name(GTK_WIDGET(embed), "gtkmozembed");
-+
-+ GTK_WIDGET_UNSET_FLAGS (GTK_WIDGET(embed), GTK_NO_WINDOW);
- }
-
- GtkWidget *
-@@ -538,6 +566,7 @@
- embed,
- GTK_OBJECT(child_widget));
-
-+#ifdef MOZ_WIDGET_GTK
- // connect to the toplevel focus out events for the child
- GtkMozArea *mozarea = GTK_MOZAREA(child_widget);
- gtk_signal_connect_while_alive(GTK_OBJECT(mozarea),
-@@ -551,6 +580,7 @@
- GTK_SIGNAL_FUNC(handle_toplevel_focus_out),
- embed,
- GTK_OBJECT(mozarea));
-+#endif /* MOZ_WIDGET_GTK */
- }
-
- static void
-@@ -663,6 +693,8 @@
- return FALSE;
- }
-
-+#ifdef MOZ_WIDGET_GTK
-+
- static void
- handle_toplevel_focus_in (GtkMozArea *aArea,
- GtkMozEmbed *aEmbed)
-@@ -683,6 +715,8 @@
- embedPrivate->TopLevelFocusOut();
- }
-
-+#endif /* MOZ_WIDGET_GTK */
-+
- // Widget methods
-
- void
-@@ -1011,6 +1045,8 @@
- return embedPrivate->mChromeMask;
- }
-
-+#ifdef MOZ_WIDGET_GTK
-+
- GtkType
- gtk_moz_embed_progress_flags_get_type(void)
- {
-@@ -1059,6 +1095,8 @@
- return chrome_flags_type;
- }
-
-+#endif /* MOZ_WIDGET_GTK */
-+
- void
- gtk_moz_embed_get_nsIWebBrowser (GtkMozEmbed *embed, nsIWebBrowser **retval)
- {
-@@ -1183,14 +1221,16 @@
- moz_embed_single_signals[NEW_WINDOW_ORPHAN] =
- gtk_signal_new("new_window_orphan",
- GTK_RUN_FIRST,
-- object_class->type,
-+ GTK_CLASS_TYPE(klass),
- GTK_SIGNAL_OFFSET(GtkMozEmbedSingleClass,
- new_window_orphan),
- gtk_marshal_NONE__POINTER_UINT,
- GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_UINT);
-
-+#ifdef MOZ_WIDGET_GTK
- gtk_object_class_add_signals(object_class, moz_embed_single_signals,
- SINGLE_LAST_SIGNAL);
-+#endif /* MOZ_WIDGET_GTK */
- }
-
- static void
-diff -u -N mozilla/embedding/browser/gtk/src/gtkmozembedmarshal.c mold/embedding/browser/gtk/src/gtkmozembedmarshal.c
---- mozilla/embedding/browser/gtk/src/gtkmozembedmarshal.c Thu Jan 1 01:00:00 1970
-+++ mold/embedding/browser/gtk/src/gtkmozembedmarshal.c Tue May 14 13:24:29 2002
-@@ -0,0 +1,203 @@
-+
-+#include <glib-object.h>
-+
-+
-+#ifdef G_ENABLE_DEBUG
-+#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
-+#define g_marshal_value_peek_char(v) g_value_get_char (v)
-+#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
-+#define g_marshal_value_peek_int(v) g_value_get_int (v)
-+#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
-+#define g_marshal_value_peek_long(v) g_value_get_long (v)
-+#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
-+#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
-+#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
-+#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
-+#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
-+#define g_marshal_value_peek_float(v) g_value_get_float (v)
-+#define g_marshal_value_peek_double(v) g_value_get_double (v)
-+#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
-+#define g_marshal_value_peek_param(v) g_value_get_param (v)
-+#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
-+#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
-+#define g_marshal_value_peek_object(v) g_value_get_object (v)
-+#else /* !G_ENABLE_DEBUG */
-+/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
-+ * Do not access GValues directly in your code. Instead, use the
-+ * g_value_get_*() functions
-+ */
-+#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
-+#define g_marshal_value_peek_char(v) (v)->data[0].v_int
-+#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
-+#define g_marshal_value_peek_int(v) (v)->data[0].v_int
-+#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
-+#define g_marshal_value_peek_long(v) (v)->data[0].v_long
-+#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
-+#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
-+#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
-+#define g_marshal_value_peek_enum(v) (v)->data[0].v_int
-+#define g_marshal_value_peek_flags(v) (v)->data[0].v_uint
-+#define g_marshal_value_peek_float(v) (v)->data[0].v_float
-+#define g_marshal_value_peek_double(v) (v)->data[0].v_double
-+#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
-+#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
-+#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
-+#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
-+#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
-+#endif /* !G_ENABLE_DEBUG */
-+
-+
-+/* NONE:INT,UINT (/dev/stdin:1) */
-+void
-+gtkmozembed_VOID__INT_UINT (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data)
-+{
-+ typedef void (*GMarshalFunc_VOID__INT_UINT) (gpointer data1,
-+ gint arg_1,
-+ guint arg_2,
-+ gpointer data2);
-+ register GMarshalFunc_VOID__INT_UINT callback;
-+ register GCClosure *cc = (GCClosure*) closure;
-+ register gpointer data1, data2;
-+
-+ g_return_if_fail (n_param_values == 3);
-+
-+ if (G_CCLOSURE_SWAP_DATA (closure))
-+ {
-+ data1 = closure->data;
-+ data2 = g_value_peek_pointer (param_values + 0);
-+ }
-+ else
-+ {
-+ data1 = g_value_peek_pointer (param_values + 0);
-+ data2 = closure->data;
-+ }
-+ callback = (GMarshalFunc_VOID__INT_UINT) (marshal_data ? marshal_data : cc->callback);
-+
-+ callback (data1,
-+ g_marshal_value_peek_int (param_values + 1),
-+ g_marshal_value_peek_uint (param_values + 2),
-+ data2);
-+}
-+
-+/* NONE:POINTER,INT,INT (/dev/stdin:2) */
-+void
-+gtkmozembed_VOID__POINTER_INT_INT (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data)
-+{
-+ typedef void (*GMarshalFunc_VOID__POINTER_INT_INT) (gpointer data1,
-+ gpointer arg_1,
-+ gint arg_2,
-+ gint arg_3,
-+ gpointer data2);
-+ register GMarshalFunc_VOID__POINTER_INT_INT callback;
-+ register GCClosure *cc = (GCClosure*) closure;
-+ register gpointer data1, data2;
-+
-+ g_return_if_fail (n_param_values == 4);
-+
-+ if (G_CCLOSURE_SWAP_DATA (closure))
-+ {
-+ data1 = closure->data;
-+ data2 = g_value_peek_pointer (param_values + 0);
-+ }
-+ else
-+ {
-+ data1 = g_value_peek_pointer (param_values + 0);
-+ data2 = closure->data;
-+ }
-+ callback = (GMarshalFunc_VOID__POINTER_INT_INT) (marshal_data ? marshal_data : cc->callback);
-+
-+ callback (data1,
-+ g_marshal_value_peek_pointer (param_values + 1),
-+ g_marshal_value_peek_int (param_values + 2),
-+ g_marshal_value_peek_int (param_values + 3),
-+ data2);
-+}
-+
-+/* NONE:POINTER,INT,UINT (/dev/stdin:3) */
-+void
-+gtkmozembed_VOID__POINTER_INT_UINT (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data)
-+{
-+ typedef void (*GMarshalFunc_VOID__POINTER_INT_UINT) (gpointer data1,
-+ gpointer arg_1,
-+ gint arg_2,
-+ guint arg_3,
-+ gpointer data2);
-+ register GMarshalFunc_VOID__POINTER_INT_UINT callback;
-+ register GCClosure *cc = (GCClosure*) closure;
-+ register gpointer data1, data2;
-+
-+ g_return_if_fail (n_param_values == 4);
-+
-+ if (G_CCLOSURE_SWAP_DATA (closure))
-+ {
-+ data1 = closure->data;
-+ data2 = g_value_peek_pointer (param_values + 0);
-+ }
-+ else
-+ {
-+ data1 = g_value_peek_pointer (param_values + 0);
-+ data2 = closure->data;
-+ }
-+ callback = (GMarshalFunc_VOID__POINTER_INT_UINT) (marshal_data ? marshal_data : cc->callback);
-+
-+ callback (data1,
-+ g_marshal_value_peek_pointer (param_values + 1),
-+ g_marshal_value_peek_int (param_values + 2),
-+ g_marshal_value_peek_uint (param_values + 3),
-+ data2);
-+}
-+
-+/* NONE:POINTER,INT,POINTER (/dev/stdin:4) */
-+void
-+gtkmozembed_VOID__POINTER_INT_POINTER (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data)
-+{
-+ typedef void (*GMarshalFunc_VOID__POINTER_INT_POINTER) (gpointer data1,
-+ gpointer arg_1,
-+ gint arg_2,
-+ gpointer arg_3,
-+ gpointer data2);
-+ register GMarshalFunc_VOID__POINTER_INT_POINTER callback;
-+ register GCClosure *cc = (GCClosure*) closure;
-+ register gpointer data1, data2;
-+
-+ g_return_if_fail (n_param_values == 4);
-+
-+ if (G_CCLOSURE_SWAP_DATA (closure))
-+ {
-+ data1 = closure->data;
-+ data2 = g_value_peek_pointer (param_values + 0);
-+ }
-+ else
-+ {
-+ data1 = g_value_peek_pointer (param_values + 0);
-+ data2 = closure->data;
-+ }
-+ callback = (GMarshalFunc_VOID__POINTER_INT_POINTER) (marshal_data ? marshal_data : cc->callback);
-+
-+ callback (data1,
-+ g_marshal_value_peek_pointer (param_values + 1),
-+ g_marshal_value_peek_int (param_values + 2),
-+ g_marshal_value_peek_pointer (param_values + 3),
-+ data2);
-+}
-+
-diff -u -N mozilla/embedding/browser/gtk/src/gtkmozembedmarshal.h mold/embedding/browser/gtk/src/gtkmozembedmarshal.h
---- mozilla/embedding/browser/gtk/src/gtkmozembedmarshal.h Thu Jan 1 01:00:00 1970
-+++ mold/embedding/browser/gtk/src/gtkmozembedmarshal.h Tue May 14 13:24:29 2002
-@@ -0,0 +1,48 @@
-+
-+#ifndef __gtkmozembed_MARSHAL_H__
-+#define __gtkmozembed_MARSHAL_H__
-+
-+#include <glib-object.h>
-+
-+G_BEGIN_DECLS
-+
-+/* NONE:INT,UINT (/dev/stdin:1) */
-+extern void gtkmozembed_VOID__INT_UINT (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data);
-+#define gtkmozembed_NONE__INT_UINT gtkmozembed_VOID__INT_UINT
-+
-+/* NONE:POINTER,INT,INT (/dev/stdin:2) */
-+extern void gtkmozembed_VOID__POINTER_INT_INT (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data);
-+#define gtkmozembed_NONE__POINTER_INT_INT gtkmozembed_VOID__POINTER_INT_INT
-+
-+/* NONE:POINTER,INT,UINT (/dev/stdin:3) */
-+extern void gtkmozembed_VOID__POINTER_INT_UINT (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data);
-+#define gtkmozembed_NONE__POINTER_INT_UINT gtkmozembed_VOID__POINTER_INT_UINT
-+
-+/* NONE:POINTER,INT,POINTER (/dev/stdin:4) */
-+extern void gtkmozembed_VOID__POINTER_INT_POINTER (GClosure *closure,
-+ GValue *return_value,
-+ guint n_param_values,
-+ const GValue *param_values,
-+ gpointer invocation_hint,
-+ gpointer marshal_data);
-+#define gtkmozembed_NONE__POINTER_INT_POINTER gtkmozembed_VOID__POINTER_INT_POINTER
-+
-+G_END_DECLS
-+
-+#endif /* __gtkmozembed_MARSHAL_H__ */
-+
-diff -u -N mozilla/embedding/browser/gtk/src/gtkmozembedmarshal.txt mold/embedding/browser/gtk/src/gtkmozembedmarshal.txt
---- mozilla/embedding/browser/gtk/src/gtkmozembedmarshal.txt Thu Jan 1 01:00:00 1970
-+++ mold/embedding/browser/gtk/src/gtkmozembedmarshal.txt Tue May 14 13:24:29 2002
-@@ -0,0 +1,4 @@
-+NONE:INT,UINT
-+NONE:POINTER,INT,INT
-+NONE:POINTER,INT,UINT
-+NONE:POINTER,INT,POINTER
-Common subdirectories: mozilla/widget/src/gtk2/.deps and mold/widget/src/gtk2/.deps
-Common subdirectories: mozilla/widget/src/gtk2/CVS and mold/widget/src/gtk2/CVS
-Only in mold/widget/src/gtk2/: keysym2ucs.o
-Only in mold/widget/src/gtk2/: libwidget_gtk2.so
-Only in mold/widget/src/gtk2/: mozcontainer.o
-Only in mold/widget/src/gtk2/: mozdrawingarea.o
-diff -u mozilla/widget/src/gtk2/nsAppShell.cpp mold/widget/src/gtk2/nsAppShell.cpp
---- mozilla/widget/src/gtk2/nsAppShell.cpp Wed Apr 10 05:35:06 2002
-+++ mold/widget/src/gtk2/nsAppShell.cpp Tue May 14 10:41:23 2002
-@@ -48,6 +48,10 @@
- static PLHashTable *sQueueHashTable = nsnull;
- static PLHashTable *sCountHashTable = nsnull;
-
-+#ifdef PR_LOGGING
-+PRLogModuleInfo *gWidgetLog = nsnull;
-+#endif
-+
- static gboolean event_processor_callback (GIOChannel *source,
- GIOCondition condition,
- gpointer data)
-@@ -71,6 +75,11 @@
- nsAppShell::nsAppShell(void)
- {
- NS_INIT_REFCNT();
-+
-+#ifdef PR_LOGGING
-+ if (!gWidgetLog)
-+ gWidgetLog = PR_NewLogModule("Widget");
-+#endif
- }
-
- nsAppShell::~nsAppShell(void)
-Only in mold/widget/src/gtk2/: nsAppShell.o
-Only in mold/widget/src/gtk2/: nsBidiKeyboard.o
-diff -u mozilla/widget/src/gtk2/nsCommonWidget.cpp mold/widget/src/gtk2/nsCommonWidget.cpp
---- mozilla/widget/src/gtk2/nsCommonWidget.cpp Wed Apr 10 05:35:07 2002
-+++ mold/widget/src/gtk2/nsCommonWidget.cpp Tue May 14 10:41:23 2002
-@@ -36,10 +36,6 @@
- #include "nsCommonWidget.h"
- #include "nsGtkKeyUtils.h"
-
--#ifdef PR_LOGGING
--PRLogModuleInfo *gWidgetLog = nsnull;
--#endif
--
- nsCommonWidget::nsCommonWidget()
- {
- mIsTopLevel = PR_FALSE;
-@@ -52,12 +48,6 @@
-
- mPreferredWidth = 0;
- mPreferredHeight = 0;
--
--#ifdef PR_LOGGING
-- if (!gWidgetLog)
-- gWidgetLog = PR_NewLogModule("Widget");
--#endif
--
- }
-
- nsCommonWidget::~nsCommonWidget()
-Only in mold/widget/src/gtk2/: nsCommonWidget.o
-Only in mold/widget/src/gtk2/: nsGtkKeyUtils.o
-Only in mold/widget/src/gtk2/: nsLookAndFeel.o
-Only in mold/widget/src/gtk2/: nsScrollbar.o
-Only in mold/widget/src/gtk2/: nsToolkit.o
-Only in mold/widget/src/gtk2/: nsWidgetFactory.o
-diff -u mozilla/widget/src/gtk2/nsWindow.cpp mold/widget/src/gtk2/nsWindow.cpp
---- mozilla/widget/src/gtk2/nsWindow.cpp Wed Apr 10 05:35:08 2002
-+++ mold/widget/src/gtk2/nsWindow.cpp Tue May 14 10:41:23 2002
-@@ -209,10 +209,13 @@
- if (mShell) {
- gtk_widget_destroy(mShell);
- mShell = nsnull;
-+ mContainer = nsnull;
- }
--
-- mContainer = nsnull;
--
-+ else if (mContainer) {
-+ gtk_widget_destroy(GTK_WIDGET(mContainer));
-+ mContainer = nsnull;
-+ }
-+
- if (mDrawingarea) {
- g_object_unref(mDrawingarea);
- mDrawingarea = nsnull;
-@@ -1183,21 +1186,24 @@
-
- // figure out our parent window
- MozDrawingarea *parentArea = nsnull;
-- MozContainer *parentContainer = nsnull;
-+ MozContainer *parentMozContainer = nsnull;
-+ GtkContainer *parentGtkContainer = nsnull;
-+ GdkWindow *parentGdkWindow = nsnull;
- GtkWindow *topLevelParent = nsnull;
-- if (aParent || aNativeParent) {
-- GdkWindow *parentWindow;
-- // get the drawing area and the container from the parent
-- if (aParent)
-- parentWindow = GDK_WINDOW(aParent->GetNativeData(NS_NATIVE_WINDOW));
-- else
-- parentWindow = GDK_WINDOW(aNativeParent);
-
-+ if (aParent)
-+ parentGdkWindow = GDK_WINDOW(aParent->GetNativeData(NS_NATIVE_WINDOW));
-+ else if (aNativeParent && GDK_IS_WINDOW(aNativeParent))
-+ parentGdkWindow = GDK_WINDOW(aNativeParent);
-+ else if (aNativeParent && GTK_IS_CONTAINER(aNativeParent))
-+ parentGtkContainer = GTK_CONTAINER(aNativeParent);
-+
-+ if (parentGdkWindow) {
- // find the mozarea on that window
- gpointer user_data = nsnull;
-- user_data = g_object_get_data(G_OBJECT(parentWindow), "mozdrawingarea");
-+ user_data = g_object_get_data(G_OBJECT(parentGdkWindow), "mozdrawingarea");
- parentArea = MOZ_DRAWINGAREA(user_data);
--
-+
- NS_ASSERTION(parentArea, "no drawingarea for parent widget!\n");
- if (!parentArea)
- return NS_ERROR_FAILURE;
-@@ -1210,15 +1216,15 @@
- return NS_ERROR_FAILURE;
-
- // XXX support generic containers here for embedding!
-- parentContainer = MOZ_CONTAINER(user_data);
-- NS_ASSERTION(parentContainer, "owning widget is not a mozcontainer!\n");
-- if (!parentContainer)
-+ parentMozContainer = MOZ_CONTAINER(user_data);
-+ NS_ASSERTION(parentMozContainer, "owning widget is not a mozcontainer!\n");
-+ if (!parentMozContainer)
- return NS_ERROR_FAILURE;
-
- // get the toplevel window just in case someone needs to use it
- // for setting transients or whatever.
- topLevelParent =
-- GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(parentContainer)));
-+ GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(parentMozContainer)));
- }
-
- // ok, create our windows
-@@ -1278,7 +1284,16 @@
- break;
- case eWindowType_child:
- {
-- mDrawingarea = moz_drawingarea_new(parentArea, parentContainer);
-+ if (parentMozContainer) {
-+ mDrawingarea = moz_drawingarea_new(parentArea, parentMozContainer);
-+ }
-+ else {
-+ mContainer = MOZ_CONTAINER(moz_container_new());
-+ gtk_container_add(parentGtkContainer, GTK_WIDGET(mContainer));
-+ gtk_widget_realize(GTK_WIDGET(mContainer));
-+
-+ mDrawingarea = moz_drawingarea_new(nsnull, mContainer);
-+ }
- }
- break;
- default:
-@@ -1310,6 +1325,7 @@
- g_signal_connect(G_OBJECT(mShell), "delete_event",
- G_CALLBACK(delete_event_cb), NULL);
- }
-+
- if (mContainer) {
- g_signal_connect_after(G_OBJECT(mContainer), "size_allocate",
- G_CALLBACK(size_allocate_cb), NULL);
-@@ -1344,11 +1360,13 @@
- LOG(("\tmShell %p %p %lx\n", (void *)mShell, (void *)mShell->window,
- GDK_WINDOW_XWINDOW(mShell->window)));
- }
-+
- if (mContainer) {
- LOG(("\tmContainer %p %p %lx\n", (void *)mContainer,
- (void *)GTK_WIDGET(mContainer)->window,
- GDK_WINDOW_XWINDOW(GTK_WIDGET(mContainer)->window)));
- }
-+
- if (mDrawingarea) {
- LOG(("\tmDrawingarea %p %p %p %lx %lx\n", (void *)mDrawingarea,
- (void *)mDrawingarea->clip_window,
-@@ -1372,8 +1390,17 @@
- // clear our resize flag
- mNeedsResize = PR_FALSE;
-
-- if (mIsTopLevel)
-+ if (mIsTopLevel) {
- gtk_window_resize(GTK_WINDOW(mShell), aWidth, aHeight);
-+ }
-+ else if (mContainer) {
-+ GtkAllocation allocation;
-+ allocation.x = 0;
-+ allocation.y = 0;
-+ allocation.width = aWidth;
-+ allocation.height = aHeight;
-+ gtk_widget_size_allocate(GTK_WIDGET(mContainer), &allocation);
-+ }
-
- moz_drawingarea_resize (mDrawingarea, aWidth, aHeight);
- }
-@@ -1404,6 +1431,15 @@
- moz_drawingarea_resize(mDrawingarea, aWidth, aHeight);
- }
- }
-+ else if (mContainer) {
-+ GtkAllocation allocation;
-+ allocation.x = 0;
-+ allocation.y = 0;
-+ allocation.width = aWidth;
-+ allocation.height = aHeight;
-+ gtk_widget_size_allocate(GTK_WIDGET(mContainer), &allocation);
-+ moz_drawingarea_move_resize(mDrawingarea, aX, aY, aWidth, aHeight);
-+ }
- else {
- moz_drawingarea_move_resize(mDrawingarea, aX, aY, aWidth, aHeight);
- }
-@@ -1422,8 +1458,12 @@
- gtk_widget_show(mShell);
-
- }
-+ else if (mContainer) {
-+ moz_drawingarea_set_visibility(mDrawingarea, TRUE);
-+ gtk_widget_show(GTK_WIDGET(mContainer));
-+ }
- else {
-- moz_drawingarea_set_visibility(mDrawingarea, aAction);
-+ moz_drawingarea_set_visibility(mDrawingarea, TRUE);
- }
- }
- else {
-@@ -1431,7 +1471,11 @@
- gtk_widget_hide(GTK_WIDGET(mShell));
- gtk_widget_hide(GTK_WIDGET(mContainer));
- }
-- moz_drawingarea_set_visibility(mDrawingarea, aAction);
-+ else if (mContainer) {
-+ gtk_widget_hide(GTK_WIDGET(mContainer));
-+ moz_drawingarea_set_visibility(mDrawingarea, FALSE);
-+ }
-+ moz_drawingarea_set_visibility(mDrawingarea, FALSE);
- }
- }
-
-Only in mold/widget/src/gtk2/: nsWindow.o
-Common subdirectories: a/xpinstall/packager/CVS and mozilla/xpinstall/packager/CVS
-Only in mozilla/xpinstall/packager/: Makefile
-Common subdirectories: a/xpinstall/packager/common and mozilla/xpinstall/packager/common
-Common subdirectories: a/xpinstall/packager/mac and mozilla/xpinstall/packager/mac
-diff -u a/xpinstall/packager/packages-unix mozilla/xpinstall/packager/packages-unix
---- a/xpinstall/packager/packages-unix Tue May 14 22:02:24 2002
-+++ mozilla/xpinstall/packager/packages-unix Tue May 14 23:34:16 2002
-@@ -173,7 +173,7 @@
- bin/components/webBrowser_core.xpt
- bin/components/libwallet.so
- bin/components/libwalletviewers.so
--bin/components/libwidget_gtk.so
-+bin/components/libwidget_gtk2.so
- bin/components/libxpconnect.so
- bin/components/locale.xpt
- bin/components/mozbrwsr.xpt
-Common subdirectories: a/xpinstall/packager/unix and mozilla/xpinstall/packager/unix
-Common subdirectories: a/xpinstall/packager/windows and mozilla/xpinstall/packager/windows
diff --git a/net-www/mozilla/files/mozilla-0.9.7-post.patch b/net-www/mozilla/files/mozilla-0.9.7-post.patch
deleted file mode 100644
index d8bb2e55c4a8..000000000000
--- a/net-www/mozilla/files/mozilla-0.9.7-post.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- mozilla/content/html/content/src/nsFormSubmitter.cpp 18 Dec 2001 19:27:21 -0000 1.12.2.1
-+++ mozilla/content/html/content/src/nsFormSubmitter.cpp 21 Dec 2001 20:19:47 -0000
-@@ -1074,7 +1074,6 @@
- }
- nsMemory::Free(readbuffer);
- NS_RELEASE(contentFile);
-- if (NS_FAILED(rv)) break;
- // Print CRLF after file
- wantbytes = PL_strlen(CRLF);
- rv = outStream->Write(CRLF, wantbytes, &gotbytes);
diff --git a/net-www/mozilla/files/mozilla-1.0-abi-compat-wrappers.patch b/net-www/mozilla/files/mozilla-1.0-abi-compat-wrappers.patch
new file mode 100644
index 000000000000..e43373915a8b
--- /dev/null
+++ b/net-www/mozilla/files/mozilla-1.0-abi-compat-wrappers.patch
@@ -0,0 +1,112 @@
+Index: configure.in
+===================================================================
+RCS file: /cvsroot/mozilla/configure.in,v
+retrieving revision 1.1056
+diff -u -r1.1056 configure.in
+--- configure.in 2 Jul 2002 20:26:10 -0000 1.1056
++++ configure.in 3 Jul 2002 22:46:49 -0000
+@@ -883,6 +883,7 @@
+ ;;
+ i?86)
+ USE_ELF_DYNSTR_GC=1
++ MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS=1
+ ;;
+ mips*)
+ CFLAGS="$CFLAGS -Wa,-xgot"
+@@ -3652,6 +3653,30 @@
+ [ --enable-elf-dynstr-gc Enable elf dynstr garbage collector (opt builds only)],
+ USE_ELF_DYNSTR_GC=1,
+ USE_ELF_DYNSTR_GC= )
++
++dnl ========================================================
++dnl = --enable-old-abi-compat-wrappers
++dnl ========================================================
++dnl on x86 linux, the current builds of some popular plugins (notably
++dnl flashplayer and real) expect a few builtin symbols from libgcc
++dnl which were available in some older versions of gcc. However,
++dnl they're _NOT_ available in newer versions of gcc (eg 3.1), so if
++dnl we want those plugin to work with a gcc-3.1 built binary, we need
++dnl to provide these symbols. MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS defaults
++dnl to true on x86 linux, and false everywhere else.
++dnl
++
++MOZ_ARG_ENABLE_BOOL(old-abi-compat-wrappers
++[ --old-abi-compat-wrappers, Support old GCC ABI symbols to ease the pain of the linux compiler change],
++ MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS=1,
++ MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS= )
++if test "$MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS"; then
++ AC_LANG_SAVE
++ AC_LANG_CPLUSPLUS
++ AC_CHECK_FUNCS(__builtin_vec_new __builtin_vec_delete __builtin_new __builtin_delete __pure_virtual)
++ AC_LANG_RESTORE
++ AC_DEFINE(MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS)
++fi
+
+ dnl ========================================================
+ dnl = --enable-prebinding
+Index: xpfe/bootstrap/nsAppRunner.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/xpfe/bootstrap/nsAppRunner.cpp,v
+retrieving revision 1.353
+diff -u -r1.353 nsAppRunner.cpp
+--- xpfe/bootstrap/nsAppRunner.cpp 16 May 2002 01:02:12 -0000 1.353
++++ xpfe/bootstrap/nsAppRunner.cpp 3 Jul 2002 22:46:49 -0000
+@@ -134,6 +134,58 @@
+ #include "jprof.h"
+ #endif
+
++// on x86 linux, the current builds of some popular plugins (notably
++// flashplayer and real) expect a few builtin symbols from libgcc
++// which were available in some older versions of gcc. However,
++// they're _NOT_ available in newer versions of gcc (eg 3.1), so if
++// we want those plugin to work with a gcc-3.1 built binary, we need
++// to provide these symbols. MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS defaults
++// to true on x86 linux, and false everywhere else.
++//
++// The fact that the new and free operators are mismatched
++// mirrors the way the original functions in egcs 1.1.2 worked.
++
++
++extern "C" {
++
++# ifndef HAVE___builtin_vec_new
++ void *__builtin_vec_new(size_t aSize, const std::nothrow_t &aNoThrow) throw()
++ {
++ return ::operator new(aSize, aNoThrow);
++ }
++# endif
++
++# ifndef HAVE___builtin_vec_delete
++ void __builtin_vec_delete(void *aPtr, const std::nothrow_t &) throw ()
++ {
++ if (aPtr) {
++ free(aPtr);
++ }
++ }
++# endif
++
++# ifndef HAVE__builtin_new
++ void *__builtin_new(int aSize)
++ {
++ return malloc(aSize);
++ }
++# endif
++
++# ifndef HAVE__builtin_delete
++ void __builtin_delete(void *aPtr)
++ {
++ free(aPtr);
++ }
++# endif
++
++# ifndef HAVE__pure_virtual
++ void __pure_virtual(void) {
++ extern void __cxa_pure_virtual(void);
++
++ __cxa_pure_virtual();
++ }
++# endif
++}
+
+ #ifdef _BUILD_STATIC_BIN
+ #include "nsStaticComponent.h"
diff --git a/net-www/mozilla/files/mozilla-1.0-asmfixes.patch b/net-www/mozilla/files/mozilla-1.0-asmfixes.patch
new file mode 100644
index 000000000000..92287f91b48b
--- /dev/null
+++ b/net-www/mozilla/files/mozilla-1.0-asmfixes.patch
@@ -0,0 +1,236 @@
+--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp.asmfixes 2002-06-12 11:03:43.000000000 +0200
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp 2002-06-12 11:32:57.000000000 +0200
+@@ -40,7 +40,7 @@
+ #include "xptcprivate.h"
+ #include "xptc_platforms_unixish_x86.h"
+
+-static nsresult
++extern "C" nsresult
+ PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args)
+ {
+ #define PARAM_BUFFER_COUNT 16
+@@ -102,32 +102,67 @@ PrepareAndDispatch(nsXPTCStubBase* self,
+ return result;
+ }
+
+-#ifdef __GNUC__ /* Gnu Compiler. */
+-#define STUB_ENTRY(n) \
+-nsresult nsXPTCStubBase::Stub##n() \
+-{ \
+- register nsresult (*method) (nsXPTCStubBase *, uint32, PRUint32 *) = PrepareAndDispatch; \
+- int temp0, temp1; \
+- register nsresult result; \
+- __asm__ __volatile__( \
+- "leal 0x0c(%%ebp), %%ecx\n\t" /* args */ \
+- "pushl %%ecx\n\t" \
+- "pushl $"#n"\n\t" /* method index */ \
+- "movl 0x08(%%ebp), %%ecx\n\t" /* this */ \
+- "pushl %%ecx\n\t" \
+- "call *%%edx\n\t" /* PrepareAndDispatch */ \
+- "addl $12, %%esp" \
+- : "=a" (result), /* %0 */ \
+- "=&c" (temp0), /* %1 */ \
+- "=d" (temp1) /* %2 */ \
+- : "2" (method) /* %2 */ \
+- : "memory" ); \
+- return result; \
+-}
++#ifndef __GNUC__
++#error "can't find a compiler to use"
++#endif
+
++#if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
++// gcc3 mangling tends to insert the length of the method name
++#define STUB_ENTRY(n) \
++asm(".section \".text\"\n\t" \
++ ".align 2\n\t" \
++ ".if " #n " < 10\n\t" \
++ ".globl _ZN14nsXPTCStubBase5Stub" #n "Ev\n\t" \
++ ".type _ZN14nsXPTCStubBase5Stub" #n "Ev,@function\n" \
++"_ZN14nsXPTCStubBase5Stub" #n "Ev:\n\t" \
++ \
++ ".elseif " #n " < 100\n\t" \
++ ".globl _ZN14nsXPTCStubBase6Stub" #n "Ev\n\t" \
++ ".type _ZN14nsXPTCStubBase6Stub" #n "Ev,@function\n" \
++"_ZN14nsXPTCStubBase6Stub" #n "Ev:\n\t" \
++ \
++ ".elseif " #n " < 1000\n\t" \
++ ".globl _ZN14nsXPTCStubBase7Stub" #n "Ev\n\t" \
++ ".type _ZN14nsXPTCStubBase7Stub" #n "Ev,@function\n" \
++"_ZN14nsXPTCStubBase7Stub" #n "Ev:\n\t" \
++ \
++ ".else\n\t" \
++ ".err \"stub number " #n " >= 1000 not yet supported\"\n\t" \
++ ".endif\n\t" \
++ \
++ "movl $" #n ", %eax\n\t" \
++ "jmp SharedStub" \
++);
+ #else
+-#error "can't find a compiler to use"
+-#endif /* __GNUC__ */
++// gcc2 version
++#define STUB_ENTRY(n) \
++asm(".section \".text\"\n\t" \
++ ".align 2\n\t" \
++ ".globl Stub" #n "__14nsXPTCStubBase\n\t" \
++ ".type Stub" #n "__14nsXPTCStubBase,@function\n" \
++"Stub" #n "__14nsXPTCStubBase:\n\t" \
++ "movl $" #n ", %eax\n\t" \
++ "jmp SharedStub\n\t" \
++);
++#endif
++
++// static nsresult SharedStub(PRUint32 methodIndex) __attribute__((regparm(1)))
++asm(".section \".text\"\n\t"
++ ".align 2\n\t"
++ ".type SharedStub,@function\n\t"
++"SharedStub:\n\t"
++ "pushl %ebp\n\t"
++ "movl %esp, %ebp\n\t"
++ "leal 0x0c(%ebp), %ecx\n\t"
++ "pushl %ecx\n\t"
++ "pushl %eax\n\t"
++ "movl 0x08(%ebp), %ecx\n\t"
++ "pushl %ecx\n\t"
++ "call PrepareAndDispatch\n\t"
++ "addl $12, %esp\n\t"
++ "popl %ebp\n\t"
++ "ret"
++);
+
+ #define SENTINEL_ENTRY(n) \
+ nsresult nsXPTCStubBase::Sentinel##n() \
+--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_unixish_x86.cpp.asmfixes 2002-06-11 15:48:50.000000000 +0200
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_unixish_x86.cpp 2002-06-12 11:06:49.000000000 +0200
+@@ -40,9 +40,7 @@
+ #include "xptcprivate.h"
+ #include "xptc_platforms_unixish_x86.h"
+
+-extern "C" {
+-
+-static void
++extern "C" void
+ invoke_copy_to_stack(PRUint32 paramCount, nsXPTCVariant* s, PRUint32* d)
+ {
+ for(PRUint32 i = paramCount; i >0; i--, d++, s++)
+@@ -70,69 +68,64 @@ invoke_copy_to_stack(PRUint32 paramCount
+ }
+ }
+
+-}
+-
++extern "C"
+ XPTC_PUBLIC_API(nsresult)
+ XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex,
+- PRUint32 paramCount, nsXPTCVariant* params)
+-{
+-#ifdef __GNUC__ /* Gnu compiler. */
+- PRUint32 result;
+- // Each param takes at most 2, 4-byte words
+- // It doesn't matter if we push too many words, and calculating the exact
+- // ammount takes time.
+- PRUint32 n = paramCount << 3;
+- void (*fn_copy) (unsigned int, nsXPTCVariant *, PRUint32 *) = invoke_copy_to_stack;
+- int temp1, temp2, temp3;
+-
+- __asm__ __volatile__(
+- "subl %8, %%esp\n\t" /* make room for params */
+- "pushl %%esp\n\t"
+- "pushl %7\n\t"
+- "pushl %6\n\t"
+- "call *%0\n\t" /* copy params */
+- "addl $0xc, %%esp\n\t"
+- "movl %4, %%ecx\n\t"
++ PRUint32 paramCount, nsXPTCVariant* params);
++
++#ifdef __GNUC__ /* GNU compiler */
++asm(".section \".text\"\n\t"
++ ".align 2\n\t"
++ ".globl XPTC_InvokeByIndex\n\t"
++ ".type XPTC_InvokeByIndex,@function\n"
++"XPTC_InvokeByIndex:\n\t"
++ "pushl %ebp\n\t"
++ "movl %esp, %ebp\n\t"
++ "pushl %ecx\n\t"
++ "pushl %edx\n\t"
++ "pushl %edi\n\t"
++ "movl 0x10(%ebp), %ecx\n\t" /* paramCount */
++ "movl 0x14(%ebp), %edx\n\t" /* params */
++ // Each param takes at most 2, 4-byte words
++ // It doesn't matter if we push too many words, and calculating the exact
++ // ammount takes time.
++ "leal 0(,%ecx,8), %edi\n\t"
++ "subl %edi, %esp\n\t"
++ "pushl %esp\n\t" /* copy params */
++ "pushl %edx\n\t"
++ "pushl %ecx\n\t"
++ "call invoke_copy_to_stack\n\t"
++ "addl $12, %esp\n\t"
++ "movl 0x08(%ebp), %ecx\n\t" /* that */
++ "movl 0x0c(%ebp), %eax\n\t" /* methodIndex */
+ #ifdef CFRONT_STYLE_THIS_ADJUST
+- "movl (%%ecx), %%edx\n\t"
+- "movl %5, %%eax\n\t" /* function index */
+- "shl $3, %%eax\n\t" /* *= 8 */
+- "addl $8, %%eax\n\t" /* += 8 skip first entry */
+- "addl %%eax, %%edx\n\t"
+- "movswl (%%edx), %%eax\n\t" /* 'this' offset */
+- "addl %%eax, %%ecx\n\t"
+- "pushl %%ecx\n\t"
+- "addl $4, %%edx\n\t" /* += 4, method pointer */
++#error "FIXME: untested"
++ "movl (%ecx), %edx\n\t"
++ "shl $3, %eax\n\t" /* *= 8 */
++ "addl $8, %eax\n\t" /* += 8 skip first entry */
++ "addl %eax, %edx\n\t"
++ "movswl (%edx), %eax\n\t" /* 'this' offset */
++ "addl %eax, %ecx\n\t"
++ "pushl %ecx\n\t"
++ "addl $4, %edx\n\t" /* += 4, method pointer */
+ #else /* THUNK_BASED_THIS_ADJUST */
+- "pushl %%ecx\n\t"
+- "movl (%%ecx), %%edx\n\t"
+- "movl %5, %%eax\n\t" /* function index */
++ "pushl %ecx\n\t"
++ "movl (%ecx), %edx\n\t"
+ #if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
+- "leal (%%edx,%%eax,4), %%edx\n\t"
++ "leal 0(%edx,%eax,4), %edx\n\t"
+ #else /* not G++ V3 ABI */
+- "leal 8(%%edx,%%eax,4), %%edx\n\t"
++ "leal 8(%edx,%eax,4), %edx\n\t"
+ #endif /* G++ V3 ABI */
+ #endif
+- "call *(%%edx)\n\t" /* safe to not cleanup esp */
+- "addl $4, %%esp\n\t"
+- "addl %8, %%esp"
+- : "=a" (result), /* %0 */
+- "=c" (temp1), /* %1 */
+- "=d" (temp2), /* %2 */
+- "=g" (temp3) /* %3 */
+- : "g" (that), /* %4 */
+- "g" (methodIndex), /* %5 */
+- "1" (paramCount), /* %6 */
+- "2" (params), /* %7 */
+- "g" (n), /* %8 */
+- "0" (fn_copy) /* %3 */
+- : "memory"
+- );
+-
+- return result;
+-
++ "call *(%edx)\n\t"
++ "addl $4, %esp\n\t" /* reajust stack for "this" pointer */
++ "addl %edi, %esp\n\t" /* ... and space for params */
++ "popl %edi\n\t"
++ "popl %edx\n\t"
++ "popl %ecx\n\t"
++ "popl %ebp\n\t"
++ "ret"
++);
+ #else
+ #error "can't find a compiler to use"
+ #endif /* __GNUC__ */
+-
+-}
diff --git a/net-www/mozilla/files/mozilla.sh b/net-www/mozilla/files/mozilla.sh
new file mode 100644
index 000000000000..3c71377c43e7
--- /dev/null
+++ b/net-www/mozilla/files/mozilla.sh
@@ -0,0 +1,258 @@
+#!/bin/sh
+#
+# The contents of this file are subject to the Netscape Public
+# License Version 1.1 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.mozilla.org/NPL/
+#
+# Software distributed under the License is distributed on an "AS
+# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# rights and limitations under the License.
+#
+# The Original Code is mozilla.org code.
+#
+# The Initial Developer of the Original Code is Netscape
+# Communications Corporation. Portions created by Netscape are
+# Copyright (C) 1998 Netscape Communications Corporation. All
+# Rights Reserved.
+#
+# Contributor(s):
+#
+
+##
+## Usage:
+##
+## $ mozilla
+##
+## This script is meant to run a mozilla program from the mozilla
+## rpm installation.
+##
+## The script will setup all the environment voodoo needed to make
+## mozilla work.
+
+cmdname=`basename $0`
+
+## don't leave any core files around
+ulimit -c 0
+
+##
+## Variables
+##
+MOZ_DIST_BIN="/usr/lib/mozilla"
+MOZ_PROGRAM="/usr/lib/mozilla/mozilla-bin"
+MOZ_CLIENT_PROGRAM="/usr/lib/mozilla/mozilla-xremote-client"
+
+##
+## Set MOZILLA_FIVE_HOME
+##
+MOZILLA_FIVE_HOME="/usr/lib/mozilla"
+
+export MOZILLA_FIVE_HOME
+
+##
+## Set LD_PRELOAD for old plugins
+##
+if [ -f /usr/lib/mozilla/libc++mem.so ]
+then
+ if [ "$LD_PRELOAD" ]
+ then
+ LD_PRELOAD="/usr/lib/mozilla/libc++mem.so $LD_PRELOAD"
+ else
+ LD_PRELOAD=/usr/lib/mozilla/libc++mem.so
+ fi
+ export LD_PRELOAD
+fi
+
+##
+## Set LD_LIBRARY_PATH
+##
+if [ "$LD_LIBRARY_PATH" ]
+then
+ LD_LIBRARY_PATH="/usr/lib/mozilla:/usr/lib/mozilla/plugins:$LD_LIBRARY_PATH"
+else
+ LD_LIBRARY_PATH="/usr/lib/mozilla:/usr/lib/mozilla/plugins"
+fi
+
+export LD_LIBRARY_PATH
+
+##
+## Make sure that we set the plugin path for backwards compatibility
+## Set MOZ_PLUGIN_PATH to $HOME/.mozilla/plugins if not set
+##
+export MOZ_PLUGIN_PATH=/usr/lib/mozilla/plugins
+
+if [ "$HOME" ]; then
+ export MOZ_PLUGIN_PATH="$MOZ_PLUGIN_PATH:$HOME/.mozilla/plugins"
+fi
+
+##
+## Set FONTCONFIG_PATH for Xft/fontconfig
+##
+FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft"
+export FONTCONFIG_PATH
+
+##
+## Autodetect language
+##
+grep -q $HOME/.mozilla $HOME/.mozilla/appreg > /dev/null 2>/dev/null
+SET_LANG=$?
+if [ "$HOME" -a "$LANG" -a "$SET_LANG" != "0" ]; then
+ MOZ_LANG=`grep -E "^$LANG[[:space:]]" $MOZILLA_FIVE_HOME/chrome/locale.alias | tr -s [:blank:] | cut -f 2`
+ for i in "$@";do
+ [ "$i" = "-UILocale" ] && MOZ_LANG=""
+ done
+ if [ "$MOZ_LANG" -a -r "$MOZILLA_FIVE_HOME/chrome/$MOZ_LANG.jar" ]; then
+ MOZ_LANG="-UILocale $MOZ_LANG"
+ else
+ unset MOZ_LANG
+ fi
+fi
+
+# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.
+
+function set_jvm_vars() {
+
+ # see if the jvm exists in either of the locations
+ if [ -L /usr/lib/mozilla/plugins/javaplugin_oji.so ]; then
+ JVM_ORIG_LINK=/usr/lib/mozilla/plugins/javaplugin_oji.so
+ fi
+
+ if [ -L /usr/lib/mozilla/plugins/libjavaplugin_oji.so ]; then
+ JVM_ORIG_LINK=/usr/lib/mozilla/plugins/libjavaplugin_oji.so
+ fi
+
+ if [ -z "$JVM_ORIG_LINK" ]; then
+ return;
+ fi
+
+ JVM_LINK=`perl -e "print readlink('$JVM_ORIG_LINK')"`
+
+ # is it relative? if so append the full path
+
+ echo "${JVM_LINK}" | grep -e "^/" 2>&1 > /dev/null
+
+ if [ "$?" -ne "0" ]; then
+ JVM_LINK=/usr/lib/mozilla/plugins/${JVM_LINK}
+ fi
+
+ JVM_BASE=`basename $JVM_LINK`
+ JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g`
+ JVM_COMMAND=$JVM_DIR/java
+ if [ ! -r $JVM_COMMAND ]; then
+ JVM_DIR=${JVM_DIR}../../../bin/
+ JVM_COMMAND=$JVM_DIR/java
+ # does the command exist?
+ if [ ! -r "$JVM_COMMAND" ]; then
+ return
+ fi
+ fi
+
+ # export this temporarily - it seems to work with old and new
+ # versions of the JVM.
+ export LD_ASSUME_KERNEL=2.2.5
+
+ # get the version
+ JVM_VERSION=`$JVM_COMMAND -version 2>&1`
+
+ unset LD_ASSUME_KERNEL
+
+ JVM_VERSION=`echo $JVM_VERSION | grep version | cut -f 3 -d " " | sed -e 's/\"//g'`
+
+ case "$JVM_VERSION" in
+ (1.3.0*)
+ # bad JVM
+ export LD_ASSUME_KERNEL=2.2.5
+ ;;
+ esac
+}
+
+function check_running() {
+ $MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null
+ RETURN_VAL=$?
+ if [ "$RETURN_VAL" -eq "2" ]; then
+ echo 0
+ return 0
+ else
+ echo 1
+ return 1
+ fi
+}
+
+function open_mail() {
+ if [ "${ALREADY_RUNNING}" -eq "1" ]; then
+ exec $MOZ_CLIENT_PROGRAM 'xfeDoCommand(openInbox)' \
+ 2>/dev/null >/dev/null
+ else
+ exec $MOZ_PROGRAM $MOZ_LANG $*
+ fi
+}
+
+function open_compose() {
+ if [ "${ALREADY_RUNNING}" -eq "1" ]; then
+ exec $MOZ_CLIENT_PROGRAM 'xfeDoCommand(composeMessage)' \
+ 2>/dev/null >/dev/null
+ else
+ exec $MOZ_PROGRAM $MOZ_LANG $*
+ fi
+}
+
+# OK, here's where all the real work gets done
+
+# set our JVM vars
+set_jvm_vars
+
+# check to see if there's an already running instance or not
+ALREADY_RUNNING=`check_running`
+
+# If there is no command line argument at all then try to open a new
+# window in an already running instance.
+if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then
+ exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null
+fi
+
+# if there's no command line argument and there's not a running
+# instance then just fire up a new copy of the browser
+if [ -z "$1" ]; then
+ exec $MOZ_PROGRAM $MOZ_LANG 2>/dev/null >/dev/null
+fi
+
+unset RETURN_VAL
+
+# If there's a command line argument but it doesn't begin with a -
+# it's probably a url. Try to send it to a running instance.
+USE_EXIST=0
+NEW_WINDOW=
+opt="$1"
+case "$opt" in
+ -mail)
+ open_mail ${1+"$@"}
+ ;;
+ -compose)
+ open_compose ${1+"$@"}
+ ;;
+ -*) ;;
+ *) USE_EXIST=1 ;;
+esac
+
+ othersopt=
+ optlast=
+ for i in "$@";do optlast=$i;done #last arg
+ for i in "$@";do [[ $i == $optlast ]] && break; othersopt="$othersopt $i";done #others arg
+ #???: needs check if othersopt begin with -* ?
+
+ if [[ $optlast != *:/* && -e $optlast ]];then
+ [[ $optlast != /* ]] && optlast=file://$PWD/$optlast
+ elif [[ $optlast == *:/* || -n $othersopt ]];then #???? like before...
+ NEW_WINDOW=1
+ fi
+
+if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then
+ if [[ -z $NEW_WINDOW ]];then
+ exec $MOZ_CLIENT_PROGRAM $othersopt "openurl($optlast)" 2>/dev/null >/dev/null
+ else
+ exec $MOZ_CLIENT_PROGRAM $othersopt "openurl($optlast,new-window)" 2>/dev/null >/dev/null
+ fi
+fi
+
+exec $MOZ_PROGRAM $MOZ_LANG $othersopt "$optlast"
diff --git a/net-www/mozilla/mozilla-1.0-r1.ebuild b/net-www/mozilla/mozilla-1.0-r1.ebuild
deleted file mode 100644
index dc54a09f750e..000000000000
--- a/net-www/mozilla/mozilla-1.0-r1.ebuild
+++ /dev/null
@@ -1,351 +0,0 @@
-# Copyright 1999-2002 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Maintainer: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/mozilla-1.0-r1.ebuild,v 1.1 2002/06/05 21:14:28 azarah Exp $
-
-# handle _rc versions
-MY_PV1=${PV/_}
-MY_PV2=${PV/_/\.}
-S=${WORKDIR}/mozilla
-DESCRIPTION="The Mozilla Web Browser"
-SRC_URI="ftp://ftp.mozilla.org/pub/mozilla/releases/${PN}${MY_PV1}/src/${PN}-source-${MY_PV1}.tar.bz2"
-HOMEPAGE="http://www.mozilla.org"
-LICENSE="MPL-1.1 | NPL-1.1"
-
-RDEPEND=">=gnome-base/ORBit-0.5.10-r1
- =dev-libs/glib-1.2*
- >=sys-libs/zlib-1.1.4
- >=media-libs/jpeg-6b
- >=media-libs/libmng-1.0.0
- >=media-libs/libpng-1.2.1
- dev-libs/expat
- app-arch/zip
- app-arch/unzip
- x11-libs/gtk+
- java? ( virtual/jre )"
-# gtk? ( x11-libs/gtk+ )
-# mozqt? ( x11-libs/qt )"
-
-DEPEND="java? ( >=dev-java/java-config-0.2.0 )
- ${RDEPEND}
- virtual/x11
- sys-devel/perl"
-
-SLOT="0"
-
-# needed by src_compile() and src_install()
-export MOZILLA_OFFICIAL=1
-export BUILD_OFFICIAL=1
-
-# enable XFT
-[ "${DISABLE_XFT}" != "1" ] && export MOZ_ENABLE_XFT=1
-
-# make sure the nss module gets build (for NSS support)
-[ -n "`use ssl`" ] && export MOZ_PSM=1
-
-# do we build java support for the NSS stuff ?
-# NOTE: this is broken for the moment
-#[ "`use java`" ] && export NS_USE_JDK=1
-
-
-src_unpack() {
-
- unpack ${A}
-
- # NOTE: XFT support will still work without this patch
-# This needs an updated XFree86
-# if [ -n "${MOZ_ENABLE_XFT}" ] ; then
-# cd ${S}
-# patch -p0 <${FILESDIR}/${P}-xft.patch || die
-# fi
-}
-
-src_compile() {
-
- chown -R root.root *
- #This should enable parallel builds, I hope
- export MAKE="emake"
- local myconf=""
- # NOTE: QT and XLIB toolkit seems very unstable, leave disabled until
- # tested ok -- azarah
-# if [ -n "`use qt`" ] ; then
- # when you enable this again, remember the qt dir is now /usr/qt/2 - danarmak
-# myconf="--enable-toolkit-qt --enable-default-toolkit=qt \
-# --disable-toolkit-gtk --disable-toolkit-xlib"
-# elif [ -n "`use gtk`" ] ; then
- myconf="--enable-toolkit-gtk --enable-default-toolkit=gtk \
- --disable-toolkit-qt --disable-toolkit-xlib"
-# else
-# myconf="--enable-toolkit-xlib --enable-default-toolkit=xlib \
-# --disable-toolkit-qt --disable-toolkit-gtk"
-# fi
-
- if [ -z "`use ldap`" ] ; then
- myconf="${myconf} --disable-ldap"
- fi
-
- if [ -z "$DEBUG" ] ; then
- myconf="${myconf} --enable-strip-libs --disable-debug \
- --disable-dtd-debug --disable-tests"
- fi
-
- if [ -n "${MOZ_ENABLE_XFT}" ] ; then
- # for this we have to use freetype-2.0.8 included with XFree86
- myconf="${myconf} --enable-xft --with-ft-prefix=/usr/X11R6 \
- --with-ft-exec-prefix=/usr/X11R6/bin"
-
- export FT2_CONFIG="/usr/X11R6/bin/freetype-config"
- fi
-
-
- # NB!!: Due to the fact that the non default extensions do not always
- # compile properly, using them is considered unsupported, and
- # is just here for completeness. Please do not use if you
- # do not know what you are doing!
- #
- # The defaults are (as of 1.0rc1, according to configure (line ~10799)):
- # cookie wallet content-packs xml-rpc xmlextras help transformiix venkman inspector irc
- # Non-defaults are:
- # xmlterm access-builtin ctl p3p interfaceinfo
- local myext="default"
- if [ -n "`use mozxmlterm`" ] ; then
- myext="${myext},xmlterm"
- fi
- if [ -n "`use mozaccess-builtin`" ] ; then
- myext="${myext},access-builtin"
- fi
- if [ -n "`use mozctl`" ] ; then
- myext="${myext},ctl"
- fi
- if [ -n "`use mozp3p`" ] ; then
- myext="${myext},p3p"
- fi
- if [ -n "`use mozinterfaceinfo`" ] ; then
- myext="${myext},interfaceinfo"
- fi
-
-
- export BUILD_MODULES=all
- export BUILD_OPT=1
-
- # Crashes on start when compiled with -fomit-frame-pointer
- CFLAGS="${CFLAGS/-fomit-frame-pointer}"
- CXXFLAGS="${CXXFLAGS/-fomit-frame-pointer}"
-
- ./configure --prefix=/usr/lib/mozilla \
- --disable-tests \
- --disable-pedantic \
- --disable-svg \
- --enable-xsl \
- --enable-crypto \
- --enable-detect-webshell-leaks \
- --enable-xinerama \
- --with-java-supplement \
- --with-pthreads \
- --with-extensions="${myext}" \
- --enable-optimize=-O3 \
- --with-default-mozilla-five-home=/usr/lib/mozilla \
- ${myconf} || die
-
- make || die
-
- # Build the NSS/SSL support
- if [ "`use ssl`" ] ; then
- cd ${S}/security/coreconf
-
- # Fix #include problem
- cp headers.mk headers.mk.orig
- echo 'INCLUDES += -I$(DIST)/include/nspr -I$(DIST)/include/dbm'\
- >>headers.mk
-
- make || die
-
- cd ${S}/security/nss
-
- make moz_import || die
- make || die
- cd ${S}
- fi
-}
-
-src_install() {
-
- # Copy the include and idl files
- dodir /usr/lib/mozilla/include/idl /usr/include
- cd ${S}/dist
- cp -LfR include/* ${D}/usr/lib/mozilla/include
- cp -LfR idl/* ${D}/usr/lib/mozilla/include/idl
- dosym /usr/lib/mozilla/include /usr/include/mozilla
-
- # Build the Release Tarball
- cd ${S}/xpinstall/packager
- make || die
- dodir /usr/lib
-
- TODO=""
- case ${ARCH} in
- ppc)
- TODO="${S}/dist/mozilla-powerpc-unknown-linux-gnu.tar.gz"
- ;;
- x86)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- sparc)
- ;;
- sparc64)
- ;;
- arm)
- ;;
- *)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- esac
-
- tar xzf ${TODO} -C ${D}/usr/lib
-
- # Install the development tools in /usr
- dodir /usr/bin
- mv ${D}/usr/lib/mozilla/{xpcshell,xpidl,xpt_dump,xpt_link} ${D}/usr/bin
-
- # Install the NSS/SSL libs, headers and tools
- if [ "`use ssl`" ] ; then
- # Install the headers ('make install' do not work for headers ...)
- insinto /usr/lib/mozilla/include/nss
- doins ${S}/dist/public/seccmd/*.h
- doins ${S}/dist/public/security/*.h
-
- cd ${S}/security/nss
-
- mkdir -p ${WORKDIR}/nss/{bin,lib}
- export SOURCE_BIN_DIR=${WORKDIR}/nss/bin
- export SOURCE_LIB_DIR=${WORKDIR}/nss/lib
-
- make install || die
- # Gets installed as symbolic links ...
- cp -Lf ${WORKDIR}/nss/bin/* ${D}/usr/bin
- cp -Lf ${WORKDIR}/nss/lib/* ${D}/usr/lib/mozilla
-
- # Need to unset these incase we want to rebuild, else the build
- # gets newked.
- unset SOURCE_LIB_DIR
- unset SOURCE_BIN_DIR
- fi
-
- cd ${S}
- exeinto /usr/bin
- doexe ${FILESDIR}/mozilla
- insinto /etc/env.d
- doins ${FILESDIR}/10mozilla
- dodoc LEGAL LICENSE README/mozilla/README*
-
- # Fix icons to look the same everywhere
- insinto /usr/lib/mozilla/icons
- doins ${S}/build/package/rpm/SOURCES/mozicon16.xpm
- doins ${S}/build/package/rpm/SOURCES/mozicon50.xpm
-
- # Install icon and .desktop for menu entry
- if [ "`use gnome`" ] ; then
- insinto /usr/share/pixmaps
- doins ${S}/build/package/rpm/SOURCES/mozilla-icon.png
-
- # Fix comment of menu entry
- cd ${S}/build/package/rpm/SOURCES
- cp mozilla.desktop mozilla.desktop.orig
- sed -e 's:Comment=Mozilla:Comment=Mozilla Web Browser:' \
- mozilla.desktop.orig >mozilla.desktop
- cd ${S}
- insinto /usr/share/gnome/apps/Internet
- doins ${S}/build/package/rpm/SOURCES/mozilla.desktop
- fi
-
- if [ -n "${MOZ_ENABLE_XFT}" ] ; then
- cd ${D}/usr/lib/mozilla/defaults/pref
- patch -p0 <${FILESDIR}/mozilla-xft-unix-prefs.patch || \
- die "failed unix prefs patch"
- fi
-
- # Take care of non root execution
- # (seems the problem is that not all files are readible by the user)
- chmod -R g+r,o+r ${D}/usr/lib/mozilla
-}
-
-pkg_preinst() {
- # Stale components and chrome files break when unmerging old
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/components
- fi
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/chrome
- fi
-}
-
-pkg_postinst() {
-
- # Make symlink for Java plugin (do not do in src_install(), else it only
- # gets installed every second time)
- if [ "`use java`" ] && [ ! -L /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla` ]
- then
- if [ -e `java-config --full-browser-plugin-path=mozilla` ]
- then
- ln -sf `java-config --full-browser-plugin-path=mozilla` \
- /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla`
- fi
- fi
-
- # Take care of component registration
- export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
-
- # Remove any stale component.reg
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- # Tempory fix for missing libtimer_gtk.so
- # If it exists when generating component.reg (before unmerge of old),
- # it 'corrupts' the newly generated component.reg with invalid references.
- if [ -e ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so
- fi
-
- # Needed to update the run time bindings for REGXPCOM
- # (do not remove next line!)
- env-update
- # Register components, setup Chrome .rdf files and fix file permissions
- umask 022
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- # Setup the default skin and locale to correctly generate the Chrome .rdf files
- echo "skin,install,select,classic/1.0" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- echo "locale,install,select,en-US" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- ${ROOT}/usr/lib/mozilla/regchrome
- find ${ROOT}/usr/lib/mozilla -type d -perm 0700 -exec chmod 755 {} \; || :
-
-
- echo
- echo "*****************************************************************"
- echo "* NB: Please unmerge old versions of mozilla, as the header *"
- echo "* layout in /usr/lib/mozilla/include have changed and will *"
- echo "* result in compile errors when compiling programs that need *"
- echo "* mozilla headers and libs (galeon, nautilus, ...) *"
- echo "*****************************************************************"
- echo
-}
-
-pkg_postrm() {
-
- # Regenerate component.reg in case some things changed
- if [ -e ${ROOT}/usr/lib/mozilla/regxpcom ] ; then
-
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- fi
-}
-
diff --git a/net-www/mozilla/mozilla-1.0_rc3-r2.ebuild b/net-www/mozilla/mozilla-1.0-r3.ebuild
index a60b0588c23b..1e610ca81f8f 100644
--- a/net-www/mozilla/mozilla-1.0_rc3-r2.ebuild
+++ b/net-www/mozilla/mozilla-1.0-r3.ebuild
@@ -1,7 +1,9 @@
# Copyright 1999-2002 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Maintainer: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/mozilla-1.0_rc3-r2.ebuild,v 1.1 2002/05/29 00:22:06 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/mozilla-1.0-r3.ebuild,v 1.1 2002/07/07 21:24:27 azarah Exp $
+
+# NOTE: to build without the mail and news component: export NO_MAIL="YES"
# handle _rc versions
MY_PV1=${PV/_}
@@ -14,7 +16,6 @@ LICENSE="MPL-1.1 | NPL-1.1"
RDEPEND=">=x11-base/xfree-4.2.0-r11
>=gnome-base/ORBit-0.5.10-r1
- =dev-libs/glib-1.2*
>=sys-libs/zlib-1.1.4
>=media-libs/jpeg-6b
>=media-libs/libmng-1.0.0
@@ -22,7 +23,10 @@ RDEPEND=">=x11-base/xfree-4.2.0-r11
dev-libs/expat
app-arch/zip
app-arch/unzip
- x11-libs/gtk+
+ ( gtk2? >=x11-libs/gtk+-2.0.5 :
+ =x11-libs/gtk+-1.2* )
+ ( gtk2? >=dev-libs/glib-2.0.4 :
+ =dev-libs/glib-1.2* )
java? ( virtual/jre )"
# gtk? ( x11-libs/gtk+ )
# mozqt? ( x11-libs/qt )"
@@ -39,7 +43,15 @@ export MOZILLA_OFFICIAL=1
export BUILD_OFFICIAL=1
# enable XFT
-[ "${DISABLE_XFT}" != "1" ] && export MOZ_ENABLE_XFT=1
+[ "${DISABLE_XFT}" != "1" ] && [ -z "`use gtk2`" ] && \
+ export MOZ_ENABLE_XFT=1
+
+# enable GTK+-2.0 support
+if [ "`use gtk2`" ] ; then
+ export MOZ_ENABLE_GTK2=1
+ export MOZ_WIDGET_GTK2=1
+ export MOZ_WIDGET_TOOLKIT=gtk2
+fi
# make sure the nss module gets build (for NSS support)
[ -n "`use ssl`" ] && export MOZ_PSM=1
@@ -57,12 +69,34 @@ src_unpack() {
cd ${S}
patch -p1 < ${FILESDIR}/mozilla-new-freetype2.patch || die
- # NOTE: XFT support will still work without this patch
-# This needs an updated XFree86
-# if [ -n "${MOZ_ENABLE_XFT}" ] ; then
-# cd ${S}
-# patch -p0 <${FILESDIR}/${P}-xft.patch || die
-# fi
+ [ -z "${CC}" ] && CC=gcc
+ if [ "`${CC} -dumpversion | cut -d. -f1,2`" != "2.95" ] ; then
+ # Fix bogus asm (from Mandrake .spec)
+ patch -p1 < ${FILESDIR}/${P}-asmfixes.patch || die
+
+# patch -p1 < ${FILESDIR}/${P}-gcc3-java-plugin.patch || die
+
+ # ABI compat patch for gcc-3.x to use gcc-2.95 plugins
+ #
+ # http://bugzilla.mozilla.org/show_bug.cgi?id=154206
+ # http://bugzilla.mozilla.org/show_bug.cgi?id=124006
+ # http://bugzilla.mozilla.org/show_bug.cgi?id=116444
+ #
+ if [ "${ARCH}" = "x86" ] ; then
+ patch -p0 < ${FILESDIR}/${P}-abi-compat-wrappers.patch
+ fi
+ fi
+
+ # Apply the bytecode patch for freetype2
+ patch -p1 < ${FILESDIR}/mozilla-ft-bytecode.patch || die
+
+ # Use gtk+-2.0 as widget toolkit
+ if [ "`use gtk2`" ] ; then
+ cd ${S}/embedding/browser/gtk/src
+ bzip2 -dc ${FILESDIR}/gtk2_embed.patch.bz2 | patch -p0 || die
+ cd ${S}/widget/src/gtk2
+ bzip2 -dc ${FILESDIR}/gtk2_widget.patch.bz2 | patch -p0 || die
+ fi
}
src_compile() {
@@ -73,30 +107,35 @@ src_compile() {
local myconf=""
# NOTE: QT and XLIB toolkit seems very unstable, leave disabled until
# tested ok -- azarah
-# if [ -n "`use qt`" ] ; then
- # when you enable this again, remember the qt dir is now /usr/qt/2 - danarmak
-# myconf="--enable-toolkit-qt --enable-default-toolkit=qt \
-# --disable-toolkit-gtk --disable-toolkit-xlib"
-# elif [ -n "`use gtk`" ] ; then
- myconf="--enable-toolkit-gtk --enable-default-toolkit=gtk \
- --disable-toolkit-qt --disable-toolkit-xlib"
-# else
-# myconf="--enable-toolkit-xlib --enable-default-toolkit=xlib \
-# --disable-toolkit-qt --disable-toolkit-gtk"
-# fi
+ if [ -n "`use gtk2`" ] ; then
+ myconf="${myconf} --enable-toolkit-gtk2 \
+ --enable-default-toolkit=gtk2 \
+ --disable-toolkit-qt \
+ --disable-toolkit-xlib \
+ --disable-gtk"
+ else
+ myconf="${myconf} --enable-toolkit-gtk \
+ --enable-default-toolkit=gtk \
+ --disable-toolkit-qt \
+ --disable-toolkit-xlib \
+ --disable-gtk2"
+ fi
if [ -z "`use ldap`" ] ; then
myconf="${myconf} --disable-ldap"
fi
- if [ -z "$DEBUG" ] ; then
- myconf="${myconf} --enable-strip-libs --disable-debug \
- --disable-dtd-debug --disable-tests"
+ if [ -z "${DEBUG}" ] ; then
+ myconf="${myconf} --enable-strip-libs \
+ --disable-debug \
+ --disable-dtd-debug \
+ --disable-tests"
fi
if [ -n "${MOZ_ENABLE_XFT}" ] ; then
# for this we have to use freetype-2.0.8 included with XFree86
- myconf="${myconf} --enable-xft --with-ft-prefix=/usr/X11R6 \
+ myconf="${myconf} --enable-xft \
+ --with-ft-prefix=/usr/X11R6 \
--with-ft-exec-prefix=/usr/X11R6/bin"
export FT2_CONFIG="/usr/X11R6/bin/freetype-config"
@@ -130,17 +169,35 @@ src_compile() {
fi
+ if [ -n "`use moznomail`" ] || \
+ [ "${NO_MAIL}" = "YES" ] || [ "${NO_MAIL}" = "yes" ]
+ then
+ myconf="${myconf} --disable-mailnews"
+ fi
+
export BUILD_MODULES=all
export BUILD_OPT=1
+ # Currently gcc-3.1.1 dont work well if we specify "-march"
+ # and other optimizations
+ [ -z "${CC}" ] && CC=gcc
+ if [ "`${CC} -dumpversion`" = "3.1.1" ] ; then
+ export CFLAGS=""
+ export CXXFLAGS=""
+ fi
+
# Crashes on start when compiled with -fomit-frame-pointer
CFLAGS="${CFLAGS/-fomit-frame-pointer}"
CXXFLAGS="${CXXFLAGS/-fomit-frame-pointer}"
./configure --prefix=/usr/lib/mozilla \
- --disable-tests \
--disable-pedantic \
--disable-svg \
+ --enable-mathml \
+ --without-system-nspr \
+ --enable-nspr-autoconf \
+ --with-system-zlib \
+ --enable-ipv6 \
--enable-xsl \
--enable-crypto \
--enable-detect-webshell-leaks \
@@ -148,7 +205,7 @@ src_compile() {
--with-java-supplement \
--with-pthreads \
--with-extensions="${myext}" \
- --enable-optimize=-O3 \
+ --enable-optimize="-Wno-deprecated -O3" \
--with-default-mozilla-five-home=/usr/lib/mozilla \
${myconf} || die
@@ -238,7 +295,7 @@ src_install() {
cd ${S}
exeinto /usr/bin
- doexe ${FILESDIR}/mozilla
+ newexe ${FILESDIR}/mozilla.sh mozilla
insinto /etc/env.d
doins ${FILESDIR}/10mozilla
dodoc LEGAL LICENSE README/mozilla/README*
@@ -288,30 +345,31 @@ pkg_preinst() {
pkg_postinst() {
+ export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
+
# Make symlink for Java plugin (do not do in src_install(), else it only
# gets installed every second time)
- if [ "`use java`" ] && [ ! -L /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla` ]
+ if [ "`use java`" ] && [ ! -L ${MOZILLA_FIVE_HOME}/plugins/`java-config --browser-plugin=mozilla` ]
then
if [ -e `java-config --full-browser-plugin-path=mozilla` ]
then
ln -sf `java-config --full-browser-plugin-path=mozilla` \
- /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla`
+ ${MOZILLA_FIVE_HOME}/plugins/`java-config --browser-plugin=mozilla`
fi
fi
# Take care of component registration
- export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
# Remove any stale component.reg
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
+ if [ -e ${MOZILLA_FIVE_HOME}/component.reg ] ; then
+ rm -f ${MOZILLA_FIVE_HOME}/component.reg
fi
# Tempory fix for missing libtimer_gtk.so
# If it exists when generating component.reg (before unmerge of old),
# it 'corrupts' the newly generated component.reg with invalid references.
- if [ -e ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so
+ if [ -e ${MOZILLA_FIVE_HOME}/components/libtimer_gtk.so ] ; then
+ rm -f ${MOZILLA_FIVE_HOME}/components/libtimer_gtk.so
fi
# Needed to update the run time bindings for REGXPCOM
@@ -319,15 +377,16 @@ pkg_postinst() {
env-update
# Register components, setup Chrome .rdf files and fix file permissions
umask 022
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
+ ${MOZILLA_FIVE_HOME}/regxpcom
+ chmod g+r,o+r ${MOZILLA_FIVE_HOME}/component.reg
# Setup the default skin and locale to correctly generate the Chrome .rdf files
+ find ${MOZILLA_FIVE_HOME}/chrome/ -name '*.rdf' -exec rm -f {} \; || :
echo "skin,install,select,classic/1.0" >> \
${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
echo "locale,install,select,en-US" >> \
${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- ${ROOT}/usr/lib/mozilla/regchrome
- find ${ROOT}/usr/lib/mozilla -type d -perm 0700 -exec chmod 755 {} \; || :
+ ${MOZILLA_FIVE_HOME}/regchrome
+ find ${MOZILLA_FIVE_HOME}/ -type d -perm 0700 -exec chmod 755 {} \; || :
echo
@@ -345,12 +404,18 @@ pkg_postrm() {
# Regenerate component.reg in case some things changed
if [ -e ${ROOT}/usr/lib/mozilla/regxpcom ] ; then
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
+ export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
+
+ if [ -e ${MOZILLA_FIVE_HOME}/component.reg ] ; then
+ rm -f ${MOZILLA_FIVE_HOME}/component.reg
fi
-
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
+
+ ${MOZILLA_FIVE_HOME}/regxpcom
+ chmod g+r,o+r ${MOZILLA_FIVE_HOME}/component.reg
+
+ find ${MOZILLA_FIVE_HOME}/chrome/ -name '*.rdf' -exec rm -f {} \; || :
+ ${MOZILLA_FIVE_HOME}/regchrome
+ find ${MOZILLA_FIVE_HOME}/ -type d -perm 0700 -exec chmod 755 {} \; || :
fi
}
diff --git a/net-www/mozilla/mozilla-1.0.ebuild b/net-www/mozilla/mozilla-1.0.ebuild
deleted file mode 100644
index 4125f62c548e..000000000000
--- a/net-www/mozilla/mozilla-1.0.ebuild
+++ /dev/null
@@ -1,356 +0,0 @@
-# Copyright 1999-2002 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Maintainer: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/mozilla-1.0.ebuild,v 1.1 2002/06/05 19:42:43 lostlogic Exp $
-
-# handle _rc versions
-MY_PV1=${PV/_}
-MY_PV2=${PV/_/\.}
-S=${WORKDIR}/mozilla
-DESCRIPTION="The Mozilla Web Browser"
-SRC_URI="ftp://ftp.mozilla.org/pub/mozilla/releases/${PN}${MY_PV1}/src/${PN}-source-${MY_PV1}.tar.bz2"
-HOMEPAGE="http://www.mozilla.org"
-LICENSE="MPL-1.1 | NPL-1.1"
-
-RDEPEND=">=x11-base/xfree-4.2.0-r11
- >=gnome-base/ORBit-0.5.10-r1
- =dev-libs/glib-2.0*
- >=sys-libs/zlib-1.1.4
- >=media-libs/jpeg-6b
- >=media-libs/libmng-1.0.0
- >=media-libs/libpng-1.2.1
- dev-libs/expat
- app-arch/zip
- app-arch/unzip
- =x11-libs/gtk+-2.0*
- java? ( virtual/jre )"
-# gtk? ( x11-libs/gtk+ )
-# mozqt? ( x11-libs/qt )"
-
-DEPEND="java? ( >=dev-java/java-config-0.2.0 )
- ${RDEPEND}
- virtual/x11
- sys-devel/perl"
-
-SLOT="0"
-
-# needed by src_compile() and src_install()
-export MOZILLA_OFFICIAL=1
-export BUILD_OFFICIAL=1
-
-# enable XFT support (via freetype2)
-export MOZ_ENABLE_XFT=1
-
-# make sure the nss module gets build (for NSS support)
-#[ -n "`use ssl`" ] && export MOZ_PSM=1
-export MOZ_PSM=1
-
-# do we build java support for the NSS stuff ?
-# NOTE: this is broken for the moment
-#[ "`use java`" ] && export NS_USE_JDK=1
-
-
-src_unpack() {
-
- unpack ${A}
- # Fix a compile error with freetype-2.0.9 or later
- cd ${S}
- patch -p1 < ${FILESDIR}/mozilla-new-freetype2.patch || die
-
- echo "applying marco gtk2 patch"
- patch -p1 <${FILESDIR}/gtk2mozilla.patch
-
- echo "applying gtk2 XFT bytecode patch"
- patch -p1 < ${FILESDIR}/mozilla-ft-bytecode.patch || die "Failed" mozilla-ft-bytecode.patch
-
-# echo "gtk2_mozilla_xft.patch"
-# patch -p1 < ${FILESDIR}/gtk2_mozilla_xft.patch
- chown -R root.root *
-}
-
-src_compile() {
-
- export MAKE="emake"
- local myconf=""
-
- # NOTE: QT and XLIB toolkit seems very unstable, leave disabled until
- # tested ok. ALSO, since we can use gtk+-2.0 now for XFT support,
- # QT or such wont be needed anymore - Azarah
-# if [ -n "`use qt`" ] ; then
- # when you enable this again, remember the qt dir is now /usr/qt/2 - danarmak
-# myconf="--enable-toolkit-qt --enable-default-toolkit=qt \
-# --disable-toolkit-gtk --disable-toolkit-xlib"
-# elif [ -n "`use gtk`" ] ; then
- myconf="--enable-default-toolkit=gtk2 --disable-toolkit-qt \
- --disable-toolkit-xlib"
-# else
-# myconf="--enable-toolkit-xlib --enable-default-toolkit=xlib \
-# --disable-toolkit-qt --disable-toolkit-gtk"
-# fi
-
-
- if [ -z "`use ldap`" ] ; then
- myconf="${myconf} --disable-ldap"
- fi
- if [ -z "$DEBUG" ] ; then
- myconf="${myconf} --enable-strip-libs --disable-debug \
- -disable-dtd-debug --disable-tests"
- fi
-
- # NB!!: Due to the fact that the non default extensions do not always
- # compile properly, using them is considered unsupported, and
- # is just here for completeness. Please do not use if you
- # do not know what you are doing!
- #
- # The defaults are (as of 1.0rc1, according to configure (line ~10799)):
- # cookie wallet content-packs xml-rpc xmlextras help transformiix venkman inspector irc
- # Non-defaults are:
- # xmlterm access-builtin ctl p3p interfaceinfo
- local myext="default"
- if [ -n "`use mozxmlterm`" ] ; then
- myext="${myext},xmlterm"
- fi
- if [ -n "`use mozaccess-builtin`" ] ; then
- myext="${myext},access-builtin"
- fi
- if [ -n "`use mozctl`" ] ; then
- myext="${myext},ctl"
- fi
- if [ -n "`use mozp3p`" ] ; then
- myext="${myext},p3p"
- fi
- if [ -n "`use mozinterfaceinfo`" ] ; then
- myext="${myext},interfaceinfo"
- fi
-
- export BUILD_MODULES=all
- export BUILD_OPT=1
-
- # Use freetype included with xfree86
- export FT2_CONFIG="/usr/X11R6/bin/freetype-config"
-
- # Crashes on start when compiled with -fomit-frame-pointer
- CFLAGS="${CFLAGS/-fomit-frame-pointer}"
- CXXFLAGS="${CXXFLAGS/-fomit-frame-pointer}"
-
- ./configure --prefix=/usr/lib/mozilla \
- --disable-tests \
- --disable-pedantic \
- --disable-svg \
- --enable-xsl \
- --enable-crypto \
- --enable-detect-webshell-leaks \
- --enable-xinerama \
- --with-java-supplement \
- --with-pthreads \
- --enable-xft \
- --with-ft-prefix=/usr/X11R6 \
- --with-ft-exec-prefix=/usr/X11R6/bin \
- --with-extensions="${myext}" \
- --enable-optimize=-O3 \
- --with-default-mozilla-five-home=/usr/lib/mozilla \
- ${myconf} || die
-
- make || die
-
-# SSL is needed for far too much galeon2 status is "on the way" enabling this for now":/
- # Build the NSS/SSL support
-# if [ "`use ssl`" ] ; then
- cd ${S}/security/coreconf
-
- # Fix #include problem
- cp headers.mk headers.mk.orig
- echo 'INCLUDES += -I$(DIST)/include/nspr -I$(DIST)/include/dbm'\
- >>headers.mk
-
- make || die
-
- cd ${S}/security/nss
-
- make moz_import || die
- make || die
- cd ${S}
-# fi
-}
-
-src_install() {
-
- # Copy the include and idl files
- dodir /usr/lib/mozilla/include/idl /usr/include
- cd ${S}/dist
- cp -LfR include/* ${D}/usr/lib/mozilla/include
- cp -LfR idl/* ${D}/usr/lib/mozilla/include/idl
- dosym /usr/lib/mozilla/include /usr/include/mozilla
-
- # Build the Release Tarball
- cd ${S}/xpinstall/packager
- make || die
- dodir /usr/lib
-
- TODO=""
- case ${ARCH} in
- ppc)
- TODO="${S}/dist/mozilla-powerpc-unknown-linux-gnu.tar.gz"
- ;;
- x86)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- sparc)
- ;;
- sparc64)
- ;;
- arm)
- ;;
- *)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- esac
-
- tar xzf ${TODO} -C ${D}/usr/lib
-
- # Install the development tools in /usr
- dodir /usr/bin
- mv ${D}/usr/lib/mozilla/{xpcshell,xpidl,xpt_dump,xpt_link} ${D}/usr/bin
-
- # Install the NSS/SSL libs, headers and tools
- # once again we enable SSL per default
-# if [ "`use ssl`" ] ; then
- # Install the headers ('make install' do not work for headers ...)
- insinto /usr/lib/mozilla/include/nss
- doins ${S}/dist/public/seccmd/*.h
- doins ${S}/dist/public/security/*.h
-
- cd ${S}/security/nss
-
- mkdir -p ${WORKDIR}/nss/{bin,lib}
- export SOURCE_BIN_DIR=${WORKDIR}/nss/bin
- export SOURCE_LIB_DIR=${WORKDIR}/nss/lib
-
- make install || die
- # Gets installed as symbolic links ...
- cp -Lf ${WORKDIR}/nss/bin/* ${D}/usr/bin
- cp -Lf ${WORKDIR}/nss/lib/* ${D}/usr/lib/mozilla
-
- # Need to unset these incase we want to rebuild, else the build
- # gets newked.
- unset SOURCE_LIB_DIR
- unset SOURCE_BIN_DIR
-# fi
-
- cd ${S}
- exeinto /usr/bin
- doexe ${FILESDIR}/mozilla
- insinto /etc/env.d
- doins ${FILESDIR}/10mozilla
- dodoc LEGAL LICENSE README/mozilla/README*
-
- # Fix icons to look the same everywhere
- insinto /usr/lib/mozilla/icons
- doins ${S}/build/package/rpm/SOURCES/mozicon16.xpm
- doins ${S}/build/package/rpm/SOURCES/mozicon50.xpm
-
- # Install icon and .desktop for menu entry
- # Mozilla + gtk2 Really should do this you know :p
- if [ "`use gnome`" ] ; then
- insinto /usr/share/pixmaps
- doins ${S}/build/package/rpm/SOURCES/mozilla-icon.png
-
- # Fix comment of menu entry
- cd ${S}/build/package/rpm/SOURCES
- cp mozilla.desktop mozilla.desktop.orig
- sed -e 's:Comment=Mozilla:Comment=Mozilla Web Browser:' \
- mozilla.desktop.orig >mozilla.desktop
- cd ${S}
- insinto /usr/share/gnome/apps/Internet
- doins ${S}/build/package/rpm/SOURCES/mozilla.desktop
- fi
-
- # Fix the preferences for XFT
- cd ${D}/usr/lib/mozilla/defaults/pref
- patch -p0 <${FILESDIR}/mozilla-xft-unix-prefs.patch || \
- die "failed unix prefs patch"
-
- # Take care of non root execution
- # (seems the problem is that not all files are readible by the user)
- chmod -R g+r,o+r ${D}/usr/lib/mozilla
-}
-
-pkg_preinst() {
- # Stale components and chrome files break when unmerging old
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/components
- fi
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/chrome
- fi
-}
-
-pkg_postinst() {
-
- # Make symlink for Java plugin (do not do in src_install(), else it only
- # gets installed every second time)
- if [ "`use java`" ] && [ ! -L /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla` ]
- then
- if [ -e `java-config --full-browser-plugin-path=mozilla` ]
- then
- ln -sf `java-config --full-browser-plugin-path=mozilla` \
- /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla`
- fi
- fi
-
- # Take care of component registration
- export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
-
- # Remove any stale component.reg
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- # Tempory fix for missing libtimer_gtk.so
- # If it exists when generating component.reg (before unmerge of old),
- # it 'corrupts' the newly generated component.reg with invalid references.
- if [ -e ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so
- fi
-
- # Needed to update the run time bindings for REGXPCOM
- # (do not remove next line!)
- env-update
- # Register components, setup Chrome .rdf files and fix file permissions
- umask 022
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- # Setup the default skin and locale to correctly generate the Chrome .rdf files
- echo "skin,install,select,classic/1.0" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- echo "locale,install,select,en-US" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- ${ROOT}/usr/lib/mozilla/regchrome
- find ${ROOT}/usr/lib/mozilla -type d -perm 0700 -exec chmod 755 {} \; || :
-
- einfo
- einfo "*****************************************************************"
- einfo "* NB: Please unmerge old versions of mozilla, as the header *"
- einfo "* layout in /usr/lib/mozilla/include usually change, and will *"
- einfo "* result in compile errors when compiling programs that need *"
- einfo "* mozilla headers and libs (galeon, nautilus, ...) *"
- einfo "*****************************************************************"
- einfo
-}
-
-pkg_postrm() {
-
- # Regenerate component.reg in case some things changed
- if [ -e ${ROOT}/usr/lib/mozilla/regxpcom ] ; then
-
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- fi
-}
-
diff --git a/net-www/mozilla/mozilla-1.0_rc3-r1.ebuild b/net-www/mozilla/mozilla-1.0_rc3-r1.ebuild
deleted file mode 100644
index 9a455ac793af..000000000000
--- a/net-www/mozilla/mozilla-1.0_rc3-r1.ebuild
+++ /dev/null
@@ -1,351 +0,0 @@
-# Copyright 1999-2002 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Maintainer: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/mozilla-1.0_rc3-r1.ebuild,v 1.1 2002/05/25 22:27:01 azarah Exp $
-
-# handle _rc versions
-MY_PV1=${PV/_}
-MY_PV2=${PV/_/\.}
-S=${WORKDIR}/mozilla
-DESCRIPTION="The Mozilla Web Browser"
-SRC_URI="ftp://ftp.mozilla.org/pub/mozilla/releases/${PN}${MY_PV1}/src/${PN}-source-${MY_PV1}.tar.bz2"
-HOMEPAGE="http://www.mozilla.org"
-LICENSE="MPL-1.1 | NPL-1.1"
-
-RDEPEND=">=gnome-base/ORBit-0.5.10-r1
- =dev-libs/glib-1.2*
- >=sys-libs/zlib-1.1.4
- >=media-libs/jpeg-6b
- >=media-libs/libmng-1.0.0
- >=media-libs/libpng-1.2.1
- dev-libs/expat
- app-arch/zip
- app-arch/unzip
- x11-libs/gtk+
- java? ( virtual/jre )"
-# gtk? ( x11-libs/gtk+ )
-# mozqt? ( x11-libs/qt )"
-
-DEPEND="java? ( >=dev-java/java-config-0.2.0 )
- ${RDEPEND}
- virtual/x11
- sys-devel/perl"
-
-SLOT="0"
-
-# needed by src_compile() and src_install()
-export MOZILLA_OFFICIAL=1
-export BUILD_OFFICIAL=1
-
-# enable XFT
-[ "${DISABLE_XFT}" != "1" ] && export MOZ_ENABLE_XFT=1
-
-# make sure the nss module gets build (for NSS support)
-[ -n "`use ssl`" ] && export MOZ_PSM=1
-
-# do we build java support for the NSS stuff ?
-# NOTE: this is broken for the moment
-#[ "`use java`" ] && export NS_USE_JDK=1
-
-
-src_unpack() {
-
- unpack ${A}
-
- # NOTE: XFT support will still work without this patch
-# This needs an updated XFree86
-# if [ -n "${MOZ_ENABLE_XFT}" ] ; then
-# cd ${S}
-# patch -p0 <${FILESDIR}/${P}-xft.patch || die
-# fi
-}
-
-src_compile() {
-
- chown -R root.root *
- #This should enable parallel builds, I hope
- export MAKE="emake"
- local myconf=""
- # NOTE: QT and XLIB toolkit seems very unstable, leave disabled until
- # tested ok -- azarah
-# if [ -n "`use qt`" ] ; then
- # when you enable this again, remember the qt dir is now /usr/qt/2 - danarmak
-# myconf="--enable-toolkit-qt --enable-default-toolkit=qt \
-# --disable-toolkit-gtk --disable-toolkit-xlib"
-# elif [ -n "`use gtk`" ] ; then
- myconf="--enable-toolkit-gtk --enable-default-toolkit=gtk \
- --disable-toolkit-qt --disable-toolkit-xlib"
-# else
-# myconf="--enable-toolkit-xlib --enable-default-toolkit=xlib \
-# --disable-toolkit-qt --disable-toolkit-gtk"
-# fi
-
- if [ -z "`use ldap`" ] ; then
- myconf="${myconf} --disable-ldap"
- fi
-
- if [ -z "$DEBUG" ] ; then
- myconf="${myconf} --enable-strip-libs --disable-debug \
- --disable-dtd-debug --disable-tests"
- fi
-
- if [ -n "${MOZ_ENABLE_XFT}" ] ; then
- # for this we have to use freetype-2.0.8 included with XFree86
- myconf="${myconf} --enable-xft --with-ft-prefix=/usr/X11R6 \
- --with-ft-exec-prefix=/usr/X11R6/bin"
-
- export FT2_CONFIG="/usr/X11R6/bin/freetype-config"
- fi
-
-
- # NB!!: Due to the fact that the non default extensions do not always
- # compile properly, using them is considered unsupported, and
- # is just here for completeness. Please do not use if you
- # do not know what you are doing!
- #
- # The defaults are (as of 1.0rc1, according to configure (line ~10799)):
- # cookie wallet content-packs xml-rpc xmlextras help transformiix venkman inspector irc
- # Non-defaults are:
- # xmlterm access-builtin ctl p3p interfaceinfo
- local myext="default"
- if [ -n "`use mozxmlterm`" ] ; then
- myext="${myext},xmlterm"
- fi
- if [ -n "`use mozaccess-builtin`" ] ; then
- myext="${myext},access-builtin"
- fi
- if [ -n "`use mozctl`" ] ; then
- myext="${myext},ctl"
- fi
- if [ -n "`use mozp3p`" ] ; then
- myext="${myext},p3p"
- fi
- if [ -n "`use mozinterfaceinfo`" ] ; then
- myext="${myext},interfaceinfo"
- fi
-
-
- export BUILD_MODULES=all
- export BUILD_OPT=1
-
- # Crashes on start when compiled with -fomit-frame-pointer
- CFLAGS="${CFLAGS/-fomit-frame-pointer}"
- CXXFLAGS="${CXXFLAGS/-fomit-frame-pointer}"
-
- ./configure --prefix=/usr/lib/mozilla \
- --disable-tests \
- --disable-pedantic \
- --disable-svg \
- --enable-xsl \
- --enable-crypto \
- --enable-detect-webshell-leaks \
- --enable-xinerama \
- --with-java-supplement \
- --with-pthreads \
- --with-extensions="${myext}" \
- --enable-optimize=-O3 \
- --with-default-mozilla-five-home=/usr/lib/mozilla \
- ${myconf} || die
-
- make || die
-
- # Build the NSS/SSL support
- if [ "`use ssl`" ] ; then
- cd ${S}/security/coreconf
-
- # Fix #include problem
- cp headers.mk headers.mk.orig
- echo 'INCLUDES += -I$(DIST)/include/nspr -I$(DIST)/include/dbm'\
- >>headers.mk
-
- make || die
-
- cd ${S}/security/nss
-
- make moz_import || die
- make || die
- cd ${S}
- fi
-}
-
-src_install() {
-
- # Copy the include and idl files
- dodir /usr/lib/mozilla/include/idl /usr/include
- cd ${S}/dist
- cp -LfR include/* ${D}/usr/lib/mozilla/include
- cp -LfR idl/* ${D}/usr/lib/mozilla/include/idl
- dosym /usr/lib/mozilla/include /usr/include/mozilla
-
- # Build the Release Tarball
- cd ${S}/xpinstall/packager
- make || die
- dodir /usr/lib
-
- TODO=""
- case ${ARCH} in
- ppc)
- TODO="${S}/dist/mozilla-powerpc-unknown-linux-gnu.tar.gz"
- ;;
- x86)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- sparc)
- ;;
- sparc64)
- ;;
- arm)
- ;;
- *)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- esac
-
- tar xzf ${TODO} -C ${D}/usr/lib
-
- # Install the development tools in /usr
- dodir /usr/bin
- mv ${D}/usr/lib/mozilla/{xpcshell,xpidl,xpt_dump,xpt_link} ${D}/usr/bin
-
- # Install the NSS/SSL libs, headers and tools
- if [ "`use ssl`" ] ; then
- # Install the headers ('make install' do not work for headers ...)
- insinto /usr/lib/mozilla/include/nss
- doins ${S}/dist/public/seccmd/*.h
- doins ${S}/dist/public/security/*.h
-
- cd ${S}/security/nss
-
- mkdir -p ${WORKDIR}/nss/{bin,lib}
- export SOURCE_BIN_DIR=${WORKDIR}/nss/bin
- export SOURCE_LIB_DIR=${WORKDIR}/nss/lib
-
- make install || die
- # Gets installed as symbolic links ...
- cp -Lf ${WORKDIR}/nss/bin/* ${D}/usr/bin
- cp -Lf ${WORKDIR}/nss/lib/* ${D}/usr/lib/mozilla
-
- # Need to unset these incase we want to rebuild, else the build
- # gets newked.
- unset SOURCE_LIB_DIR
- unset SOURCE_BIN_DIR
- fi
-
- cd ${S}
- exeinto /usr/bin
- doexe ${FILESDIR}/mozilla
- insinto /etc/env.d
- doins ${FILESDIR}/10mozilla
- dodoc LEGAL LICENSE README/mozilla/README*
-
- # Fix icons to look the same everywhere
- insinto /usr/lib/mozilla/icons
- doins ${S}/build/package/rpm/SOURCES/mozicon16.xpm
- doins ${S}/build/package/rpm/SOURCES/mozicon50.xpm
-
- # Install icon and .desktop for menu entry
- if [ "`use gnome`" ] ; then
- insinto /usr/share/pixmaps
- doins ${S}/build/package/rpm/SOURCES/mozilla-icon.png
-
- # Fix comment of menu entry
- cd ${S}/build/package/rpm/SOURCES
- cp mozilla.desktop mozilla.desktop.orig
- sed -e 's:Comment=Mozilla:Comment=Mozilla Web Browser:' \
- mozilla.desktop.orig >mozilla.desktop
- cd ${S}
- insinto /usr/share/gnome/apps/Internet
- doins ${S}/build/package/rpm/SOURCES/mozilla.desktop
- fi
-
- if [ -n "${MOZ_ENABLE_XFT}" ] ; then
- cd ${D}/usr/lib/mozilla/defaults/pref
- patch -p0 <${FILESDIR}/mozilla-xft-unix-prefs.patch || \
- die "failed unix prefs patch"
- fi
-
- # Take care of non root execution
- # (seems the problem is that not all files are readible by the user)
- chmod -R g+r,o+r ${D}/usr/lib/mozilla
-}
-
-pkg_preinst() {
- # Stale components and chrome files break when unmerging old
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/components
- fi
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/chrome
- fi
-}
-
-pkg_postinst() {
-
- # Make symlink for Java plugin (do not do in src_install(), else it only
- # gets installed every second time)
- if [ "`use java`" ] && [ ! -L /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla` ]
- then
- if [ -e `java-config --full-browser-plugin-path=mozilla` ]
- then
- ln -sf `java-config --full-browser-plugin-path=mozilla` \
- /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla`
- fi
- fi
-
- # Take care of component registration
- export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
-
- # Remove any stale component.reg
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- # Tempory fix for missing libtimer_gtk.so
- # If it exists when generating component.reg (before unmerge of old),
- # it 'corrupts' the newly generated component.reg with invalid references.
- if [ -e ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so
- fi
-
- # Needed to update the run time bindings for REGXPCOM
- # (do not remove next line!)
- env-update
- # Register components, setup Chrome .rdf files and fix file permissions
- umask 022
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- # Setup the default skin and locale to correctly generate the Chrome .rdf files
- echo "skin,install,select,classic/1.0" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- echo "locale,install,select,en-US" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- ${ROOT}/usr/lib/mozilla/regchrome
- find ${ROOT}/usr/lib/mozilla -type d -perm 0700 -exec chmod 755 {} \; || :
-
-
- echo
- echo "*****************************************************************"
- echo "* NB: Please unmerge old versions of mozilla, as the header *"
- echo "* layout in /usr/lib/mozilla/include have changed and will *"
- echo "* result in compile errors when compiling programs that need *"
- echo "* mozilla headers and libs (galeon, nautilus, ...) *"
- echo "*****************************************************************"
- echo
-}
-
-pkg_postrm() {
-
- # Regenerate component.reg in case some things changed
- if [ -e ${ROOT}/usr/lib/mozilla/regxpcom ] ; then
-
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- fi
-}
-
diff --git a/net-www/mozilla/mozilla-1.0_rc3-r51.ebuild b/net-www/mozilla/mozilla-1.0_rc3-r51.ebuild
deleted file mode 100644
index af02c8fed4cf..000000000000
--- a/net-www/mozilla/mozilla-1.0_rc3-r51.ebuild
+++ /dev/null
@@ -1,356 +0,0 @@
-# Copyright 1999-2002 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Maintainer: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla/mozilla-1.0_rc3-r51.ebuild,v 1.1 2002/06/01 19:38:39 azarah Exp $
-
-# handle _rc versions
-MY_PV1=${PV/_}
-MY_PV2=${PV/_/\.}
-S=${WORKDIR}/mozilla
-DESCRIPTION="The Mozilla Web Browser"
-SRC_URI="ftp://ftp.mozilla.org/pub/mozilla/releases/${PN}${MY_PV1}/src/${PN}-source-${MY_PV1}.tar.bz2"
-HOMEPAGE="http://www.mozilla.org"
-LICENSE="MPL-1.1 | NPL-1.1"
-
-RDEPEND=">=x11-base/xfree-4.2.0-r11
- >=gnome-base/ORBit-0.5.10-r1
- =dev-libs/glib-2.0*
- >=sys-libs/zlib-1.1.4
- >=media-libs/jpeg-6b
- >=media-libs/libmng-1.0.0
- >=media-libs/libpng-1.2.1
- dev-libs/expat
- app-arch/zip
- app-arch/unzip
- =x11-libs/gtk+-2.0*
- java? ( virtual/jre )"
-# gtk? ( x11-libs/gtk+ )
-# mozqt? ( x11-libs/qt )"
-
-DEPEND="java? ( >=dev-java/java-config-0.2.0 )
- ${RDEPEND}
- virtual/x11
- sys-devel/perl"
-
-SLOT="0"
-
-# needed by src_compile() and src_install()
-export MOZILLA_OFFICIAL=1
-export BUILD_OFFICIAL=1
-
-# enable XFT support (via freetype2)
-export MOZ_ENABLE_XFT=1
-
-# make sure the nss module gets build (for NSS support)
-#[ -n "`use ssl`" ] && export MOZ_PSM=1
-export MOZ_PSM=1
-
-# do we build java support for the NSS stuff ?
-# NOTE: this is broken for the moment
-#[ "`use java`" ] && export NS_USE_JDK=1
-
-
-src_unpack() {
-
- unpack ${A}
- # Fix a compile error with freetype-2.0.9 or later
- cd ${S}
- patch -p1 < ${FILESDIR}/mozilla-new-freetype2.patch || die
-
- echo "applying marco gtk2 patch"
- patch -p1 <${FILESDIR}/gtk2mozilla.patch
-
- echo "applying gtk2 XFT bytecode patch"
- patch -p1 < ${FILESDIR}/mozilla-ft-bytecode.patch || die "Failed" mozilla-ft-bytecode.patch
-
-# echo "gtk2_mozilla_xft.patch"
-# patch -p1 < ${FILESDIR}/gtk2_mozilla_xft.patch
- chown -R root.root *
-}
-
-src_compile() {
-
- export MAKE="emake"
- local myconf=""
-
- # NOTE: QT and XLIB toolkit seems very unstable, leave disabled until
- # tested ok. ALSO, since we can use gtk+-2.0 now for XFT support,
- # QT or such wont be needed anymore - Azarah
-# if [ -n "`use qt`" ] ; then
- # when you enable this again, remember the qt dir is now /usr/qt/2 - danarmak
-# myconf="--enable-toolkit-qt --enable-default-toolkit=qt \
-# --disable-toolkit-gtk --disable-toolkit-xlib"
-# elif [ -n "`use gtk`" ] ; then
- myconf="--enable-default-toolkit=gtk2 --disable-toolkit-qt \
- --disable-toolkit-xlib"
-# else
-# myconf="--enable-toolkit-xlib --enable-default-toolkit=xlib \
-# --disable-toolkit-qt --disable-toolkit-gtk"
-# fi
-
-
- if [ -z "`use ldap`" ] ; then
- myconf="${myconf} --disable-ldap"
- fi
- if [ -z "$DEBUG" ] ; then
- myconf="${myconf} --enable-strip-libs --disable-debug \
- -disable-dtd-debug --disable-tests"
- fi
-
- # NB!!: Due to the fact that the non default extensions do not always
- # compile properly, using them is considered unsupported, and
- # is just here for completeness. Please do not use if you
- # do not know what you are doing!
- #
- # The defaults are (as of 1.0rc1, according to configure (line ~10799)):
- # cookie wallet content-packs xml-rpc xmlextras help transformiix venkman inspector irc
- # Non-defaults are:
- # xmlterm access-builtin ctl p3p interfaceinfo
- local myext="default"
- if [ -n "`use mozxmlterm`" ] ; then
- myext="${myext},xmlterm"
- fi
- if [ -n "`use mozaccess-builtin`" ] ; then
- myext="${myext},access-builtin"
- fi
- if [ -n "`use mozctl`" ] ; then
- myext="${myext},ctl"
- fi
- if [ -n "`use mozp3p`" ] ; then
- myext="${myext},p3p"
- fi
- if [ -n "`use mozinterfaceinfo`" ] ; then
- myext="${myext},interfaceinfo"
- fi
-
- export BUILD_MODULES=all
- export BUILD_OPT=1
-
- # Use freetype included with xfree86
- export FT2_CONFIG="/usr/X11R6/bin/freetype-config"
-
- # Crashes on start when compiled with -fomit-frame-pointer
- CFLAGS="${CFLAGS/-fomit-frame-pointer}"
- CXXFLAGS="${CXXFLAGS/-fomit-frame-pointer}"
-
- ./configure --prefix=/usr/lib/mozilla \
- --disable-tests \
- --disable-pedantic \
- --disable-svg \
- --enable-xsl \
- --enable-crypto \
- --enable-detect-webshell-leaks \
- --enable-xinerama \
- --with-java-supplement \
- --with-pthreads \
- --enable-xft \
- --with-ft-prefix=/usr/X11R6 \
- --with-ft-exec-prefix=/usr/X11R6/bin \
- --with-extensions="${myext}" \
- --enable-optimize=-O3 \
- --with-default-mozilla-five-home=/usr/lib/mozilla \
- ${myconf} || die
-
- make || die
-
-# SSL is needed for far too much galeon2 status is "on the way" enabling this for now":/
- # Build the NSS/SSL support
-# if [ "`use ssl`" ] ; then
- cd ${S}/security/coreconf
-
- # Fix #include problem
- cp headers.mk headers.mk.orig
- echo 'INCLUDES += -I$(DIST)/include/nspr -I$(DIST)/include/dbm'\
- >>headers.mk
-
- make || die
-
- cd ${S}/security/nss
-
- make moz_import || die
- make || die
- cd ${S}
-# fi
-}
-
-src_install() {
-
- # Copy the include and idl files
- dodir /usr/lib/mozilla/include/idl /usr/include
- cd ${S}/dist
- cp -LfR include/* ${D}/usr/lib/mozilla/include
- cp -LfR idl/* ${D}/usr/lib/mozilla/include/idl
- dosym /usr/lib/mozilla/include /usr/include/mozilla
-
- # Build the Release Tarball
- cd ${S}/xpinstall/packager
- make || die
- dodir /usr/lib
-
- TODO=""
- case ${ARCH} in
- ppc)
- TODO="${S}/dist/mozilla-powerpc-unknown-linux-gnu.tar.gz"
- ;;
- x86)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- sparc)
- ;;
- sparc64)
- ;;
- arm)
- ;;
- *)
- TODO="${S}/dist/mozilla-`uname -m`-pc-linux-gnu.tar.gz"
- ;;
- esac
-
- tar xzf ${TODO} -C ${D}/usr/lib
-
- # Install the development tools in /usr
- dodir /usr/bin
- mv ${D}/usr/lib/mozilla/{xpcshell,xpidl,xpt_dump,xpt_link} ${D}/usr/bin
-
- # Install the NSS/SSL libs, headers and tools
- # once again we enable SSL per default
-# if [ "`use ssl`" ] ; then
- # Install the headers ('make install' do not work for headers ...)
- insinto /usr/lib/mozilla/include/nss
- doins ${S}/dist/public/seccmd/*.h
- doins ${S}/dist/public/security/*.h
-
- cd ${S}/security/nss
-
- mkdir -p ${WORKDIR}/nss/{bin,lib}
- export SOURCE_BIN_DIR=${WORKDIR}/nss/bin
- export SOURCE_LIB_DIR=${WORKDIR}/nss/lib
-
- make install || die
- # Gets installed as symbolic links ...
- cp -Lf ${WORKDIR}/nss/bin/* ${D}/usr/bin
- cp -Lf ${WORKDIR}/nss/lib/* ${D}/usr/lib/mozilla
-
- # Need to unset these incase we want to rebuild, else the build
- # gets newked.
- unset SOURCE_LIB_DIR
- unset SOURCE_BIN_DIR
-# fi
-
- cd ${S}
- exeinto /usr/bin
- doexe ${FILESDIR}/mozilla
- insinto /etc/env.d
- doins ${FILESDIR}/10mozilla
- dodoc LEGAL LICENSE README/mozilla/README*
-
- # Fix icons to look the same everywhere
- insinto /usr/lib/mozilla/icons
- doins ${S}/build/package/rpm/SOURCES/mozicon16.xpm
- doins ${S}/build/package/rpm/SOURCES/mozicon50.xpm
-
- # Install icon and .desktop for menu entry
- # Mozilla + gtk2 Really should do this you know :p
- if [ "`use gnome`" ] ; then
- insinto /usr/share/pixmaps
- doins ${S}/build/package/rpm/SOURCES/mozilla-icon.png
-
- # Fix comment of menu entry
- cd ${S}/build/package/rpm/SOURCES
- cp mozilla.desktop mozilla.desktop.orig
- sed -e 's:Comment=Mozilla:Comment=Mozilla Web Browser:' \
- mozilla.desktop.orig >mozilla.desktop
- cd ${S}
- insinto /usr/share/gnome/apps/Internet
- doins ${S}/build/package/rpm/SOURCES/mozilla.desktop
- fi
-
- # Fix the preferences for XFT
- cd ${D}/usr/lib/mozilla/defaults/pref
- patch -p0 <${FILESDIR}/mozilla-xft-unix-prefs.patch || \
- die "failed unix prefs patch"
-
- # Take care of non root execution
- # (seems the problem is that not all files are readible by the user)
- chmod -R g+r,o+r ${D}/usr/lib/mozilla
-}
-
-pkg_preinst() {
- # Stale components and chrome files break when unmerging old
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/components
- fi
- if [ -d ${ROOT}/usr/lib/mozilla/components ]
- then
- rm -rf ${ROOT}/usr/lib/mozilla/chrome
- fi
-}
-
-pkg_postinst() {
-
- # Make symlink for Java plugin (do not do in src_install(), else it only
- # gets installed every second time)
- if [ "`use java`" ] && [ ! -L /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla` ]
- then
- if [ -e `java-config --full-browser-plugin-path=mozilla` ]
- then
- ln -sf `java-config --full-browser-plugin-path=mozilla` \
- /usr/lib/mozilla/plugins/`java-config --browser-plugin=mozilla`
- fi
- fi
-
- # Take care of component registration
- export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/mozilla"
-
- # Remove any stale component.reg
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- # Tempory fix for missing libtimer_gtk.so
- # If it exists when generating component.reg (before unmerge of old),
- # it 'corrupts' the newly generated component.reg with invalid references.
- if [ -e ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/components/libtimer_gtk.so
- fi
-
- # Needed to update the run time bindings for REGXPCOM
- # (do not remove next line!)
- env-update
- # Register components, setup Chrome .rdf files and fix file permissions
- umask 022
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- # Setup the default skin and locale to correctly generate the Chrome .rdf files
- echo "skin,install,select,classic/1.0" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- echo "locale,install,select,en-US" >> \
- ${MOZILLA_FIVE_HOME}/chrome/installed-chrome.txt
- ${ROOT}/usr/lib/mozilla/regchrome
- find ${ROOT}/usr/lib/mozilla -type d -perm 0700 -exec chmod 755 {} \; || :
-
- einfo
- einfo "*****************************************************************"
- einfo "* NB: Please unmerge old versions of mozilla, as the header *"
- einfo "* layout in /usr/lib/mozilla/include usually change, and will *"
- einfo "* result in compile errors when compiling programs that need *"
- einfo "* mozilla headers and libs (galeon, nautilus, ...) *"
- einfo "*****************************************************************"
- einfo
-}
-
-pkg_postrm() {
-
- # Regenerate component.reg in case some things changed
- if [ -e ${ROOT}/usr/lib/mozilla/regxpcom ] ; then
-
- if [ -e ${ROOT}/usr/lib/mozilla/component.reg ] ; then
- rm -f ${ROOT}/usr/lib/mozilla/component.reg
- fi
-
- ${ROOT}/usr/lib/mozilla/regxpcom
- chmod g+r,o+r ${ROOT}/usr/lib/mozilla/component.reg
- fi
-}
-