[arch-commits] Commit in bluegriffon/trunk (PKGBUILD bug_1533969_glibc230.patch)

Balló György bgyorgy at archlinux.org
Fri Oct 11 19:17:21 UTC 2019


    Date: Friday, October 11, 2019 @ 19:17:21
  Author: bgyorgy
Revision: 515096

upgpkg: bluegriffon 3.1-8

Fix build with glibc 2.30

Added:
  bluegriffon/trunk/bug_1533969_glibc230.patch
Modified:
  bluegriffon/trunk/PKGBUILD

----------------------------+
 PKGBUILD                   |    7 ++++
 bug_1533969_glibc230.patch |   61 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+), 1 deletion(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2019-10-11 19:17:12 UTC (rev 515095)
+++ PKGBUILD	2019-10-11 19:17:21 UTC (rev 515096)
@@ -5,7 +5,7 @@
 pkgname=(bluegriffon)
 pkgver=3.1
 _gecko_dev_revision=042b84a # see config/gecko_dev_revision.txt
-pkgrel=7
+pkgrel=8
 pkgdesc="The next-generation Web Editor based on the rendering engine of Firefox"
 arch=('x86_64')
 url="http://bluegriffon.org/"
@@ -21,6 +21,7 @@
         "bug_1384062_systemresourcemonitor.patch"::"https://hg.mozilla.org/mozilla-central/raw-rev/8d9ae8c45dd0"
         "bug_1427455-unused-variables.patch"::"https://hg.mozilla.org/mozilla-central/raw-rev/8e28a66b548b"
         "bug_445128_install-dir.patch"::"https://hg.mozilla.org/mozilla-central/raw-rev/8f74ddd39f61"
+        "bug_1533969_glibc230.patch"
         "no-crmf.diff"
         "rust-explitcit-dyn.patch")
 sha256sums=('4fb9b29f00ff4e94e78994308ffa52bce818978009e0d8229203d6ac4210b0f4'
@@ -31,6 +32,7 @@
             '7760ebe71f4057cbd2f52b715abaf0d944c14c39e2bb2a5322114ad8451e12d9'
             '806cbe936720676ea8d82c5f2bb880ca632181b07b0cf24a47c064a3485b7c7f'
             '18fbcfda13dd7d30d3c1310da15a133f90bf9ce6b7cfa15de833928e7d9efe95'
+            '35bd21633bfe1005ccb643d6863e5da32b1281594f92bdcbd2ed36ef3fc43dfd'
             '02000d185e647aa20ca336e595b4004bb29cdae9d8f317f90078bdcc7a36e873'
             '76d54fe6f5a5a50065b1d23f6a6bc4b057d4944bfab5d8ee3bb7faef4e30c334')
 
@@ -58,6 +60,9 @@
   # https://bugs.archlinux.org/task/63861
   patch -Np1 -i ../rust-explitcit-dyn.patch
 
+  # https://bugzilla.mozilla.org/show_bug.cgi?id=1533969
+  patch -Np1 -i ../bug_1533969_glibc230.patch
+
   # Move files to their correct location
   cp -r "${srcdir}/${pkgbase}-${pkgver}" bluegriffon
   cp "${srcdir}/mozconfig" .mozconfig

Added: bug_1533969_glibc230.patch
===================================================================
--- bug_1533969_glibc230.patch	                        (rev 0)
+++ bug_1533969_glibc230.patch	2019-10-11 19:17:21 UTC (rev 515096)
@@ -0,0 +1,61 @@
+
+# HG changeset patch
+# User Emilio Cobos Álvarez <emilio at crisal.io>
+# Date 1552332517 0
+# Node ID 7b85bf9c5210e5679fa6cfad92466a6e2ba30232
+# Parent  96e78962a05388c638385c2bad0cc772b7295291
+Bug 1533969 - Fix build error with newer glibc. r=nbp
+
+New glibc versions provide a wrapper for gettid, which means that our stuff
+fails to build with:
+
+```
+/home/emilio/src/moz/gecko/js/src/util/NativeStack.cpp:28:14: error: static declaration of 'gettid' follows non-static declaration
+static pid_t gettid() { return syscall(__NR_gettid); }
+             ^
+/usr/include/bits/unistd_ext.h:34:16: note: previous declaration is here
+extern __pid_t gettid (void) __THROW;
+```
+
+Differential Revision: https://phabricator.services.mozilla.com/D22829
+
+diff --git a/tools/profiler/core/platform.h b/tools/profiler/core/platform.h
+--- a/tools/profiler/core/platform.h
++++ b/tools/profiler/core/platform.h
+@@ -34,32 +34,26 @@
+ #include "mozilla/StaticMutex.h"
+ #include "mozilla/TimeStamp.h"
+ #include "mozilla/UniquePtr.h"
+ #include "mozilla/Unused.h"
+ #include "PlatformMacros.h"
+ #include <vector>
+ #include "StackTop.h"
+ 
+-// We need a definition of gettid(), but glibc doesn't provide a
++// We need a definition of gettid(), but old glibc versions don't provide a
+ // wrapper for it.
+ #if defined(__GLIBC__)
+ #include <unistd.h>
+ #include <sys/syscall.h>
+-static inline pid_t gettid()
+-{
+-  return (pid_t) syscall(SYS_gettid);
+-}
++#  define gettid() static_cast<pid_t>(syscall(SYS_gettid))
+ #elif defined(GP_OS_darwin)
+ #include <unistd.h>
+ #include <sys/syscall.h>
+-static inline pid_t gettid()
+-{
+-  return (pid_t) syscall(SYS_thread_selfid);
+-}
++#  define gettid() static_cast<pid_t>(syscall(SYS_thread_selfid))
+ #elif defined(GP_OS_android)
+ #include <unistd.h>
+ #elif defined(GP_OS_windows)
+ #include <windows.h>
+ #include <process.h>
+ #ifndef getpid
+ #define getpid _getpid
+ #endif
+



More information about the arch-commits mailing list