User Tools

Site Tools


buildroot:libkscreen

libkscreen

KDE screen management software

runtime dependencies qt5x11extras (Graphic libraries and applications/Other GUIs)
xlib_libXrandr (Graphic libraries/X11R7 Applications)
kwayland
make dependencies extra-cmake-modules
doxygen
qt5tools
plasma-wayland-protocols
mkdir /data/buildroot/package/libkscreen
cat > /data/buildroot/package/libkscreen/Config.in<< 'EOF'
config BR2_PACKAGE_LIBKSCREEN
        bool "libkscreen"
        depends on BR2_PACKAGE_QT5X11EXTRAS
        depends on BR2_PACKAGE_QT5BASE
        depends on BR2_PACKAGE_XLIB_LIBXRANDR
        depends on BR2_PACKAGE_KWAYLAND
        depends on BR2_PACKAGE_QT5TOOLS
        help
          KDE screen management software
EOF

cat > /data/buildroot/package/libkscreen/libkscreen.mk<< 'EOF'
#############################################################
#
# libkscreen
#https://github.com/KDE/libkscreen/archive/refs/tags/v5.25.2.tar.gz
#############################################################
LIBKSCREEN_VERSION = 5.25.2
LIBKSCREEN_SOURCE  = v$(LIBKSCREEN_VERSION).tar.gz
LIBKSCREEN_SITE    = https://github.com/KDE/libkscreen/archive/refs/tags

LIBKSCREEN_DEPENDENCIES = qt5base qt5x11extras xlib_libXrandr kwayland qt5tools
LIBKSCREEN_INSTALL_TARGET = YES
LIBKSCREEN_SUPPORTS_IN_SOURCE_BUILD = NO 
    
LIBKSCREEN_CONF_OPTS = -DCMAKE_TOOLCHAIN_FILE=$(HOST_DIR)/share/buildroot/toolchainfile.cmake \
    -DKF5Wayland_DIR=$(TARGET_DIR)/usr/lib/cmake/KF5Wayland \
    -DPlasmaWaylandProtocols_DIR=$(TARGET_DIR)/usr/lib/cmake/PlasmaWaylandProtocols \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DBUILD_TESTING=OFF \
    -DBUILD_QCH=OFF
    
define LIBKSCREEN_CONFIGURE_CMDS
  if [[ ! -L "$(HOST_DIR)/usr/lib/libpcre.so.3" ]]; then ln -s $(HOST_DIR)/usr/lib/libpcre.so $(HOST_DIR)/usr/lib/libpcre.so.3; fi
  if [[ ! -d $(@D)/buildroot-build ]]; then mkdir $(@D)/buildroot-build; fi
  cd $(@D)/buildroot-build && \
  LDFLAGS="$(LDFLAGS) -pthread -Wl,--as-needed -Wl,--allow-shlib-undefined" cmake "$(@D)/" $(LIBKSCREEN_CONF_OPTS)
endef

$(eval $(cmake-package))
EOF

sed -i '/menu "Custom packages"/a source "package/libkscreen/Config.in"' /data/buildroot/package/Config.in
buildroot/libkscreen.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1