OpenAL Soft is a software implementation of the OpenAL 3D audio
API. OpenAL provides capabilities for playing audio in a virtual
3D environment. Distance attenuation, doppler shift, and directional
sound emitters are among the features handled by the API. More
advanced effects, including air absorption, low-pass filters, and
reverb, are available through the EFX extension. It also facilitates
streaming audio, multi-channel buffers, and audio capture.
===> The following configuration options are available for openal-soft-1.25.2:
CONFIG=off: Install configuration utility (needs Qt6)
EXAMPLES=on: Build and/or install examples
JACK=off: JACK audio server support
OSS=on: Open Sound System support
PIPEWIRE=off: PipeWire multimedia server support
PORTAUDIO=off: PortAudio library support
PULSEAUDIO=off: PulseAudio sound server support
SIMD=on: Use CPU-specific optimizations
SNDIO=off: Sndio audio support
UTILS=on: Build and install utility programs
====> Simple Direct Media Layer support: you can only select none or one of them
SDL2=off: Simple Direct Media Layer support v2
SDL3=off: Simple Direct Media Layer support v3
===> Use 'make config' to modify these settings
audio/openal-soft: Optionally remove dependency on RTKIT/DBUS
The RTKIT functionality pulls in DBUS. As this functionallity doesn't
even work on FreeBSD, add the option to remove it.
Set the default value to "ON" to not affect the current state.
PR: 292308
Approved by: multimedia (maintainer, timeout 6+ weeks)
audio/openal-soft: Disable C11 threads
Use POSIX threads instead to avoid undefined symbols. Applications may
not start after the last update with errors such as:
ld-elf.so.1: /usr/local/lib/libopenal.so.1: Undefined symbol
"tss_create"
Reported by: VVD on #freebsd-desktop
audio/openal-soft: Update to 1.23.1
Add PIPEWIRE and SIMD options.
Add checks to disable CPU instruction sets that are opt-out by default
and only consider the host builder. For example, disable SSE4.1 on an
amd64 host building for an i386 target. Additional instruction sets can
be enabled by setting CPUTYPE appropriately in /etc/make.conf or in its
poudriere(8) counterpart.
audio/openal-soft: fix build with clang 19
With clang 19 and gcc 15, audio/openal-soft fails to compile, with an
error similar to:
/wrkdirs/usr/ports/audio/openal-soft/work/openal-soft-1.21.1/common/aloptional.h:119:48:
error: no member named 'mValue' in 'optional<T>'; did you mean 'value'?
119 | const T& operator*() const& { return this->mValue; }
| ^~~~~~
| value
/wrkdirs/usr/ports/audio/openal-soft/work/openal-soft-1.21.1/common/aloptional.h:127:8:
note: 'value' declared here
127 | T& value() & { return mStore.mValue; }
| ^
Upstream commit <https://github.com/kcat/openal-soft/440b5970> fixes
this this, so add it as a PATCHFILES entry in the Makefile, until a
newer version of openal-soft is imported.
PR: 280677
Approved by: maintainer timeout (2 weeks)
MFH: 2024Q3
all: drop support for FreeBSD 13.2 which reached EOL today
Thanks again to jbeich for noticing various things I overlooked.
Reviewed by: acm, ashish, eduardo, ehaupt, eugen, jbeich, martymac, mat,
nobukata, sunpoet, tagattie, yuri, arrowd, kde
Differential Revision: https://reviews.freebsd.org/D45141
audio/openal-soft: unbreak after 145ca5487348
Unbreak build by moving bsd.port.pre.mk include to just before
post-patch, and using bsd.port.post.mk at the end.
PR: 268495
Reported by: fluffy
Fixes: 145ca5487348
MFH: 2022Q4
audio/openal-soft: fix build with lld 15 on i386
During an exp-run for llvm 15 (see bug 265425), it turned out that
audio/openal-soft failed to link with lld 15, on i386:
: && /usr/bin/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2
-pipe -fstack-protector-strong -fno-strict-aliasing -DNDEBUG -Wl,--as-needed
-fstack-protector-strong -Wl,-z,notext
CMakeFiles/makemhr.dir/utils/makemhr/loaddef.cpp.o
CMakeFiles/makemhr.dir/utils/makemhr/loadsofa.cpp.o
CMakeFiles/makemhr.dir/utils/makemhr/makemhr.cpp.o -o makemhr
-Wl,-rpath,/usr/local/lib: -pthread libsofa-support.a -pthread libcommon.a
/usr/local/lib/libmysofa.so /usr/lib/libz.so -lm && :
ld: error: makemhr:(.eh_frame+0x14cf): internal linker error: wrote incorrect
addend value 0x3400 instead of 0x0 for dynamic relocation R_386_32 at offset
0x408417 against symbol __gxx_personality_v0
This is because lld 15 with assertions enabled (which is default on
-CURRENT) checks dynamic relocations more thoroughly, and in combination
with -z notext (which was added earlier for bug 242307) results in the
above diagnostic.
Work around it by disabling the dynamic relations checks on i386.
PR: 268495
Approved by: maintainer timeout (2 weeks)
MFH: 2022Q4
Mk/Uses: always use colon for build/run suffix
Most USES use a colon for build/run(/test) suffixes. Change kde.mk,
qt.mk and pyqt.mk to do the same, and update all ports using that.
Document in CHANGES.
PR: 266034
Exp-run by: antoine
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D36349
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
audio/openal-soft: allow to build the port without the utilities
This helps to avoid dependency on `audio/libmysofa' and thus not
to download its quite heavy ~190 MB distfile.
audio/jack: Update to Jack2: 0.125.0 -> 1.9.16
Big thank you to Florian Walpen <dev@submerge.ch> and
Goran Mekić <meka@tilda.center> for working on Jack2.
PR: 251125
Submitted by: Florian Walpen <dev@submerge.ch> (original version)
Clean up LLD_UNSAFE from openal-soft ports
After FreeBSD 12.0 EOL we no longer have to worry about LLD 6 and
can drop LLD_UNSAFE from openal-soft ports. LLD can link them fine
now but some ports needs a little help on i386 (-Wl,-znotext).
PR: 226980
Reviewed by: jbeich (earlier version)
Differential Revision: https://reviews.freebsd.org/D23030
audio/openal-soft: Limit LLD_UNSAFE to FreeBSD 12.0 again
We can unbreak the build with lld on i386 on FreeBSD > 12.0 by
passing -Wl,-z,notext to the linker. It should not make any
difference on older releases.
PR: 242307
Tested by: jbeich
audio/openal-soft: Drop workaround from r492771
The problem is no longer reproducible on the latest 12-STABLE snapshot
and it breaks the build on powerpc64 elfv2.
PR: 235603, 242107
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
audio/openal-soft: Use ld.gold instead of ld.bfd
openal-soft has stopped linking on 12-STABLE with ld.bfd. As a
workaround use ld.gold for now until we can discover why that happens
all of a sudden.
PR: 235603
Reported by: Robert Cina <transitive@gmail.com>
Change cmake default behaviour to outsource.
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Mark QT4 ports/functionality for removal on 2019-03-15
While here, chase some KDE4 ports and functionality, these are scheduled for
removal on 2018-12-31. Change the default option/flavor to QT5 where applicable
or use alternative toolkits like GTK.
Submitted by: tcberner
Reviewed by: adridg, jhale, rene, tcberner
Approved by: portmgr (implicit, flavor hook)
Differential Revision: https://reviews.freebsd.org/D17741
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
Replace bsd.qt.mk by Uses/qt.mk and Uses/qt-dist.mk
From now on, ports that depend on Qt4 will have to set
USES= qt:4
USE_QT= foo bar
ports depending on Qt5 will use
USES= qt:5
USE_QT= foo bar
PR: 229225
Exp-run by: antoine
Reviewed by: mat
Approved by: portmgr (antoine)
Differential Revision: -https://reviews.freebsd.org/D15540
audio/openal-soft: Cleanup options
- Drop bogus FLUIDSYNTH option (MIDI support was removed in 1.17.0)
- The sndio backend is missing capture support. This can lead to crashes
when there is no usable fallback backend available. As a workaround
always enable the OSS backend when the sndio backend is wanted.
- Prioritize sndio over OSS when it's enabled which should
make it unnecessary to fiddle with config files when building
with both SNDIO and OSS.
- Turn off dynamically loading backend libs via dlopen
- Correct lib depends
- Update pkg-descr
- Take maintainership
Bump PORTREVISION for ports depending on the canonical version of GCC
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
audio/openal-soft: set LLD_UNSAFE
Linking with LLD currently fails due to preemption of symbols with
protected visibility in a shared object:
/usr/bin/ld: error: cannot preempt symbol: alIsExtensionPresent
>>> defined in libopenal.so.1.18.0
>>> referenced by examples/altonegen.c
>>> CMakeFiles/altonegen.dir/examples/altonegen.c.o:(main)
/usr/bin/ld: error: cannot preempt symbol: alcGetCurrentContext
>>> defined in libopenal.so.1.18.0
>>> referenced by examples/altonegen.c
>>> CMakeFiles/altonegen.dir/examples/altonegen.c.o:(main)
(Only the first 15 lines of the commit message are shown above )
Bump PORTREVISIONs for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707
Fix configure when JACK option is enabled
-- Found JACK: /usr/local/lib/libjack.so
CMake Error at CMakeLists.txt:988 (MESSAGE):
Failed to enabled required JACK backend
-- Configuring incomplete, errors occurred!
PR: 214249
Reported by: Grzegorz Junka <list1@gjunka.com>
Approved by: maintainer timeout
Bump PORTREVISIONS for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.
audio/openal-soft: Add option to enable sndio support
- This adds support for building with the sndio audio output (audio/sndio).
PR: 211664
Submitted by: Tobias Kortkamp <t@tobik.me>
Approved by: mva (maintainer timeout)
- Add a workaround for a problem caused by clang
For some reason clang is breaking the code when openal-soft is built with
optimizations. If the file alBuffer.c is built with -O1 the problem don't
happens. See https://github.com/kcat/openal-soft/issues/18
The problem seems to happen just on CURRENT due the clang version.
PR: 199488, 203818
Tested by: ohartman@zedat.fu-berlin.de
Approved by: mva
MFH: 2015Q4
Update portaudio to v19/Remove portaudio2 [1]
Chase portaudio change
Add patches from debian for games/cultivation
Add patches from upsteam for audio/rezound
Mark py-fastaudio as broken
Approved by: maintainer
- openal-soft requires a compiler, that understands parts of the C11
standard. This should unbreak builds on 8.x
Reported by: several people
Submitted by: Torfinn Ingolfsen <tingox@gmail.com>
- Update to version 1.16.0
This version provides
* additional and improved effects
* high- and band-pass EFX filters
* improved resampling support
* improved audio back-end support
* a GUI configuration utility (based on QT)
* and lots of other features: http://kcat.strangesoft.net/openal.html
Remove indefinite articles and trailing periods from COMMENT, plus
minor COMMENT typos and surrounding whitespace fixes. Categories A-C.
CR: D196
Approved by: portmgr (bapt)
Remove CMAKE_USE_PTHREAD from the ports using it.
This setting has not had any effect since r1.13 to bsd.cmake.mk, as it
was only useful when we supported FreeBSD < 7.
Approved by: avilla (mentor), portmgr (miwi)
Feature safe: yes
- Add LDFLAGS to CONFIGURE_ENV and MAKE_ENV (as it was done with LDFLAGS)
- Fix all ports that add {CPP,LD}FLAGS to *_ENV to modify flags instead
PR: 157936
Submitted by: myself
Exp-runs by: pav
Approved by: pav