cmake: Don't trust the HAVE_IMMINTRIN_H check on Apple targets.

Otherwise universal builds might try to include an Intel-specific header
on ARM builds, etc.

Fixes #4753.
This commit is contained in:
Ryan C. Gordon 2021-09-18 10:31:37 -04:00
parent ba9e2299b3
commit bf1d7a3a15
No known key found for this signature in database
GPG Key ID: FA148B892AB48044
1 changed files with 13 additions and 1 deletions

View File

@ -222,7 +222,19 @@
#cmakedefine HAVE_INOTIFY_INIT 1
#cmakedefine HAVE_INOTIFY_INIT1 1
#cmakedefine HAVE_INOTIFY 1
#cmakedefine HAVE_IMMINTRIN_H 1
/* Apple platforms might be building universal binaries, where Intel builds
can use immintrin.h but other architectures can't. */
#ifdef __APPLE__
# if defined(__has_include) && (defined(__i386__) || defined(__x86_64))
# if __has_include(<immintrin.h>)
# define HAVE_IMMINTRIN_H 1
# endif
# endif
#else /* non-Apple platforms can use the normal CMake check for this.
# cmakedefine HAVE_IMMINTRIN_H 1
#endif
#cmakedefine HAVE_LIBUDEV_H 1
#cmakedefine HAVE_LIBSAMPLERATE_H 1
#cmakedefine HAVE_LIBDECOR_H 1