diff options
author | Sam James <sam@gentoo.org> | 2023-10-04 20:27:38 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-10-04 20:27:51 +0100 |
commit | 1938edbd945efdfbf977f01b8755e54e8a345b7c (patch) | |
tree | e29b8b5e79c65177346ab9bfbe09e842c4de5679 /sys-apps/razercfg | |
parent | media-sound/gbsplay: don't redefine _FORTIFY_SOURCE (diff) | |
download | gentoo-1938edbd945efdfbf977f01b8755e54e8a345b7c.tar.gz gentoo-1938edbd945efdfbf977f01b8755e54e8a345b7c.tar.bz2 gentoo-1938edbd945efdfbf977f01b8755e54e8a345b7c.zip |
sys-apps/razercfg: don't redefine _FORTIFY_SOURCE
Closes: https://bugs.gentoo.org/898046
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-apps/razercfg')
-rw-r--r-- | sys-apps/razercfg/razercfg-0.42-r1.ebuild | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/sys-apps/razercfg/razercfg-0.42-r1.ebuild b/sys-apps/razercfg/razercfg-0.42-r1.ebuild new file mode 100644 index 000000000000..d4ebc90bca0f --- /dev/null +++ b/sys-apps/razercfg/razercfg-0.42-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..10} ) + +inherit cmake python-single-r1 systemd tmpfiles udev xdg-utils + +DESCRIPTION="Utility for advanced configuration of Razer mice" +HOMEPAGE="https://bues.ch/cms/hacking/razercfg.html https://github.com/mbuesch/razer" +SRC_URI="https://bues.ch/${PN}/${P}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gui +udev" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DEPEND="${PYTHON_DEPS} + virtual/libusb:1 +" +BDEPEND="virtual/pkgconfig" +RDEPEND="${DEPEND} + gui? ( + $(python_gen_cond_dep ' + dev-python/PyQt5[${PYTHON_USEDEP}] + ') + ) + udev? ( virtual/udev ) +" + +PATCHES=( "${FILESDIR}/${PN}-0.39-unit-variables.patch" ) + +src_prepare() { + cmake_src_prepare + + # Don't clobber toolchain defaults + sed -i -e '/-D_FORTIFY_SOURCE=2/d' scripts/cmake.global || die + + sed -i librazer/CMakeLists.txt \ + -e '/ldconfig/{N;d}' \ + -e "s:DESTINATION lib:DESTINATION $(get_libdir):" \ + || die + + sed -i ui/razercfg.desktop.template \ + -e '/^Categories=/s/=.*$/=Qt;Settings/' \ + || die +} + +src_configure() { + local mycmakeargs=( + -DPYTHON="${PYTHON}" + -DSYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)" + -DUDEV_DIR="$(get_udevdir)" + ) + RAZERCFG_PKG_BUILD=1 cmake_src_configure +} + +src_install() { + RAZERCFG_PKG_BUILD=1 cmake_src_install + + python_optimize + + newinitd "${FILESDIR}"/razerd.init.d-r2 razerd + dodoc README.* HACKING.* razer.conf + + if ! use gui; then + rm "${D}"/usr/bin/qrazercfg{,-applet} || die + rm -r "${D}"/usr/share/icons || die + rm -r "${D}"/usr/share/applications || die + fi + + # sys-power/pm-utils is deprecated, so we delete related files + # (they contain a hook for resume from suspend) + # TODO: test resume from suspend + rm -r "${D}/etc/pm" || die +} + +pkg_postinst() { + if use udev ; then + udevadm control --reload-rules + udevadm trigger --subsystem-match=usb + fi + + xdg_icon_cache_update + + tmpfiles_process razerd.conf + + if [[ -e "${ROOT}/usr/bin/pyrazer.pyc" ]]; then + eerror "A stale ${ROOT}/usr/bin/pyrazer.pyc exists and will prevent" + eerror "the Python frontends from working until removed manually." + fi +} + +pkg_postrm() { + xdg_icon_cache_update +} |