xref: /OK3568_Linux_fs/buildroot/package/openal/Config.in (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1# openal can:
2# - use __atomic_*() intrinsics when available
3# - otherwise use __sync_*() intrinsics when available. It needs the
4#   4-byte ones on 32 bits architectures, and the 4-byte and 8-byte
5#   one on 64 bits architecture
6# - it also provides its one implementation of atomic operations on
7#   x86 and x86_64, but we dont take those into account since in most
8#   situations __atomic_*() or __sync_*() will be available, and not
9#   all x86 CPUs provide the necessary assembly instructions.
10config BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
11	bool
12	default y if BR2_TOOLCHAIN_HAS_ATOMIC
13	default y if BR2_TOOLCHAIN_HAS_SYNC_4 && !BR2_ARCH_IS_64
14	default y if BR2_TOOLCHAIN_HAS_SYNC_4 && BR2_TOOLCHAIN_HAS_SYNC_8 && BR2_ARCH_IS_64
15
16config BR2_PACKAGE_OPENAL
17	bool "openal"
18	depends on BR2_INSTALL_LIBSTDCPP
19	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11 PR56019
20	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
21	depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
22	help
23	  OpenAL provides capabilities for playing audio in a virtual
24	  3D environment. Distance attenuation, doppler shift, and
25	  directional sound emitters are among the features handled by
26	  the API.
27
28	  http://kcat.strangesoft.net/openal.html
29
30comment "openal needs a toolchain w/ NPTL, C++, gcc >= 4.9"
31	depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
32	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \
33		|| !BR2_INSTALL_LIBSTDCPP \
34		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
35