commit:     18d2c1daf0aa287e04b7961e2bab7bce92ee754e
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri May  2 23:01:11 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat May  3 07:42:19 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18d2c1da

media-libs/openal: add 1.24.3, IUSE qt5 -> Qt6-based IUSE gui

See also:
https://github.com/kcat/openal-soft/pull/1132

Bug: https://bugs.gentoo.org/955274
Closes: https://bugs.gentoo.org/953984
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-libs/openal/Manifest                      |  1 +
 media-libs/openal/files/openal-1.24.3-qt6.patch | 71 +++++++++++++++++++++
 media-libs/openal/openal-1.24.3.ebuild          | 84 +++++++++++++++++++++++++
 profiles/arch/alpha/package.use.mask            |  4 ++
 profiles/arch/mips/package.use.mask             |  3 +-
 profiles/arch/sparc/package.use.mask            |  4 ++
 6 files changed, 166 insertions(+), 1 deletion(-)

diff --git a/media-libs/openal/Manifest b/media-libs/openal/Manifest
index 8f8fbdff10a2..dba2197f25d7 100644
--- a/media-libs/openal/Manifest
+++ b/media-libs/openal/Manifest
@@ -1 +1,2 @@
 DIST openal-soft-1.24.2.tar.bz2 1020760 BLAKE2B 
d87b470570006b0e3b9f6662ba50db67eb154713d13968e05015f70c12a73f6199cfe13cbe6fd9797081c970cc37e1de1680ecf2606015d09b8eedc27abcc343
 SHA512 
5ac05fb20b414dfe50e6ac80a69d1e36db5588fd2ccef2606ae1f3b6fc155881d45826031660123101a31469e24bc2bea42993d81b28dd5f18d0d0463988fa65
+DIST openal-soft-1.24.3.tar.bz2 1025568 BLAKE2B 
90a2f60b7d8d1d13f9013b6371500317ab152bc467843d23411d34b2ccb1243f1d9ad06e371b8ec3a4bf85985a2dc5dcd51edf4539b5e07d5e1053da27a5b0c0
 SHA512 
fab41a031f0f52aa0d5803d22722084885c1dd43727895ccd090b29fd3476621a97a5031b21e507d5175372dca910450b728a04fc65857698e1296831db8a6fe

