1 dnl Process this file with autoconf to create configure.
5 dnl Tell the user about autoconf.html in the --help output
6 m4_divert_once([HELP_END], [
7 See docs/autoconf.html for more details on the options for Mesa.])
9 AC_INIT([Mesa], [9.2.0],
10 [https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa])
11 AC_CONFIG_AUX_DIR([bin])
12 AC_CONFIG_MACRO_DIR([m4])
14 AM_INIT_AUTOMAKE([foreign])
16 dnl http://people.gnome.org/~walters/docs/build-api.txt
17 dnl We don't support srcdir != builddir.
18 echo \#buildapi-variable-no-builddir >/dev/null
20 # Support silent build rules, requires at least automake-1.11. Disable
21 # by either passing --disable-silent-rules to configure or passing V=1
23 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
24 [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
26 m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
28 dnl Set internal versions
30 AC_SUBST([OSMESA_VERSION])
32 dnl Versions for external dependencies
33 LIBDRM_REQUIRED=2.4.24
34 LIBDRM_RADEON_REQUIRED=2.4.42
35 LIBDRM_INTEL_REQUIRED=2.4.38
36 LIBDRM_NVVIEUX_REQUIRED=2.4.33
37 LIBDRM_NOUVEAU_REQUIRED="2.4.33 libdrm >= 2.4.41"
38 LIBDRM_FREEDRENO_REQUIRED=2.4.39
39 DRI2PROTO_REQUIRED=2.6
40 GLPROTO_REQUIRED=1.4.14
41 LIBDRM_XORG_REQUIRED=2.4.24
42 LIBKMS_XORG_REQUIRED=1.0.0
52 AC_CHECK_PROGS([MAKE], [gmake make])
53 AC_CHECK_PROGS([PYTHON2], [python2 python])
54 AX_PYTHON_MODULE([libxml2], [needed])
59 LT_INIT([disable-static])
62 AS_IF([test ! -f "$srcdir/src/glsl/glcpp/glcpp-parse.c"],
63 [AC_MSG_ERROR([bison not found - unable to compile glcpp-parse.y])]))
65 AS_IF([test ! -f "$srcdir/src/glsl/glcpp/glcpp-lex.c"],
66 [AC_MSG_ERROR([flex not found - unable to compile glcpp-lex.l])]))
68 AC_PATH_PROG([PERL], [perl])
70 AC_CHECK_PROG(INDENT, indent, indent, cat)
71 if test "x$INDENT" != "xcat"; then
72 AC_SUBST(INDENT_FLAGS, '-i4 -nut -br -brs -npcs -ce -TGLubyte -TGLbyte -TBool')
77 dnl We need a POSIX shell for parts of the build. Assume we have one
81 # Solaris /bin/sh is too old/non-POSIX compliant
82 AC_PATH_PROGS(POSIX_SHELL, [ksh93 ksh sh])
87 dnl clang is mostly GCC-compatible, but its version is much lower,
88 dnl so we have to check for it.
89 AC_MSG_CHECKING([if compiling with clang])
92 [AC_LANG_PROGRAM([], [[
97 [acv_mesa_CLANG=yes], [acv_mesa_CLANG=no])
99 AC_MSG_RESULT([$acv_mesa_CLANG])
101 dnl If we're using GCC, make sure that it is at least version 3.3.0. Older
102 dnl versions are explictly not supported.
103 if test "x$GCC" = xyes -a "x$acv_mesa_CLANG" = xno; then
104 AC_MSG_CHECKING([whether gcc version is sufficient])
108 GCC_VERSION=`$CC -dumpversion`
109 if test $? -eq 0; then
110 GCC_VERSION_MAJOR=`echo $GCC_VERSION | cut -d. -f1`
111 GCC_VERSION_MINOR=`echo $GCC_VERSION | cut -d. -f2`
114 if test $GCC_VERSION_MAJOR -lt 3 -o $GCC_VERSION_MAJOR -eq 3 -a $GCC_VERSION_MINOR -lt 3 ; then
116 AC_MSG_ERROR([If using GCC, version 3.3.0 or later is required.])
122 dnl Make sure the pkg-config macros are defined
123 m4_ifndef([PKG_PROG_PKG_CONFIG],
124 [m4_fatal([Could not locate the pkg-config autoconf macros.
125 These are usually located in /usr/share/aclocal/pkg.m4. If your macros
126 are in a different location, try setting the environment variable
127 ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
128 PKG_PROG_PKG_CONFIG()
130 dnl LIB_DIR - library basename
131 LIB_DIR=`echo $libdir | $SED 's%.*/%%'`
134 dnl Cache LDFLAGS and CPPFLAGS so we can add to them and restore later
135 _SAVE_LDFLAGS="$LDFLAGS"
136 _SAVE_CPPFLAGS="$CPPFLAGS"
138 dnl build host compiler macros
140 AC_SUBST([DEFINES_FOR_BUILD])
143 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -D_GNU_SOURCE"
146 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -DSVR4"
149 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD"
158 DEFINES="$DEFINES -D_GNU_SOURCE -DHAVE_PTHREAD"
161 DEFINES="$DEFINES -DHAVE_PTHREAD -DSVR4"
164 DEFINES="$DEFINES -DHAVE_PTHREAD"
168 dnl Add flags for gcc and g++
169 if test "x$GCC" = xyes; then
172 CFLAGS="$CFLAGS -Wall -std=gnu99"
175 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -Wall -std=c99"
176 CFLAGS="$CFLAGS -Wall -std=c99"
180 # Enable -Werror=implicit-function-declaration and
181 # -Werror=missing-prototypes, if available, or otherwise, just
182 # -Wmissing-prototypes. This is particularly useful to avoid
183 # generating a loadable driver module that has undefined symbols.
184 save_CFLAGS="$CFLAGS"
185 AC_MSG_CHECKING([whether $CC supports -Werror=missing-prototypes])
186 CFLAGS="$CFLAGS -Werror=implicit-function-declaration"
187 CFLAGS="$CFLAGS -Werror=missing-prototypes"
188 AC_LINK_IFELSE([AC_LANG_PROGRAM()],
189 AC_MSG_RESULT([yes]),
190 [CFLAGS="$save_CFLAGS -Wmissing-prototypes";
191 AC_MSG_RESULT([no])]);
193 # Enable -fvisibility=hidden if using a gcc that supports it
194 save_CFLAGS="$CFLAGS"
195 AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
196 VISIBILITY_CFLAGS="-fvisibility=hidden"
197 CFLAGS="$CFLAGS $VISIBILITY_CFLAGS"
198 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
199 [VISIBILITY_CFLAGS=""; AC_MSG_RESULT([no])]);
201 # Restore CFLAGS; VISIBILITY_CFLAGS are added to it where needed.
204 # Work around aliasing bugs - developers should comment this out
205 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -fno-strict-aliasing"
206 CFLAGS="$CFLAGS -fno-strict-aliasing"
208 # gcc's builtin memcmp is slower than glibc's
209 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
210 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -fno-builtin-memcmp"
211 CFLAGS="$CFLAGS -fno-builtin-memcmp"
213 if test "x$GXX" = xyes; then
214 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -Wall"
215 CXXFLAGS="$CXXFLAGS -Wall"
217 # Enable -fvisibility=hidden if using a gcc that supports it
218 save_CXXFLAGS="$CXXFLAGS"
219 AC_MSG_CHECKING([whether $CXX supports -fvisibility=hidden])
220 VISIBILITY_CXXFLAGS="-fvisibility=hidden"
221 CXXFLAGS="$CXXFLAGS $VISIBILITY_CXXFLAGS"
223 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
224 [VISIBILITY_CXXFLAGS="" ; AC_MSG_RESULT([no])]);
227 # Restore CXXFLAGS; VISIBILITY_CXXFLAGS are added to it where needed.
228 CXXFLAGS=$save_CXXFLAGS
230 # Work around aliasing bugs - developers should comment this out
231 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -fno-strict-aliasing"
232 CXXFLAGS="$CXXFLAGS -fno-strict-aliasing"
234 # gcc's builtin memcmp is slower than glibc's
235 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
236 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -fno-builtin-memcmp"
237 CXXFLAGS="$CXXFLAGS -fno-builtin-memcmp"
240 dnl even if the compiler appears to support it, using visibility attributes isn't
241 dnl going to do anything useful currently on cygwin apart from emit lots of warnings
245 VISIBILITY_CXXFLAGS=""
249 AC_SUBST([VISIBILITY_CFLAGS])
250 AC_SUBST([VISIBILITY_CXXFLAGS])
253 dnl Hacks to enable 32 or 64 bit build
255 AC_ARG_ENABLE([32-bit],
256 [AS_HELP_STRING([--enable-32-bit],
257 [build 32-bit libraries @<:@default=auto@:>@])],
258 [enable_32bit="$enableval"],
261 if test "x$enable_32bit" = xyes; then
262 if test "x$GCC" = xyes; then
263 CFLAGS="$CFLAGS -m32"
264 CCASFLAGS="$CCASFLAGS -m32"
266 if test "x$GXX" = xyes; then
267 CXXFLAGS="$CXXFLAGS -m32"
270 AC_ARG_ENABLE([64-bit],
271 [AS_HELP_STRING([--enable-64-bit],
272 [build 64-bit libraries @<:@default=auto@:>@])],
273 [enable_64bit="$enableval"],
276 if test "x$enable_64bit" = xyes; then
277 if test "x$GCC" = xyes; then
278 CFLAGS="$CFLAGS -m64"
280 if test "x$GXX" = xyes; then
281 CXXFLAGS="$CXXFLAGS -m64"
285 dnl Can't have static and shared libraries, default to static if user
286 dnl explicitly requested. If both disabled, set to static since shared
287 dnl was explicitly requested.
288 case "x$enable_static$enable_shared" in
290 AC_MSG_WARN([Cannot build static and shared libraries, disabling shared])
294 AC_MSG_WARN([Cannot disable both static and shared libraries, enabling static])
299 AM_CONDITIONAL(BUILD_SHARED, test "x$enable_shared" = xyes)
302 dnl other compiler options
304 AC_ARG_ENABLE([debug],
305 [AS_HELP_STRING([--enable-debug],
306 [use debug compiler flags and macros @<:@default=disabled@:>@])],
307 [enable_debug="$enableval"],
310 if test "x$enable_debug" = xyes; then
311 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -DDEBUG"
312 if test "x$GCC_FOR_BUILD" = xyes; then
313 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -g -O0"
315 if test "x$GXX_FOR_BUILD" = xyes; then
316 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -g -O0"
319 DEFINES="$DEFINES -DDEBUG"
320 if test "x$GCC" = xyes; then
321 CFLAGS="$CFLAGS -g -O0"
323 if test "x$GXX" = xyes; then
324 CXXFLAGS="$CXXFLAGS -g -O0"
331 LIB_PREFIX_GLOB='lib'
332 LIB_VERSION_SEPARATOR='.'
333 if test "$enable_static" = yes; then
338 LIB_EXTENSION='dylib' ;;
340 dnl prefix can be 'cyg' or 'lib'
341 LIB_PREFIX_GLOB='???'
342 LIB_VERSION_SEPARATOR='-'
343 LIB_EXTENSION='dll' ;;
347 LIB_EXTENSION='so' ;;
350 AC_ARG_WITH([gl-lib-name],
351 [AS_HELP_STRING([--with-gl-lib-name@<:@=NAME@:>@],
352 [specify GL library name @<:@default=GL@:>@])],
355 AC_ARG_WITH([osmesa-lib-name],
356 [AS_HELP_STRING([--with-osmesa-lib-name@<:@=NAME@:>@],
357 [specify OSMesa library name @<:@default=OSMesa@:>@])],
358 [OSMESA_LIB=$withval],
360 AS_IF([test "x$GL_LIB" = xyes], [GL_LIB=GL])
361 AS_IF([test "x$OSMESA_LIB" = xyes], [OSMESA_LIB=OSMesa])
364 dnl Mangled Mesa support
366 AC_ARG_ENABLE([mangling],
367 [AS_HELP_STRING([--enable-mangling],
368 [enable mangled symbols and library name @<:@default=disabled@:>@])],
369 [enable_mangling="${enableval}"],
372 if test "x${enable_mangling}" = "xyes" ; then
373 DEFINES="${DEFINES} -DUSE_MGL_NAMESPACE"
374 GL_LIB="Mangled${GL_LIB}"
375 OSMESA_LIB="Mangled${OSMESA_LIB}"
378 AC_SUBST([OSMESA_LIB])
381 dnl potentially-infringing-but-nobody-knows-for-sure stuff
383 AC_ARG_ENABLE([texture-float],
384 [AS_HELP_STRING([--enable-texture-float],
385 [enable floating-point textures and renderbuffers @<:@default=disabled@:>@])],
386 [enable_texture_float="$enableval"],
387 [enable_texture_float=no]
389 if test "x$enable_texture_float" = xyes; then
390 AC_MSG_WARN([Floating-point textures enabled.])
391 AC_MSG_WARN([Please consult docs/patents.txt with your lawyer before building Mesa.])
392 DEFINES="$DEFINES -DTEXTURE_FLOAT_ENABLED"
395 GL_LIB_NAME='lib$(GL_LIB).'${LIB_EXTENSION}
396 OSMESA_LIB_NAME='lib$(OSMESA_LIB).'${LIB_EXTENSION}
397 EGL_LIB_NAME='lib$(EGL_LIB).'${LIB_EXTENSION}
398 GLESv1_CM_LIB_NAME='lib$(GLESv1_CM_LIB).'${LIB_EXTENSION}
399 GLESv2_LIB_NAME='lib$(GLESv2_LIB).'${LIB_EXTENSION}
400 VG_LIB_NAME='lib$(VG_LIB).'${LIB_EXTENSION}
401 GLAPI_LIB_NAME='lib$(GLAPI_LIB).'${LIB_EXTENSION}
403 GL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
404 EGL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(EGL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
405 EGL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(EGL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
406 GLESv1_CM_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLESv1_CM_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
407 GLESv2_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLESv2_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
408 VG_LIB_GLOB=${LIB_PREFIX_GLOB}'$(VG_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
409 GLAPI_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLAPI_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
411 AC_SUBST([GL_LIB_NAME])
412 AC_SUBST([OSMESA_LIB_NAME])
413 AC_SUBST([EGL_LIB_NAME])
414 AC_SUBST([GLESv1_CM_LIB_NAME])
415 AC_SUBST([GLESv2_LIB_NAME])
416 AC_SUBST([VG_LIB_NAME])
417 AC_SUBST([GLAPI_LIB_NAME])
419 AC_SUBST([GL_LIB_GLOB])
420 AC_SUBST([EGL_LIB_GLOB])
421 AC_SUBST([GLESv1_CM_LIB_GLOB])
422 AC_SUBST([GLESv2_LIB_GLOB])
423 AC_SUBST([VG_LIB_GLOB])
424 AC_SUBST([GLAPI_LIB_GLOB])
427 dnl Arch/platform-specific settings
430 [AS_HELP_STRING([--disable-asm],
431 [disable assembly usage @<:@default=enabled on supported plaforms@:>@])],
432 [enable_asm="$enableval"],
436 AC_MSG_CHECKING([whether to enable assembly])
437 test "x$enable_asm" = xno && AC_MSG_RESULT([no])
438 # disable if cross compiling on x86/x86_64 since we must run gen_matypes
439 if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then
443 AC_MSG_RESULT([no, cross compiling])
447 # check for supported arches
448 if test "x$enable_asm" = xyes; then
452 linux* | *freebsd* | dragonfly* | *netbsd*)
453 test "x$enable_64bit" = xyes && asm_arch=x86_64 || asm_arch=x86
462 linux* | *freebsd* | dragonfly* | *netbsd*)
463 test "x$enable_32bit" = xyes && asm_arch=x86 || asm_arch=x86_64
478 DEFINES="$DEFINES -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM"
479 AC_MSG_RESULT([yes, x86])
482 DEFINES="$DEFINES -DUSE_X86_64_ASM"
483 AC_MSG_RESULT([yes, x86_64])
486 DEFINES="$DEFINES -DUSE_SPARC_ASM"
487 AC_MSG_RESULT([yes, sparc])
490 AC_MSG_RESULT([no, platform not supported])
495 dnl Check to see if dlopen is in default libraries (like Solaris, which
496 dnl has it in libc), or if libdl is needed to get it.
497 AC_CHECK_FUNC([dlopen], [DEFINES="$DEFINES -DHAVE_DLOPEN"],
498 [AC_CHECK_LIB([dl], [dlopen],
499 [DEFINES="$DEFINES -DHAVE_DLOPEN"; DLOPEN_LIBS="-ldl"])])
500 AC_SUBST([DLOPEN_LIBS])
506 AC_CHECK_FUNCS([clock_gettime], [CLOCK_LIB=],
507 [AC_CHECK_LIB([rt], [clock_gettime], [CLOCK_LIB=-lrt],
508 [AC_MSG_ERROR([Couldn't find clock_gettime])])])
509 AC_SUBST([CLOCK_LIB])
513 dnl See if posix_memalign is available
514 AC_CHECK_FUNC([posix_memalign], [DEFINES="$DEFINES -DHAVE_POSIX_MEMALIGN"])
516 dnl Check for pthreads
518 dnl AX_PTHREADS leaves PTHREAD_LIBS empty for gcc and sets PTHREAD_CFLAGS
519 dnl to -pthread, which causes problems if we need -lpthread to appear in
521 test -z "$PTHREAD_LIBS" && PTHREAD_LIBS="-lpthread"
523 dnl SELinux awareness.
524 AC_ARG_ENABLE([selinux],
525 [AS_HELP_STRING([--enable-selinux],
526 [Build SELinux-aware Mesa @<:@default=disabled@:>@])],
527 [MESA_SELINUX="$enableval"],
529 if test "x$enable_selinux" = "xyes"; then
530 AC_CHECK_HEADER([selinux/selinux.h],[],
531 [AC_MSG_ERROR([SELinux headers not found])])
532 AC_CHECK_LIB([selinux],[is_selinux_enabled],[],
533 [AC_MSG_ERROR([SELinux library not found])])
534 SELINUX_LIBS="-lselinux"
535 DEFINES="$DEFINES -DMESA_SELINUX"
537 AC_SUBST([SELINUX_LIBS])
540 AC_ARG_ENABLE([opengl],
541 [AS_HELP_STRING([--disable-opengl],
542 [disable support for standard OpenGL API @<:@default=no@:>@])],
543 [enable_opengl="$enableval"],
545 AC_ARG_ENABLE([gles1],
546 [AS_HELP_STRING([--enable-gles1],
547 [enable support for OpenGL ES 1.x API @<:@default=no@:>@])],
548 [enable_gles1="$enableval"],
550 AC_ARG_ENABLE([gles2],
551 [AS_HELP_STRING([--enable-gles2],
552 [enable support for OpenGL ES 2.x API @<:@default=no@:>@])],
553 [enable_gles2="$enableval"],
555 AC_ARG_ENABLE([openvg],
556 [AS_HELP_STRING([--enable-openvg],
557 [enable support for OpenVG API @<:@default=no@:>@])],
558 [enable_openvg="$enableval"],
562 [AS_HELP_STRING([--enable-dri],
563 [enable DRI modules @<:@default=enabled@:>@])],
564 [enable_dri="$enableval"],
567 [AS_HELP_STRING([--enable-glx],
568 [enable GLX library @<:@default=enabled@:>@])],
569 [enable_glx="$enableval"],
571 AC_ARG_ENABLE([osmesa],
572 [AS_HELP_STRING([--enable-osmesa],
573 [enable OSMesa library @<:@default=disabled@:>@])],
574 [enable_osmesa="$enableval"],
577 [AS_HELP_STRING([--disable-egl],
578 [disable EGL library @<:@default=enabled@:>@])],
579 [enable_egl="$enableval"],
582 AC_ARG_ENABLE([xorg],
583 [AS_HELP_STRING([--enable-xorg],
584 [enable support for X.Org DDX API @<:@default=no@:>@])],
585 [enable_xorg="$enableval"],
588 [AS_HELP_STRING([--enable-xa],
589 [enable build of the XA X Acceleration API @<:@default=no@:>@])],
590 [enable_xa="$enableval"],
593 [AS_HELP_STRING([--enable-gbm],
594 [enable gbm library @<:@default=auto@:>@])],
595 [enable_gbm="$enableval"],
598 AC_ARG_ENABLE([xvmc],
599 [AS_HELP_STRING([--enable-xvmc],
600 [enable xvmc library @<:@default=auto@:>@])],
601 [enable_xvmc="$enableval"],
603 AC_ARG_ENABLE([vdpau],
604 [AS_HELP_STRING([--enable-vdpau],
605 [enable vdpau library @<:@default=auto@:>@])],
606 [enable_vdpau="$enableval"],
608 AC_ARG_ENABLE([opencl],
609 [AS_HELP_STRING([--enable-opencl],
610 [enable OpenCL library NOTE: Enabling this option will also enable
611 --with-llvm-shared-libs
612 @<:@default=no@:>@])],
615 AC_ARG_ENABLE([xlib_glx],
616 [AS_HELP_STRING([--enable-xlib-glx],
617 [make GLX library Xlib-based instead of DRI-based @<:@default=disabled@:>@])],
618 [enable_xlib_glx="$enableval"],
619 [enable_xlib_glx=no])
620 AC_ARG_ENABLE([gallium_egl],
621 [AS_HELP_STRING([--enable-gallium-egl],
622 [enable optional EGL state tracker (not required
623 for EGL support in Gallium with OpenGL and OpenGL ES)
624 @<:@default=disable@:>@])],
625 [enable_gallium_egl="$enableval"],
626 [enable_gallium_egl=no])
627 AC_ARG_ENABLE([gallium_gbm],
628 [AS_HELP_STRING([--enable-gallium-gbm],
629 [enable optional gbm state tracker (not required for
630 gbm support in Gallium)
631 @<:@default=auto@:>@])],
632 [enable_gallium_gbm="$enableval"],
633 [enable_gallium_gbm=auto])
635 AC_ARG_ENABLE([r600-llvm-compiler],
636 [AS_HELP_STRING([--enable-r600-llvm-compiler],
637 [Enable experimental LLVM backend for graphics shaders @<:@default=disable@:>@])],
638 [enable_r600_llvm="$enableval"],
639 [enable_r600_llvm=no])
641 AC_ARG_ENABLE([gallium_tests],
642 [AS_HELP_STRING([--enable-gallium-tests],
643 [Enable optional Gallium tests) @<:@default=disable@:>@])],
644 [enable_gallium_tests="$enableval"],
645 [enable_gallium_tests=no])
647 # Option for Gallium drivers
649 # Keep this in sync with the --with-gallium-drivers help string default value
650 GALLIUM_DRIVERS_DEFAULT="r300,r600,svga,swrast"
652 AC_ARG_WITH([gallium-drivers],
653 [AS_HELP_STRING([--with-gallium-drivers@<:@=DIRS...@:>@],
654 [comma delimited Gallium drivers list, e.g.
655 "i915,nouveau,r300,r600,radeonsi,freedreno,svga,swrast"
656 @<:@default=r300,r600,svga,swrast@:>@])],
657 [with_gallium_drivers="$withval"],
658 [with_gallium_drivers="$GALLIUM_DRIVERS_DEFAULT"])
660 # Doing '--without-gallium-drivers' will set this variable to 'no'. Clear it
661 # here so that the script doesn't choke on an unknown driver name later.
662 case "$with_gallium_drivers" in
663 yes) with_gallium_drivers="$GALLIUM_DRIVERS_DEFAULT" ;;
664 no) with_gallium_drivers='' ;;
667 if test "x$enable_opengl" = xno -a \
668 "x$enable_gles1" = xno -a \
669 "x$enable_gles2" = xno -a \
670 "x$enable_openvg" = xno -a \
671 "x$enable_xorg" = xno -a \
672 "x$enable_xa" = xno -a \
673 "x$enable_xvmc" = xno -a \
674 "x$enable_vdpau" = xno -a \
675 "x$enable_opencl" = xno; then
676 AC_MSG_ERROR([at least one API should be enabled])
680 if test "x$enable_opengl" = xno; then
681 API_DEFINES="$API_DEFINES -DFEATURE_GL=0"
683 API_DEFINES="$API_DEFINES -DFEATURE_GL=1"
685 if test "x$enable_gles1" = xyes; then
686 API_DEFINES="$API_DEFINES -DFEATURE_ES1=1"
688 if test "x$enable_gles2" = xyes; then
689 API_DEFINES="$API_DEFINES -DFEATURE_ES2=1"
691 AC_SUBST([API_DEFINES])
693 AM_CONDITIONAL(HAVE_OPENGL, test "x$enable_opengl" = xyes)
694 AM_CONDITIONAL(HAVE_OPENGL_ES1, test "x$enable_gles1" = xyes)
695 AM_CONDITIONAL(HAVE_OPENGL_ES2, test "x$enable_gles2" = xyes)
696 AM_CONDITIONAL(NEED_OPENGL_COMMON, test "x$enable_opengl" = xyes -o \
697 "x$enable_gles1" = xyes -o \
698 "x$enable_gles2" = xyes)
700 if test "x$enable_glx" = xno; then
701 AC_MSG_WARN([GLX disabled, disabling Xlib-GLX])
705 if test "x$enable_dri$enable_xlib_glx" = xyesyes; then
706 AC_MSG_ERROR([DRI and Xlib-GLX cannot be built together])
709 if test "x$enable_opengl$enable_xlib_glx" = xnoyes; then
710 AC_MSG_ERROR([Xlib-GLX cannot be built without OpenGL])
713 # Disable GLX if OpenGL is not enabled
714 if test "x$enable_glx$enable_opengl" = xyesno; then
715 AC_MSG_WARN([OpenGL not enabled, disabling GLX])
719 # Disable GLX if DRI and Xlib-GLX are not enabled
720 if test "x$enable_glx" = xyes -a \
721 "x$enable_dri" = xno -a \
722 "x$enable_xlib_glx" = xno; then
723 AC_MSG_WARN([Neither DRI nor Xlib-GLX enabled, disabling GLX])
727 AM_CONDITIONAL(HAVE_DRI_GLX, test "x$enable_glx" = xyes -a \
728 "x$enable_dri" = xyes)
729 AM_CONDITIONAL(HAVE_DRI, test "x$enable_dri" = xyes)
730 AM_CONDITIONAL(NEED_LIBMESA, test "x$enable_xlib_glx" = xyes -o \
731 "x$enable_osmesa" = xyes)
733 AC_ARG_ENABLE([shared-glapi],
734 [AS_HELP_STRING([--enable-shared-glapi],
735 [Enable shared glapi for OpenGL @<:@default=yes@:>@])],
736 [enable_shared_glapi="$enableval"],
737 [enable_shared_glapi="$enable_dri"])
739 # Shared GLAPI is only useful for DRI
740 if test "x$enable_dri" = xno; then
741 AC_MSG_NOTICE([Shared GLAPI is only useful for DRI, disabling])
742 enable_shared_glapi=no
745 if test "x$enable_shared_glapi" = xyes; then
746 # libGL will use libglapi for function lookups (IN_DRI_DRIVER means to use
748 DEFINES="$DEFINES -DIN_DRI_DRIVER"
750 AM_CONDITIONAL(HAVE_SHARED_GLAPI, test "x$enable_shared_glapi" = xyes)
753 dnl Driver specific build directories
755 GALLIUM_TARGET_DIRS=""
756 GALLIUM_WINSYS_DIRS="sw"
757 GALLIUM_DRIVERS_DIRS="galahad trace rbug noop identity"
758 GALLIUM_STATE_TRACKERS_DIRS=""
760 case "x$enable_glx$enable_xlib_glx" in
762 DRIVER_DIRS="$DRIVER_DIRS x11"
763 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib"
764 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS libgl-xlib"
765 GALLIUM_STATE_TRACKERS_DIRS="glx $GALLIUM_STATE_TRACKERS_DIRS"
766 HAVE_WINSYS_XLIB="yes"
770 if test "x$enable_dri" = xyes; then
771 DRIVER_DIRS="$DRIVER_DIRS dri"
773 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/dri"
774 GALLIUM_STATE_TRACKERS_DIRS="dri $GALLIUM_STATE_TRACKERS_DIRS"
778 if test "x$enable_osmesa" = xyes; then
779 DRIVER_DIRS="$DRIVER_DIRS osmesa"
780 GALLIUM_STATE_TRACKERS_DIRS="osmesa $GALLIUM_STATE_TRACKERS_DIRS"
781 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS osmesa"
784 AC_SUBST([DRIVER_DIRS])
785 AC_SUBST([GALLIUM_TARGET_DIRS])
786 AC_SUBST([GALLIUM_WINSYS_DIRS])
787 AC_SUBST([GALLIUM_STATE_TRACKERS_DIRS])
788 AC_SUBST([MESA_LLVM])
791 PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED],
792 [have_libdrm=yes], [have_libdrm=no])
794 if test "x$enable_dri" = xyes; then
795 # DRI must be shared, I think
796 if test "$enable_static" = yes; then
797 AC_MSG_ERROR([Cannot use static libraries for DRI drivers])
800 # not a hard requirement as swrast does not depend on it
801 if test "x$have_libdrm" = xyes; then
802 DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED"
806 dnl Direct rendering or just indirect rendering
809 dnl Disable by default on GNU/Hurd
810 driglx_direct_default="no"
813 dnl Disable by default on cygwin
814 driglx_direct_default="no"
817 driglx_direct_default="yes"
820 AC_ARG_ENABLE([driglx-direct],
821 [AS_HELP_STRING([--disable-driglx-direct],
822 [disable direct rendering in GLX and EGL for DRI \
823 @<:@default=auto@:>@])],
824 [driglx_direct="$enableval"],
825 [driglx_direct="$driglx_direct_default"])
828 dnl libGL configuration per driver
830 case "x$enable_glx$enable_xlib_glx" in
833 PKG_CHECK_MODULES([XLIBGL], [x11 xext])
834 GL_PC_REQ_PRIV="x11 xext"
835 X11_INCLUDES="$X11_INCLUDES $XLIBGL_CFLAGS"
836 GL_LIB_DEPS="$XLIBGL_LIBS"
837 GL_LIB_DEPS="$GL_LIB_DEPS $SELINUX_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
838 GL_PC_LIB_PRIV="$GL_PC_LIB_PRIV $SELINUX_LIBS -lm $PTHREAD_LIBS"
842 PKG_CHECK_MODULES([GLPROTO], [glproto >= $GLPROTO_REQUIRED])
843 if test x"$driglx_direct" = xyes; then
844 if test "x$have_libdrm" != xyes; then
845 AC_MSG_ERROR([Direct rendering requires libdrm >= $LIBDRM_REQUIRED])
847 PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED])
848 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV libdrm >= $LIBDRM_REQUIRED"
851 # find the DRI deps for libGL
852 dri_modules="x11 xext xdamage xfixes x11-xcb xcb-glx >= 1.8.1 xcb-dri2 >= 1.8"
854 # add xf86vidmode if available
855 PKG_CHECK_MODULES([XF86VIDMODE], [xxf86vm], HAVE_XF86VIDMODE=yes, HAVE_XF86VIDMODE=no)
856 if test "$HAVE_XF86VIDMODE" = yes ; then
857 dri_modules="$dri_modules xxf86vm"
860 PKG_CHECK_MODULES([DRIGL], [$dri_modules])
861 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV $dri_modules"
862 X11_INCLUDES="$X11_INCLUDES $DRIGL_CFLAGS"
863 GL_LIB_DEPS="$DRIGL_LIBS"
865 # need DRM libs, $PTHREAD_LIBS, etc.
866 GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
867 GL_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
871 # This is outside the case (above) so that it is invoked even for non-GLX
873 AM_CONDITIONAL(HAVE_XF86VIDMODE, test "x$HAVE_XF86VIDMODE" = xyes)
875 GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
876 GLESv1_CM_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
877 GLESv2_LIB_DEPS="$LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
878 GLESv2_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
880 AC_SUBST([X11_INCLUDES])
881 AC_SUBST([GL_LIB_DEPS])
882 AC_SUBST([GL_PC_REQ_PRIV])
883 AC_SUBST([GL_PC_LIB_PRIV])
884 AC_SUBST([GL_PC_CFLAGS])
885 AC_SUBST([DRI_PC_REQ_PRIV])
886 AC_SUBST([GLESv1_CM_LIB_DEPS])
887 AC_SUBST([GLESv1_CM_PC_LIB_PRIV])
888 AC_SUBST([GLESv2_LIB_DEPS])
889 AC_SUBST([GLESv2_PC_LIB_PRIV])
891 DRI_LIB_DEPS="\$(top_builddir)/src/mesa/libdricore/libdricore${VERSION}.la"
893 AC_SUBST([HAVE_XF86VIDMODE])
898 case "x$enable_glx$enable_xlib_glx" in
900 DEFINES="$DEFINES -DUSE_XSHM"
903 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING"
904 if test "x$driglx_direct" = xyes; then
905 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
914 AC_ARG_ENABLE([glx-tls],
915 [AS_HELP_STRING([--enable-glx-tls],
916 [enable TLS support in GLX @<:@default=disabled@:>@])],
917 [GLX_USE_TLS="$enableval"],
919 AC_SUBST(GLX_TLS, ${GLX_USE_TLS})
921 AS_IF([test "x$GLX_USE_TLS" = xyes -a "x$ax_pthread_ok" = xyes],
922 [DEFINES="${DEFINES} -DGLX_USE_TLS -DHAVE_PTHREAD"])
927 dnl Directory for DRI drivers
928 AC_ARG_WITH([dri-driverdir],
929 [AS_HELP_STRING([--with-dri-driverdir=DIR],
930 [directory for the DRI drivers @<:@${libdir}/dri@:>@])],
931 [DRI_DRIVER_INSTALL_DIR="$withval"],
932 [DRI_DRIVER_INSTALL_DIR='${libdir}/dri'])
933 AC_SUBST([DRI_DRIVER_INSTALL_DIR])
934 dnl Extra search path for DRI drivers
935 AC_ARG_WITH([dri-searchpath],
936 [AS_HELP_STRING([--with-dri-searchpath=DIRS...],
937 [semicolon delimited DRI driver search directories @<:@${libdir}/dri@:>@])],
938 [DRI_DRIVER_SEARCH_DIR="$withval"],
939 [DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}'])
940 AC_SUBST([DRI_DRIVER_SEARCH_DIR])
941 dnl Which drivers to build - default is chosen by platform
942 AC_ARG_WITH([dri-drivers],
943 [AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@],
944 [comma delimited DRI drivers list, e.g.
945 "swrast,i965,radeon" @<:@default=auto@:>@])],
946 [with_dri_drivers="$withval"],
947 [with_dri_drivers=yes])
948 if test "x$with_dri_drivers" = x; then
952 dnl If $with_dri_drivers is yes, directories will be added through
955 case "$with_dri_drivers" in
958 # classic DRI drivers require FEATURE_GL to build
959 if test "x$enable_opengl" = xyes; then
964 # verify the requested driver directories exist
965 dri_drivers=`IFS=', '; echo $with_dri_drivers`
966 for driver in $dri_drivers; do
967 test -d "$srcdir/src/mesa/drivers/dri/$driver" || \
968 AC_MSG_ERROR([DRI driver directory '$driver' does not exist])
970 DRI_DIRS="$dri_drivers"
971 if test -n "$DRI_DIRS" -a "x$enable_opengl" != xyes; then
972 AC_MSG_ERROR([--with-dri-drivers requires OpenGL])
977 dnl Set DRI_DIRS, DEFINES and LIB_DEPS
978 if test "x$enable_dri" = xyes; then
979 # Platform specific settings and drivers to build
982 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
983 DEFINES="$DEFINES -DHAVE_ALIAS"
987 if test "x$DRI_DIRS" = "xyes"; then
988 DRI_DIRS="i915 i965 nouveau r200 radeon swrast"
992 # Build only the drivers for cards that exist on PowerPC.
993 if test "x$DRI_DIRS" = "xyes"; then
994 DRI_DIRS="r200 radeon swrast"
998 # Build only the drivers for cards that exist on sparc
999 if test "x$DRI_DIRS" = "xyes"; then
1000 DRI_DIRS="r200 radeon swrast"
1005 freebsd* | dragonfly* | *netbsd*)
1006 DEFINES="$DEFINES -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1"
1007 DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS"
1009 if test "x$DRI_DIRS" = "xyes"; then
1010 DRI_DIRS="i915 i965 nouveau r200 radeon swrast"
1014 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1015 DEFINES="$DEFINES -DHAVE_ALIAS"
1018 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1021 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1022 if test "x$DRI_DIRS" = "xyes"; then
1029 if test "x$DRI_DIRS" = "xyes"; then
1030 DRI_DIRS="i915 i965 nouveau r200 radeon swrast"
1033 DRI_DIRS=`echo "$DRI_DIRS" | $SED 's/ */ /g'`
1038 AC_ARG_WITH([expat],
1039 [AS_HELP_STRING([--with-expat=DIR],
1040 [expat install directory])],[
1041 EXPAT_INCLUDES="-I$withval/include"
1042 CPPFLAGS="$CPPFLAGS $EXPAT_INCLUDES"
1043 LDFLAGS="$LDFLAGS -L$withval/$LIB_DIR"
1044 EXPAT_LIB="-L$withval/$LIB_DIR -lexpat"
1046 AC_CHECK_HEADER([expat.h],[],[AC_MSG_ERROR([Expat required for DRI.])])
1048 AC_CHECK_LIB([expat],[XML_ParserCreate],[],
1049 [AC_MSG_ERROR([Expat required for DRI.])])
1052 # If we are building any DRI driver other than swrast.
1053 if test -n "$DRI_DIRS" -a x"$DRI_DIRS" != xswrast; then
1054 # ... libdrm is required
1055 if test "x$have_libdrm" != xyes; then
1056 AC_MSG_ERROR([DRI drivers requires libdrm >= $LIBDRM_REQUIRED])
1058 # ... and build dricommon
1062 # put all the necessary libs together
1063 DRI_LIB_DEPS="$DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm $PTHREAD_LIBS $DLOPEN_LIBS"
1064 GALLIUM_DRI_LIB_DEPS="$GALLIUM_DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm $CLOCK_LIB $PTHREAD_LIBS $DLOPEN_LIBS"
1066 AM_CONDITIONAL(NEED_LIBDRICORE, test -n "$DRI_DIRS")
1067 AC_SUBST([EXPAT_INCLUDES])
1068 AC_SUBST([DRI_LIB_DEPS])
1069 AC_SUBST([GALLIUM_DRI_LIB_DEPS])
1073 PKG_CHECK_MODULES([INTEL], [libdrm_intel >= $LIBDRM_INTEL_REQUIRED])
1075 for d in $(echo $DRI_DIRS | sed 's/,/ /g'); do
1091 PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NVVIEUX_REQUIRED])
1092 HAVE_NOUVEAU_DRI=yes;
1098 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1100 for d in $(echo $DRI_DIRS | sed 's/,/ /g'); do
1103 HAVE_RADEON_DRI=yes;
1116 HAVE_SWRAST_DRI=yes;
1121 dnl OSMesa configuration
1124 dnl Configure the channel bits for OSMesa (libOSMesa, libOSMesa16, ...)
1125 AC_ARG_WITH([osmesa-bits],
1126 [AS_HELP_STRING([--with-osmesa-bits=BITS],
1127 [OSMesa channel bits and library name: 8, 16, 32 @<:@default=8@:>@])],
1128 [osmesa_bits="$withval"],
1130 if test "x$osmesa_bits" != x8; then
1131 if test "x$enable_dri" = xyes -o "x$enable_glx" = xyes; then
1132 AC_MSG_WARN([Ignoring OSMesa channel bits because of non-OSMesa driver])
1136 case "x$osmesa_bits" in
1138 OSMESA_LIB="${OSMESA_LIB}"
1141 OSMESA_LIB="${OSMESA_LIB}$osmesa_bits"
1142 DEFINES="$DEFINES -DCHAN_BITS=$osmesa_bits -DDEFAULT_SOFTWARE_DEPTH_BITS=31"
1145 AC_MSG_ERROR([OSMesa bits '$osmesa_bits' is not a valid option])
1149 if test "x$enable_osmesa" = xyes; then
1150 # only link libraries with osmesa if shared
1151 if test "$enable_static" = no; then
1152 OSMESA_LIB_DEPS="-lm $PTHREAD_LIBS $SELINUX_LIBS $DLOPEN_LIBS"
1157 OSMESA_PC_LIB_PRIV="-lm $PTHREAD_LIBS $SELINUX_LIBS $DLOPEN_LIBS"
1160 AC_SUBST([OSMESA_LIB_DEPS])
1161 AC_SUBST([OSMESA_MESA_DEPS])
1162 AC_SUBST([OSMESA_PC_REQ])
1163 AC_SUBST([OSMESA_PC_LIB_PRIV])
1166 dnl gbm configuration
1168 if test "x$enable_gbm" = xauto; then
1169 case "$with_egl_platforms" in
1176 if test "x$enable_gbm" = xyes; then
1177 PKG_CHECK_MODULES([LIBUDEV], [libudev], [],
1178 AC_MSG_ERROR([gbm needs udev]))
1180 if test "x$enable_dri" = xyes; then
1181 GBM_BACKEND_DIRS="$GBM_BACKEND_DIRS dri"
1182 if test "x$enable_shared_glapi" = xno; then
1183 AC_MSG_ERROR([gbm_dri requires --enable-shared-glapi])
1187 AM_CONDITIONAL(HAVE_GBM, test "x$enable_gbm" = xyes)
1188 GBM_PC_REQ_PRIV="libudev"
1189 GBM_PC_LIB_PRIV="$DLOPEN_LIBS"
1190 AC_SUBST([GBM_PC_REQ_PRIV])
1191 AC_SUBST([GBM_PC_LIB_PRIV])
1194 dnl EGL configuration
1198 if test "x$enable_egl" = xyes; then
1199 EGL_LIB_DEPS="$DLOPEN_LIBS $SELINUX_LIBS $PTHREAD_LIBS"
1201 AC_CHECK_FUNC(mincore, [DEFINES="$DEFINES -DHAVE_MINCORE"])
1203 if test "$enable_static" != yes; then
1204 # build egl_glx when libGL is built
1205 PKG_CHECK_MODULES([LIBUDEV], [libudev > 150],
1206 [have_libudev=yes],[have_libudev=no])
1207 if test "$have_libudev" = yes; then
1208 DEFINES="$DEFINES -DHAVE_LIBUDEV"
1211 if test "x$enable_dri" = xyes; then
1212 HAVE_EGL_DRIVER_DRI2=1
1217 AM_CONDITIONAL(HAVE_EGL, test "x$enable_egl" = xyes)
1218 AC_SUBST([EGL_LIB_DEPS])
1221 dnl EGL Gallium configuration
1223 if test "x$enable_gallium_egl" = xyes; then
1224 if test "x$with_gallium_drivers" = x; then
1225 AC_MSG_ERROR([cannot enable egl_gallium without Gallium])
1227 if test "x$enable_egl" = xno; then
1228 AC_MSG_ERROR([cannot enable egl_gallium without EGL])
1230 if test "x$have_libdrm" != xyes; then
1231 AC_MSG_ERROR([egl_gallium requires libdrm >= $LIBDRM_REQUIRED])
1234 GALLIUM_STATE_TRACKERS_DIRS="egl $GALLIUM_STATE_TRACKERS_DIRS"
1235 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS egl-static"
1240 dnl gbm Gallium configuration
1242 if test "x$enable_gallium_gbm" = xauto; then
1243 case "$enable_gbm$HAVE_ST_EGL$enable_dri$with_egl_platforms" in
1245 enable_gallium_gbm=yes ;;
1247 enable_gallium_gbm=no ;;
1250 if test "x$enable_gallium_gbm" = xyes; then
1251 if test "x$with_gallium_drivers" = x; then
1252 AC_MSG_ERROR([cannot enable gbm_gallium without Gallium])
1254 if test "x$enable_gbm" = xno; then
1255 AC_MSG_ERROR([cannot enable gbm_gallium without gbm])
1257 # gbm_gallium abuses DRI_LIB_DEPS to link. Make sure it is set.
1258 if test "x$enable_dri" = xno; then
1259 AC_MSG_ERROR([gbm_gallium requires --enable-dri to build])
1262 GALLIUM_STATE_TRACKERS_DIRS="gbm $GALLIUM_STATE_TRACKERS_DIRS"
1263 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS gbm"
1265 enable_gallium_loader=yes
1269 dnl X.Org DDX configuration
1271 if test "x$enable_xorg" = xyes; then
1272 PKG_CHECK_MODULES([XORG], [xorg-server >= 1.6.0])
1273 PKG_CHECK_MODULES([LIBDRM_XORG], [libdrm >= $LIBDRM_XORG_REQUIRED])
1274 PKG_CHECK_MODULES([LIBKMS_XORG], [libkms >= $LIBKMS_XORG_REQUIRED])
1275 PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
1276 HAVE_XEXTPROTO_71="yes"; DEFINES="$DEFINES -DHAVE_XEXTPROTO_71",
1277 HAVE_XEXTPROTO_71="no")
1278 GALLIUM_STATE_TRACKERS_DIRS="xorg $GALLIUM_STATE_TRACKERS_DIRS"
1283 dnl XA configuration
1285 if test "x$enable_xa" = xyes; then
1288 AC_CHECK_PROG(NM, nm, "nm")
1289 if test "x$AWK" = x || test "x$GREP" = x || test "x$NM" = x; then
1290 AC_MSG_WARN([Missing one of nm, grep or awk. Disabling xa.])
1294 if test "x$enable_xa" = xyes; then
1295 GALLIUM_STATE_TRACKERS_DIRS="xa $GALLIUM_STATE_TRACKERS_DIRS"
1303 dnl OpenVG configuration
1307 if test "x$enable_openvg" = xyes; then
1308 if test "x$enable_egl" = xno; then
1309 AC_MSG_ERROR([cannot enable OpenVG without EGL])
1311 if test "x$with_gallium_drivers" = x; then
1312 AC_MSG_ERROR([cannot enable OpenVG without Gallium])
1314 if test "x$enable_gallium_egl" = xno; then
1315 AC_MSG_ERROR([cannot enable OpenVG without egl_gallium])
1318 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(VG_LIB)'
1319 VG_LIB_DEPS="$VG_LIB_DEPS $SELINUX_LIBS $PTHREAD_LIBS"
1320 GALLIUM_STATE_TRACKERS_DIRS="vega $GALLIUM_STATE_TRACKERS_DIRS"
1322 VG_PC_LIB_PRIV="-lm $CLOCK_LIB $PTHREAD_LIBS $DLOPEN_LIBS"
1323 AC_SUBST([VG_PC_LIB_PRIV])
1325 AM_CONDITIONAL(HAVE_OPENVG, test "x$enable_openvg" = xyes)
1328 dnl Gallium G3DVL configuration
1330 AC_ARG_ENABLE([gallium-g3dvl],
1331 [AS_HELP_STRING([--enable-gallium-g3dvl],
1332 [build gallium g3dvl @<:@default=disabled@:>@])],
1333 [enable_gallium_g3dvl="$enableval"],
1334 [enable_gallium_g3dvl=no])
1335 if test "x$enable_gallium_g3dvl" = xyes; then
1336 if test "x$with_gallium_drivers" = x; then
1337 AC_MSG_ERROR([cannot enable G3DVL without Gallium])
1340 if test "x$enable_xvmc" = xauto; then
1341 PKG_CHECK_EXISTS([xvmc], [enable_xvmc=yes], [enable_xvmc=no])
1344 if test "x$enable_vdpau" = xauto; then
1345 PKG_CHECK_EXISTS([vdpau], [enable_vdpau=yes], [enable_vdpau=no])
1349 if test "x$enable_xvmc" = xyes; then
1350 PKG_CHECK_MODULES([XVMC], [xvmc >= 1.0.6 x11-xcb xcb-dri2 >= 1.8])
1351 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS xvmc"
1355 if test "x$enable_vdpau" = xyes; then
1356 PKG_CHECK_MODULES([VDPAU], [vdpau >= 0.4.1 x11-xcb xcb-dri2 >= 1.8])
1357 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS vdpau"
1362 dnl OpenCL configuration
1365 AC_ARG_WITH([libclc-path],
1366 [AS_HELP_STRING([--with-libclc-path],
1367 [DEPRECATED: See http://dri.freedesktop.org/wiki/GalliumCompute#How_to_Install])],
1368 [LIBCLC_PATH="$withval"],
1371 if test "x$LIBCLC_PATH" != x; then
1372 AC_MSG_ERROR([The --with-libclc-path option has been deprecated.
1373 Please review the updated build instructions for clover:
1374 http://dri.freedesktop.org/wiki/GalliumCompute])
1378 AC_ARG_WITH([clang-libdir],
1379 [AS_HELP_STRING([--with-clang-libdir],
1380 [Path to Clang libraries @<:@default=llvm-config --libdir@:>@])],
1381 [CLANG_LIBDIR="$withval"],
1384 LIBCLC_INCLUDEDIR=`pkg-config --variable=includedir libclc`
1385 LIBCLC_LIBEXECDIR=`pkg-config --variable=libexecdir libclc`
1386 AC_SUBST([LIBCLC_INCLUDEDIR])
1387 AC_SUBST([LIBCLC_LIBEXECDIR])
1389 if test "x$enable_opencl" = xyes; then
1390 if test "x$with_gallium_drivers" = x; then
1391 AC_MSG_ERROR([cannot enable OpenCL without Gallium])
1394 if test $GCC_VERSION_MAJOR -lt 4 -o $GCC_VERSION_MAJOR -eq 4 -a $GCC_VERSION_MINOR -lt 6; then
1395 AC_MSG_ERROR([gcc >= 4.6 is required to build clover])
1398 if test "x$LIBCLC_INCLUDEDIR" == x || test "x$LIBCLC_LIBEXECDIR" == x; then
1399 AC_MSG_ERROR([pkg-config cannot use libclc.pc which is required to build clover])
1402 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS clover"
1403 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS opencl"
1404 enable_gallium_loader=yes
1407 if test "x$enable_gallium_gbm" = xyes || test "x$enable_opencl" = xyes; then
1408 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS pipe-loader"
1412 dnl Gallium configuration
1414 AM_CONDITIONAL(HAVE_GALLIUM, test -n "$with_gallium_drivers")
1416 AC_SUBST([LLVM_BINDIR])
1417 AC_SUBST([LLVM_CFLAGS])
1418 AC_SUBST([LLVM_CPPFLAGS])
1419 AC_SUBST([LLVM_CXXFLAGS])
1420 AC_SUBST([LLVM_LIBDIR])
1421 AC_SUBST([LLVM_LIBS])
1422 AC_SUBST([LLVM_LDFLAGS])
1423 AC_SUBST([LLVM_INCLUDEDIR])
1424 AC_SUBST([LLVM_VERSION])
1425 AC_SUBST([CLANG_RESOURCE_DIR])
1427 case "x$enable_opengl$enable_gles1$enable_gles2" in
1429 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(GL_LIB)'
1433 AC_SUBST([VG_LIB_DEPS])
1434 AC_SUBST([EGL_CLIENT_APIS])
1437 dnl EGL Platforms configuration
1439 AC_ARG_WITH([egl-platforms],
1440 [AS_HELP_STRING([--with-egl-platforms@<:@=DIRS...@:>@],
1441 [comma delimited native platforms libEGL supports, e.g.
1442 "x11,drm" @<:@default=auto@:>@])],
1443 [with_egl_platforms="$withval"],
1444 [if test "x$enable_egl" = xyes; then
1445 with_egl_platforms="x11"
1447 with_egl_platforms=""
1452 if test "x$with_egl_platforms" != "x" -a "x$enable_egl" != xyes; then
1453 AC_MSG_ERROR([cannot build egl state tracker without EGL library])
1456 # Do per-EGL platform setups and checks
1457 egl_platforms=`IFS=', '; echo $with_egl_platforms`
1458 for plat in $egl_platforms; do
1461 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/$plat"
1465 PKG_CHECK_MODULES([WAYLAND], [wayland-client >= 1.0.2 wayland-server >= 1.0.2])
1466 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/wayland"
1468 WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client`
1469 AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],,
1470 [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH])
1474 PKG_CHECK_MODULES([XCB_DRI2], [x11-xcb xcb-dri2 >= 1.8 xcb-xfixes])
1476 if test "x$enable_glx" = xyes; then
1477 HAVE_EGL_DRIVER_GLX=1
1482 test "x$enable_gbm" = "xno" &&
1483 AC_MSG_ERROR([EGL platform drm needs gbm])
1490 AC_MSG_ERROR([EGL platform '$plat' does not exist])
1494 case "$plat$have_libudev" in
1496 AC_MSG_ERROR([cannot build $plat platfrom without udev]) ;;
1500 # libEGL wants to default to the first platform specified in
1501 # ./configure. parse that here.
1502 if test "x$egl_platforms" != "x"; then
1503 FIRST_PLATFORM_CAPS=`echo $egl_platforms | sed 's| .*||' | tr 'a-z' 'A-Z'`
1504 EGL_NATIVE_PLATFORM="_EGL_PLATFORM_$FIRST_PLATFORM_CAPS"
1506 EGL_NATIVE_PLATFORM="_EGL_INVALID_PLATFORM"
1509 EGL_PLATFORMS="$egl_platforms"
1511 AM_CONDITIONAL(HAVE_EGL_PLATFORM_X11, echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1)
1512 AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND, echo "$egl_platforms" | grep 'wayland' >/dev/null 2>&1)
1513 AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep 'drm' >/dev/null 2>&1)
1514 AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep 'fbdev' >/dev/null 2>&1)
1515 AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep 'null' >/dev/null 2>&1)
1517 AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x")
1518 AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x")
1520 AC_SUBST([EGL_NATIVE_PLATFORM])
1521 AC_SUBST([EGL_PLATFORMS])
1522 AC_SUBST([EGL_CFLAGS])
1524 AC_ARG_WITH([egl-driver-dir],
1525 [AS_HELP_STRING([--with-egl-driver-dir=DIR],
1526 [directory for EGL drivers [[default=${libdir}/egl]]])],
1527 [EGL_DRIVER_INSTALL_DIR="$withval"],
1528 [EGL_DRIVER_INSTALL_DIR='${libdir}/egl'])
1529 AC_SUBST([EGL_DRIVER_INSTALL_DIR])
1531 AC_ARG_WITH([xorg-driver-dir],
1532 [AS_HELP_STRING([--with-xorg-driver-dir=DIR],
1533 [Default xorg driver directory[[default=${libdir}/xorg/modules/drivers]]])],
1534 [XORG_DRIVER_INSTALL_DIR="$withval"],
1535 [XORG_DRIVER_INSTALL_DIR="${libdir}/xorg/modules/drivers"])
1536 AC_SUBST([XORG_DRIVER_INSTALL_DIR])
1538 AC_ARG_WITH([max-width],
1539 [AS_HELP_STRING([--with-max-width=N],
1540 [Maximum framebuffer width (4096)])],
1541 [DEFINES="${DEFINES} -DMAX_WIDTH=${withval}";
1542 AS_IF([test "${withval}" -gt "4096"],
1543 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1545 AC_ARG_WITH([max-height],
1546 [AS_HELP_STRING([--with-max-height=N],
1547 [Maximum framebuffer height (4096)])],
1548 [DEFINES="${DEFINES} -DMAX_HEIGHT=${withval}";
1549 AS_IF([test "${withval}" -gt "4096"],
1550 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1556 AC_ARG_ENABLE([gallium-llvm],
1557 [AS_HELP_STRING([--enable-gallium-llvm],
1558 [build gallium LLVM support @<:@default=enabled on x86/x86_64@:>@])],
1559 [enable_gallium_llvm="$enableval"],
1560 [enable_gallium_llvm=auto])
1562 AC_ARG_WITH([llvm-shared-libs],
1563 [AS_HELP_STRING([--with-llvm-shared-libs],
1564 [link with LLVM shared libraries @<:@default=disabled@:>@])],
1566 [with_llvm_shared_libs=no])
1567 AS_IF([test x$enable_opencl = xyes],
1569 AC_MSG_WARN([OpenCL required, forcing LLVM shared libraries])
1570 with_llvm_shared_libs=yes
1573 AC_ARG_WITH([llvm-prefix],
1574 [AS_HELP_STRING([--with-llvm-prefix],
1575 [Prefix for LLVM installations in non-standard locations])],
1576 [llvm_prefix="$withval"],
1580 # Call this inside ` ` to get the return value.
1581 # $1 is the llvm-config command with arguments.
1582 strip_unwanted_llvm_flags() {
1583 # Use \> (marks the end of the word)
1585 -e 's/-DNDEBUG\>//g' \
1586 -e 's/-pedantic\>//g' \
1587 -e 's/-Wcovered-switch-default\>//g' \
1591 -e 's/-fomit-frame-pointer\>//g'
1595 if test "x$with_gallium_drivers" = x; then
1596 enable_gallium_llvm=no
1598 if test "x$enable_gallium_llvm" = xauto; then
1600 i*86|x86_64) enable_gallium_llvm=yes;;
1603 if test "x$enable_gallium_llvm" = xyes; then
1604 if test "x$llvm_prefix" != x; then
1605 AC_PATH_PROG([LLVM_CONFIG], [llvm-config], [no], ["$llvm_prefix/bin"])
1607 AC_PATH_PROG([LLVM_CONFIG], [llvm-config], [no])
1610 if test "x$LLVM_CONFIG" != xno; then
1611 LLVM_VERSION=`$LLVM_CONFIG --version | sed 's/svn.*//g'`
1612 LLVM_VERSION_INT=`echo $LLVM_VERSION | sed -e 's/\([[0-9]]\)\.\([[0-9]]\)/\10\2/g'`
1613 LLVM_COMPONENTS="engine bitwriter"
1614 if $LLVM_CONFIG --components | grep -q '\<mcjit\>'; then
1615 LLVM_COMPONENTS="${LLVM_COMPONENTS} mcjit"
1618 if test "x$enable_debug" = xyes; then
1619 # Debug builds require OProfileJIT if LLVM was built with support for it
1620 if $LLVM_CONFIG --components | grep -q '\<oprofilejit\>'; then
1621 LLVM_COMPONENTS="${LLVM_COMPONENTS} oprofilejit"
1625 if test "x$enable_opencl" = xyes; then
1626 LLVM_COMPONENTS="${LLVM_COMPONENTS} ipo linker instrumentation"
1627 # LLVM 3.3 >= 177971 requires IRReader
1628 if $LLVM_CONFIG --components | grep -q '\<irreader\>'; then
1629 LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader"
1632 LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
1633 LLVM_BINDIR=`$LLVM_CONFIG --bindir`
1634 LLVM_CPPFLAGS=`strip_unwanted_llvm_flags "$LLVM_CONFIG --cppflags"`
1635 LLVM_CFLAGS=$LLVM_CPPFLAGS # CPPFLAGS seem to be sufficient
1636 LLVM_CXXFLAGS=`strip_unwanted_llvm_flags "$LLVM_CONFIG --cxxflags"`
1637 LLVM_INCLUDEDIR=`$LLVM_CONFIG --includedir`
1638 LLVM_LIBDIR=`$LLVM_CONFIG --libdir`
1639 DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT"
1642 dnl Check for Clang interanl headers
1643 if test "x$enable_opencl" = xyes; then
1644 if test "x$CLANG_LIBDIR" = x; then
1645 CLANG_LIBDIR=${LLVM_LIBDIR}
1647 CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION}
1648 AC_CHECK_FILE("$CLANG_RESOURCE_DIR/include/stddef.h",,
1649 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.]))
1660 dnl Directory for XVMC libs
1661 AC_ARG_WITH([xvmc-libdir],
1662 [AS_HELP_STRING([--with-xvmc-libdir=DIR],
1663 [directory for the XVMC libraries @<:@default=${libdir}@:>@])],
1664 [XVMC_LIB_INSTALL_DIR="$withval"],
1665 [XVMC_LIB_INSTALL_DIR='${libdir}'])
1666 AC_SUBST([XVMC_LIB_INSTALL_DIR])
1671 if test "x$enable_gallium_tests" = xyes; then
1672 enable_gallium_loader=yes
1674 AM_CONDITIONAL(HAVE_GALLIUM_TESTS, test "x$enable_gallium_tests" = xyes)
1676 dnl Directory for VDPAU libs
1677 AC_ARG_WITH([vdpau-libdir],
1678 [AS_HELP_STRING([--with-vdpau-libdir=DIR],
1679 [directory for the VDPAU libraries @<:@default=${libdir}/vdpau@:>@])],
1680 [VDPAU_LIB_INSTALL_DIR="$withval"],
1681 [VDPAU_LIB_INSTALL_DIR='${libdir}/vdpau'])
1682 AC_SUBST([VDPAU_LIB_INSTALL_DIR])
1684 dnl Directory for OpenCL libs
1685 AC_ARG_WITH([opencl-libdir],
1686 [AS_HELP_STRING([--with-opencl-libdir=DIR],
1687 [directory for auxiliary libraries used by the OpenCL implementation @<:@default=${libdir}/opencl@:>@])],
1688 [OPENCL_LIB_INSTALL_DIR="$withval"],
1689 [OPENCL_LIB_INSTALL_DIR='${libdir}/opencl'])
1690 AC_SUBST([OPENCL_LIB_INSTALL_DIR])
1693 dnl Gallium helper functions
1695 gallium_check_st() {
1696 if test "x$HAVE_ST_DRI" = xyes || test "x$HAVE_ST_XORG" = xyes ||
1697 test "x$HAVE_ST_XA" = xyes || test "x$HAVE_ST_XVMC" = xyes ||
1698 test "x$HAVE_ST_VDPAU" = xyes; then
1699 if test "x$have_libdrm" != xyes; then
1700 AC_MSG_ERROR([DRI or Xorg DDX requires libdrm >= $LIBDRM_REQUIRED])
1702 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS $1"
1704 if test "x$HAVE_ST_DRI" = xyes && test "x$2" != x; then
1705 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $2"
1708 if test "x$HAVE_ST_XORG" = xyes && test "x$3" != x; then
1709 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $3"
1711 if test "x$HAVE_ST_XA" = xyes && test "x$4" != x; then
1712 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $4"
1714 if test "x$HAVE_ST_XVMC" = xyes && test "x$5" != x; then
1715 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $5"
1717 if test "x$HAVE_ST_VDPAU" = xyes && test "x$6" != x; then
1718 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $6"
1722 gallium_require_llvm() {
1723 if test "x$MESA_LLVM" = x0; then
1725 i*86|x86_64) AC_MSG_ERROR([LLVM is required to build $1 on x86 and x86_64]);;
1730 gallium_require_drm_loader() {
1731 if test "x$enable_gallium_loader" = xyes; then
1732 PKG_CHECK_MODULES([LIBUDEV], [libudev], [],
1733 AC_MSG_ERROR([Gallium drm loader requires libudev]))
1734 if test "x$have_libdrm" != xyes; then
1735 AC_MSG_ERROR([Gallium drm loader requires libdrm >= $LIBDRM_REQUIRED])
1737 enable_gallium_drm_loader=yes
1741 radeon_llvm_check() {
1742 LLVM_REQUIRED_VERSION_MAJOR="3"
1743 LLVM_REQUIRED_VERSION_MINOR="3"
1744 if test "$LLVM_VERSION_INT" -lt "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}"; then
1745 AC_MSG_ERROR([LLVM $LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR or newer is required for r600g and radeonsi.])
1747 if test true && $LLVM_CONFIG --targets-built | grep -qv '\<R600\>' ; then
1748 AC_MSG_ERROR([LLVM R600 Target not enabled. You can enable it when building the LLVM
1749 sources with the --enable-experimental-targets=R600
1752 LLVM_COMPONENTS="${LLVM_COMPONENTS} r600 bitreader"
1753 NEED_RADEON_LLVM=yes
1754 AC_CHECK_LIB([elf], [elf_memory], [ELF_LIB=-lelf],
1755 [AC_MSG_ERROR([radeonsi and r600g require libelf when using LLVM])])
1759 dnl Duplicates in GALLIUM_DRIVERS_DIRS are removed by sorting it after this block
1760 if test "x$with_gallium_drivers" != x; then
1761 gallium_drivers=`IFS=', '; echo $with_gallium_drivers`
1762 for driver in $gallium_drivers; do
1765 HAVE_GALLIUM_SVGA=yes
1766 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS svga softpipe"
1767 gallium_check_st "svga/drm" "dri-vmwgfx" "" "xa-vmwgfx"
1770 HAVE_GALLIUM_I915=yes
1771 PKG_CHECK_MODULES([INTEL], [libdrm_intel >= $LIBDRM_INTEL_REQUIRED])
1772 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i915 softpipe"
1773 if test "x$MESA_LLVM" = x1; then
1774 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS llvmpipe"
1776 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS i915/sw"
1777 gallium_check_st "i915/drm" "dri-i915" "xorg-i915"
1780 HAVE_GALLIUM_R300=yes
1781 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1782 gallium_require_llvm "Gallium R300"
1783 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300"
1784 gallium_check_st "radeon/drm" "dri-r300" "" "" "xvmc-r300" "vdpau-r300"
1787 HAVE_GALLIUM_R600=yes
1788 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1789 gallium_require_drm_loader
1790 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r600"
1791 if test "x$enable_r600_llvm" = xyes -o "x$enable_opencl" = xyes; then
1793 R600_NEED_RADEON_GALLIUM=yes;
1794 LLVM_COMPONENTS="${LLVM_COMPONENTS} ipo bitreader asmparser"
1796 if test "x$enable_r600_llvm" = xyes; then
1797 USE_R600_LLVM_COMPILER=yes;
1799 if test "x$enable_opencl" = xyes; then
1800 LLVM_COMPONENTS="${LLVM_COMPONENTS} bitreader asmparser"
1802 gallium_check_st "radeon/drm" "dri-r600" "xorg-r600" "" "xvmc-r600" "vdpau-r600"
1805 HAVE_GALLIUM_RADEONSI=yes
1806 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1807 gallium_require_drm_loader
1808 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS radeonsi"
1810 gallium_check_st "radeon/drm" "dri-radeonsi" "xorg-radeonsi" "" "" "vdpau-radeonsi" ""
1813 HAVE_GALLIUM_NOUVEAU=yes
1814 PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NOUVEAU_REQUIRED])
1815 gallium_require_drm_loader
1816 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS nouveau nv30 nv50 nvc0"
1817 gallium_check_st "nouveau/drm" "dri-nouveau" "xorg-nouveau" "" "xvmc-nouveau" "vdpau-nouveau"
1820 HAVE_GALLIUM_FREEDRENO=yes
1821 PKG_CHECK_MODULES([FREEDRENO], [libdrm_freedreno >= $LIBDRM_FREEDRENO_REQUIRED])
1822 gallium_require_drm_loader
1823 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS freedreno"
1824 gallium_check_st "freedreno/drm" "dri-freedreno" "" "" "" ""
1827 HAVE_GALLIUM_SOFTPIPE=yes
1828 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS softpipe"
1829 if test "x$MESA_LLVM" = x1; then
1830 HAVE_GALLIUM_LLVMPIPE=yes
1831 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS llvmpipe"
1834 if test "x$HAVE_ST_DRI" = xyes; then
1835 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS dri-swrast"
1837 if test "x$HAVE_ST_VDPAU" = xyes; then
1838 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS vdpau-softpipe"
1840 if test "x$HAVE_ST_XVMC" = xyes; then
1841 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS xvmc-softpipe"
1843 if test "x$HAVE_ST_VDPAU" = xyes ||
1844 test "x$HAVE_ST_XVMC" = xyes; then
1845 if test "x$HAVE_WINSYS_XLIB" != xyes; then
1846 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib"
1851 AC_MSG_ERROR([Unknown Gallium driver: $driver])
1857 dnl Set LLVM_LIBS - This is done after the driver configuration so
1858 dnl that drivers can add additonal components to LLVM_COMPONENTS.
1859 dnl Previously, gallium drivers were updating LLVM_LIBS directly
1860 dnl by calling llvm-config --libs ${DRIVER_LLVM_COMPONENTS}, but
1861 dnl this was causing the same libraries to be appear multiple times
1864 if test "x$MESA_LLVM" != x0; then
1866 LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
1868 if test "x$with_llvm_shared_libs" = xyes; then
1869 dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
1870 LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version`
1871 AC_CHECK_FILE("$LLVM_LIBDIR/lib$LLVM_SO_NAME.so", llvm_have_one_so=yes,)
1873 if test "x$llvm_have_one_so" = xyes; then
1874 dnl LLVM was built using auto*, so there is only one shared object.
1875 LLVM_LIBS="-l$LLVM_SO_NAME"
1877 dnl If LLVM was built with CMake, there will be one shared object per
1879 AC_CHECK_FILE("$LLVM_LIBDIR/libLLVMTarget.so",,
1880 AC_MSG_ERROR([Could not find llvm shared libraries:
1881 Please make sure you have built llvm with the --enable-shared option
1882 and that your llvm libraries are installed in $LLVM_LIBDIR
1883 If you have installed your llvm libraries to a different directory you
1884 can use the --with-llvm-prefix= configure flag to specify this directory.
1885 NOTE: Mesa is attempting to use llvm shared libraries because you have
1886 passed one of the following options to configure:
1887 --with-llvm-shared-libs
1889 If you do not want to build with llvm shared libraries and instead want to
1890 use llvm static libraries then remove these options from your configure
1891 invocation and reconfigure.]))
1893 dnl We don't need to update LLVM_LIBS in this case because the LLVM
1894 dnl install uses a shared object for each compoenent and we have
1895 dnl already added all of these objects to LLVM_LIBS.
1900 AM_CONDITIONAL(HAVE_GALLIUM_SVGA, test "x$HAVE_GALLIUM_SVGA" = xyes)
1901 AM_CONDITIONAL(HAVE_GALLIUM_I915, test "x$HAVE_GALLIUM_I915" = xyes)
1902 AM_CONDITIONAL(HAVE_GALLIUM_R300, test "x$HAVE_GALLIUM_R300" = xyes)
1903 AM_CONDITIONAL(HAVE_GALLIUM_R600, test "x$HAVE_GALLIUM_R600" = xyes)
1904 AM_CONDITIONAL(HAVE_GALLIUM_RADEONSI, test "x$HAVE_GALLIUM_RADEONSI" = xyes)
1905 AM_CONDITIONAL(HAVE_GALLIUM_NOUVEAU, test "x$HAVE_GALLIUM_NOUVEAU" = xyes)
1906 AM_CONDITIONAL(HAVE_GALLIUM_FREEDRENO, test "x$HAVE_GALLIUM_FREEDRENO" = xyes)
1907 AM_CONDITIONAL(HAVE_GALLIUM_SOFTPIPE, test "x$HAVE_GALLIUM_SOFTPIPE" = xyes)
1908 AM_CONDITIONAL(HAVE_GALLIUM_LLVMPIPE, test "x$HAVE_GALLIUM_LLVMPIPE" = xyes)
1910 if test "x$enable_gallium_loader" = xyes; then
1911 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/null"
1912 GALLIUM_PIPE_LOADER_DEFINES="-DHAVE_PIPE_LOADER_SW"
1913 GALLIUM_PIPE_LOADER_LIBS="\$(top_builddir)/src/gallium/auxiliary/pipe-loader/libpipe_loader.la"
1914 GALLIUM_PIPE_LOADER_LIBS="$GALLIUM_PIPE_LOADER_LIBS \$(top_builddir)/src/gallium/winsys/sw/null/libws_null.la"
1916 if test "x$HAVE_WINSYS_XLIB" = xyes; then
1917 GALLIUM_PIPE_LOADER_DEFINES="$GALLIUM_PIPE_LOADER_DEFINES -DHAVE_PIPE_LOADER_XLIB"
1918 GALLIUM_PIPE_LOADER_LIBS="$GALLIUM_PIPE_LOADER_LIBS \$(top_builddir)/src/gallium/winsys/sw/xlib/libws_xlib.la"
1921 if test "x$enable_gallium_drm_loader" = xyes; then
1922 GALLIUM_PIPE_LOADER_DEFINES="$GALLIUM_PIPE_LOADER_DEFINES -DHAVE_PIPE_LOADER_DRM"
1923 PKG_CHECK_MODULES([GALLIUM_PIPE_LOADER_XCB], [xcb xcb-dri2],
1924 pipe_loader_have_xcb=yes, pipe_loader_have_xcb=no)
1925 if test "x$pipe_loader_have_xcb" = xyes; then
1926 GALLIUM_PIPE_LOADER_DEFINES="$GALLIUM_PIPE_LOADER_DEFINES -DPIPE_LOADER_HAVE_XCB"
1927 GALLIUM_PIPE_LOADER_LIBS="$GALLIUM_PIPE_LOADER_LIBS $GALLIUM_PIPE_LOADER_XCB_LIBS $LIBDRM_LIBS"
1931 AC_SUBST([GALLIUM_PIPE_LOADER_DEFINES])
1932 AC_SUBST([GALLIUM_PIPE_LOADER_LIBS])
1935 dnl Tell Automake which drivers to build
1936 for driver in $GALLIUM_DRIVERS_DIRS; do
1939 HAVE_GALAHAD_GALLIUM=yes;
1942 HAVE_IDENTITY_GALLIUM=yes;
1945 HAVE_NOOP_GALLIUM=yes;
1948 GALLIUM_MAKE_DIRS="$GALLIUM_MAKE_DIRS $driver"
1953 AM_CONDITIONAL(HAVE_I915_DRI, test x$HAVE_I915_DRI = xyes)
1954 AM_CONDITIONAL(HAVE_I965_DRI, test x$HAVE_I965_DRI = xyes)
1955 AM_CONDITIONAL(HAVE_NOUVEAU_DRI, test x$HAVE_NOUVEAU_DRI = xyes)
1956 AM_CONDITIONAL(HAVE_R200_DRI, test x$HAVE_R200_DRI = xyes)
1957 AM_CONDITIONAL(HAVE_RADEON_DRI, test x$HAVE_RADEON_DRI = xyes)
1958 AM_CONDITIONAL(HAVE_SWRAST_DRI, test x$HAVE_SWRAST_DRI = xyes)
1959 AM_CONDITIONAL(HAVE_COMMON_DRI, test x$HAVE_COMMON_DRI = xyes)
1961 AM_CONDITIONAL(HAVE_GALAHAD_GALLIUM, test x$HAVE_GALAHAD_GALLIUM = xyes)
1962 AM_CONDITIONAL(HAVE_IDENTITY_GALLIUM, test x$HAVE_IDENTITY_GALLIUM = xyes)
1963 AM_CONDITIONAL(HAVE_NOOP_GALLIUM, test x$HAVE_NOOP_GALLIUM = xyes)
1964 AM_CONDITIONAL(NEED_RADEON_LLVM, test x$NEED_RADEON_LLVM = xyes)
1965 AM_CONDITIONAL(R600_NEED_RADEON_GALLIUM, test x$R600_NEED_RADEON_GALLIUM = xyes)
1966 AM_CONDITIONAL(USE_R600_LLVM_COMPILER, test x$USE_R600_LLVM_COMPILER = xyes)
1967 AM_CONDITIONAL(HAVE_LOADER_GALLIUM, test x$enable_gallium_loader = xyes)
1968 AM_CONDITIONAL(HAVE_DRM_LOADER_GALLIUM, test x$enable_gallium_drm_loader = xyes)
1969 AM_CONDITIONAL(HAVE_GALLIUM_COMPUTE, test x$enable_opencl = xyes)
1970 AM_CONDITIONAL(HAVE_MESA_LLVM, test x$MESA_LLVM = x1)
1971 AM_CONDITIONAL(LLVM_NEEDS_FNORTTI, test $LLVM_VERSION_INT -ge 302)
1973 AC_SUBST([GALLIUM_MAKE_DIRS])
1976 AM_CONDITIONAL(NEED_LIBPROGRAM, test "x$with_gallium_drivers" != x -o \
1977 "x$enable_xlib_glx" = xyes -o \
1978 "x$enable_osmesa" = xyes)
1979 AM_CONDITIONAL(HAVE_X11_DRIVER, echo "$DRIVER_DIRS" | grep 'x11' >/dev/null 2>&1)
1981 AM_CONDITIONAL(HAVE_X86_ASM, echo "$DEFINES" | grep 'X86_ASM' >/dev/null 2>&1)
1982 AM_CONDITIONAL(HAVE_X86_64_ASM, echo "$DEFINES" | grep 'X86_64_ASM' >/dev/null 2>&1)
1983 AM_CONDITIONAL(HAVE_SPARC_ASM, echo "$DEFINES" | grep 'SPARC_ASM' >/dev/null 2>&1)
1985 AM_CONDITIONAL(CROSS_COMPILING, test "x$cross_compiling" = xyes)
1987 AC_SUBST([VDPAU_MAJOR], 1)
1988 AC_SUBST([VDPAU_MINOR], 0)
1990 AC_SUBST([XVMC_MAJOR], 1)
1991 AC_SUBST([XVMC_MINOR], 0)
1993 AC_SUBST([XA_MAJOR], 1)
1994 AC_SUBST([XA_MINOR], 0)
1995 AC_SUBST([XA_TINY], 0)
1996 AC_SUBST([XA_VERSION], "$XA_MAJOR.$XA_MINOR.$XA_TINY")
1998 dnl Restore LDFLAGS and CPPFLAGS
1999 LDFLAGS="$_SAVE_LDFLAGS"
2000 CPPFLAGS="$_SAVE_CPPFLAGS"
2002 dnl Add user CFLAGS and CXXFLAGS
2003 CFLAGS="$CFLAGS $USER_CFLAGS"
2004 CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS"
2006 dnl Substitute the config
2007 AC_CONFIG_FILES([Makefile
2010 src/egl/drivers/Makefile
2011 src/egl/drivers/dri2/Makefile
2012 src/egl/drivers/glx/Makefile
2013 src/egl/main/Makefile
2015 src/egl/wayland/Makefile
2016 src/egl/wayland/wayland-drm/Makefile
2017 src/egl/wayland/wayland-egl/Makefile
2018 src/egl/wayland/wayland-egl/wayland-egl.pc
2019 src/gallium/auxiliary/Makefile
2020 src/gallium/auxiliary/pipe-loader/Makefile
2021 src/gallium/drivers/Makefile
2022 src/gallium/drivers/freedreno/Makefile
2023 src/gallium/drivers/i915/Makefile
2024 src/gallium/drivers/llvmpipe/Makefile
2025 src/gallium/drivers/nouveau/Makefile
2026 src/gallium/drivers/nv30/Makefile
2027 src/gallium/drivers/nv50/Makefile
2028 src/gallium/drivers/nvc0/Makefile
2029 src/gallium/drivers/r300/Makefile
2030 src/gallium/drivers/r600/Makefile
2031 src/gallium/drivers/radeon/Makefile
2032 src/gallium/drivers/radeonsi/Makefile
2033 src/gallium/drivers/rbug/Makefile
2034 src/gallium/drivers/softpipe/Makefile
2035 src/gallium/drivers/svga/Makefile
2036 src/gallium/drivers/trace/Makefile
2037 src/gallium/state_trackers/Makefile
2038 src/gallium/state_trackers/clover/Makefile
2039 src/gallium/state_trackers/dri/Makefile
2040 src/gallium/state_trackers/dri/drm/Makefile
2041 src/gallium/state_trackers/dri/sw/Makefile
2042 src/gallium/state_trackers/egl/Makefile
2043 src/gallium/state_trackers/gbm/Makefile
2044 src/gallium/state_trackers/glx/Makefile
2045 src/gallium/state_trackers/osmesa/Makefile
2046 src/gallium/state_trackers/vdpau/Makefile
2047 src/gallium/state_trackers/vega/Makefile
2048 src/gallium/state_trackers/xa/Makefile
2049 src/gallium/state_trackers/xorg/Makefile
2050 src/gallium/state_trackers/xvmc/Makefile
2051 src/gallium/targets/Makefile
2052 src/gallium/targets/dri-freedreno/Makefile
2053 src/gallium/targets/dri-i915/Makefile
2054 src/gallium/targets/dri-nouveau/Makefile
2055 src/gallium/targets/dri-r300/Makefile
2056 src/gallium/targets/dri-r600/Makefile
2057 src/gallium/targets/dri-radeonsi/Makefile
2058 src/gallium/targets/dri-swrast/Makefile
2059 src/gallium/targets/dri-vmwgfx/Makefile
2060 src/gallium/targets/egl-static/Makefile
2061 src/gallium/targets/gbm/Makefile
2062 src/gallium/targets/opencl/Makefile
2063 src/gallium/targets/osmesa/Makefile
2064 src/gallium/targets/pipe-loader/Makefile
2065 src/gallium/targets/libgl-xlib/Makefile
2066 src/gallium/targets/vdpau-nouveau/Makefile
2067 src/gallium/targets/vdpau-r300/Makefile
2068 src/gallium/targets/vdpau-r600/Makefile
2069 src/gallium/targets/vdpau-radeonsi/Makefile
2070 src/gallium/targets/vdpau-softpipe/Makefile
2071 src/gallium/targets/xa-vmwgfx/Makefile
2072 src/gallium/targets/xa-vmwgfx/xatracker.pc
2073 src/gallium/targets/xorg-i915/Makefile
2074 src/gallium/targets/xorg-nouveau/Makefile
2075 src/gallium/targets/xorg-r600/Makefile
2076 src/gallium/targets/xorg-radeonsi/Makefile
2077 src/gallium/targets/xvmc-nouveau/Makefile
2078 src/gallium/targets/xvmc-r300/Makefile
2079 src/gallium/targets/xvmc-r600/Makefile
2080 src/gallium/targets/xvmc-softpipe/Makefile
2081 src/gallium/tests/trivial/Makefile
2082 src/gallium/tests/unit/Makefile
2083 src/gallium/winsys/Makefile
2084 src/gallium/winsys/freedreno/drm/Makefile
2085 src/gallium/winsys/i915/drm/Makefile
2086 src/gallium/winsys/i915/sw/Makefile
2087 src/gallium/winsys/nouveau/drm/Makefile
2088 src/gallium/winsys/radeon/drm/Makefile
2089 src/gallium/winsys/svga/drm/Makefile
2090 src/gallium/winsys/sw/Makefile
2091 src/gallium/winsys/sw/dri/Makefile
2092 src/gallium/winsys/sw/fbdev/Makefile
2093 src/gallium/winsys/sw/null/Makefile
2094 src/gallium/winsys/sw/wayland/Makefile
2095 src/gallium/winsys/sw/wrapper/Makefile
2096 src/gallium/winsys/sw/xlib/Makefile
2100 src/glsl/builtin_compiler/Makefile
2102 src/glx/tests/Makefile
2105 src/mapi/es1api/Makefile
2106 src/mapi/es1api/glesv1_cm.pc
2107 src/mapi/es2api/Makefile
2108 src/mapi/es2api/glesv2.pc
2109 src/mapi/glapi/Makefile
2110 src/mapi/glapi/gen/Makefile
2111 src/mapi/glapi/tests/Makefile
2112 src/mapi/shared-glapi/Makefile
2113 src/mapi/shared-glapi/tests/Makefile
2114 src/mapi/vgapi/Makefile
2115 src/mapi/vgapi/vg.pc
2118 src/mesa/drivers/Makefile
2119 src/mesa/drivers/dri/dri.pc
2120 src/mesa/drivers/dri/common/Makefile
2121 src/mesa/drivers/dri/common/xmlpool/Makefile
2122 src/mesa/drivers/dri/i915/Makefile
2123 src/mesa/drivers/dri/i965/Makefile
2124 src/mesa/drivers/dri/Makefile
2125 src/mesa/drivers/dri/nouveau/Makefile
2126 src/mesa/drivers/dri/r200/Makefile
2127 src/mesa/drivers/dri/radeon/Makefile
2128 src/mesa/drivers/dri/swrast/Makefile
2129 src/mesa/drivers/osmesa/Makefile
2130 src/mesa/drivers/osmesa/osmesa.pc
2131 src/mesa/drivers/x11/Makefile
2132 src/mesa/libdricore/Makefile
2133 src/mesa/main/tests/Makefile
2134 src/mesa/main/tests/hash_table/Makefile
2135 src/mesa/program/Makefile
2136 src/mesa/x86-64/Makefile
2137 src/mesa/x86/Makefile])
2139 dnl Sort the dirs alphabetically
2140 GALLIUM_TARGET_DIRS=`echo $GALLIUM_TARGET_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2141 GALLIUM_WINSYS_DIRS=`echo $GALLIUM_WINSYS_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2142 GALLIUM_DRIVERS_DIRS=`echo $GALLIUM_DRIVERS_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2143 GALLIUM_MAKE_DIRS=`echo $GALLIUM_MAKE_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2144 GALLIUM_STATE_TRACKERS_DIRS=`echo $GALLIUM_STATE_TRACKERS_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2149 dnl Output some configuration info for the user
2152 echo " prefix: $prefix"
2153 echo " exec_prefix: $exec_prefix"
2154 echo " libdir: $libdir"
2155 echo " includedir: $includedir"
2159 echo " OpenGL: $enable_opengl (ES1: $enable_gles1 ES2: $enable_gles2)"
2160 echo " OpenVG: $enable_openvg"
2164 if test "x$enable_osmesa" != xno; then
2165 echo " OSMesa: lib$OSMESA_LIB"
2170 if test "x$enable_dri" != xno; then
2171 # cleanup the drivers var
2172 dri_dirs=`echo $DRI_DIRS | $SED 's/^ *//;s/ */ /;s/ *$//'`
2173 if test "x$DRI_DIRS" = x; then
2174 echo " DRI drivers: no"
2176 echo " DRI drivers: $dri_dirs"
2178 echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
2181 case "x$enable_glx$enable_xlib_glx" in
2183 echo " GLX: Xlib-based"
2186 echo " GLX: DRI-based"
2189 echo " GLX: $enable_glx"
2195 echo " EGL: $enable_egl"
2196 if test "$enable_egl" = yes; then
2197 echo " EGL platforms: $EGL_PLATFORMS"
2200 if test "x$HAVE_EGL_DRIVER_GLX" != "x"; then
2201 egl_drivers="$egl_drivers builtin:egl_glx"
2203 if test "x$HAVE_EGL_DRIVER_DRI2" != "x"; then
2204 egl_drivers="$egl_drivers builtin:egl_dri2"
2207 if test "x$HAVE_ST_EGL" = xyes; then
2208 echo " EGL drivers: ${egl_drivers} egl_gallium"
2209 echo " EGL Gallium STs:$EGL_CLIENT_APIS"
2211 echo " EGL drivers: $egl_drivers"
2216 if test "x$MESA_LLVM" = x1; then
2218 echo " llvm-config: $LLVM_CONFIG"
2219 echo " llvm-version: $LLVM_VERSION"
2225 if test -n "$with_gallium_drivers"; then
2226 echo " Gallium: yes"
2227 echo " Target dirs: $GALLIUM_TARGET_DIRS"
2228 echo " Winsys dirs: $GALLIUM_WINSYS_DIRS"
2229 echo " Driver dirs: $GALLIUM_DRIVERS_DIRS"
2230 echo " Trackers dirs: $GALLIUM_STATE_TRACKERS_DIRS"
2238 echo " Shared libs: $enable_shared"
2239 echo " Static libs: $enable_static"
2240 echo " Shared-glapi: $enable_shared_glapi"
2242 dnl Compiler options
2243 # cleanup the CFLAGS/CXXFLAGS/DEFINES vars
2244 cflags=`echo $CFLAGS | \
2245 $SED 's/^ *//;s/ */ /;s/ *$//'`
2246 cxxflags=`echo $CXXFLAGS | \
2247 $SED 's/^ *//;s/ */ /;s/ *$//'`
2248 defines=`echo $DEFINES | $SED 's/^ *//;s/ */ /;s/ *$//'`
2250 echo " CFLAGS: $cflags"
2251 echo " CXXFLAGS: $cxxflags"
2252 echo " Macros: $defines"
2254 if test "x$MESA_LLVM" = x1; then
2255 echo " LLVM_CFLAGS: $LLVM_CFLAGS"
2256 echo " LLVM_CXXFLAGS: $LLVM_CXXFLAGS"
2257 echo " LLVM_CPPFLAGS: $LLVM_CPPFLAGS"
2260 echo " PYTHON2: $PYTHON2"
2263 echo " Run '${MAKE-make}' to build Mesa"