# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Loosely based on packages in https://gitgud.io/aeroshell/aeroshell-aur-packages, with packaging adapted for Gentoo. EAPI=8 inherit cmake git-r3 DESCRIPTION="KDecoration3 decoration engine for AeroShell-based desktops." HOMEPAGE="https://gitgud.io/aeroshell/smod" EGIT_REPO_URI="${HOMEPAGE}.git" # Source directory; the dir where the sources can be found (automatically # unpacked) inside ${WORKDIR}. The default value for S is ${WORKDIR}/${P} # If you don't need to change it, leave the S= line out of the ebuild # to keep it tidy. #S="${WORKDIR}/${P}" LICENSE="LGPL-2+" # The SLOT variable is used to tell Portage if it's OK to keep multiple # versions of the same package installed at the same time. For example, # if we have a libfoo-1.2.2 and libfoo-1.3.2 (which is not compatible # with 1.2.2), it would be optimal to instruct Portage to not remove # libfoo-1.2.2 if we decide to upgrade to libfoo-1.3.2. To do this, # we specify SLOT="1.2" in libfoo-1.2.2 and SLOT="1.3" in libfoo-1.3.2. # emerge clean understands SLOTs, and will keep the most recent version # of each SLOT and remove everything else. # Note that normal applications should use SLOT="0" if possible, since # there should only be exactly one version installed at a time. # Do not use SLOT="", because the SLOT variable must not be empty. SLOT="0" # Using KEYWORDS, we can record masking information *inside* an ebuild # instead of relying on an external package.mask file. Right now, you # should set the KEYWORDS variable for every ebuild so that it contains # the names of all the architectures with which the ebuild works. # All of the official architectures can be found in the arch.list file # which is in the profiles/ directory. Usually you should just set this # to "~amd64". The ~ in front of the architecture indicates that the # package is new and should be considered unstable until testing proves # its stability. So, if you've confirmed that your ebuild works on # amd64 and ppc, you'd specify: # KEYWORDS="~amd64 ~ppc" # Once packages go stable, the ~ prefix is removed. # For binary packages, use -* and then list the archs the bin package # exists for. If the package was for an x86 binary package, then # KEYWORDS would be set like this: KEYWORDS="-* x86" # Do not use KEYWORDS="*"; this is not valid in an ebuild context. KEYWORDS="" # Comprehensive list of any and all USE flags leveraged in the ebuild, # with some exceptions, e.g., ARCH specific flags like "amd64" or "ppc". # Not needed if the ebuild doesn't use any USE flags. IUSE="X wayland" # A space delimited list of portage features to restrict. man 5 ebuild # for details. Usually not needed. #RESTRICT="strip" # Run-time dependencies. Must be defined to whatever this depends on to run. # Example: # ssl? ( >=dev-libs/openssl-1.0.2q:0= ) # >=dev-lang/perl-5.24.3-r1 # It is advisable to use the >= syntax show above, to reflect what you # had installed on your system when you tested the package. Then # other users hopefully won't be caught without the right version of # a dependency. #RDEPEND="" # Build-time dependencies that need to be binary compatible with the system # being built (CHOST). These include libraries that we link against. # The below is valid if the same run-time depends are required to compile. DEPEND="${RDEPEND} sys-libs/glibc wayland? ( kde-plasma/kwin ) X? ( kde-plasma/kwin-x11 ) kde-plasma/kdecoration media-libs/libepoxy kde-frameworks/kconfig kde-frameworks/kcmutils kde-frameworks/kguiaddons kde-plasma/kdecoration kde-frameworks/ki18n kde-frameworks/kcoreaddons kde-frameworks/kwindowsystem dev-qt/qtwayland dev-qt/qtbase kde-frameworks/kirigami kde-plasma/plasma-workspace kde-plasma/plasma5support dev-qt/qtdeclarative kde-frameworks/ksvg dev-qt/qt5compat dev-libs/wayland dev-libs/plasma-wayland-protocols virtual/pkgconfig kde-frameworks/kwidgetsaddons " BDEPEND=" kde-frameworks/extra-cmake-modules kde-frameworks/kdoctools " src_configure() { local mycmakeargs=( -DBUILD_TESTING=off ) cmake_src_configure } src_compile() { cmake_build DESTDIR=smodtemp cmake --install build PKG_CONFIG_PATH=smodtemp/usr/lib/pkgconfig/ cmake -B build_smodglow/ $(use_enable wayland KWIN_BUILD_WAYLAND) -DCMAKE_CXX_FLAGS="-I../smodtemp/usr/include -L../smodtemp/usr/lib/qt6/plugins/org.kde.kdecoration3" -S ${pkgname%}/smodglow cmake --build build_smodglow } src_install() { cmake_src_install DESTDIR="${D}" cmake --install build_smodglow }