diff --git a/media-libs/openal/files/openal-1.24.3-qt6.patch 
b/media-libs/openal/files/openal-1.24.3-qt6.patch
new file mode 100644
index 000000000000..ecf55eaaf256
--- /dev/null
+++ b/media-libs/openal/files/openal-1.24.3-qt6.patch
@@ -0,0 +1,71 @@
+From ec17d944387e36ecbb6f721792613bf1fafcebc8 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+Date: Sat, 3 May 2025 00:04:01 +0200
+Subject: [PATCH] Port to Qt6
+
+Signed-off-by: Andreas Sturmlechner <[email protected]>
+---
+ CMakeLists.txt                     | 6 +++---
+ utils/alsoft-config/CMakeLists.txt | 8 ++++----
+ utils/alsoft-config/mainwindow.cpp | 2 +-
+ 3 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 64b66b7f..52d59a25 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1321,9 +1321,9 @@ endif()
+ if(ALSOFT_UTILS)
+     find_package(MySOFA)
+     if(NOT ALSOFT_NO_CONFIG_UTIL)
+-        find_package(Qt5Widgets QUIET)
+-        if(NOT Qt5Widgets_FOUND)
+-            message(STATUS "Could NOT find Qt5Widgets")
++        find_package(Qt6Widgets QUIET)
++        if(NOT Qt6Widgets_FOUND)
++            message(STATUS "Could NOT find Qt6Widgets")
+         endif()
+     endif()
+ endif()
+diff --git a/utils/alsoft-config/CMakeLists.txt 
b/utils/alsoft-config/CMakeLists.txt
+index 6ed1f362..74596f9f 100644
+--- a/utils/alsoft-config/CMakeLists.txt
++++ b/utils/alsoft-config/CMakeLists.txt
+@@ -1,9 +1,9 @@
+ project(alsoft-config)
+ 
+-if(Qt5Widgets_FOUND)
+-    qt5_wrap_ui(UIS  mainwindow.ui)
++if(Qt6Widgets_FOUND)
++    qt6_wrap_ui(UIS  mainwindow.ui)
+ 
+-    qt5_wrap_cpp(MOCS  mainwindow.h)
++    qt6_wrap_cpp(MOCS  mainwindow.h)
+ 
+     add_executable(alsoft-config
+         main.cpp
+@@ -12,7 +12,7 @@ if(Qt5Widgets_FOUND)
+         verstr.cpp
+         verstr.h
+         ${UIS} ${RSCS} ${TRS} ${MOCS})
+-    target_link_libraries(alsoft-config PUBLIC Qt5::Widgets PRIVATE 
alsoft.common)
++    target_link_libraries(alsoft-config PUBLIC Qt6::Widgets PRIVATE 
alsoft.common)
+     target_include_directories(alsoft-config PRIVATE 
"${alsoft-config_BINARY_DIR}"
+         "${OpenAL_BINARY_DIR}")
+     target_compile_definitions(alsoft-config PRIVATE QT_NO_KEYWORDS)
+diff --git a/utils/alsoft-config/mainwindow.cpp 
b/utils/alsoft-config/mainwindow.cpp
+index 6b4de7f5..d360bc5e 100644
+--- a/utils/alsoft-config/mainwindow.cpp
++++ b/utils/alsoft-config/mainwindow.cpp
+@@ -882,7 +882,7 @@ void MainWindow::loadConfig(const QString &fname)
+             }
+             else if(backend.size() > 1)
+             {
+-                QStringRef backendref{backend.rightRef(backend.size()-1)};
++                auto backendref = 
QStringView{backend}.right(backend.size()-1);
+                 for(size_t j{0};j < backendList.size();++j)
+                 {
+                     if(backendref == std::data(backendList[j].backend_name))
+-- 
+2.49.0
+

diff --git a/media-libs/openal/openal-1.24.3.ebuild 
b/media-libs/openal/openal-1.24.3.ebuild
new file mode 100644
index 000000000000..430984e915bb
--- /dev/null
+++ b/media-libs/openal/openal-1.24.3.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# False positives because of REQUIRE vs BACKEND options() (conditionally set)
+# See bug #809314
+CMAKE_WARN_UNUSED_CLI=no
+inherit cmake-multilib
+
+MY_P="${PN}-soft-${PV}"
+
+DESCRIPTION="Software implementation of the OpenAL 3D audio API"
+HOMEPAGE="https://www.openal-soft.org/";
+SRC_URI="https://www.openal-soft.org/openal-releases/${MY_P}.tar.bz2";
+S="${WORKDIR}"/${MY_P}
+
+# See 
https://github.com/kcat/openal-soft/blob/e0097c18b82d5da37248c4823fde48b6e0002cdd/BSD-3Clause
+# Some components are under BSD
+LICENSE="LGPL-2+ BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv 
~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="
+       alsa coreaudio debug jack oss pipewire portaudio pulseaudio sdl sndio 
gui
+       cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse4_1
+       cpu_flags_arm_neon
+"
+
+# PipeWire:
+# - See bug #863200 for PipeWire minimum version
+# - PW is in DEPEND although not linked against because we need configure to
+# find it anyway, but no :=.
+RDEPEND="
+       alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+       gui? ( dev-qt/qtbase:6[gui,widgets] )
+       jack? ( virtual/jack[${MULTILIB_USEDEP}] )
+       pipewire? ( media-video/pipewire[${MULTILIB_USEDEP}] )
+       portaudio? ( media-libs/portaudio[${MULTILIB_USEDEP}] )
+       pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
+       sdl? ( media-libs/libsdl2[${MULTILIB_USEDEP}] )
+       sndio? ( media-sound/sndio:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+       oss? ( virtual/os-headers )
+"
+
+DOCS=( alsoftrc.sample docs/env-vars.txt docs/hrtf.txt ChangeLog README.md )
+
+PATCHES=( "${FILESDIR}/${P}-qt6.patch" ) # bug 955274; git master
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               # See bug #809314 for getting both options for backends
+               -DALSOFT_{BACKEND,REQUIRE}_ALSA=$(usex alsa)
+               -DALSOFT_{BACKEND,REQUIRE}_COREAUDIO=$(usex coreaudio)
+               -DALSOFT_{BACKEND,REQUIRE}_JACK=$(usex jack)
+               -DALSOFT_{BACKEND,REQUIRE}_OSS=$(usex oss)
+               -DALSOFT_{BACKEND,REQUIRE}_PIPEWIRE=$(usex pipewire)
+               -DALSOFT_{BACKEND,REQUIRE}_PORTAUDIO=$(usex portaudio)
+               -DALSOFT_{BACKEND,REQUIRE}_PULSEAUDIO=$(usex pulseaudio)
+               -DALSOFT_{BACKEND,REQUIRE}_SDL2=$(usex sdl)
+               -DALSOFT_{BACKEND,REQUIRE}_SNDIO=$(usex sndio)
+
+               -DALSOFT_UTILS=$(multilib_is_native_abi && echo "ON" || echo 
"OFF")
+               -DALSOFT_NO_CONFIG_UTIL=$(usex gui "$(multilib_is_native_abi && 
echo "OFF" || echo "ON")" ON)
+                # EXAMPLES=OFF to avoid FFmpeg dependency, bug #481670
+               -DALSOFT_EXAMPLES=OFF
+       )
+
+       # Avoid unused variable warnings, bug #738240
+       if use amd64 || use x86 ; then
+               mycmakeargs+=(
+                       -DALSOFT_CPUEXT_SSE=$(usex cpu_flags_x86_sse)
+                       -DALSOFT_CPUEXT_SSE2=$(usex cpu_flags_x86_sse2)
+                       -DALSOFT_CPUEXT_SSE4_1=$(usex cpu_flags_x86_sse4_1)
+               )
+       elif use arm || use arm64 ; then
+               mycmakeargs+=(
+                       -DALSOFT_CPUEXT_NEON=$(usex cpu_flags_arm_neon)
+               )
+       fi
+
+       cmake_src_configure
+}

diff --git a/profiles/arch/alpha/package.use.mask 
b/profiles/arch/alpha/package.use.mask
index cfe6c3a14046..494aaa16570d 100644
--- a/profiles/arch/alpha/package.use.mask
+++ b/profiles/arch/alpha/package.use.mask
@@ -1,6 +1,10 @@
 # Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# Andreas Sturmlechner <[email protected]> (2025-05-03)
+# dev-qt/qtbase:6 is not keyworded here
+media-libs/openal gui
+
 # NRK <[email protected]> (2025-04-07)
 # media-libs/libyuv is not keyworded
 media-libs/imlib2 y4m

diff --git a/profiles/arch/mips/package.use.mask 
b/profiles/arch/mips/package.use.mask
index 955606dbb376..6548bfae8d05 100644
--- a/profiles/arch/mips/package.use.mask
+++ b/profiles/arch/mips/package.use.mask
@@ -328,9 +328,10 @@ dev-libs/libgudev test
 dev-python/diskcache test
 
 # Sam James <[email protected]> (2021-02-06)
+# dev-qt/qtbase:6 is not keyworded here
 # media-sound/sndio is not yet keyworded here
 # bug #769098, bug #769122
-media-libs/openal sndio
+media-libs/openal gui sndio
 
 # Sam James <[email protected]> (2021-01-19)
 # Joonas Niilola <[email protected]> (2021-01-10)

diff --git a/profiles/arch/sparc/package.use.mask 
b/profiles/arch/sparc/package.use.mask
index c5c8294b90ec..c15c38aff383 100644
--- a/profiles/arch/sparc/package.use.mask
+++ b/profiles/arch/sparc/package.use.mask
@@ -1,6 +1,10 @@
 # Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# Andreas Sturmlechner <[email protected]> (2025-05-03)
+# dev-qt/qtbase:6 is not keyworded here
+media-libs/openal gui
+
 # NRK <[email protected]> (2025-04-07)
 # media-libs/libyuv is not keyworded
 media-libs/imlib2 y4m

Reply via email to