File webkitgtk-memfd-build-fix.patch of Package webkit2gtk3.36760
diff -urp webkitgtk-2.45.92.orig/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp webkitgtk-2.45.92/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
--- webkitgtk-2.45.92.orig/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp 2024-08-28 04:05:36.303747400 -0500
+++ webkitgtk-2.45.92/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp 2024-09-12 13:54:08.279958884 -0500
@@ -40,18 +40,19 @@
#include "Display.h"
#endif
-#if !defined(MFD_ALLOW_SEALING) && HAVE(LINUX_MEMFD_H)
-#include <linux/memfd.h>
-#endif
-
#include "Syscalls.h"
-#if !defined(MFD_ALLOW_SEALING) && HAVE(LINUX_MEMFD_H)
+#if !defined(MFD_ALLOW_SEALING)
// These defines were added in glibc 2.27, the same release that added memfd_create.
// But the kernel added all of this in Linux 3.17. So it's totally safe for us to
// depend on, as long as we define it all ourselves. Remove this once we depend on
// glibc 2.27.
+//
+// P.S. linux/memfd.h defines MFD_ALLOW_SEALING, so must not be included prior
+// to this point.
+
+#include <linux/memfd.h>
#define F_ADD_SEALS 1033
#define F_GET_SEALS 1034
@@ -65,7 +66,7 @@ static int memfd_create(const char* name
{
return syscall(__NR_memfd_create, name, flags);
}
-#endif // #if !defined(MFD_ALLOW_SEALING) && HAVE(LINUX_MEMFD_H)
+#endif // #if !defined(MFD_ALLOW_SEALING)
#if PLATFORM(GTK)
#define BASE_DIRECTORY "webkitgtk"