pavucontrol-qt

Qt port of pavucontrol

runtime dependencies pulseaudio (Audio and video applications)
qt5base (Graphic libraries and applications/Other GUIs)
make dependencies qt5tools
lxqt-build-tools
mkdir /data/buildroot/package/pavucontrol-qt
cat > /data/buildroot/package/pavucontrol-qt/Config.in<< 'EOF'
config BR2_PACKAGE_PAVUCONTROL_QT
        bool "pavucontrol-qt"
        depends on BR2_PACKAGE_PULSEAUDIO
        depends on BR2_PACKAGE_QT5BASE
        depends on BR2_PACKAGE_QT5TOOLS
        help
          Qt port of pavucontrol
EOF

cat > /data/buildroot/package/pavucontrol-qt/pavucontrol-qt.mk<< 'EOF'
#############################################################
#
# pavucontrol-qt
#https://github.com/lxqt/pavucontrol-qt/archive/refs/tags/1.1.0.tar.gz
#############################################################
PAVUCONTROL_QT_VERSION = 1.1.0
PAVUCONTROL_QT_SOURCE  = $(PAVUCONTROL_QT_VERSION).tar.gz
PAVUCONTROL_QT_SITE    = https://github.com/lxqt/pavucontrol-qt/archive/refs/tags

PAVUCONTROL_QT_DEPENDENCIES = pulseaudio qt5base qt5tools
PAVUCONTROL_QT_INSTALL_TARGET = YES
PAVUCONTROL_QT_SUPPORTS_IN_SOURCE_BUILD = NO 
PAVUCONTROL_QT_CONF_OPTS = -DCMAKE_TOOLCHAIN_FILE=$(HOST_DIR)/share/buildroot/toolchainfile.cmake \
    -Dlxqt-build-tools_DIR=$(TARGET-DIR)/usr/share/cmake/lxqt-build-tools \
    -DCMAKE_INSTALL_PREFIX=/usr

define PAVUCONTROL_QT_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)/" $(PAVUCONTROL_QT_CONF_OPTS)
endef

$(eval $(cmake-package))
EOF

sed -i '/menu "Custom packages"/a source "package/pavucontrol-qt/Config.in"' /data/buildroot/package/Config.in