From 06ba99bdb444277565a9ee41196dfd8489c149d4 Mon Sep 17 00:00:00 2001 From: Dylan Araps Date: Tue, 22 Sep 2020 14:21:53 +0300 Subject: [PATCH] firefox: remove gtk+2 dependency --- extra/firefox/build | 2 + extra/firefox/checksums | 1 + extra/firefox/depends | 1 - extra/firefox/patches/no-gtk2.patch | 1543 +++++++++++++++++++++++++++ extra/firefox/sources | 1 + 5 files changed, 1547 insertions(+), 1 deletion(-) create mode 100644 extra/firefox/patches/no-gtk2.patch diff --git a/extra/firefox/build b/extra/firefox/build index a620ed8c..f363b483 100755 --- a/extra/firefox/build +++ b/extra/firefox/build @@ -1,5 +1,7 @@ #!/bin/sh -e +patch -p1 < no-gtk2.patch + # Remove libc header which conflicts with 7 or so Linux # kernel headers. See: https://github.com/kisslinux/repo/issues/207 sed -i '/net\/if/d' \ diff --git a/extra/firefox/checksums b/extra/firefox/checksums index 3bb19b34..c9128458 100644 --- a/extra/firefox/checksums +++ b/extra/firefox/checksums @@ -1,3 +1,4 @@ 9328745012178aee5a4f47c833539f7872cc6e0f20a853568a313e60cabd1ec8 f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e 3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f +9a1be518b65e034df6e5adf9f24656b743b2411c3f825945ad41106850726440 diff --git a/extra/firefox/depends b/extra/firefox/depends index 68f82ca9..4423aa2c 100644 --- a/extra/firefox/depends +++ b/extra/firefox/depends @@ -11,7 +11,6 @@ freetype-harfbuzz fribidi gdk-pixbuf glib -gtk+2 make gtk+3 libICE libSM diff --git a/extra/firefox/patches/no-gtk2.patch b/extra/firefox/patches/no-gtk2.patch new file mode 100644 index 00000000..60b6cedc --- /dev/null +++ b/extra/firefox/patches/no-gtk2.patch @@ -0,0 +1,1543 @@ +Removes the GTK2 build requirement. A little sloppy in places, +will be cleaned up over the next couple of weeks. Based on a +patch posted to Bugzilla here: + +https://bugzilla.mozilla.org/show_bug.cgi?id=1663588 +NOTE: Tested with Wayland, Xorg untested. + +--- +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in +index 75c79a7168..ee9cd18fe8 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 d34d8a7f75..4e5648089b 100644 +--- a/dom/moz.build ++++ b/dom/moz.build +@@ -119,7 +119,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/dom/plugins/base/npapi.h b/dom/plugins/base/npapi.h +index d6b189baef..adc98f975c 100644 +--- a/dom/plugins/base/npapi.h ++++ b/dom/plugins/base/npapi.h +@@ -41,9 +41,9 @@ + # endif + #endif + +-#if defined(XP_UNIX) ++#if defined(MOZ_X11) + # include +-# if defined(MOZ_X11) ++# if 0 + # include + # include + # include "X11UndefineNone.h" +@@ -211,7 +211,7 @@ typedef struct _NPAsyncSurface { + /* Exact meaning must be spec'd in event model. */ + # define kNPEventStartIME 2 + +-# if defined(XP_UNIX) ++# if 0 + /* + * Unix specific structures and definitions + */ +@@ -229,7 +229,7 @@ typedef struct { + + typedef struct { + int32_t type; +-# if defined(MOZ_X11) ++# if 0 + Display* display; + Visual* visual; + Colormap colormap; +@@ -291,7 +291,7 @@ typedef enum { + , + NPDrawingModelSyncWin = 5 + # endif +-# if defined(MOZ_X11) ++# if 0 + , + NPDrawingModelSyncX = 6 + # endif +@@ -330,7 +330,7 @@ typedef enum { + * gcc 3.x generated vtables on UNIX and OSX are incompatible with + * previous compilers. + */ +-# if (defined(XP_UNIX) && defined(__GNUC__) && (__GNUC__ >= 3)) ++# if 0 + # define _NP_ABI_MIXIN_FOR_GCC3 NP_ABI_GCC3_MASK + # else + # define _NP_ABI_MIXIN_FOR_GCC3 0 +@@ -530,7 +530,7 @@ typedef struct _NPWindow { + uint32_t width; /* Maximum window size */ + uint32_t height; + NPRect clipRect; /* Clipping rectangle in port coordinates */ +-# if (defined(XP_UNIX) || defined(XP_SYMBIAN)) && !defined(XP_MACOSX) ++# if (defined(XP_SYMBIAN)) && !defined(XP_MACOSX) + void* ws_info; /* Platform-dependent additional data */ + # endif /* XP_UNIX */ + NPWindowType type; /* Is this a window or a drawable? */ +@@ -583,7 +583,7 @@ typedef struct _NPEvent { + uintptr_t wParam; + intptr_t lParam; + } NPEvent; +-# elif defined(XP_UNIX) && defined(MOZ_X11) ++# elif 0 + typedef XEvent NPEvent; + # else + typedef void* NPEvent; +@@ -597,7 +597,7 @@ typedef RgnHandle NPQDRegion; + typedef CGPathRef NPCGRegion; + # elif defined(XP_WIN) + typedef HRGN NPRegion; +-# elif defined(XP_UNIX) && defined(MOZ_X11) ++# elif 0 + typedef Region NPRegion; + # elif defined(XP_SYMBIAN) + typedef QRegion* NPRegion; +@@ -828,7 +828,7 @@ extern "C" { + + /* NPP_* functions are provided by the plugin and called by the navigator. */ + +-# if defined(XP_UNIX) ++# if 0 + const char* NPP_GetMIMEDescription(void); + # endif + +diff --git a/dom/plugins/base/nsNPAPIPlugin.cpp b/dom/plugins/base/nsNPAPIPlugin.cpp +index 829db86079..9870c6a487 100644 +--- a/dom/plugins/base/nsNPAPIPlugin.cpp ++++ b/dom/plugins/base/nsNPAPIPlugin.cpp +@@ -55,7 +55,7 @@ + #endif + + // needed for nppdf plugin +-#if (MOZ_WIDGET_GTK) ++#if 0 + # include + # include + #endif +@@ -74,7 +74,7 @@ using mozilla::PluginLibrary; + using mozilla::plugins::PluginModuleChromeParent; + using mozilla::plugins::PluginModuleContentParent; + +-#ifdef MOZ_X11 ++#if 0 + # include "mozilla/X11Util.h" + #endif + +@@ -1224,9 +1224,9 @@ NPError _getvalue(NPP npp, NPNVariable variable, void* result) { + // Cast NPNVariable enum to int to avoid warnings about including switch + // cases for android_npapi.h's non-standard ANPInterface values. + switch (static_cast(variable)) { +-#if defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + case NPNVxDisplay: { +-# if defined(MOZ_X11) ++# if 0 + if (npp) { + nsNPAPIPluginInstance* inst = (nsNPAPIPluginInstance*)npp->ndata; + bool windowless = false; +@@ -1260,7 +1260,7 @@ NPError _getvalue(NPP npp, NPNVariable variable, void* result) { + return NPERR_GENERIC_ERROR; + #endif + +-#if defined(XP_WIN) || defined(MOZ_WIDGET_GTK) ++#if defined(XP_WIN) + case NPNVnetscapeWindow: { + if (!npp || !npp->ndata) return NPERR_INVALID_INSTANCE_ERROR; + +@@ -1302,7 +1302,7 @@ NPError _getvalue(NPP npp, NPNVariable variable, void* result) { + } + + case NPNVToolkit: { +-#ifdef MOZ_WIDGET_GTK ++#if 0 + *((NPNToolkitType*)result) = NPNVGtk2; + #endif + +@@ -1312,7 +1312,7 @@ NPError _getvalue(NPP npp, NPNVariable variable, void* result) { + } + + case NPNVSupportsXEmbedBool: { +-#ifdef MOZ_WIDGET_GTK ++#if 0 + *(NPBool*)result = true; + #else + *(NPBool*)result = false; +@@ -1333,8 +1333,7 @@ NPError _getvalue(NPP npp, NPNVariable variable, void* result) { + } + + case NPNVSupportsWindowless: { +-#if defined(XP_WIN) || defined(XP_MACOSX) || \ +- (defined(MOZ_X11) && defined(MOZ_WIDGET_GTK)) ++#if defined(XP_WIN) || defined(XP_MACOSX) + *(NPBool*)result = true; + #else + *(NPBool*)result = false; +diff --git a/dom/plugins/base/nsNPAPIPluginInstance.cpp b/dom/plugins/base/nsNPAPIPluginInstance.cpp +index c011cd038d..1d5224a45d 100644 +--- a/dom/plugins/base/nsNPAPIPluginInstance.cpp ++++ b/dom/plugins/base/nsNPAPIPluginInstance.cpp +@@ -316,7 +316,7 @@ nsresult nsNPAPIPluginInstance::SetWindow(NPWindow* window) { + // NPAPI plugins don't want a SetWindow(nullptr). + if (!window || RUNNING != mRunning) return NS_OK; + +-#if MOZ_WIDGET_GTK ++#if 0 + // bug 108347, flash plugin on linux doesn't like window->width <= 0 + return NS_OK; + #endif +diff --git a/dom/plugins/base/nsNPAPIPluginInstance.h b/dom/plugins/base/nsNPAPIPluginInstance.h +index 1ca2569ae8..2977f96902 100644 +--- a/dom/plugins/base/nsNPAPIPluginInstance.h ++++ b/dom/plugins/base/nsNPAPIPluginInstance.h +@@ -38,7 +38,7 @@ class Element; + + #if defined(OS_WIN) + const NPDrawingModel kDefaultDrawingModel = NPDrawingModelSyncWin; +-#elif defined(MOZ_X11) ++#elif 0 + const NPDrawingModel kDefaultDrawingModel = NPDrawingModelSyncX; + #elif defined(XP_MACOSX) + # ifndef NP_NO_QUICKDRAW +diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp +index 8edea3aa14..66dd9a1973 100644 +--- a/dom/plugins/base/nsPluginHost.cpp ++++ b/dom/plugins/base/nsPluginHost.cpp +@@ -85,7 +85,7 @@ + # include "windows.h" + # include "winbase.h" + #endif +-#if (MOZ_WIDGET_GTK) ++#if 0 + # include + # include + #endif +@@ -278,7 +278,7 @@ nsPluginHost::nsPluginHost() + } + + bool waylandBackend = false; +-#if MOZ_WIDGET_GTK ++#if 0 + GdkDisplay* display = gdk_display_get_default(); + if (display) { + waylandBackend = !GDK_IS_X11_DISPLAY(display); +diff --git a/dom/plugins/base/nsPluginInstanceOwner.cpp b/dom/plugins/base/nsPluginInstanceOwner.cpp +index 23053888d4..0e6376e758 100644 +--- a/dom/plugins/base/nsPluginInstanceOwner.cpp ++++ b/dom/plugins/base/nsPluginInstanceOwner.cpp +@@ -4,7 +4,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_X11 ++#if 0 + # include + # include "gfxXlibSurface.h" + /* X headers suck */ +@@ -75,7 +75,7 @@ static NS_DEFINE_CID(kAppShellCID, NS_APPSHELL_CID); + # include "ComplexTextInputPanel.h" + #endif + +-#ifdef MOZ_WIDGET_GTK ++#if 0 + # include + # include + #endif +@@ -621,7 +621,7 @@ NS_IMETHODIMP nsPluginInstanceOwner::GetNetscapeWindow(void* value) { + } + + return NS_OK; +-#elif defined(MOZ_WIDGET_GTK) && defined(MOZ_X11) ++#elif 0 + // X11 window managers want the toplevel window for WM_TRANSIENT_FOR. + nsIWidget* win = mPluginFrame->GetNearestWidget(); + if (!win) return NS_ERROR_FAILURE; +@@ -1743,7 +1743,7 @@ nsresult nsPluginInstanceOwner::HandleEvent(Event* aEvent) { + return NS_OK; + } + +-#ifdef MOZ_X11 ++#if 0 + static unsigned int XInputEventState(const WidgetInputEvent& anEvent) { + unsigned int state = 0; + if (anEvent.IsShift()) state |= ShiftMask; +@@ -2224,7 +2224,7 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent( + } + #endif + +-#ifdef MOZ_X11 ++#if 0 + // this code supports windowless plugins + nsIWidget* widget = anEvent.mWidget; + XEvent pluginEvent = XEvent(); +@@ -2255,7 +2255,7 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent( + if (widget) { + rootPoint = anEvent.mRefPoint + widget->WidgetToScreenOffset(); + } +-# ifdef MOZ_WIDGET_GTK ++# if 0 + Window root = GDK_ROOT_WINDOW(); + # else + Window root = X11None; // Could XQueryTree, but this is not important. +@@ -2333,7 +2333,7 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent( + case eKeyboardEventClass: + if (anEvent.mPluginEvent) { + XKeyEvent& event = pluginEvent.xkey; +-# ifdef MOZ_WIDGET_GTK ++# if 0 + event.root = GDK_ROOT_WINDOW(); + event.time = anEvent.mTime; + const GdkEventKey* gdkEvent = +@@ -2517,7 +2517,7 @@ void nsPluginInstanceOwner::Paint(const RECT& aDirty, HDC aDC) { + } + #endif + +-#if defined(MOZ_X11) ++#if 0 + void nsPluginInstanceOwner::Paint(gfxContext* aContext, + const gfxRect& aFrameRect, + const gfxRect& aDirtyRect) { +@@ -2651,7 +2651,7 @@ nsresult nsPluginInstanceOwner::Renderer::DrawWithXlib( + + NPSetWindowCallbackStruct* ws_info = + static_cast(mWindow->ws_info); +-# ifdef MOZ_X11 ++# if 0 + if (ws_info->visual != visual || ws_info->colormap != colormap) { + ws_info->visual = visual; + ws_info->colormap = colormap; +@@ -2863,7 +2863,7 @@ NS_IMETHODIMP nsPluginInstanceOwner::CreateWidget(void) { + // passing HDC till paint event when it is really + // needed. Change spec? + mPluginWindow->window = nullptr; +-#ifdef MOZ_X11 ++#if 0 + // Fill in the display field. + NPSetWindowCallbackStruct* ws_info = + static_cast(mPluginWindow->ws_info); +diff --git a/dom/plugins/base/nsPluginInstanceOwner.h b/dom/plugins/base/nsPluginInstanceOwner.h +index fbb87b6113..e5e4b86159 100644 +--- a/dom/plugins/base/nsPluginInstanceOwner.h ++++ b/dom/plugins/base/nsPluginInstanceOwner.h +@@ -31,7 +31,7 @@ class nsPluginDOMContextMenuListener; + class nsPluginFrame; + class nsDisplayListBuilder; + +-#if defined(MOZ_X11) ++#if 0 + class gfxContext; + #endif + +@@ -48,7 +48,7 @@ class PuppetWidget; + + using mozilla::widget::PuppetWidget; + +-#ifdef MOZ_X11 ++#if 0 + # include "gfxXlibNativeRenderer.h" + #endif + +@@ -112,7 +112,7 @@ class nsPluginInstanceOwner final : public nsIPluginInstanceOwner, + void Paint(const gfxRect& aDirtyRect, CGContextRef cgContext); + void RenderCoreAnimation(CGContextRef aCGContext, int aWidth, int aHeight); + void DoCocoaEventDrawRect(const gfxRect& aDrawRect, CGContextRef cgContext); +-#elif defined(MOZ_X11) ++#elif 0 + void Paint(gfxContext* aContext, const gfxRect& aFrameRect, + const gfxRect& aDirtyRect); + #endif +@@ -193,7 +193,7 @@ class nsPluginInstanceOwner final : public nsIPluginInstanceOwner, + return ""; + } + +-#ifdef MOZ_X11 ++#if 0 + void GetPluginDescription(nsACString& aDescription) { + aDescription.Truncate(); + if (mInstance && mPluginHost) { +@@ -214,7 +214,7 @@ class nsPluginInstanceOwner final : public nsIPluginInstanceOwner, + return mPluginWindow->type == NPWindowTypeDrawable && + (MatchPluginName("Shockwave Flash") || + MatchPluginName("Test Plug-in")); +-#elif defined(MOZ_X11) || defined(XP_MACOSX) ++#elif defined(XP_MACOSX) + return true; + #else + return false; +@@ -325,7 +325,7 @@ class nsPluginInstanceOwner final : public nsIPluginInstanceOwner, + uint32_t mLastEventloopNestingLevel; + bool mContentFocused; + bool mWidgetVisible; // used on Mac to store our widget's visible state +-#ifdef MOZ_X11 ++#if 0 + // Used with windowless plugins only, initialized in CreateWidget(). + bool mFlash10Quirks; + #endif +@@ -371,7 +371,7 @@ class nsPluginInstanceOwner final : public nsIPluginInstanceOwner, + + int mLastMouseDownButtonType; + +-#ifdef MOZ_X11 ++#if 0 + class Renderer : public gfxXlibNativeRenderer { + public: + Renderer(NPWindow* aWindow, nsPluginInstanceOwner* aInstanceOwner, +diff --git a/dom/plugins/base/nsPluginNativeWindow.cpp b/dom/plugins/base/nsPluginNativeWindow.cpp +index 6aea8d28fc..f4f2ac36b7 100644 +--- a/dom/plugins/base/nsPluginNativeWindow.cpp ++++ b/dom/plugins/base/nsPluginNativeWindow.cpp +@@ -17,7 +17,7 @@ class nsPluginNativeWindowImpl : public nsPluginNativeWindow { + nsPluginNativeWindowImpl(); + virtual ~nsPluginNativeWindowImpl(); + +-#ifdef MOZ_WIDGET_GTK ++#if 0 + NPSetWindowCallbackStruct mWsInfo; + #endif + }; +@@ -32,14 +32,14 @@ nsPluginNativeWindowImpl::nsPluginNativeWindowImpl() : nsPluginNativeWindow() { + memset(&clipRect, 0, sizeof(clipRect)); + type = NPWindowTypeWindow; + +-#ifdef MOZ_WIDGET_GTK ++#if 0 + ws_info = &mWsInfo; + mWsInfo.type = 0; + mWsInfo.display = nullptr; + mWsInfo.visual = nullptr; + mWsInfo.colormap = 0; + mWsInfo.depth = 0; +-#elif defined(XP_UNIX) && !defined(XP_MACOSX) ++#elif 0 + ws_info = nullptr; + #endif + } +diff --git a/dom/plugins/ipc/NPEventUnix.h b/dom/plugins/ipc/NPEventUnix.h +index 55494b4d8c..822d3b88e3 100644 +--- a/dom/plugins/ipc/NPEventUnix.h ++++ b/dom/plugins/ipc/NPEventUnix.h +@@ -9,7 +9,7 @@ + + #include "npapi.h" + +-#ifdef MOZ_X11 ++#if 0 + # include "mozilla/X11Util.h" + #endif + +@@ -59,7 +59,7 @@ struct ParamTraits // synonym for XEvent + return false; + } + +-#ifdef MOZ_X11 ++#if 0 + SetXDisplay(aResult->event); + #endif + return true; +@@ -70,7 +70,7 @@ struct ParamTraits // synonym for XEvent + aLog->append(L"(XEvent)"); + } + +-#ifdef MOZ_X11 ++#if 0 + private: + static void SetXDisplay(XEvent& ev) { + Display* display = mozilla::DefaultXDisplay(); +diff --git a/dom/plugins/ipc/PluginInstanceChild.cpp b/dom/plugins/ipc/PluginInstanceChild.cpp +index 9d6c04dced..b163c4c548 100644 +--- a/dom/plugins/ipc/PluginInstanceChild.cpp ++++ b/dom/plugins/ipc/PluginInstanceChild.cpp +@@ -15,7 +15,7 @@ + #include "gfx2DGlue.h" + #include "nsNPAPIPluginInstance.h" + #include "mozilla/gfx/2D.h" +-#ifdef MOZ_X11 ++#if 0 + # include "gfxXlibSurface.h" + #endif + #ifdef XP_WIN +@@ -44,7 +44,7 @@ using namespace mozilla::layers; + using namespace mozilla::gfx; + using namespace mozilla::widget; + +-#ifdef MOZ_WIDGET_GTK ++#if 0 + + # include + # include +@@ -188,10 +188,10 @@ PluginInstanceChild::PluginInstanceChild(const NPPluginFuncs* aPluginIface, + mWindow.type = NPWindowTypeWindow; + mData.ndata = (void*)this; + mData.pdata = nullptr; +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + mWindow.ws_info = &mWsInfo; + memset(&mWsInfo, 0, sizeof(mWsInfo)); +-# ifdef MOZ_WIDGET_GTK ++# if 1 + mWsInfo.display = nullptr; + # else + mWsInfo.display = DefaultXDisplay(); +@@ -356,7 +356,7 @@ NPError PluginInstanceChild::NPN_GetValue(NPNVariable aVar, void* aValue) { + AutoStackHelper guard(this); + + switch (aVar) { +-#if defined(MOZ_X11) ++#if 0 + case NPNVToolkit: + *((NPNToolkitType*)aValue) = NPNVGtk2; + return NPERR_NO_ERROR; +@@ -428,7 +428,7 @@ NPError PluginInstanceChild::NPN_GetValue(NPNVariable aVar, void* aValue) { + *static_cast(aValue) = mPluginWindowHWND; + return NPERR_NO_ERROR; + } +-#elif defined(MOZ_X11) ++#elif 0 + NPError result; + CallNPN_GetValue_NPNVnetscapeWindow(static_cast(aValue), &result); + return result; +@@ -842,7 +842,7 @@ mozilla::ipc::IPCResult PluginInstanceChild::AnswerNPP_HandleEvent( + AssertPluginThread(); + AutoStackHelper guard(this); + +-#if defined(MOZ_X11) && defined(DEBUG) ++#if 0 + if (GraphicsExpose == event.event.type) + PLUGIN_LOG_DEBUG( + (" received drawable 0x%lx\n", event.event.xgraphicsexpose.drawable)); +@@ -899,7 +899,7 @@ mozilla::ipc::IPCResult PluginInstanceChild::AnswerNPP_HandleEvent( + } + #endif + +-#ifdef MOZ_X11 ++#if 0 + if (GraphicsExpose == event.event.type) { + // Make sure the X server completes the drawing before the parent + // draws on top and destroys the Drawable. +@@ -1154,7 +1154,7 @@ mozilla::ipc::IPCResult PluginInstanceChild::AnswerNPP_SetWindow( + AssertPluginThread(); + AutoStackHelper guard(this); + +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + NS_ASSERTION(mWsInfo.display, "We should have a valid display!"); + + // The minimum info is sent over IPC to allow this +@@ -1250,14 +1250,14 @@ mozilla::ipc::IPCResult PluginInstanceChild::AnswerNPP_SetWindow( + #elif defined(MOZ_WIDGET_UIKIT) + // Don't care + #else +-# error Implement me for your OS ++//# error Implement me for your OS + #endif + + return IPC_OK(); + } + + bool PluginInstanceChild::Initialize() { +-#ifdef MOZ_WIDGET_GTK ++#if 0 + if (mWsInfo.display) { + // Already initialized + return true; +@@ -2870,7 +2870,7 @@ bool PluginInstanceChild::CreateOptSurface(void) { + ? SurfaceFormat::A8R8G8B8_UINT32 + : SurfaceFormat::X8R8G8B8_UINT32; + +-#ifdef MOZ_X11 ++#if 0 + Display* dpy = mWsInfo.display; + Screen* screen = DefaultScreenOfDisplay(dpy); + if (format == SurfaceFormat::X8R8G8B8_UINT32 && +@@ -2926,7 +2926,7 @@ bool PluginInstanceChild::MaybeCreatePlatformHelperSurface(void) { + return false; + } + +-#ifdef MOZ_X11 ++#if 0 + bool supportNonDefaultVisual = false; + Screen* screen = DefaultScreenOfDisplay(mWsInfo.display); + Visual* defaultVisual = DefaultVisualOfScreen(screen); +@@ -3078,12 +3078,12 @@ bool PluginInstanceChild::EnsureCurrentBuffer(void) { + } + + void PluginInstanceChild::UpdateWindowAttributes(bool aForceSetWindow) { +-#if defined(MOZ_X11) || defined(XP_WIN) ++#if 0 + RefPtr curSurface = + mHelperSurface ? mHelperSurface : mCurrentSurface; + #endif // Only used within MOZ_X11 or XP_WIN blocks. Unused variable otherwise + bool needWindowUpdate = aForceSetWindow; +-#ifdef MOZ_X11 ++#if 0 + Visual* visual = nullptr; + Colormap colormap = 0; + if (curSurface && curSurface->GetType() == gfxSurfaceType::Xlib) { +@@ -3182,7 +3182,7 @@ void PluginInstanceChild::PaintRectToPlatformSurface(const nsIntRect& aRect, + // We should not send an async surface if we're using direct rendering. + MOZ_ASSERT(!IsUsingDirectDrawing()); + +-#ifdef MOZ_X11 ++#if 0 + { + NS_ASSERTION(aSurface->GetType() == gfxSurfaceType::Xlib, + "Non supported platform surface type"); +@@ -3230,7 +3230,7 @@ void PluginInstanceChild::PaintRectToSurface(const nsIntRect& aRect, + // Render using temporary X surface, with copy to image surface + nsIntRect plPaintRect(aRect); + RefPtr renderSurface = aSurface; +-#ifdef MOZ_X11 ++#if 0 + if (mIsTransparent && (GetQuirks() & QUIRK_FLASH_EXPOSE_COORD_TRANSLATION)) { + // Work around a bug in Flash up to 10.1 d51 at least, where expose event + // top left coordinates within the plugin-rect and not at the drawable +@@ -3573,7 +3573,7 @@ bool PluginInstanceChild::ShowPluginFrame() { + NPRect r = {(uint16_t)rect.y, (uint16_t)rect.x, (uint16_t)rect.YMost(), + (uint16_t)rect.XMost()}; + SurfaceDescriptor currSurf; +-#ifdef MOZ_X11 ++#if 0 + if (mCurrentSurface->GetType() == gfxSurfaceType::Xlib) { + gfxXlibSurface* xsurf = static_cast(mCurrentSurface.get()); + currSurf = SurfaceDescriptorX11(xsurf); +@@ -3621,7 +3621,7 @@ bool PluginInstanceChild::ReadbackDifferenceRect(const nsIntRect& rect) { + + // We can read safely from XSurface,SharedDIBSurface and Unsafe + // SharedMemory, because PluginHost is not able to modify that surface +-#if defined(MOZ_X11) ++#if 0 + if (mBackSurface->GetType() != gfxSurfaceType::Xlib && + !gfxSharedImageSurface::IsSharedImage(mBackSurface)) + return false; +@@ -3629,7 +3629,7 @@ bool PluginInstanceChild::ReadbackDifferenceRect(const nsIntRect& rect) { + if (!SharedDIBSurface::IsSharedDIBSurface(mBackSurface)) return false; + #endif + +-#if defined(MOZ_X11) || defined(XP_WIN) ++#if 0 + if (mCurrentSurface->GetContentType() != mBackSurface->GetContentType()) + return false; + +@@ -3747,7 +3747,7 @@ mozilla::ipc::IPCResult PluginInstanceChild::RecvUpdateBackground( + if (!mBackground) { + // XXX refactor me + switch (aBackground.type()) { +-#ifdef MOZ_X11 ++#if 0 + case SurfaceDescriptor::TSurfaceDescriptorX11: { + mBackground = aBackground.get_SurfaceDescriptorX11().OpenForeign(); + break; +diff --git a/dom/plugins/ipc/PluginInstanceChild.h b/dom/plugins/ipc/PluginInstanceChild.h +index 479c060f91..a00c1229aa 100644 +--- a/dom/plugins/ipc/PluginInstanceChild.h ++++ b/dom/plugins/ipc/PluginInstanceChild.h +@@ -363,7 +363,7 @@ class PluginInstanceChild : public PPluginInstanceChild { + PluginScriptableObjectChild* mCachedWindowActor; + PluginScriptableObjectChild* mCachedElementActor; + +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + NPSetWindowCallbackStruct mWsInfo; + #elif defined(OS_WIN) + HWND mPluginWindowHWND; +diff --git a/dom/plugins/ipc/PluginInstanceParent.cpp b/dom/plugins/ipc/PluginInstanceParent.cpp +index 802bba769a..a11b7497e3 100644 +--- a/dom/plugins/ipc/PluginInstanceParent.cpp ++++ b/dom/plugins/ipc/PluginInstanceParent.cpp +@@ -25,7 +25,7 @@ + #include "nsNPAPIPluginInstance.h" + #include "nsPluginInstanceOwner.h" + #include "nsFocusManager.h" +-#ifdef MOZ_X11 ++#if 0 + # include "gfxXlibSurface.h" + #endif + #include "gfxUtils.h" +@@ -61,7 +61,7 @@ + # include "GPUVideoImage.h" + # include "mozilla/layers/SynchronousTask.h" + extern const wchar_t* kFlashFullscreenClass; +-#elif defined(MOZ_WIDGET_GTK) ++#elif 0 + # include "mozilla/dom/ContentChild.h" + # include + #elif defined(XP_MACOSX) +@@ -182,7 +182,7 @@ void PluginInstanceParent::ActorDestroy(ActorDestroyReason why) { + if (mImageContainer) { + mImageContainer->ClearAllImages(); + } +-#ifdef MOZ_X11 ++#if 0 + FinishX(DefaultXDisplay()); + #endif + } +@@ -227,7 +227,7 @@ PluginInstanceParent::AnswerNPN_GetValue_NPNVnetscapeWindow( + #ifdef XP_WIN + HWND id; + #elif defined(MOZ_X11) +- XID id; ++ int id; + #elif defined(XP_DARWIN) + intptr_t id; + #elif defined(ANDROID) +@@ -405,7 +405,7 @@ PluginInstanceParent::AnswerNPN_SetValue_NPPVpluginDrawingModel( + case NPDrawingModelAsyncWindowsDXGISurface: + allowed = SupportsPluginDirectDXGISurfaceDrawing(); + break; +-#elif defined(MOZ_X11) ++#elif 0 + case NPDrawingModelSyncX: + allowed = true; + break; +@@ -968,7 +968,7 @@ mozilla::ipc::IPCResult PluginInstanceParent::RecvShow( + return IPC_OK(); + } + #endif +-#ifdef MOZ_X11 ++#if 0 + else if (newSurface.type() == SurfaceDescriptor::TSurfaceDescriptorX11) { + surface = newSurface.get_SurfaceDescriptorX11().OpenForeign(); + } +@@ -985,7 +985,7 @@ mozilla::ipc::IPCResult PluginInstanceParent::RecvShow( + // This is the "old front buffer" we're about to hand back to + // the plugin. We might still have drawing operations + // referencing it. +-#ifdef MOZ_X11 ++#if 0 + if (mFrontSurface->GetType() == gfxSurfaceType::Xlib) { + // Finish with the surface and XSync here to ensure the server has + // finished operations on the surface before the plugin starts +@@ -1224,7 +1224,7 @@ nsresult PluginInstanceParent::EndUpdateBackground(const nsIntRect& aRect) { + ("[InstanceParent][%p] EndUpdateBackground for ", + this, aRect.x, aRect.y, aRect.width, aRect.height)); + +-#ifdef MOZ_X11 ++#if 0 + // Have to XSync here to avoid the plugin trying to draw with this + // surface racing with its creation in the X server. We also want + // to avoid the plugin drawing onto stale pixels, then handing us +@@ -1270,7 +1270,7 @@ bool PluginInstanceParent::CreateBackground(const nsIntSize& aSize) { + + // XXX refactor me + +-#if defined(MOZ_X11) ++#if 0 + Screen* screen = DefaultScreenOfDisplay(DefaultXDisplay()); + Visual* visual = DefaultVisualOfScreen(screen); + mBackground = gfxXlibSurface::Create( +@@ -1310,7 +1310,7 @@ PluginInstanceParent::BackgroundDescriptor() { + + // XXX refactor me + +-#ifdef MOZ_X11 ++#if 0 + gfxXlibSurface* xsurf = static_cast(mBackground.get()); + return SurfaceDescriptorX11(xsurf); + #endif +@@ -1427,7 +1427,7 @@ NPError PluginInstanceParent::NPP_SetWindow(const NPWindow* aWindow) { + } + #endif + +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + const NPSetWindowCallbackStruct* ws_info = + static_cast(aWindow->ws_info); + window.visualID = ws_info->visual ? ws_info->visual->visualid : 0; +@@ -1621,7 +1621,7 @@ int16_t PluginInstanceParent::NPP_HandleEvent(void* event) { + } + #endif + +-#if defined(MOZ_X11) ++#if 0 + switch (npevent->type) { + case GraphicsExpose: + PLUGIN_LOG_DEBUG((" schlepping drawable 0x%lx across the pipe\n", +@@ -1641,7 +1641,7 @@ int16_t PluginInstanceParent::NPP_HandleEvent(void* event) { + // Release any active pointer grab so that the plugin X client can + // grab the pointer if it wishes. + Display* dpy = DefaultXDisplay(); +-# ifdef MOZ_WIDGET_GTK ++# if 0 + // GDK attempts to (asynchronously) track whether there is an active + // grab so ungrab through GDK. + // +diff --git a/dom/plugins/ipc/PluginMessageUtils.cpp b/dom/plugins/ipc/PluginMessageUtils.cpp +index e77d3721f5..0ddcc98330 100644 +--- a/dom/plugins/ipc/PluginMessageUtils.cpp ++++ b/dom/plugins/ipc/PluginMessageUtils.cpp +@@ -50,7 +50,7 @@ NPRemoteWindow::NPRemoteWindow() + width(0), + height(0), + type(NPWindowTypeDrawable) +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + , + visualID(0), + colormap(0) +@@ -82,7 +82,7 @@ ipc::RacyInterruptPolicy MediateRace(const MessageChannel::MessageInfo& parent, + } + } + +-#if defined(OS_LINUX) || defined(OS_SOLARIS) ++#if defined(OS_SOLARIS) + static string ReplaceAll(const string& haystack, const string& needle, + const string& with) { + string munged = haystack; +@@ -98,7 +98,7 @@ static string ReplaceAll(const string& haystack, const string& needle, + #endif + + string MungePluginDsoPath(const string& path) { +-#if defined(OS_LINUX) || defined(OS_SOLARIS) ++#if defined(OS_SOLARIS) + // https://bugzilla.mozilla.org/show_bug.cgi?id=519601 + return ReplaceAll(path, "netscape", "netsc@pe"); + #else +@@ -107,7 +107,7 @@ string MungePluginDsoPath(const string& path) { + } + + string UnmungePluginDsoPath(const string& munged) { +-#if defined(OS_LINUX) || defined(OS_SOLARIS) ++#if defined(OS_SOLARIS) + return ReplaceAll(munged, "netsc@pe", "netscape"); + #else + return munged; +diff --git a/dom/plugins/ipc/PluginMessageUtils.h b/dom/plugins/ipc/PluginMessageUtils.h +index 87747b115b..0d33a9a5af 100644 +--- a/dom/plugins/ipc/PluginMessageUtils.h ++++ b/dom/plugins/ipc/PluginMessageUtils.h +@@ -87,7 +87,7 @@ struct NPRemoteWindow { + uint32_t height; + NPRect clipRect; + NPWindowType type; +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + VisualID visualID; + Colormap colormap; + #endif /* XP_UNIX */ +@@ -113,9 +113,9 @@ struct NPAudioDeviceStateChangedIPC { + + #ifdef XP_WIN + typedef HWND NativeWindowHandle; +-#elif defined(MOZ_X11) ++#elif 0 + typedef XID NativeWindowHandle; +-#elif defined(XP_DARWIN) || defined(ANDROID) ++#elif defined(XP_DARWIN) || defined(ANDROID) || defined(MOZ_X11) + typedef intptr_t NativeWindowHandle; // never actually used, will always be 0 + #else + # error Need NativeWindowHandle for this platform +@@ -323,7 +323,7 @@ struct ParamTraits { + WriteParam(aMsg, aParam.height); + WriteParam(aMsg, aParam.clipRect); + WriteParam(aMsg, aParam.type); +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + aMsg->WriteULong(aParam.visualID); + aMsg->WriteULong(aParam.colormap); + #endif +@@ -345,7 +345,7 @@ struct ParamTraits { + ReadParam(aMsg, aIter, &clipRect) && ReadParam(aMsg, aIter, &type))) + return false; + +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + unsigned long visualID; + unsigned long colormap; + if (!(aMsg->ReadULong(aIter, &visualID) && +@@ -365,7 +365,7 @@ struct ParamTraits { + aResult->height = height; + aResult->clipRect = clipRect; + aResult->type = type; +-#if defined(MOZ_X11) && defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + aResult->visualID = visualID; + aResult->colormap = colormap; + #endif +diff --git a/dom/plugins/ipc/PluginModuleChild.cpp b/dom/plugins/ipc/PluginModuleChild.cpp +index 2e811ceaeb..a66eb54a4e 100644 +--- a/dom/plugins/ipc/PluginModuleChild.cpp ++++ b/dom/plugins/ipc/PluginModuleChild.cpp +@@ -12,7 +12,7 @@ + + #include "mozilla/ipc/MessageChannel.h" + +-#ifdef MOZ_WIDGET_GTK ++#if 0 + # include + # include + #endif +@@ -25,7 +25,7 @@ + #include "nsPluginsDir.h" + #include "nsXULAppAPI.h" + +-#ifdef MOZ_X11 ++#if 0 + # include "nsX11ErrorHandler.h" + # include "mozilla/X11Util.h" + #endif +@@ -100,7 +100,7 @@ PluginModuleChild::PluginModuleChild(bool aIsChrome) + #if defined(OS_WIN) || defined(OS_MACOSX) + , + mGetEntryPointsFunc(0) +-#elif defined(MOZ_WIDGET_GTK) ++#elif 0 + , + mNestedLoopTimerId(0) + #endif +@@ -254,7 +254,7 @@ bool PluginModuleChild::InitForChrome(const std::string& aPluginFilename, + // XXX quirks isn't initialized yet + mAsyncRenderSupport = info.fSupportsAsyncRender; + #endif +-#if defined(MOZ_X11) ++#if 0 + constexpr auto flash10Head = "Shockwave Flash 10."_ns; + if (StringBeginsWith(nsDependentCString(info.fDescription), flash10Head)) { + AddQuirk(QUIRK_FLASH_EXPOSE_COORD_TRANSLATION); +@@ -267,7 +267,7 @@ bool PluginModuleChild::InitForChrome(const std::string& aPluginFilename, + mozilla::plugins::PluginUtilsOSX::SetProcessName(nameBuffer); + #endif + pluginFile.FreePluginInfo(info); +-#if defined(MOZ_X11) || defined(XP_MACOSX) ++#if 0 + if (!mLibrary) + #endif + { +@@ -330,7 +330,7 @@ bool PluginModuleChild::InitForChrome(const std::string& aPluginFilename, + return true; + } + +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + + typedef void (*GObjectDisposeFn)(GObject*); + typedef gboolean (*GtkWidgetScrollEventFn)(GtkWidget*, GdkEventScroll*); +@@ -550,7 +550,7 @@ bool PluginModuleChild::ShouldContinueFromReplyTimeout() { + } + + bool PluginModuleChild::InitGraphics() { +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + // Work around plugins that don't interact well with GDK + // client-side windows. + PR_SetEnv("GDK_NATIVE_WINDOWS=1"); +@@ -588,7 +588,7 @@ bool PluginModuleChild::InitGraphics() { + #else + // may not be necessary on all platforms + #endif +-#ifdef MOZ_X11 ++#if 0 + // Do this after initializing GDK, or GDK will install its own handler. + InstallX11ErrorHandler(); + #endif +@@ -596,7 +596,7 @@ bool PluginModuleChild::InitGraphics() { + } + + void PluginModuleChild::DeinitGraphics() { +-#if defined(MOZ_X11) && defined(NS_FREE_PERMANENT_DATA) ++#if 0 + // We free some data off of XDisplay close hooks, ensure they're + // run. Closing the display is pretty scary, so we only do it to + // silence leak checkers. +@@ -1000,7 +1000,7 @@ NPError _getvalue(NPP aNPP, NPNVariable aVariable, void* aValue) { + switch (aVariable) { + // Copied from nsNPAPIPlugin.cpp + case NPNVToolkit: +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + *static_cast(aValue) = NPNVGtk2; + return NPERR_NO_ERROR; + #endif +@@ -1026,7 +1026,7 @@ NPError _getvalue(NPP aNPP, NPNVariable aVariable, void* aValue) { + case NPNVSupportsWindowless: + *(NPBool*)aValue = true; + return NPERR_NO_ERROR; +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + case NPNVxDisplay: { + if (!aNPP) { + return NPERR_INVALID_INSTANCE_ERROR; +@@ -1556,8 +1556,8 @@ NPError PluginModuleChild::DoNP_Initialize(const PluginSettings& aSettings) { + SetEventHooks(); + #endif + +-#ifdef MOZ_X11 +-# ifdef MOZ_WIDGET_GTK ++#if 0 ++# if 0 + if (!GDK_IS_X11_DISPLAY(gdk_display_get_default())) { + // We don't support NPAPI plugins on Wayland. + return NPERR_GENERIC_ERROR; +diff --git a/dom/plugins/ipc/PluginModuleChild.h b/dom/plugins/ipc/PluginModuleChild.h +index 84df35e5d8..4caf4c54bd 100644 +--- a/dom/plugins/ipc/PluginModuleChild.h ++++ b/dom/plugins/ipc/PluginModuleChild.h +@@ -206,7 +206,7 @@ class PluginModuleChild : public PPluginModuleChild { + bool InitGraphics(); + void DeinitGraphics(); + +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + static gboolean DetectNestedEventLoop(gpointer data); + static gboolean ProcessBrowserEvents(gpointer data); + +@@ -238,7 +238,7 @@ class PluginModuleChild : public PPluginModuleChild { + + PluginSettings mCachedSettings; + +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + // If a plugin spins a nested glib event loop in response to a + // synchronous IPC message from the browser, the loop might break + // only after the browser responds to a request sent by the +diff --git a/dom/plugins/ipc/PluginModuleParent.cpp b/dom/plugins/ipc/PluginModuleParent.cpp +index c495097caf..085545376f 100644 +--- a/dom/plugins/ipc/PluginModuleParent.cpp ++++ b/dom/plugins/ipc/PluginModuleParent.cpp +@@ -50,7 +50,7 @@ + # include "PluginUtilsWin.h" + #endif + +-#ifdef MOZ_WIDGET_GTK ++#if 0 + # include + #elif XP_MACOSX + # include "PluginInterposeOSX.h" +@@ -1591,7 +1591,7 @@ mozilla::ipc::IPCResult PluginModuleChromeParent:: + + mozilla::ipc::IPCResult PluginModuleParent::RecvBackUpXResources( + const FileDescriptor& aXSocketFd) { +-#ifndef MOZ_X11 ++#if 1 + MOZ_CRASH("This message only makes sense on X11 platforms"); + #else + MOZ_ASSERT(0 > mPluginXSocketFdDup.get(), "Already backed up X resources??"); +@@ -1777,7 +1777,7 @@ void PluginModuleChromeParent::CachedSettingChanged(const char* aPref, + module->CachedSettingChanged(); + } + +-#if defined(XP_UNIX) && !defined(XP_MACOSX) ++#if 0 + nsresult PluginModuleParent::NP_Initialize(NPNetscapeFuncs* bFuncs, + NPPluginFuncs* pFuncs, + NPError* error) { +@@ -1832,6 +1832,22 @@ nsresult PluginModuleChromeParent::NP_Initialize(NPNetscapeFuncs* bFuncs, + + return NS_OK; + } ++#endif ++ ++#if defined(XP_UNIX) && !defined(XP_MACOSX) ++nsresult PluginModuleParent::NP_Initialize(NPNetscapeFuncs* bFuncs, ++ NPPluginFuncs* pFuncs, ++ NPError* error) { ++*error = NPERR_GENERIC_ERROR; ++return NS_ERROR_FAILURE; ++} ++ ++nsresult PluginModuleChromeParent::NP_Initialize(NPNetscapeFuncs* bFuncs, ++ NPPluginFuncs* pFuncs, ++ NPError* error) { ++ *error = NPERR_GENERIC_ERROR; ++ return NS_ERROR_FAILURE; ++} + + #else + +@@ -2035,7 +2051,7 @@ class nsCaseInsensitiveUTF8StringArrayComparator { + } + }; + +-#if defined(XP_WIN) || defined(MOZ_WIDGET_GTK) ++#if defined(XP_WIN) + static void ForceWindowless(nsTArray& names, + nsTArray& values) { + nsCaseInsensitiveUTF8StringArrayComparator comparator; +@@ -2118,7 +2134,7 @@ nsresult PluginModuleParent::NPP_NewInternal( + # endif + ForceWindowless(names, values); + } +-#elif defined(MOZ_WIDGET_GTK) ++#elif 0 + // We no longer support windowed mode on Linux. + ForceWindowless(names, values); + #endif +@@ -2232,7 +2248,7 @@ mozilla::ipc::IPCResult PluginModuleParent::AnswerProcessSomeEvents() { + return IPC_OK(); + } + +-#elif !defined(MOZ_WIDGET_GTK) ++#elif 1 + mozilla::ipc::IPCResult PluginModuleParent::AnswerProcessSomeEvents() { + MOZ_CRASH("unreached"); + } +diff --git a/dom/plugins/ipc/PluginModuleParent.h b/dom/plugins/ipc/PluginModuleParent.h +index 9fd74904a2..b77279b7f5 100644 +--- a/dom/plugins/ipc/PluginModuleParent.h ++++ b/dom/plugins/ipc/PluginModuleParent.h +@@ -288,7 +288,7 @@ class PluginModuleParent : public PPluginModuleParent, + int32_t mSandboxLevel; + bool mIsFlashPlugin; + +-#ifdef MOZ_X11 ++#if 0 + // Dup of plugin's X socket, used to scope its resources to this + // object instead of the plugin process's lifetime + ScopedClose mPluginXSocketFdDup; +diff --git a/dom/plugins/ipc/moz.build b/dom/plugins/ipc/moz.build +index 49f1e27670..e97c75d72a 100644 +--- a/dom/plugins/ipc/moz.build ++++ b/dom/plugins/ipc/moz.build +@@ -142,9 +142,6 @@ DEFINES['FORCE_PR_LOG'] = True + + if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gtk': + CXXFLAGS += CONFIG['TK_CFLAGS'] +-else: +- # Force build against gtk+2 for struct offsets and such. +- CXXFLAGS += CONFIG['MOZ_GTK2_CFLAGS'] + + CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] + +diff --git a/dom/plugins/test/moz.build b/dom/plugins/test/moz.build +index 032db35387..dde5c1c31b 100644 +--- a/dom/plugins/test/moz.build ++++ b/dom/plugins/test/moz.build +@@ -8,7 +8,7 @@ DIRS += ['testplugin'] + + XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini'] + +-if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk', 'cocoa', 'windows'): ++if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('cocoa', 'windows'): + MOCHITEST_MANIFESTS += ['mochitest/mochitest.ini'] + MOCHITEST_CHROME_MANIFESTS += ['mochitest/chrome.ini'] + BROWSER_CHROME_MANIFESTS += ['mochitest/browser.ini'] +diff --git a/dom/plugins/test/testplugin/nptest.cpp b/dom/plugins/test/testplugin/nptest.cpp +index 2a9d20cdca..02b39a27cf 100644 +--- a/dom/plugins/test/testplugin/nptest.cpp ++++ b/dom/plugins/test/testplugin/nptest.cpp +@@ -2692,7 +2692,7 @@ bool stallPlugin(NPObject* npobj, const NPVariant* args, uint32_t argCount, + return true; + } + +-#if defined(MOZ_WIDGET_GTK) ++#if 0 + bool getClipboardText(NPObject* npobj, const NPVariant* args, uint32_t argCount, + NPVariant* result) { + NPP npp = static_cast(npobj)->npp; +diff --git a/dom/plugins/test/testplugin/testplugin.mozbuild b/dom/plugins/test/testplugin/testplugin.mozbuild +index 2c466409ea..ad87356e15 100644 +--- a/dom/plugins/test/testplugin/testplugin.mozbuild ++++ b/dom/plugins/test/testplugin/testplugin.mozbuild +@@ -18,11 +18,6 @@ if toolkit == 'cocoa': + UNIFIED_SOURCES += [ + 'nptest_macosx.mm' + ] +-elif toolkit == 'gtk': +- UNIFIED_SOURCES += [ +- 'nptest_gtk2.cpp', +- ] +-elif toolkit == 'windows': + UNIFIED_SOURCES += [ + 'nptest_windows.cpp', + ] +@@ -46,14 +41,6 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa' and CONFIG['TARGET_CPU'] == 'x86_64': + OS_LIBS += ['-framework Carbon'] + +-if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk': +- CXXFLAGS += CONFIG['MOZ_GTK2_CFLAGS'] +- CFLAGS += CONFIG['MOZ_GTK2_CFLAGS'] +- OS_LIBS += CONFIG['MOZ_GTK2_LIBS'] +- OS_LIBS += CONFIG['XLDFLAGS'] +- OS_LIBS += CONFIG['XLIBS'] +- OS_LIBS += CONFIG['XEXT_LIBS'] +- + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': + FINAL_TARGET = 'dist/plugins/%s.plugin/Contents/MacOS' % cocoa_name + OBJDIR_FILES.dist.plugins['%s.plugin' % cocoa_name].Contents += ['%s/Info.plist' % relative_path] +diff --git a/gfx/gl/GLContextProviderGLX.cpp b/gfx/gl/GLContextProviderGLX.cpp +index 3df2834ee1..3b6d0e42a0 100644 +--- a/gfx/gl/GLContextProviderGLX.cpp ++++ b/gfx/gl/GLContextProviderGLX.cpp +@@ -3,11 +3,11 @@ + * 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 + # include + # define GET_NATIVE_WINDOW(aWidget) \ +- GDK_WINDOW_XID((GdkWindow*)aWidget->GetNativeData(NS_NATIVE_WINDOW)) ++ GDK_WINDOW_XID((GdkWindow*)aWidget->GetNativeData(NS_NATIVE_WINDOW)) + #endif + + #include +@@ -42,7 +42,7 @@ + + #include "gfxCrashReporterUtils.h" + +-#ifdef MOZ_WIDGET_GTK ++#if MOZ_WIDGET_GTK + # include "gfxPlatformGtk.h" + #endif + +diff --git a/gfx/gl/GLContextProviderWayland.cpp b/gfx/gl/GLContextProviderWayland.cpp +index 4f7c15380c..25ee2d4354 100644 +--- a/gfx/gl/GLContextProviderWayland.cpp ++++ b/gfx/gl/GLContextProviderWayland.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 + # include + #endif +@@ -21,41 +21,24 @@ static class GLContextProviderEGL sGLContextProviderEGL; + already_AddRefed GLContextProviderWayland::CreateForCompositorWidget( + CompositorWidget* aCompositorWidget, bool aWebRender, + bool aForceAccelerated) { +- if (GDK_IS_X11_DISPLAY(gdk_display_get_default())) { +- return sGLContextProviderX11.CreateForCompositorWidget( +- aCompositorWidget, aWebRender, aForceAccelerated); +- } else { + return sGLContextProviderEGL.CreateForCompositorWidget( + aCompositorWidget, aWebRender, aForceAccelerated); +- } + } + + /*static*/ + already_AddRefed GLContextProviderWayland::CreateHeadless( + const GLContextCreateDesc& desc, nsACString* const out_failureId) { +- if (GDK_IS_X11_DISPLAY(gdk_display_get_default())) { +- return sGLContextProviderX11.CreateHeadless(desc, out_failureId); +- } else { + return sGLContextProviderEGL.CreateHeadless(desc, out_failureId); +- } + } + + /*static*/ + GLContext* GLContextProviderWayland::GetGlobalContext() { +- if (GDK_IS_X11_DISPLAY(gdk_display_get_default())) { +- return sGLContextProviderX11.GetGlobalContext(); +- } else { + return sGLContextProviderEGL.GetGlobalContext(); +- } + } + + /*static*/ + void GLContextProviderWayland::Shutdown() { +- if (GDK_IS_X11_DISPLAY(gdk_display_get_default())) { +- sGLContextProviderX11.Shutdown(); +- } else { + sGLContextProviderEGL.Shutdown(); +- } + } + + } // namespace mozilla::gl +diff --git a/gfx/thebes/gfxGdkNativeRenderer.cpp b/gfx/thebes/gfxGdkNativeRenderer.cpp +index 49f3afdb59..95760b16e4 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 + # include "cairo-xlib.h" + # include "gfxXlibSurface.h" +diff --git a/gfx/thebes/gfxGdkNativeRenderer.h b/gfx/thebes/gfxGdkNativeRenderer.h +index e11a3ba5d1..1cfaf8c79e 100644 +--- a/gfx/thebes/gfxGdkNativeRenderer.h ++++ b/gfx/thebes/gfxGdkNativeRenderer.h +@@ -6,9 +6,9 @@ + #ifndef GFXGDKNATIVERENDER_H_ + #define GFXGDKNATIVERENDER_H_ + +-#include ++//#include + #include "nsSize.h" +-#ifdef MOZ_X11 ++#if MOZ_X11 + # include "gfxXlibNativeRenderer.h" + #endif + +diff --git a/media/webrtc/trunk/peerconnection_client.target.mk b/media/webrtc/trunk/peerconnection_client.target.mk +index 3c4320a180..3195e5d025 100644 +--- a/media/webrtc/trunk/peerconnection_client.target.mk ++++ b/media/webrtc/trunk/peerconnection_client.target.mk +@@ -59,8 +59,6 @@ CFLAGS_Debug := \ + -pipe \ + -fPIC \ + -pthread \ +- -I/usr/include/gtk-2.0 \ +- -I/usr/lib64/gtk-2.0/include \ + -I/usr/include/atk-1.0 \ + -I/usr/include/cairo \ + -I/usr/include/gdk-pixbuf-2.0 \ +@@ -149,8 +147,6 @@ CFLAGS_Release := \ + -pipe \ + -fPIC \ + -pthread \ +- -I/usr/include/gtk-2.0 \ +- -I/usr/lib64/gtk-2.0/include \ + -I/usr/include/atk-1.0 \ + -I/usr/include/cairo \ + -I/usr/include/gdk-pixbuf-2.0 \ +@@ -241,8 +237,6 @@ LDFLAGS_Release := \ + + LIBS := \ + \ +- -lgtk-x11-2.0 \ +- -lgdk-x11-2.0 \ + -latk-1.0 \ + -lgio-2.0 \ + -lpangoft2-1.0 \ +diff --git a/old-configure b/old-configure +index 2ff4d57fbf..9ae775807a 100644 +--- a/old-configure ++++ b/old-configure +@@ -749,7 +749,6 @@ GLIB_VERSION=2.42 + 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 +@@ -7858,79 +7857,6 @@ cat >> confdefs.h <> confdefs.pytmp <> confdefs.h <> confdefs.pytmp <> confdefs.h <= $GTK2_VERSION gtk+-unix-print-2.0 glib-2.0 >= $GLIB_VERSION gobject-2.0 gio-unix-2.0 $GDK_PACKAGES""... $ac_c" 1>&6 +-echo "configure:7892: 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_PACKAGES" >&5 +- +- 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_PACKAGES" ; then +- echo "$ac_t""yes" 1>&6 +- succeeded=yes +- +- echo $ac_n "checking MOZ_GTK2_CFLAGS""... $ac_c" 1>&6 +-echo "configure:7899: 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_PACKAGES"` +- echo "$ac_t""$MOZ_GTK2_CFLAGS" 1>&6 +- +- echo $ac_n "checking MOZ_GTK2_LIBS""... $ac_c" 1>&6 +-echo "configure:7904: 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_PACKAGES\" |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_PACKAGES"` +- 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_PACKAGES) 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_PACKAGES) 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 # COMPILE_ENVIRONMENT + + +@@ -10650,7 +10576,6 @@ sed 's/$/,/' >> $CONFIG_STATUS < ++//#include + #include + #ifdef MOZ_X11 + # include + # include "X11UndefineNone.h" + #endif /* MOZ_X11 */ + #ifdef MOZ_WAYLAND +-# include ++//# include + # include "base/thread.h" + # include "WaylandVsyncSource.h" + #endif diff --git a/extra/firefox/sources b/extra/firefox/sources index 2099a0df..daa0fafa 100644 --- a/extra/firefox/sources +++ b/extra/firefox/sources @@ -1,3 +1,4 @@ https://ftp.mozilla.org/pub/firefox/releases/81.0/source/firefox-81.0.source.tar.xz https://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz autoconf2.13/ https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz yasm/ +patches/no-gtk2.patch