From 9c05b5e1007681f8a1d15a6194f84051e7569d04 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Fri, 18 Feb 2022 10:05:33 +0100 Subject: [PATCH] package/pulseview: fix build with glibmm 2.68 Fixes: - http://autobuild.buildroot.org/results/ebb73892fd7471de4f0c109554dfdc65b93d3dcf Signed-off-by: Fabrice Fontaine Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- .../pulseview/0003-Support-glibmm-2.68.patch | 89 +++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 package/pulseview/0003-Support-glibmm-2.68.patch diff --git a/package/pulseview/0003-Support-glibmm-2.68.patch b/package/pulseview/0003-Support-glibmm-2.68.patch new file mode 100644 index 0000000000..00e4e696d9 --- /dev/null +++ b/package/pulseview/0003-Support-glibmm-2.68.patch @@ -0,0 +1,89 @@ +From a97d5a060a534a3c658578e7f14ab43556db93ca Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 30 Dec 2021 16:19:46 +0100 +Subject: [PATCH] Support glibmm 2.68 + +Support glibmm 2.68 which has been released one year ago and is the +first stable release in the glibmm-2.68 ABI series: +https://gitlab.gnome.org/GNOME/glibmm/-/blob/2.68.2/NEWS + +C++17 support is mandatory with glibmm 2.68 + +Signed-off-by: Fabrice Fontaine +[Upstream status: not sent yet] +--- + CMakeLists.txt | 23 +++++++++++++++++++---- + INSTALL | 2 +- + 2 files changed, 20 insertions(+), 5 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7791b1b1..58a9cf92 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -75,7 +75,14 @@ add_subdirectory(manual) + #------------------------------------------------------------------------------- + + list(APPEND PKGDEPS glib-2.0>=2.28.0) +-list(APPEND PKGDEPS glibmm-2.4>=2.28.0) ++ ++set(LIBSR_GLIBMM "glibmm-2.4>=2.28.0") ++find_package(PkgConfig) ++pkg_check_modules(LIBSRGLIBMM24 ${LIBSR_GLIBMM}) ++if(NOT LIBSRGLIBMM24_FOUND) ++ set(LIBSR_GLIBMM "glibmm-2.68>=2.68.0") ++endif() ++list(APPEND PKGDEPS ${LIBSR_GLIBMM}) + + if(ENABLE_FLOW) + list(APPEND PKGDEPS gstreamermm-1.0>=1.8.0) +@@ -93,7 +100,6 @@ if(ANDROID) + list(APPEND PKGDEPS libsigrokandroidutils>=0.1.0) + endif() + +-find_package(PkgConfig) + pkg_check_modules(LIBSRCXX ${LIBSR_CXX_BINDING}) + if(NOT LIBSRCXX_FOUND OR NOT LIBSRCXX_VERSION) + message(FATAL_ERROR "libsigrok C++ bindings missing, check libsigrok's 'configure' output (missing dependencies?)") +@@ -225,7 +231,11 @@ memaccess_check_unaligned_le(HAVE_UNALIGNED_LITTLE_ENDIAN_ACCESS) + set(PV_TITLE PulseView) + set(PV_VERSION_STRING "0.5.0") + +-set(PV_GLIBMM_VERSION ${PKGDEPS_glibmm-2.4_VERSION}) ++if(LIBSRGLIBMM24_FOUND) ++ set(PV_GLIBMM_VERSION ${PKGDEPS_glibmm-2.4_VERSION}) ++else() ++ set(PV_GLIBMM_VERSION ${PKGDEPS_glibmm-2.68_VERSION}) ++endif() + + include(GetGitRevisionDescription) + +@@ -486,7 +496,12 @@ qt5_add_resources(pulseview_RESOURCES_RCC ${CMAKE_BINARY_DIR}/translations.qrc) + add_definitions(-DQT_NO_KEYWORDS) + add_definitions(-D__STDC_LIMIT_MACROS) + add_definitions(-Wall -Wextra) +-add_definitions(-std=c++11) ++if(LIBSRGLIBMM24_FOUND) ++ add_definitions(-std=c++11) ++else() ++ # glibmm-2.68 reuires c++17 ++ add_definitions(-std=c++17) ++endif() + add_definitions(-DBOOST_MATH_DISABLE_FLOAT128=1) + if(WIN32) + add_definitions(-Wa,-mbig-obj -O3) +diff --git a/INSTALL b/INSTALL +index da89be8d..8003fcfb 100644 +--- a/INSTALL ++++ b/INSTALL +@@ -14,7 +14,7 @@ Requirements + - pkg-config >= 0.22 + - cmake >= 2.8.12 + - libglib >= 2.28.0 +- - glibmm-2.4 (>= 2.28.0) ++ - glibmm-2.4 (>= 2.28.0) or glibmm-2.68 (>= 2.68.0) + - Qt5 (>= 5.3), including the following components: + - Qt5Core, Qt5Gui, Qt5Widgets, Qt5Svg, Qt5LinguistTools + - Qt translation package (optional; needed at runtime, not build time) +-- +2.34.1 +