mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 17:10:11 +01:00
meson/configure: detect endian.h instead of trying to guess when it's available
Cc: Maxin B. John <maxin.john@gmail.com> Cc: Khem Raj <raj.khem@gmail.com> Cc: Rob Herring <robh@kernel.org> Suggested-by: Jon Turney <jon.turney@dronecode.org.uk> Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Cc: <mesa-stable@lists.freedesktop.org> (cherry picked from commitcbee1bfb34) [Juan A. Suarez: resolve trivial conflicts] Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com> Conflicts: meson.build Squashed with: configure: use AC_CHECK_HEADERS to check for endian.h The currently we use the singular CHECK_HEADER combined with explicit append to the DEFINES variable. That is a legacy misnomer, since it requires us to add $DEFINES to every piece that we build. Using the plural version of the helper sets the HAVE_ macro for us, plus ensures it's passed to the compiler - if config.h is available in there (not in the case of mesa) otherwise on the command line. In hindsight, we should replace all the AC_CHECK_{FUNC,HEADER} instances with the plural version (or even the _ONCE suffixed version) and drop the DEFINES hacks. Fixes:cbee1bfb34("meson/configure: detect endian.h instead of trying to guess when it's available") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105717 Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Eric Engestrom <eric.engestrom@imgtec.com> Tested-by: Clayton Craft <clayton.a.craft@intel.com> (cherry picked from commit5a75019ad0)
This commit is contained in:
parent
fd6ded8f9c
commit
a602ef9352
5 changed files with 7 additions and 2 deletions
|
|
@ -70,6 +70,7 @@ LOCAL_CFLAGS += \
|
|||
-DHAVE_DLADDR \
|
||||
-DHAVE_DL_ITERATE_PHDR \
|
||||
-DHAVE_LINUX_FUTEX_H \
|
||||
-DHAVE_ENDIAN_H \
|
||||
-DHAVE_ZLIB \
|
||||
-DMAJOR_IN_SYSMACROS \
|
||||
-fvisibility=hidden \
|
||||
|
|
|
|||
|
|
@ -862,6 +862,7 @@ fi
|
|||
AC_HEADER_MAJOR
|
||||
AC_CHECK_HEADER([xlocale.h], [DEFINES="$DEFINES -DHAVE_XLOCALE_H"])
|
||||
AC_CHECK_HEADER([sys/sysctl.h], [DEFINES="$DEFINES -DHAVE_SYS_SYSCTL_H"])
|
||||
AC_CHECK_HEADERS([endian.h])
|
||||
AC_CHECK_FUNC([strtof], [DEFINES="$DEFINES -DHAVE_STRTOF"])
|
||||
AC_CHECK_FUNC([mkostemp], [DEFINES="$DEFINES -DHAVE_MKOSTEMP"])
|
||||
AC_CHECK_FUNC([timespec_get], [DEFINES="$DEFINES -DHAVE_TIMESPEC_GET"])
|
||||
|
|
|
|||
|
|
@ -838,7 +838,7 @@ elif cc.has_header_symbol('sys/mkdev.h', 'major')
|
|||
pre_args += '-DMAJOR_IN_MKDEV'
|
||||
endif
|
||||
|
||||
foreach h : ['xlocale.h', 'sys/sysctl.h', 'linux/futex.h']
|
||||
foreach h : ['xlocale.h', 'sys/sysctl.h', 'linux/futex.h', 'endian.h']
|
||||
if cc.has_header(h)
|
||||
pre_args += '-DHAVE_@0@'.format(h.to_upper().underscorify())
|
||||
endif
|
||||
|
|
|
|||
|
|
@ -352,6 +352,9 @@ def generate(env):
|
|||
if check_header(env, 'xlocale.h'):
|
||||
cppdefines += ['HAVE_XLOCALE_H']
|
||||
|
||||
if check_header(env, 'endian.h'):
|
||||
cppdefines += ['HAVE_ENDIAN_H']
|
||||
|
||||
if check_functions(env, ['strtod_l', 'strtof_l']):
|
||||
cppdefines += ['HAVE_STRTOD_L']
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
#ifndef U_ENDIAN_H
|
||||
#define U_ENDIAN_H
|
||||
|
||||
#if defined(__GLIBC__) || defined(ANDROID) || defined(__CYGWIN__)
|
||||
#ifdef HAVE_ENDIAN_H
|
||||
#include <endian.h>
|
||||
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue