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