mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-01-06 02:17:34 -08:00
app-misc/ckb: fix ODR build failure
Closes: https://bugs.gentoo.org/924410 Signed-off-by: John Helmert III <ajak@gentoo.org>
This commit is contained in:
parent
3a27b73944
commit
6fed1bde14
77
app-misc/ckb/ckb-0.6.0-r2.ebuild
Normal file
77
app-misc/ckb/ckb-0.6.0-r2.ebuild
Normal file
@ -0,0 +1,77 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake udev xdg
|
||||
|
||||
DESCRIPTION="Corsair K65/K70/K95 Driver"
|
||||
HOMEPAGE="https://github.com/ckb-next/ckb-next"
|
||||
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/ckb-next/ckb-next.git"
|
||||
else
|
||||
SRC_URI="https://github.com/ckb-next/ckb-next/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
S="${WORKDIR}/${PN}-next-${PV}"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="systemd"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/libdbusmenu-qt
|
||||
dev-libs/quazip:0=[qt5(+)]
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdbus:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
|| (
|
||||
media-libs/libpulse
|
||||
media-sound/apulse[sdk]
|
||||
)
|
||||
virtual/libudev:=
|
||||
x11-libs/libxcb:=
|
||||
x11-libs/xcb-util-wm"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="dev-qt/linguist-tools:5"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-fix-bashism.patch"
|
||||
"${FILESDIR}/${P}-odr.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DDISABLE_UPDATER=yes
|
||||
-DFORCE_INIT_SYSTEM=$(usex systemd systemd openrc)
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
dodoc CHANGELOG.md
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
udev_reload
|
||||
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]]; then
|
||||
elog "The ckb daemon will have to be started before use:"
|
||||
elog
|
||||
if use systemd ; then
|
||||
elog "# systemctl start ckb-next-daemon"
|
||||
else
|
||||
elog "# rc-config start ckb-next-daemon"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
udev_reload
|
||||
}
|
||||
32
app-misc/ckb/files/ckb-0.6.0-odr.patch
Normal file
32
app-misc/ckb/files/ckb-0.6.0-odr.patch
Normal file
@ -0,0 +1,32 @@
|
||||
https://bugs.gentoo.org/924410
|
||||
|
||||
From c5b68a00867b2add28bfd62430c45781ac2e9cb8 Mon Sep 17 00:00:00 2001
|
||||
From: John Helmert III <ajak@gentoo.org>
|
||||
Date: Fri, 16 Feb 2024 22:14:24 -0800
|
||||
Subject: [PATCH] ckbsettingswriter: mirror QT version guards from ckbsettings
|
||||
|
||||
The differing definitions between ckbsettingswriter.cpp and
|
||||
ckbsettings.cpp trigger compilation errors with -Werror=odr.
|
||||
|
||||
Signed-off-by: John Helmert III <ajak@gentoo.org>
|
||||
--- a/src/gui/ckbsettingswriter.cpp
|
||||
+++ b/src/gui/ckbsettingswriter.cpp
|
||||
@@ -1,9 +1,18 @@
|
||||
#include "ckbsettingswriter.h"
|
||||
+
|
||||
+#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
|
||||
+#include <QRecursiveMutex>
|
||||
+#else
|
||||
#include <QMutex>
|
||||
+#endif
|
||||
|
||||
// Mirror ckbsettings.cpp
|
||||
extern QAtomicInt cacheWritesInProgress;
|
||||
+#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
|
||||
+extern QRecursiveMutex settingsMutex, settingsCacheMutex;
|
||||
+#else
|
||||
extern QMutex settingsMutex, settingsCacheMutex;
|
||||
+#endif
|
||||
#define lockMutex QMutexLocker locker(backing == _globalSettings ? &mutex : 0)
|
||||
#define lockMutexStatic QMutexLocker locker(&settingsMutex)
|
||||
#define lockMutexStatic2 QMutexLocker locker2(&settingsMutex)
|
||||
Loading…
x
Reference in New Issue
Block a user