mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-07 03:20:28 +01:00
clover: Add --with-clang-libdir option and verify CLANG_RESOURCE_DIR
$CLANG_RESOURCE_DIR is the directory that contains all resources needed by clang to compile programs. When clover uses clang to compile kernels it needs to specify a resource dir, so that clang can find its internal headers (e.g. stddef.h). clang defines $CLANG_RESOURCE_DIR as $CLANG_LIBDIR/clang/$CLANG_VERSION This patch adds the --with-clang-libdir option in order to accommodate clang intalls to non-standard locations, and it also adds a check to the configure script to verify that $CLANG_RESOURCE_DIR/include contains the necessary header files.
This commit is contained in:
parent
82d25963a8
commit
ea76f03310
2 changed files with 18 additions and 1 deletions
17
configure.ac
17
configure.ac
|
|
@ -1610,6 +1610,12 @@ AC_ARG_WITH([libclc-path],
|
|||
[LIBCLC_PATH="$withval"],
|
||||
[LIBCLC_PATH=""])
|
||||
|
||||
AC_ARG_WITH([clang-libdir],
|
||||
[AS_HELP_STRING([--with-clang-libdir],
|
||||
[Path to Clang libraries @<:@default=llvm-config --libdir@:>@])],
|
||||
[CLANG_LIBDIR="$withval"],
|
||||
[CLANG_LIBDIR=""])
|
||||
|
||||
AC_SUBST([LIBCLC_PATH])
|
||||
|
||||
if test "x$enable_opencl" = xyes; then
|
||||
|
|
@ -1696,6 +1702,7 @@ AC_SUBST([LLVM_LIBS])
|
|||
AC_SUBST([LLVM_LDFLAGS])
|
||||
AC_SUBST([LLVM_INCLUDEDIR])
|
||||
AC_SUBST([LLVM_VERSION])
|
||||
AC_SUBST([CLANG_RESOURCE_DIR])
|
||||
|
||||
case "x$enable_opengl$enable_gles1$enable_gles2" in
|
||||
x*yes*)
|
||||
|
|
@ -1870,6 +1877,16 @@ if test "x$enable_gallium_llvm" = xyes; then
|
|||
LLVM_LIBDIR=`$LLVM_CONFIG --libdir`
|
||||
DEFINES="${DEFINES} -DHAVE_LLVM=`echo $LLVM_VERSION | sed -e 's/\([[0-9]]\)\.\([[0-9]]\)/0x0\10\2/g'`"
|
||||
MESA_LLVM=1
|
||||
|
||||
dnl Check for Clang interanl headers
|
||||
if test "x$enable_opencl" = xyes; then
|
||||
if test "x$CLANG_LIBDIR" = x; then
|
||||
CLANG_LIBDIR=${LLVM_LIBDIR}
|
||||
fi
|
||||
CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION}
|
||||
AC_CHECK_FILE("$CLANG_RESOURCE_DIR/include/stddef.h",,
|
||||
AC_MSG_ERROR([Could not find clang internal header stddef.h in $CLANG_RESOURCE_DIR Use --with-clang-libdir to specify the correct path to the clang libraries.]))
|
||||
fi
|
||||
else
|
||||
MESA_LLVM=0
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ libclllvm_la_CXXFLAGS = \
|
|||
$(LLVM_CPPFLAGS) \
|
||||
$(DEFINES) \
|
||||
-DLIBCLC_PATH=\"$(LIBCLC_PATH)/\" \
|
||||
-DCLANG_RESOURCE_DIR=\"$(LLVM_LIBDIR)/clang/$(LLVM_VERSION)/\"
|
||||
-DCLANG_RESOURCE_DIR=\"$(CLANG_RESOURCE_DIR)\"
|
||||
|
||||
libclllvm_la_SOURCES = \
|
||||
llvm/invocation.cpp
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue