On Wed May 27, 2026 at 09:03:16PM +0200, Theo Buehler wrote:
> On Wed, May 27, 2026 at 08:51:53PM +0200, Rafael Sadowski wrote:
> > On Wed May 27, 2026 at 08:13:50PM +0200, Rafael Sadowski wrote:
> > > On Wed May 27, 2026 at 04:36:40PM +0200, Christian Weisgerber wrote:
> > > > http://build-failures.rhaalovely.net/amd64-clang/2026-05-26/
> > > > 
> > > > $ awk '/->/ { a[$NF]++ } END { for(i in a) printf "%3d %s\n", a[i], i 
> > > > }' \
> > > >     summary.log | sort -nr
> > > > 133 audio/openal
> > > 
> > > I think that is currently our best solution/pattern for the
> > > "CMAKE_CXX_COMPILER_CLANG_SCAN_DEPS-NOTFOUND" error class:
> > > 
> > > MODULES +=        lang/clang
> > > MODCLANG_COMPILER_LINKS = No
> > > CONFIGURE_ARGS+=  
> > > -DCMAKE_CXX_COMPILER_CLANG_SCAN_DEPS=${LOCALBASE}/bin/clang-scan-deps-${MODCLANG_VERSION}
> > > 
> > 
> > Correction: the CONFIGURE_ARGS will be overwritten again by
> > Modules/Compiler/Clang-FindBinUtils.cmake because
> > MODCLANG_COMPILER_LINKS is set to "No" and the cmake module will force
> > the compiler version.
> > 
> > Meaning:
> > 
> > Will fail if we switch base to 22 and ports stay 19:
> > 
> > > MODULES +=        lang/clang
> > > MODCLANG_COMPILER_LINKS = No
> > > CONFIGURE_ARGS+=  
> > > -DCMAKE_CXX_COMPILER_CLANG_SCAN_DEPS=${LOCALBASE}/bin/clang-scan-deps-${MODCLANG_VERSION}
> > 
> > This should work for the migration now:
> > 
> > MODULES +=      lang/clang
> > MODCLANG_COMPILER_LINKS = No
> > MODCLANG_VERSION =      22
> > CONFIGURE_ARGS+=    
> > -DCMAKE_CXX_COMPILER_CLANG_SCAN_DEPS=${LOCALBASE}/bin/clang-scan-deps-${MODCLANG_VERSION}
> > 
> > # XXX remove after base has llvm/22
> > BUILD_DEPENDS = devel/llvm/19
> > 
> > Tested with openal and it fallback to 19 for now and if
> > MODCLANG_COMPILER_LINKS = Yes (tested) or llvm22 is in base (untested)
> > it should pickup 22.
> > 
> 
> What is in tree is the above without the CONFIGURE_ARGS magic. This works
> because with llvmXX in base, clang-scan-deps-XX is selected and provided
> by the relevant devel/llvm/XX port. This has been tested for poppler in
> several bulks and I have also tested it for openal. I'm happy to switch
> to your approach for poppler and openal once the dust of the compiler
> switch has settled.

Yes, for CXX, that should work even without the "CONFIGURE_ARGS magic".
What I meant to say above is that CMAKE_CXX_COMPILER_CLANG_SCAN_DEPS is
ONLY determined based on the C++ compiler version.

That's why we need:
> > MODCLANG_COMPILER_LINKS = No
> > MODCLANG_VERSION =      22

> > 
> > MODULES +=      lang/clang
> > MODCLANG_COMPILER_LINKS = No
> > MODCLANG_VERSION =      22
> > CONFIGURE_ARGS+=    
> > -DCMAKE_CXX_COMPILER_CLANG_SCAN_DEPS=${LOCALBASE}/bin/clang-scan-deps-${MODCLANG_VERSION}
> > 
> > # XXX remove after base has llvm/22
> > BUILD_DEPENDS = devel/llvm/19

Anyway:


diff --git a/audio/openal/Makefile b/audio/openal/Makefile
index 9795a01ec83..36682ac45fc 100644
--- a/audio/openal/Makefile
+++ b/audio/openal/Makefile
@@ -36,7 +36,7 @@ CONFIGURE_ARGS =-DALSOFT_BACKEND_PIPEWIRE=Off \
                -DCMAKE_DISABLE_FIND_PACKAGE_OSS:Bool=Yes \
                -DCMAKE_DISABLE_FIND_PACKAGE_PortAudio:Bool=Yes \
                -DCMAKE_DISABLE_FIND_PACKAGE_PulseAudio:Bool=Yes \
-               -DCMAKE_DISABLE_FIND_PACKAGE_SDL2:Bool=Yes \
+               -DCMAKE_DISABLE_FIND_PACKAGE_SDL3:Bool=Yes \
                -DCMAKE_DISABLE_FIND_PACKAGE_SndFile:Bool=Yes
 
 MODCMAKE_POLICY_VERSION_OVERRIDE = Yes
@@ -49,8 +49,12 @@ MODULES =    devel/cmake
 
 # XXX cmake config uses CXX_MODULES, which needs clang-scan-deps
 MODULES +=     lang/clang
+MODCLANG_VERSION = 22
 MODCLANG_COMPILER_LINKS = No
 
+# XXX remove after base has llvm/22
+BUILD_DEPENDS = devel/llvm/19
+
 COMPILER =     base-clang ports-gcc
 
 NO_TEST =      Yes

Reply via email to