Description: don't allow QtWebEngineCore to request executable stack
 The Chromium sources contain assembly code that causes the library to
 default to executable stack (the linker requires that *all* .o files
 have a .note.GNU-stack section in order to default to non-executable).
 So add the -z noexecstack linker flag to change the setting.
 .
 The other libraries are not affected.
Origin: upstream, https://code.qt.io/cgit/qt/qtwebengine.git/commit/?id=597359a16a798df3
Last-Update: 2019-12-03

--- a/configure.json
+++ b/configure.json
@@ -320,6 +320,11 @@
         "webengine-win-compiler64": {
             "label": "64bit compiler",
             "type": "isWindowsHostCompiler64"
+        },
+        "webengine-noexecstack": {
+            "label": "linker supports -z noexecstack",
+            "type": "linkerSupportsFlag",
+            "flag": "-z,noexecstack"
         }
     },
 
@@ -632,6 +637,11 @@
             "condition": "config.win32 && tests.webengine-win-compiler64",
             "type": "isWindowsHostCompiler64",
             "output": [ "privateFeature" ]
+        },
+        "webengine-noexecstack": {
+            "label": "linker supports -z noexecstack",
+            "condition": "config.unix && tests.webengine-noexecstack",
+            "output": [ "privateFeature" ]
         }
     },
 
--- a/src/core/core_module.pro
+++ b/src/core/core_module.pro
@@ -41,6 +41,8 @@ LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA
 # GN's LFLAGS doesn't always work across all the Linux configurations we support.
 # The Windows and macOS ones from GN does provide a few useful flags however
 
+unix:qtConfig(webengine-noexecstack): \
+    QMAKE_LFLAGS += -Wl,-z,noexecstack
 linux {
     QMAKE_LFLAGS += -Wl,--gc-sections -Wl,-O1 -Wl,-z,now
     # Embedded address sanitizer symbols are undefined and are picked up by the dynamic link loader
