upgrade to version 5.9.31

(cherry picked from commit 916d9fb71205a56d9c6de98ffa8772821c8a75ff)
This commit is contained in:
leeffo 2023-07-24 17:48:05 +08:00 committed by openeuler-sync-bot
parent 3df8ef7a4b
commit 1127950f67
7 changed files with 222 additions and 54 deletions

View File

@ -1,17 +1,45 @@
From 388df3fe9ed94a5c3aad00a15e9f1447ffac4139 Mon Sep 17 00:00:00 2001
From: leeffo <leeffo@yeah.net>
Date: Fri, 11 Nov 2022 14:50:33 +0800
Subject: [PATCH] procps-ng update 4.0.0
From dcef19e4e0a1185e5b88fc039fde7f1f4d9c03c0 Mon Sep 17 00:00:00 2001
From: leeffo <liweiganga@uniontech.com>
Date: Mon, 24 Jul 2023 18:15:15 +0800
Subject: [PATCH 1/2] procps-ng update 4.0.0
---
src/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
deepin-system-monitor-main/CMakeLists.txt | 2 +-
deepin-system-monitor-plugin-popup/CMakeLists.txt | 2 +-
tests/CMakeLists.txt | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3a09f02..42e55fb 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -27,7 +27,7 @@ find_package(DtkCore REQUIRED)
diff --git a/deepin-system-monitor-main/CMakeLists.txt b/deepin-system-monitor-main/CMakeLists.txt
index 07d25ec..035dad5 100644
--- a/deepin-system-monitor-main/CMakeLists.txt
+++ b/deepin-system-monitor-main/CMakeLists.txt
@@ -52,7 +52,7 @@ find_package(DtkCore REQUIRED)
find_package(DtkGui REQUIRED)
find_package(DtkWidget REQUIRED)
find_library(LIB_PCAP NAMES pcap REQUIRED)
-find_library(LIB_PROCPS NAMES procps REQUIRED)
+find_library(LIB_PROCPS NAMES proc2 REQUIRED)
find_library(LIB_XCB NAMES xcb REQUIRED)
find_library(LIB_XEXT NAMES Xext REQUIRED)
find_library(LIB_ICCCM NAMES xcb-icccm REQUIRED)
diff --git a/deepin-system-monitor-plugin-popup/CMakeLists.txt b/deepin-system-monitor-plugin-popup/CMakeLists.txt
index 45d29e8..c430c98 100644
--- a/deepin-system-monitor-plugin-popup/CMakeLists.txt
+++ b/deepin-system-monitor-plugin-popup/CMakeLists.txt
@@ -43,7 +43,7 @@ find_package(DtkCore REQUIRED)
find_package(DtkGui REQUIRED)
find_package(DtkWidget REQUIRED)
find_package(Qt5Svg REQUIRED)
-find_library(LIB_PROPS NAMES procps REQUIRED)
+find_library(LIB_PROPS NAMES proc2 REQUIRED)
find_library(LIB_XCB NAMES xcb REQUIRED)
find_library(LIB_XEXT NAMES Xext REQUIRED)
find_library(LIB_ICCCM NAMES xcb-icccm REQUIRED)
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 9469596..fc92bf3 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -70,7 +70,7 @@ find_package(DtkCore REQUIRED)
find_package(DtkGui REQUIRED)
find_package(DtkWidget REQUIRED)
find_library(LIB_PCAP NAMES pcap REQUIRED)

View File

@ -0,0 +1,28 @@
From f977aeddbf2283a856bf5bb738f3e119bc0fe087 Mon Sep 17 00:00:00 2001
From: leeffo <liweiganga@uniontech.com>
Date: Mon, 24 Jul 2023 18:15:35 +0800
Subject: [PATCH 2/2] Remove all symbol table and relocation information from
the executable
---
CMakeLists.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f9f71cd..16330d1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,8 +22,8 @@ else()
# -Wl, -O2 Enable linker optimizations
# -Wl, --gc-sections Remove unused code resulting from -fdsta-sections and
# -ffunction-sections
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -O2 -Wl,--gc-sections")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O2 -Wl,--gc-sections")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -O2 -Wl,--gc-sections -s ")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O2 -Wl,--gc-sections -s")
endif()
#是否开启Wayland编译
--
2.20.1

View File

@ -1,27 +0,0 @@
From a7ac8a08dcd29e6fc2128b82af588571c994c351 Mon Sep 17 00:00:00 2001
From: leeffo <leeffo@yeah.net>
Date: Wed, 15 Mar 2023 13:19:35 +0800
Subject: [PATCH] feat: fix strip
---
src/CMakeLists.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 4942abb..5df6473 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -3,8 +3,8 @@ set(CMAKE_CXX_STANDARD_REQUIRED True)
set(APP_NAME ${CMAKE_PROJECT_NAME})
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall ")
-set(CMAKE_CXX_FLAGS "-Wl,--as-need -fPIE")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -s ")
+set(CMAKE_CXX_FLAGS "-Wl,--as-need -fPIE -s ")
set(CMAKE_EXE_LINKER_FLAGS "-pie")
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "sw_64")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mieee")
--
2.20.1

