Created attachment 184610 [details] patch
Created attachment 184613 [details] patch Update to 18.0 QAs: * Builds in poudriere * Passes portlint
The commit history for ``files/patch-OpenAL32_alBuffer.c'' says that it was added because of a bug relating to clang optimizations [1], FreeBSD-10.3 might still be affected. Also, ``%%ETCDIR%%/openal/*'' normally resolves to ``/usr/local/etc/openal-soft/openal/*'', and the `post-patch' command normally removes the trailing `openal' [2]. [1] https://svnweb.freebsd.org/ports/head/audio/openal-soft/files/patch-OpenAL32_alBuffer.c?revision=399540&view=markup [2] https://svnweb.freebsd.org/ports/head/audio/openal-soft/Makefile?revision=437439&view=markup#l59
Created attachment 184617 [details] patch kdrakehp@zoho.com, I addressed your concerns.
Created attachment 184619 [details] patch Added OSS option for flexibility.
Created attachment 184620 [details] patch
Comment on attachment 184620 [details] patch Port is unmaintained, implicit approval
The example binaries produced by this patch, that use `devel/sdl_sound', fail after calling `Sound_NewSampleFromFile': Opened "OSS Default" Could not open audio in <file> This is because the affected examples are linked to both SDL-1.2 & SDL-2.0, and they behave as expected if they are built without SDL-2.0.
Upstream report: https://github.com/kcat/openal-soft/issues/137 For me they work anyway. I will see if I can patch it.
kdrakehp@zoho.com, They do this explicitly in CMakeFiles.txt: > IF(SDL2_FOUND) > FIND_PACKAGE(SDL_sound) > FIND_PACKAGE(FFmpeg COMPONENTS AVFORMAT AVCODEC AVUTIL SWSCALE SWRESAMPLE) > ENDIF() Also, Mk/bsd.sdl.mk doesn't complain about SDL=sdl2,sound. If this is combination is invalid, this is at least a bug in Mk/bsd.sdl.mk Also, examples work for me as is. Could you provide the reference that SDL=sdl2,sound this is an invalid combination?
(In reply to Yuri Victorovich from comment #9) The `devel/sdl_sound' port does not support building with SDL-2, while `SDL_sound' does, which might be what OpenAL-Soft is assuming. The two libraries have numerous symbol clashes (137), and SDL2 breaks compatibility with SDL1. This causes functions from both libraries to be called on the same structures, along with SDL_sound assuming that the `SDL.h' it was compiled with is correct. For me this quickly leads to read calls failing and the previously mentioned failure. This change will require all three libraries for different binaries ``SDL=sdl,sdl2,sound'', `alffplay' uses SDL2 for video output and ffmpeg for audio, so ``SDL=sdl2,sound'' is not an invalid combination. 12-CURRENT amd64
So linking with particular sdl libraries should be done upstream.
Attachment 184620 [details] applies cleanly for me.
A commit references this bug: Author: swills Date: Fri Aug 18 16:34:14 UTC 2017 New revision: 448257 URL: https://svnweb.freebsd.org/changeset/ports/448257 Log: audio/openal-soft: Update to 1.18.0, Add EXAMPLES and OSS options PR: 220931 Submitted by: Yuri Victorovich <yuri@rawbw.com> Changes: head/audio/openal-soft/Makefile head/audio/openal-soft/distinfo head/audio/openal-soft/files/patch-CMakeLists.txt head/audio/openal-soft/files/patch-examples_alffplay.cpp head/audio/openal-soft/pkg-plist
Committed, thanks!
A commit references this bug: Author: jbeich Date: Tue Sep 19 11:42:58 UTC 2017 New revision: 450114 URL: https://svnweb.freebsd.org/changeset/ports/450114 Log: MFH: r448257 r448269 r450103 audio/openal-soft: update to 1.18.1 - Add EXAMPLES and OSS options - Add a patch to fix the Jack backend for Jack 1 Changes: http://kcat.strangesoft.net/openal.html#release ABI: https://abi-laboratory.pro/tracker/timeline/openal/ PR: 220931 222437 Submitted by: Yuri Victorovich <yuri@rawbw.com> Submitted by: kdrakehp@zoho.com Approved by: ports-secteam (delphij) Changes: _U branches/2017Q3/ branches/2017Q3/audio/openal-soft/Makefile branches/2017Q3/audio/openal-soft/distinfo branches/2017Q3/audio/openal-soft/files/patch-Alc_backends_jack.c branches/2017Q3/audio/openal-soft/files/patch-CMakeLists.txt branches/2017Q3/audio/openal-soft/files/patch-OpenAL32_alBuffer.c branches/2017Q3/audio/openal-soft/pkg-plist