repo/extra/firefox/patches/no-gtk2.patch
2021-07-01 12:36:11 +00:00

368 lines
13 KiB
Diff

diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
index 566e643..cb1e0dd 100644
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -107,7 +107,6 @@
#endif
#ifdef MOZ_GTK
@BINPATH@/@DLL_PREFIX@mozgtk@DLL_SUFFIX@
-@BINPATH@/gtk2/@DLL_PREFIX@mozgtk@DLL_SUFFIX@
#ifdef MOZ_WAYLAND
@BINPATH@/@DLL_PREFIX@mozwayland@DLL_SUFFIX@
#endif
diff --git a/dom/moz.build b/dom/moz.build
index 9989f50..8c8167e 100644
--- a/dom/moz.build
+++ b/dom/moz.build
@@ -120,7 +120,7 @@ TEST_DIRS += [
"imptests",
]
-if CONFIG["MOZ_WIDGET_TOOLKIT"] in ("gtk", "cocoa", "windows"):
+if CONFIG["MOZ_WIDGET_TOOLKIT"] in ("cocoa", "windows"):
TEST_DIRS += ["plugins/test"]
SPHINX_TREES["/dom"] = "docs"
diff --git a/gfx/gl/GLContextProviderGLX.cpp b/gfx/gl/GLContextProviderGLX.cpp
index 8f97256..a371581 100644
--- a/gfx/gl/GLContextProviderGLX.cpp
+++ b/gfx/gl/GLContextProviderGLX.cpp
@@ -3,7 +3,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#ifdef MOZ_WIDGET_GTK
+#if 0
# include <gdk/gdk.h>
# include <gdk/gdkx.h>
# define GET_NATIVE_WINDOW(aWidget) \
@@ -42,7 +42,7 @@
#include "gfxCrashReporterUtils.h"
-#ifdef MOZ_WIDGET_GTK
+#if MOZ_WIDGET_GTK
# include "gfxPlatformGtk.h"
#endif
diff --git a/gfx/thebes/gfxGdkNativeRenderer.cpp b/gfx/thebes/gfxGdkNativeRenderer.cpp
index 49f3afd..95760b1 100644
--- a/gfx/thebes/gfxGdkNativeRenderer.cpp
+++ b/gfx/thebes/gfxGdkNativeRenderer.cpp
@@ -7,7 +7,7 @@
#include "gfxContext.h"
#include "gfxPlatformGtk.h"
-#ifdef MOZ_X11
+#if 0
# include <gdk/gdkx.h>
# include "cairo-xlib.h"
# include "gfxXlibSurface.h"
diff --git a/gfx/thebes/gfxGdkNativeRenderer.h b/gfx/thebes/gfxGdkNativeRenderer.h
index e11a3ba..1cfaf8c 100644
--- a/gfx/thebes/gfxGdkNativeRenderer.h
+++ b/gfx/thebes/gfxGdkNativeRenderer.h
@@ -6,9 +6,9 @@
#ifndef GFXGDKNATIVERENDER_H_
#define GFXGDKNATIVERENDER_H_
-#include <gdk/gdk.h>
+//#include <gdk/gdk.h>
#include "nsSize.h"
-#ifdef MOZ_X11
+#if MOZ_X11
# include "gfxXlibNativeRenderer.h"
#endif
diff --git a/widget/gtk/mozgtk/gtk2/moz.build b/widget/gtk/mozgtk/gtk2/moz.build
deleted file mode 100644
index 93e43c3..0000000
--- a/widget/gtk/mozgtk/gtk2/moz.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-# vim: set filetype=python:
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-SOURCES += [
- "../mozgtk.c",
-]
-
-DEFINES["GTK3_SYMBOLS"] = True
-
-SharedLibrary("mozgtk2")
-
-SHARED_LIBRARY_NAME = "mozgtk"
-
-FINAL_TARGET = "dist/bin/gtk2"
-
-# If LDFLAGS contains -Wl,--as-needed or if it's the default for the toolchain,
-# we need to add -Wl,--no-as-needed before the gtk libraries, otherwise the
-# linker will drop those dependencies because no symbols are used from them.
-# But those dependencies need to be kept for things to work properly.
-# Ideally, we'd only add -Wl,--no-as-needed if necessary, but it's just simpler
-# to add it unconditionally. This library is also simple enough that forcing
-# -Wl,--as-needed after the gtk libraries is not going to make a significant
-# difference.
-if CONFIG["GCC_USE_GNU_LD"]:
- no_as_needed = ["-Wl,--no-as-needed"]
- as_needed = ["-Wl,--as-needed"]
-else:
- no_as_needed = []
- as_needed = []
-
-OS_LIBS += [f for f in CONFIG["MOZ_GTK2_LIBS"] if f.startswith("-L")]
-OS_LIBS += no_as_needed
-OS_LIBS += [
- "gtk-x11-2.0",
- "gdk-x11-2.0",
-]
-OS_LIBS += as_needed
diff --git a/widget/gtk/mozgtk/gtk3/moz.build b/widget/gtk/mozgtk/gtk3/moz.build
index b4ab68e..e6e4a6d 100644
--- a/widget/gtk/mozgtk/gtk3/moz.build
+++ b/widget/gtk/mozgtk/gtk3/moz.build
@@ -8,8 +8,6 @@ SOURCES += [
"../mozgtk.c",
]
-DEFINES["GTK2_SYMBOLS"] = True
-
SharedLibrary("mozgtk")
SONAME = "mozgtk"
diff --git a/widget/gtk/mozgtk/moz.build b/widget/gtk/mozgtk/moz.build
index 8288583..cca6db0 100644
--- a/widget/gtk/mozgtk/moz.build
+++ b/widget/gtk/mozgtk/moz.build
@@ -4,4 +4,4 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-DIRS += ["stub", "gtk2", "gtk3"]
+DIRS += ["stub", "gtk3"]
diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c
index 0b2e3fd..0bb4ac0 100644
--- a/widget/gtk/mozgtk/mozgtk.c
+++ b/widget/gtk/mozgtk/mozgtk.c
@@ -646,21 +646,6 @@ STUB(gtk_color_chooser_get_rgba)
STUB(gtk_color_chooser_set_use_alpha)
#endif
-#ifdef GTK2_SYMBOLS
-STUB(gdk_drawable_get_screen)
-STUB(gdk_rgb_get_colormap)
-STUB(gdk_rgb_get_visual)
-STUB(gdk_window_lookup)
-STUB(gdk_window_set_back_pixmap)
-STUB(gdk_x11_colormap_foreign_new)
-STUB(gdk_x11_colormap_get_xcolormap)
-STUB(gdk_x11_drawable_get_xdisplay)
-STUB(gdk_x11_drawable_get_xid)
-STUB(gdk_x11_window_get_drawable_impl)
-STUB(gdkx_visual_get)
-STUB(gtk_object_get_type)
-#endif
-
#ifndef GTK3_SYMBOLS
// Only define the following workaround when using GTK3, which we detect
// by checking if GTK3 stubs are not provided.
diff --git a/widget/gtk/mozgtk/stub/moz.build b/widget/gtk/mozgtk/stub/moz.build
index 8af0cc1..d523310 100644
--- a/widget/gtk/mozgtk/stub/moz.build
+++ b/widget/gtk/mozgtk/stub/moz.build
@@ -8,7 +8,7 @@ SOURCES += [
"../mozgtk.c",
]
-for var in ("COMMON_SYMBOLS", "GTK2_SYMBOLS", "GTK3_SYMBOLS"):
+for var in ("COMMON_SYMBOLS", "GTK3_SYMBOLS"):
DEFINES[var] = True
SharedLibrary("mozgtk_stub")
diff --git a/widget/gtk/nsWindow.h b/widget/gtk/nsWindow.h
index 5bfdcd9..95caf91 100644
--- a/widget/gtk/nsWindow.h
+++ b/widget/gtk/nsWindow.h
@@ -8,14 +8,14 @@
#ifndef __nsWindow_h__
#define __nsWindow_h__
-#include <gdk/gdk.h>
+//#include <gdk/gdk.h>
#include <gtk/gtk.h>
#ifdef MOZ_X11
# include <gdk/gdkx.h>
# include "X11UndefineNone.h"
#endif /* MOZ_X11 */
#ifdef MOZ_WAYLAND
-# include <gdk/gdkwayland.h>
+//# include <gdk/gdkwayland.h>
# include "base/thread.h"
# include "WaylandVsyncSource.h"
#endif
--- a/old-configure
+++ b/old-configure
@@ -746,7 +746,6 @@
GLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_42
GLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_42
CAIRO_VERSION=1.10
-GTK2_VERSION=2.18.0
GTK3_VERSION=3.14.0
GDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_14
W32API_VERSION=3.14
@@ -7899,85 +7898,6 @@
EOF
fi
- if test "$MOZ_ENABLE_GTK"; then
- cat >> confdefs.pytmp <<EOF
- (''' GLIB_VERSION_MIN_REQUIRED ''', r''' $GLIB_VERSION_MIN_REQUIRED ''')
-EOF
-cat >> confdefs.h <<EOF
-#define GLIB_VERSION_MIN_REQUIRED $GLIB_VERSION_MIN_REQUIRED
-EOF
-
- cat >> confdefs.pytmp <<EOF
- (''' GLIB_VERSION_MAX_ALLOWED ''', r''' $GLIB_VERSION_MAX_ALLOWED ''')
-EOF
-cat >> confdefs.h <<EOF
-#define GLIB_VERSION_MAX_ALLOWED $GLIB_VERSION_MAX_ALLOWED
-EOF
-
-
- if test "$MOZ_X11"; then
- succeeded=no
-
- if test -z "$PKG_CONFIG"; then
- echo "*** The pkg-config script could not be found. Make sure it is"
- echo "*** in your path, or set the PKG_CONFIG environment variable"
- echo "*** to the full path to pkg-config."
- echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
- else
- PKG_CONFIG_MIN_VERSION=0.9.0
- if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
- echo $ac_n "checking for gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0""... $ac_c" 1>&6
-echo "configure:7931: checking for gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0" >&5
-
- if test -n "$PKG_CONFIG_SYSROOT_DIR"; then
- export PKG_CONFIG_SYSROOT_DIR
- fi
- if test -n "$PKG_CONFIG_LIBDIR"; then
- export PKG_CONFIG_LIBDIR
- fi
-
- if $PKG_CONFIG --exists "gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0" ; then
- echo "$ac_t""yes" 1>&6
- succeeded=yes
-
- echo $ac_n "checking MOZ_GTK2_CFLAGS""... $ac_c" 1>&6
-echo "configure:7945: checking MOZ_GTK2_CFLAGS" >&5
- MOZ_GTK2_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0"`
- echo "$ac_t""$MOZ_GTK2_CFLAGS" 1>&6
-
- echo $ac_n "checking MOZ_GTK2_LIBS""... $ac_c" 1>&6
-echo "configure:7950: checking MOZ_GTK2_LIBS" >&5
- ## Remove evil flags like -Wl,--export-dynamic
- MOZ_GTK2_LIBS="`$PKG_CONFIG --libs \"gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0\" |sed s/-Wl,--export-dynamic//g`"
- echo "$ac_t""$MOZ_GTK2_LIBS" 1>&6
- else
- MOZ_GTK2_CFLAGS=""
- MOZ_GTK2_LIBS=""
- ## If we have a custom action on failure, don't print errors, but
- ## do set a variable so people can do so.
- MOZ_GTK2_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0"`
- echo $MOZ_GTK2_PKG_ERRORS
- fi
-
-
-
- else
- echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
- echo "*** See http://www.freedesktop.org/software/pkgconfig"
- fi
- fi
-
- if test $succeeded = yes; then
- :
- else
- if test "$COMPILE_ENVIRONMENT"; then
- { echo "configure: error: Library requirements (gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&2; echo "configure: error: Library requirements (gtk+-2.0 >= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 gdk-x11-2.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." 1>&5; exit 1; }
- fi
- fi
-
- MOZ_GTK2_CFLAGS="-I${_topsrcdir}/widget/gtk/compat $MOZ_GTK2_CFLAGS"
- fi
- fi
fi # COMPILE_ENVIRONMENT
@@ -10633,8 +10553,6 @@
(''' MOZ_ANDROID_MAX_SDK_VERSION ''', r''' $MOZ_ANDROID_MAX_SDK_VERSION ''')
(''' MOZ_GTK3_CFLAGS ''', list(split(r''' $MOZ_GTK3_CFLAGS ''')))
(''' MOZ_GTK3_LIBS ''', list(split(r''' $MOZ_GTK3_LIBS ''')))
- (''' MOZ_GTK2_CFLAGS ''', list(split(r''' $MOZ_GTK2_CFLAGS ''')))
- (''' MOZ_GTK2_LIBS ''', list(split(r''' $MOZ_GTK2_LIBS ''')))
(''' MOZ_FS_LAYOUT ''', r''' $MOZ_FS_LAYOUT ''')
(''' TK_CFLAGS ''', list(split(r''' $TK_CFLAGS ''')))
(''' TK_LIBS ''', list(split(r''' $TK_LIBS ''')))
--- a/gfx/gl/GLContextProviderWayland.cpp
+++ b/gfx/gl/GLContextProviderWayland.cpp
@@ -20,13 +20,8 @@
already_AddRefed<GLContext> GLContextProviderWayland::CreateForCompositorWidget(
CompositorWidget* aCompositorWidget, bool aHardwareWebRender,
bool aForceAccelerated) {
- if (GdkIsX11Display()) {
- return sGLContextProviderX11.CreateForCompositorWidget(
- aCompositorWidget, aHardwareWebRender, aForceAccelerated);
- } else {
return sGLContextProviderEGL.CreateForCompositorWidget(
aCompositorWidget, aHardwareWebRender, aForceAccelerated);
- }
}
/*static*/
@@ -33,10 +28,6 @@
already_AddRefed<GLContext> GLContextProviderWayland::CreateHeadless(
const GLContextCreateDesc& desc, nsACString* const out_failureId) {
- if (GdkIsX11Display()) {
- return sGLContextProviderX11.CreateHeadless(desc, out_failureId);
- } else {
return sGLContextProviderEGL.CreateHeadless(desc, out_failureId);
- }
}
/*static*/
@@ -43,9 +34,5 @@
GLContext* GLContextProviderWayland::GetGlobalContext() {
- if (GdkIsX11Display()) {
- return sGLContextProviderX11.GetGlobalContext();
- } else {
return sGLContextProviderEGL.GetGlobalContext();
- }
}
/*static*/
@@ -52,9 +39,5 @@
void GLContextProviderWayland::Shutdown() {
- if (GdkIsX11Display()) {
- sGLContextProviderX11.Shutdown();
- } else {
sGLContextProviderEGL.Shutdown();
- }
}
} // namespace mozilla::gl
--- a/dom/plugins/test/moz.build
+++ b/dom/plugins/test/moz.build
@@ -4,6 +4,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-if CONFIG["MOZ_WIDGET_TOOLKIT"] in ("gtk", "cocoa", "windows"):
+if CONFIG["MOZ_WIDGET_TOOLKIT"] in ("cocoa", "windows"):
MOCHITEST_MANIFESTS += ["mochitest/mochitest.ini"]
BROWSER_CHROME_MANIFESTS += ["mochitest/browser.ini"]