summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Shachnev <mitya57@gmail.com>2017-09-16 11:52:49 +0300
committerDmitry Shachnev <mitya57@gmail.com>2017-09-16 11:52:49 +0300
commitdc3470d23fc43399164547c1cd2e86e0dba23540 (patch)
tree9dd448aaec7fa7a650dbd4444a6d52541bba64cd
parentbb3c1b4cd674400d63df7045af547e06e7a8252d (diff)
downloadqt5webkit-dc3470d23fc43399164547c1cd2e86e0dba23540.tar.gz
Backport upstream patch to add libatomic detection, fixes armel build.
-rw-r--r--debian/changelog1
-rw-r--r--debian/patches/atomic_config_test.diff52
-rw-r--r--debian/patches/series1
3 files changed, 54 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 262ccb4..d0eaf89 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,7 @@ qtwebkit-opensource-src (5.212.0~alpha2-2) UNRELEASED; urgency=medium
* Add -DNDEBUG to CPPFLAGS to disable debug output.
* Use -g1 on less powerful architectures instead of no debug at all.
* Disable JIT on sh4, it is broken and support was removed upstream.
+ * Backport upstream patch to add libatomic detection, fixes armel build.
-- Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Wed, 13 Sep 2017 18:44:14 +0300
diff --git a/debian/patches/atomic_config_test.diff b/debian/patches/atomic_config_test.diff
new file mode 100644
index 0000000..247c254
--- /dev/null
+++ b/debian/patches/atomic_config_test.diff
@@ -0,0 +1,52 @@
+Description: improve configuration tests for librt and libatomic
+Origin: upstream, https://github.com/annulen/webkit/commit/250709411c49550a
+Last-Update: 2017-09-16
+
+--- a/Source/WebKit2/CMakeLists.txt
++++ b/Source/WebKit2/CMakeLists.txt
+@@ -1,3 +1,6 @@
++include(CheckCXXSourceCompiles)
++include(CheckFunctionExists)
++
+ set(WebKit2_INCLUDE_DIRECTORIES
+ "${JAVASCRIPTCORE_DIR}/llint"
+ "${WEBKIT2_DIR}"
+@@ -740,11 +743,33 @@
+ WebKit2
+ )
+
+-# librt is needed for shm_open on Linux.
+-find_library(LIBRT_LIBRARIES NAMES rt)
+-mark_as_advanced(LIBRT_LIBRARIES)
+-if (LIBRT_LIBRARIES)
+- list(APPEND WebKit2_LIBRARIES ${LIBRT_LIBRARIES})
++if (COMPILER_IS_GCC_OR_CLANG)
++ set(ATOMIC_TEST_SOURCE
++ "
++ #include <atomic>
++ int main() { std::atomic<int64_t> i(0); i++; return 0; }
++ "
++ )
++ check_cxx_source_compiles("${ATOMIC_TEST_SOURCE}" ATOMIC_INT64_IS_BUILTIN)
++ if (NOT ATOMIC_INT64_IS_BUILTIN)
++ set(CMAKE_REQUIRED_LIBRARIES atomic)
++ check_cxx_source_compiles("${ATOMIC_TEST_SOURCE}" ATOMIC_INT64_REQUIRES_LIBATOMIC)
++ if (ATOMIC_INT64_REQUIRES_LIBATOMIC)
++ list(APPEND WebKit2_LIBRARIES atomic)
++ endif ()
++ unset(CMAKE_REQUIRED_LIBRARIES)
++ endif ()
++endif ()
++
++if (UNIX)
++ check_function_exists(shm_open SHM_OPEN_EXISTS)
++ if (NOT SHM_OPEN_EXISTS)
++ set(CMAKE_REQUIRED_LIBRARIES rt)
++ check_function_exists(shm_open SHM_OPEN_REQUIRES_LIBRT)
++ if (SHM_OPEN_REQUIRES_LIBRT)
++ list(APPEND WebKit2_LIBRARIES rt)
++ endif ()
++ endif ()
+ endif ()
+
+ macro(ADD_WEBKIT2_PREFIX_HEADER _target)
diff --git a/debian/patches/series b/debian/patches/series
index 95ce338..86aaaa8 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
reduce_exports.diff
detect_opengl_es2.diff
+atomic_config_test.diff