buildroot/package/openal/Config.in
Fabrice Fontaine 79f41c3e72 package/openal: needs gcc >= 4.9
openal uses std::max_align_t since version 1.20.0 and
585b0cf3be

As a result, it is affected by
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56019
and the build with gcc <= 4.8 will fail on:

/home/buildroot/autobuild/instance-2/output-1/build/openal-1.20.1/common/almalloc.cpp: In function 'void* al_malloc(size_t, size_t)':
/home/buildroot/autobuild/instance-2/output-1/build/openal-1.20.1/common/almalloc.cpp:20:45: error: 'max_align_t' is not a member of 'std'
     alignment = std::max(alignment, alignof(std::max_align_t));
                                             ^

Fixes:
 - http://autobuild.buildroot.org/results/589c7853ce334c7502f7cd4cdbcaaf3c6840f43b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-08-28 22:56:49 +02:00

35 lines
1.4 KiB
Plaintext

# openal can:
# - use __atomic_*() intrinsics when available
# - otherwise use __sync_*() intrinsics when available. It needs the
# 4-byte ones on 32 bits architectures, and the 4-byte and 8-byte
# one on 64 bits architecture
# - it also provides its one implementation of atomic operations on
# x86 and x86_64, but we dont take those into account since in most
# situations __atomic_*() or __sync_*() will be available, and not
# all x86 CPUs provide the necessary assembly instructions.
config BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
bool
default y if BR2_TOOLCHAIN_HAS_ATOMIC
default y if BR2_TOOLCHAIN_HAS_SYNC_4 && !BR2_ARCH_IS_64
default y if BR2_TOOLCHAIN_HAS_SYNC_4 && BR2_TOOLCHAIN_HAS_SYNC_8 && BR2_ARCH_IS_64
config BR2_PACKAGE_OPENAL
bool "openal"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11 PR56019
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
help
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.
http://kcat.strangesoft.net/openal.html
comment "openal needs a toolchain w/ NPTL, C++, gcc >= 4.9"
depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \
|| !BR2_INSTALL_LIBSTDCPP \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9