gentoo/app-misc/openrgb/openrgb-9999.ebuild
Arthur Zamarin ad4f6c00fb
*/*: convert to ASCII various comments
While not required, it is a good idea to convert comments to ASCII
to avoid issues with some tools that may not handle Unicode properly.
This commit converts various comments in the ebuilds to ASCII where
it makes sense.

Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-05-19 19:56:12 +03:00

104 lines
2.5 KiB
Bash

# Copyright 2020-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit check-reqs flag-o-matic qmake-utils udev xdg-utils
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI=${EGIT_REPO_URI:-"https://gitlab.com/CalcProgrammer1/OpenRGB"}
else
SRC_URI="https://gitlab.com/CalcProgrammer1/OpenRGB/-/archive/release_${PV}/OpenRGB-release_${PV}.tar.bz2"
S="${WORKDIR}/OpenRGB-release_${PV}"
KEYWORDS="~amd64 ~loong ~x86"
PATCHES=( "${FILESDIR}"/OpenRGB-0.9-build-system.patch )
fi
DESCRIPTION="Open source RGB lighting control"
HOMEPAGE="https://openrgb.org https://gitlab.com/CalcProgrammer1/OpenRGB/"
LICENSE="GPL-2"
# subslot is OPENRGB_PLUGIN_API_VERSION from
# https://gitlab.com/CalcProgrammer1/OpenRGB/-/blob/master/OpenRGBPluginInterface.h
SLOT="0/3"
RDEPEND="
dev-cpp/cpp-httplib:=
dev-libs/hidapi
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
net-libs/mbedtls:0=
virtual/libusb:1
"
DEPEND="
${RDEPEND}
dev-cpp/nlohmann_json
dev-libs/mdns
"
BDEPEND="
dev-qt/linguist-tools:5
virtual/pkgconfig
"
PATCHES+=(
"${FILESDIR}"/OpenRGB-0.7-r1-udev.patch
"${FILESDIR}"/OpenRGB-0.9-udev-check.patch
)
CHECKREQS_DISK_BUILD="2G"
src_prepare() {
default
rm -r dependencies/{httplib,hidapi,libusb,mdns,json,mbedtls}* \
|| die "Failed to remove unneded deps"
}
src_configure() {
# Some plugins require symbols defined in the main binary.
# The upstream build system of plugins bundles OpenRGB as a submodule
# instead, and compiles the .cpp file again.
append-ldflags -Wl,--export-dynamic
# > warning: '-pipe' ignored because '-save-temps' specified
filter-flags -pipe
# cpp-httplib >=0.16.0 changed the library name from "httplib" to "cpp-httplib".
# See bug: https://bugs.gentoo.org/934576
local -a libs=()
if has_version "<dev-cpp/cpp-httplib-0.16.0" ; then
libs+=( -lhttplib )
else
libs+=( -lcpp-httplib )
fi
eqmake5 \
INCLUDEPATH+="${ESYSROOT}/usr/include/nlohmann" \
DEFINES+="OPENRGB_EXTRA_PLUGIN_DIRECTORY=\\\\\"\\\"${EPREFIX}/usr/$(get_libdir)/OpenRGB/plugins\\\\\"\\\"" \
LIBS+="${libs[@]}"
}
src_install() {
emake INSTALL_ROOT="${ED}" install
dodoc README.md
rm -r "${ED}"/usr/lib/udev/ || die
udev_dorules 60-openrgb.rules
# This is for plugins. Upstream doesn't install any headers at all.
insinto /usr/include/OpenRGB
find . -name '*.h' -exec cp --parents '{}' "${ED}/usr/include/OpenRGB/" ';' || die
}
pkg_postinst() {
xdg_icon_cache_update
udev_reload
}
pkg_postrm() {
xdg_icon_cache_update
udev_reload
}