View File

@ -0,0 +1,121 @@
From 982cf2a7b7a60843f17b103ecafa150dd4f557da Mon Sep 17 00:00:00 2001
From: leeffo <liweiganga@uniontech.com>
Date: Tue, 25 Jul 2023 11:33:00 +0800
Subject: [PATCH] feat: add build option to disable wayland support
---
.../gui/xwin_kill_preview_widget.cpp | 26 +++++++++++++++----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp b/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp
index 077aa1e..26ec724 100644
--- a/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp
+++ b/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp
@@ -37,12 +37,14 @@ XWinKillPreviewWidget::XWinKillPreviewWidget(QWidget *parent) : QWidget(parent)
{
// new window manager instance
m_wminfo = new WMInfo();
-//不再使用CMakeList开关宏的方式改用全局变量运行时控制
-//WaylandCentered定义在common/common.h中在main函数开头进行初始化判断
+// 如果在编译时选择支持Wayland运行时会由全局变量WaylandCentered控制
+// WaylandCentered定义在common/common.h中在main函数开头进行初始化判断
+#ifdef USE_DEEPIN_WAYLAND
if (WaylandCentered) {
m_connectionThread = new QThread(this);
m_connectionThreadObject = new ConnectionThread();
}
+#endif // USE_DEEPIN_WAYLAND
// init ui components & connections
initUI();
@@ -66,11 +68,13 @@ XWinKillPreviewWidget::~XWinKillPreviewWidget()
releaseMouse();
releaseKeyboard();
delete m_wminfo;
+#ifdef USE_DEEPIN_WAYLAND
if (WaylandCentered) {
m_connectionThread->quit();
m_connectionThread->wait();
m_connectionThreadObject->deleteLater();
}
+#endif // USE_DEEPIN_WAYLAND
}
// mouse press event
@@ -82,6 +86,7 @@ void XWinKillPreviewWidget::mousePressEvent(QMouseEvent *event)
}
// get the list of windows under cursor in stacked order when mouse pressed
auto pos = QCursor::pos();
+#ifdef USE_DEEPIN_WAYLAND
if (WaylandCentered) {
double ratio = QGuiApplication::primaryScreen()->devicePixelRatio(); // 获得当前的缩放比例
QRect screenRect;
@@ -119,7 +124,9 @@ void XWinKillPreviewWidget::mousePressEvent(QMouseEvent *event)
break;
}
}
- } else {
+ }
+#endif // USE_DEEPIN_WAYLAND
+ if (!WaylandCentered) {
double ratio = QGuiApplication::primaryScreen()->devicePixelRatio(); // 获得当前的缩放比例
QRect screenRect;
for (auto screen : QApplication::screens()) {
@@ -165,6 +172,7 @@ void XWinKillPreviewWidget::mousePressEvent(QMouseEvent *event)
// mouse move event handler
void XWinKillPreviewWidget::mouseMoveEvent(QMouseEvent *)
{
+#ifdef USE_DEEPIN_WAYLAND
if (WaylandCentered) {
double ratio = QGuiApplication::primaryScreen()->devicePixelRatio(); // 获得当前的缩放比例
auto pos = QCursor::pos();
@@ -236,7 +244,9 @@ void XWinKillPreviewWidget::mouseMoveEvent(QMouseEvent *)
bg->clearSelection();
emit cursorUpdated(m_defaultCursor);
}
- } else {
+ }
+#endif // USE_DEEPIN_WAYLAND
+ if (!WaylandCentered) {
double ratio = QGuiApplication::primaryScreen()->devicePixelRatio(); // 获得当前的缩放比例
auto pos = QCursor::pos();
QRect screenRect;
@@ -351,9 +361,10 @@ void XWinKillPreviewWidget::initUI()
// snapshot current scree
auto pixmap = screen->grabWindow(m_wminfo->getRootWindow());
+#ifdef USE_DEEPIN_WAYLAND
if (WaylandCentered)
pixmap = screen->grabWindow(m_windowStates.end()->windowId);
-
+#endif // USE_DEEPIN_WAYLAND
pixmap = pixmap.copy(geom.x(), geom.y(), static_cast<int>(geom.width() * devicePixelRatioF()), static_cast<int>(geom.height() * devicePixelRatioF()));
// create preview background widget for each screen
auto *background = new XWinKillPreviewBackgroundWidget(pixmap, this);
@@ -378,6 +389,7 @@ void XWinKillPreviewWidget::initUI()
// wayland协议下建立连接
void XWinKillPreviewWidget::initConnections()
{
+#ifdef USE_DEEPIN_WAYLAND
if (WaylandCentered) {
connect(m_connectionThreadObject, &ConnectionThread::connected, this,
[this] {
@@ -394,7 +406,10 @@ void XWinKillPreviewWidget::initConnections()
m_connectionThreadObject->initConnection();
}
+#endif // USE_DEEPIN_WAYLAND
}
+
+#ifdef USE_DEEPIN_WAYLAND
//打印当前窗口信息接口
void XWinKillPreviewWidget::print_window_states(const QVector<ClientManagement::WindowState> &m_windowStates)
{
@@ -447,3 +462,4 @@ void XWinKillPreviewWidget::setupRegistry(Registry *registry)
}
}
+#endif // USE_DEEPIN_WAYLAND
--
2.20.1

Binary file not shown.

Binary file not shown.

View File

@ -8,16 +8,16 @@
%endif
Name: deepin-system-monitor
Version: 5.8.28
Version: 5.9.31
Release: %{specrelease}
Summary: A more user-friendly system monitor
License: GPLv3
URL: https://github.com/linuxdeepin/deepin-system-monitor
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
Source0: %{name}-%{version}.tar.gz
Patch0: 0001-procps-ng-update-4.0.0.patch
Patch1: 0002-feat-fix-strip.patch
#Patch2: 0003-Fix-incomplete-display-of-the-system-monitor-when-th.patch
Patch1: 0002-Remove-all-symbol-table-and-relocation-information-f.patch
Patch2: 0003-feat-add-build-option-to-disable-wayland-support.patch
BuildRequires: qt5-devel
BuildRequires: cmake
@ -25,7 +25,6 @@ BuildRequires: cmake
BuildRequires: dtkwidget-devel
BuildRequires: dtkcore-devel
BuildRequires: pkgconfig(dtkgui)
# BuildRequires: pkgconfig(dtkwm)
BuildRequires: procps-ng-devel
BuildRequires: pkgconfig(xcb)
@ -47,12 +46,16 @@ BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib
BuildRequires: deepin-gettext-tools
BuildRequires: qt5-qtbase-private-devel
# BuildRequires: dtkwm-devel
# BuildRequires: qt5-qtmultimedia-devel
# BuildRequires: dtkcore-devel >= 5.1
BuildRequires: libicu-devel
BuildRequires: libnl3-devel
BuildRequires: systemd-devel
BuildRequires: dde-qt-dbus-factory-devel
BuildRequires: gsettings-qt-devel
BuildRequires: kf5-kwayland-devel
BuildRequires: dde-dock-devel
BuildRequires: wayland-devel
# BuildRequires: pkgconfig(libnl-route-3)
#Requires: hicolor-icon-theme
Recommends: deepin-manual
@ -62,21 +65,23 @@ Recommends: deepin-manual
%prep
%autosetup -p1
# %setup -q
####sed -i 's|lrelease|lrelease-qt5|' translations/translate_generation.sh
# %patch0 -p1
sed -i 's:/usr/lib/:%{_libdir}/:' deepin-system-monitor-plugin/CMakeLists.txt
sed -i 's:/usr/lib/x86_64-linux-gnu/qt5/bin/:%{_qt5_bindir}/:' \
deepin-system-monitor-daemon/translations/translate_generation.sh \
deepin-system-monitor-plugin/translations/translate_generation.sh
%build
export PATH=%{_qt5_bindir}:$PATH
sed -i "s|^cmake_minimum_required.*|cmake_minimum_required(VERSION 3.0)|" $(find . -name "CMakeLists.txt")
mkdir build && pushd build
%cmake -DCMAKE_BUILD_TYPE=Release ../ -DAPP_VERSION=%{version} -DVERSION=%{version}
%make_build
popd
%cmake \
-DCMAKE_BUILD_TYPE=Release \
-DUSE_DEEPIN_WAYLAND=OFF
%make_build
%install
%make_install -C build INSTALL_ROOT="%buildroot"
%make_install INSTALL_ROOT="%buildroot"
# %check
# desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop ||:
@ -101,12 +106,25 @@ fi
%caps(cap_kill,cap_net_raw,cap_dac_read_search,cap_sys_ptrace=+ep) %{_bindir}/%{name}
%{_bindir}/%{name}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
#%%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
%{_datadir}/%{name}/translations/*.qm
%{_datadir}/polkit-1/actions/com.deepin.pkexec.deepin-system-monitor.policy
%{_datadir}/deepin-manual/manual-assets/application/deepin-system-monitor/system-monitor/*
%{_datadir}/glib-2.0/schemas/
%{_libdir}/dde-dock/plugins/libdeepin-system-monitor-plugin.so
%{_datadir}/%{name}-plugin/
%{_bindir}/%{name}-plugin-popup
%{_datadir}/dbus-1/services/
%{_datadir}/%{name}-plugin-popup/
%{_bindir}/%{name}-daemon
%{_sysconfdir}/xdg/autostart
%{_datadir}/%{name}-daemon/
%changelog
* Mon Jul 24 2023 leeffo <liweiganga@uniontech.com> - 5.9.31-1
- upgrade to version 5.9.31
* Mon Apr 10 2023 liweiganga <liweiganga@uniontech.com> - 5.8.28-1
- update: update to 5.8.28