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.
10 config BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
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
16 config BR2_PACKAGE_OPENAL
18 depends on BR2_INSTALL_LIBSTDCPP
19 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
20 depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
22 OpenAL provides capabilities for playing audio in a virtual
23 3D environment. Distance attenuation, doppler shift, and
24 directional sound emitters are among the features handled by
27 http://kcat.strangesoft.net/openal.html
29 comment "openal needs a toolchain w/ NPTL, C++"
30 depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
31 depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \
32 || !BR2_INSTALL_LIBSTDCPP