diff options
author | Jesper Schmitz Mouridsen <jsm@FreeBSD.org> | 2021-05-08 16:31:51 +0000 |
---|---|---|
committer | Jesper Schmitz Mouridsen <jsm@FreeBSD.org> | 2021-05-08 16:52:00 +0000 |
commit | 8f82c71ac6b55717709d88c2cdf44419b6394aae (patch) | |
tree | 4c0b1cc75064c37f6e0c36b5d20a3a94e1746aa5 /x11-wm/lxqt-session | |
parent | bee2bf6feed6be2c3ebe117618a63ece64d9e6d7 (diff) | |
download | ports-8f82c71ac6b55717709d88c2cdf44419b6394aae.tar.gz ports-8f82c71ac6b55717709d88c2cdf44419b6394aae.zip |
Diffstat (limited to 'x11-wm/lxqt-session')
-rw-r--r-- | x11-wm/lxqt-session/Makefile | 2 | ||||
-rw-r--r-- | x11-wm/lxqt-session/distinfo | 6 | ||||
-rw-r--r-- | x11-wm/lxqt-session/files/patch-lxqt-session_CMakeLists.txt | 13 | ||||
-rw-r--r-- | x11-wm/lxqt-session/files/patch-lxqt-session_src_procreaper.cpp | 73 | ||||
-rw-r--r-- | x11-wm/lxqt-session/pkg-plist | 9 |
5 files changed, 97 insertions, 6 deletions
diff --git a/x11-wm/lxqt-session/Makefile b/x11-wm/lxqt-session/Makefile index 3e0a1b6495a2..4be1879679a5 100644 --- a/x11-wm/lxqt-session/Makefile +++ b/x11-wm/lxqt-session/Makefile @@ -1,7 +1,7 @@ # Created by: Olivier Duchateau PORTNAME= lxqt-session -PORTVERSION= 0.16.0 +PORTVERSION= 0.17.1 CATEGORIES= x11-wm MASTER_SITES= LXQT diff --git a/x11-wm/lxqt-session/distinfo b/x11-wm/lxqt-session/distinfo index 1bfa52db8cac..186fddb236c9 100644 --- a/x11-wm/lxqt-session/distinfo +++ b/x11-wm/lxqt-session/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1605365870 -SHA256 (lxqt/lxqt-session-0.16.0.tar.xz) = 547e01e173921357245fb938718bd2401b38e73245cdcbecf195130e856d4959 -SIZE (lxqt/lxqt-session-0.16.0.tar.xz) = 180084 +TIMESTAMP = 1618785099 +SHA256 (lxqt/lxqt-session-0.17.1.tar.xz) = d9058ceedb355a43ea2ef070292fc30b0fb740640cf0b579131aaefbac779c47 +SIZE (lxqt/lxqt-session-0.17.1.tar.xz) = 178976 diff --git a/x11-wm/lxqt-session/files/patch-lxqt-session_CMakeLists.txt b/x11-wm/lxqt-session/files/patch-lxqt-session_CMakeLists.txt new file mode 100644 index 000000000000..8e559e29049c --- /dev/null +++ b/x11-wm/lxqt-session/files/patch-lxqt-session_CMakeLists.txt @@ -0,0 +1,13 @@ +--- lxqt-session/CMakeLists.txt.orig 2021-04-16 16:36:14 UTC ++++ lxqt-session/CMakeLists.txt +@@ -71,6 +71,10 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Linux") + target_link_libraries(lxqt-session + ${PROCPS_LIBRARIES} + ) ++elseif (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") ++ target_link_libraries(lxqt-session ++ -lutil ++ ) + endif() + + if (WITH_LIBUDEV) diff --git a/x11-wm/lxqt-session/files/patch-lxqt-session_src_procreaper.cpp b/x11-wm/lxqt-session/files/patch-lxqt-session_src_procreaper.cpp new file mode 100644 index 000000000000..ed12c507f10f --- /dev/null +++ b/x11-wm/lxqt-session/files/patch-lxqt-session_src_procreaper.cpp @@ -0,0 +1,73 @@ +--- lxqt-session/src/procreaper.cpp.orig 2021-04-16 16:36:14 UTC ++++ lxqt-session/src/procreaper.cpp +@@ -30,7 +30,13 @@ + #if defined(Q_OS_LINUX) + #include <sys/prctl.h> + #include <proc/readproc.h> ++#elif defined(Q_OS_FREEBSD) ++#include <sys/procctl.h> ++#include <libutil.h> ++#include <sys/user.h> ++#include <signal.h> + #endif ++#include <unistd.h> + #include <cstring> + #include <cerrno> + #include <sys/wait.h> +@@ -42,6 +48,10 @@ ProcReaper::ProcReaper() + int result = prctl(PR_SET_CHILD_SUBREAPER, 1); + if (result != 0) + qCWarning(SESSION) << "Unable to to set PR_SET_CHILD_SUBREAPER, " << result << " - " << strerror(errno); ++#elif defined(Q_OS_FREEBSD) ++ int result = procctl(P_PID, ::getpid(), PROC_REAP_ACQUIRE, nullptr); ++ if (result != 0) ++ qCWarning(SESSION) << "Unable to to set PROC_REAP_ACQUIRE, " << result << " - " << strerror(errno); + #endif + } + +@@ -92,20 +102,41 @@ void ProcReaper::stop(const std::set<int64_t> & exclud + return; + } + // send term to all children +-#if defined(Q_OS_LINUX) + const pid_t my_pid = ::getpid(); ++ std::vector<pid_t> children; ++#if defined(Q_OS_LINUX) + PROCTAB * proc_dir = ::openproc(PROC_FILLSTAT); + while (proc_t * proc = ::readproc(proc_dir, nullptr)) + { +- if (proc->ppid == my_pid && excludedPids.count(proc->ppid) == 0) ++ if (proc->ppid == my_pid) + { +- qCDebug(SESSION) << "Seding TERM to child " << proc->tgid; +- ::kill(proc->tgid, SIGTERM); ++ children.push_back(proc->tgid); + } + ::freeproc(proc); + } + ::closeproc(proc_dir); ++#elif defined(Q_OS_FREEBSD) ++ int cnt = 0; ++ if (kinfo_proc *proc_info = kinfo_getallproc(&cnt)) ++ { ++ for (int i = 0; i < cnt; ++i) ++ { ++ if (proc_info[i].ki_ppid == my_pid) ++ { ++ children.push_back(proc_info[i].ki_pid); ++ } ++ } ++ free(proc_info); ++ } + #endif ++ for (auto const & child : children) ++ { ++ if (excludedPids.count(child) == 0) ++ { ++ qCDebug(SESSION) << "Seding TERM to child " << child; ++ ::kill(child, SIGTERM); ++ } ++ } + mWait.wakeAll(); + { + QMutexLocker guard{&mMutex}; diff --git a/x11-wm/lxqt-session/pkg-plist b/x11-wm/lxqt-session/pkg-plist index 3bd1add4a48b..ba6af4a330f8 100644 --- a/x11-wm/lxqt-session/pkg-plist +++ b/x11-wm/lxqt-session/pkg-plist @@ -3,7 +3,6 @@ bin/lxqt-leave bin/lxqt-session bin/startlxqt etc/xdg/autostart/lxqt-xscreensaver-autostart.desktop -etc/xdg/openbox/lxqt-rc.xml share/applications/lxqt-config-session.desktop share/applications/lxqt-hibernate.desktop share/applications/lxqt-leave.desktop @@ -18,6 +17,7 @@ share/kdm/sessions/lxqt.desktop %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_ar.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_arn.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_ast.qm +%%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_bg.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_ca.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_cs.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_cy.qm @@ -43,11 +43,13 @@ share/kdm/sessions/lxqt.desktop %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_lt.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_nb_NO.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_nl.qm +%%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_oc.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_pl.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_pt.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_pt_BR.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_ro_RO.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_ru.qm +%%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_si.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_sk_SK.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_sl.qm %%LXQT_TRANSLATIONS%%/lxqt-config-session/lxqt-config-session_sr@latin.qm @@ -60,6 +62,7 @@ share/kdm/sessions/lxqt.desktop %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_ar.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_arn.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_ast.qm +%%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_bg.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_ca.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_cs.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_cy.qm @@ -83,8 +86,8 @@ share/kdm/sessions/lxqt.desktop %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_pl.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_pt.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_pt_BR.qm -%%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_pt_PT.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_ru.qm +%%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_si.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_sl.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_tr.qm %%LXQT_TRANSLATIONS%%/lxqt-leave/lxqt-leave_uk.qm @@ -93,6 +96,7 @@ share/kdm/sessions/lxqt.desktop %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_ar.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_arn.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_ast.qm +%%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_bg.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_ca.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_cs.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_cy.qm @@ -124,6 +128,7 @@ share/kdm/sessions/lxqt.desktop %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_pt_BR.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_ro_RO.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_ru.qm +%%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_si.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_sk_SK.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_sl.qm %%LXQT_TRANSLATIONS%%/lxqt-session/lxqt-session_sr@latin.qm |