hc
2024-08-14 d5ef2fdafdb09de9c2f876fc0edf2ba6bf224909
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 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