fi
dnl AX_PTHREADS leaves PTHREAD_LIBS empty for gcc and sets PTHREAD_CFLAGS
dnl to -pthread, which causes problems if we need -lpthread to appear in
-dnl pkgconfig files.
-test -z "$PTHREAD_LIBS" && PTHREAD_LIBS="-lpthread"
+dnl pkgconfig files. Since Android doesn't have a pthread lib, this check
+dnl is not valid for that platform.
+if test "x$android" = xno; then
+ test -z "$PTHREAD_LIBS" && PTHREAD_LIBS="-lpthread"
+fi
dnl pthread-stubs is mandatory on targets where it exists
case "$host_os" in
AC_MSG_ERROR([Cannot enable shader cache (no SHA-1 implementation found)])
fi
fi
-AM_CONDITIONAL([ENABLE_SHADER_CACHE], [test x$enable_shader_cache = xyes])
if test "x$enable_shader_cache" = "xyes"; then
AC_DEFINE([ENABLE_SHADER_CACHE], [1], [Enable shader cache])
fi
[VULKAN_ICD_INSTALL_DIR='${datarootdir}/vulkan/icd.d'])
AC_SUBST([VULKAN_ICD_INSTALL_DIR])
-AC_ARG_ENABLE([vulkan-icd-full-driver-path],
- [AS_HELP_STRING([--disable-vulkan-icd-full-driver-path],
- [create Vulkan ICD files with just a .so name and no path])],
- [vulkan_icd_driver_path="$enableval"],
- [vulkan_icd_driver_path="yes"])
-AM_CONDITIONAL(VULKAN_ICD_DRIVER_PATH, test "x$vulkan_icd_driver_path" = xyes)
-
if test -n "$with_vulkan_drivers"; then
VULKAN_DRIVERS=`IFS=', '; echo $with_vulkan_drivers`
for driver in $VULKAN_DRIVERS; do
"x11,drm" @<:@default=auto@:>@])],
[with_egl_platforms="$withval"],
[if test "x$enable_egl" = xyes; then
- with_egl_platforms="x11"
+ if test "x$enable_gbm" = xyes; then
+ with_egl_platforms="x11,drm"
+ else
+ with_egl_platforms="x11"
+ fi
else
- with_egl_platforms=""
+ with_egl_platforms=""
fi])
if test "x$with_egl_platforms" != "x" -a "x$enable_egl" != xyes; then
;;
android)
+ PKG_CHECK_MODULES([ANDROID], [cutils hardware sync])
;;
*)
fi
}
-dnl This is for Glamor. Skip this if OpenGL is disabled.
-require_egl_drm() {
- if test "x$enable_opengl" = xno; then
- return 0
- fi
-
+dnl
+dnl DRM is needed by X, Wayland, and offscreen rendering.
+dnl Surfaceless is an alternative for the last one.
+dnl
+require_basic_egl() {
case "$with_egl_platforms" in
- *drm*)
+ *drm*|*surfaceless*)
;;
- *)
- AC_MSG_ERROR([--with-egl-platforms=drm is required to build the $1 driver.])
+ *)
+ AC_MSG_ERROR([$1 requires one of these:
+ 1) --with-egl-platforms=drm (X, Wayland, offscreen rendering based on DRM)
+ 2) --with-egl-platforms=surfaceless (offscreen only)
+ Recommended options: drm,x11])
;;
esac
- if test "x$enable_gbm" != xyes; then
- AC_MSG_ERROR([--enable-gbm is required to build the $1 driver.])
- fi
}
radeon_llvm_check() {
PKG_CHECK_MODULES([AMDGPU], [libdrm_amdgpu >= $LIBDRM_AMDGPU_REQUIRED])
require_libdrm "radeonsi"
radeon_gallium_llvm_check "radeonsi" "3" "6" "0"
- require_egl_drm "radeonsi"
+ require_basic_egl "radeonsi"
;;
xnouveau)
HAVE_GALLIUM_NOUVEAU=yes
xvirgl)
HAVE_GALLIUM_VIRGL=yes
require_libdrm "virgl"
- require_egl_drm "virgl"
+ require_basic_egl "virgl"
;;
*)
AC_MSG_ERROR([Unknown Gallium driver: $driver])
AC_SUBST([XA_TINY], $XA_TINY)
AC_SUBST([XA_VERSION], "$XA_MAJOR.$XA_MINOR.$XA_TINY")
-AC_SUBST([TIMESTAMP_CMD], '`test $(SOURCE_DATE_EPOCH) && echo $(SOURCE_DATE_EPOCH) || date +%s`')
-
AC_ARG_ENABLE(valgrind,
[AS_HELP_STRING([--enable-valgrind],
[Build mesa with valgrind support (default: auto)])],
AC_CONFIG_FILES([Makefile
src/Makefile
src/amd/Makefile
- src/amd/common/Makefile
src/amd/vulkan/Makefile
src/compiler/Makefile
src/egl/Makefile