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 DRI2PROTO_REQUIRED=2.6
39 GLPROTO_REQUIRED=1.4.14
40 LIBDRM_XORG_REQUIRED=2.4.24
41 LIBKMS_XORG_REQUIRED=1.0.0
51 AC_CHECK_PROGS([MAKE], [gmake make])
52 AC_CHECK_PROGS([PYTHON2], [python2 python])
53 AX_PYTHON_MODULE([libxml2], [needed])
58 LT_INIT([disable-static])
61 AS_IF([test ! -f "$srcdir/src/glsl/glcpp/glcpp-parse.c"],
62 [AC_MSG_ERROR([bison not found - unable to compile glcpp-parse.y])]))
64 AS_IF([test ! -f "$srcdir/src/glsl/glcpp/glcpp-lex.c"],
65 [AC_MSG_ERROR([flex not found - unable to compile glcpp-lex.l])]))
67 AC_PATH_PROG([PERL], [perl])
69 AC_CHECK_PROG(INDENT, indent, indent, cat)
70 if test "x$INDENT" != "xcat"; then
71 AC_SUBST(INDENT_FLAGS, '-i4 -nut -br -brs -npcs -ce -TGLubyte -TGLbyte -TBool')
76 dnl We need a POSIX shell for parts of the build. Assume we have one
80 # Solaris /bin/sh is too old/non-POSIX compliant
81 AC_PATH_PROGS(POSIX_SHELL, [ksh93 ksh sh])
86 dnl clang is mostly GCC-compatible, but its version is much lower,
87 dnl so we have to check for it.
88 AC_MSG_CHECKING([if compiling with clang])
91 [AC_LANG_PROGRAM([], [[
96 [acv_mesa_CLANG=yes], [acv_mesa_CLANG=no])
98 AC_MSG_RESULT([$acv_mesa_CLANG])
100 dnl If we're using GCC, make sure that it is at least version 3.3.0. Older
101 dnl versions are explictly not supported.
102 if test "x$GCC" = xyes -a "x$acv_mesa_CLANG" = xno; then
103 AC_MSG_CHECKING([whether gcc version is sufficient])
107 GCC_VERSION=`$CC -dumpversion`
108 if test $? -eq 0; then
109 GCC_VERSION_MAJOR=`echo $GCC_VERSION | cut -d. -f1`
110 GCC_VERSION_MINOR=`echo $GCC_VERSION | cut -d. -f2`
113 if test $GCC_VERSION_MAJOR -lt 3 -o $GCC_VERSION_MAJOR -eq 3 -a $GCC_VERSION_MINOR -lt 3 ; then
115 AC_MSG_ERROR([If using GCC, version 3.3.0 or later is required.])
121 dnl Make sure the pkg-config macros are defined
122 m4_ifndef([PKG_PROG_PKG_CONFIG],
123 [m4_fatal([Could not locate the pkg-config autoconf macros.
124 These are usually located in /usr/share/aclocal/pkg.m4. If your macros
125 are in a different location, try setting the environment variable
126 ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
127 PKG_PROG_PKG_CONFIG()
129 dnl LIB_DIR - library basename
130 LIB_DIR=`echo $libdir | $SED 's%.*/%%'`
133 dnl Cache LDFLAGS and CPPFLAGS so we can add to them and restore later
134 _SAVE_LDFLAGS="$LDFLAGS"
135 _SAVE_CPPFLAGS="$CPPFLAGS"
137 dnl build host compiler macros
139 AC_SUBST([DEFINES_FOR_BUILD])
142 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -D_GNU_SOURCE"
145 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -DSVR4"
148 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD"
157 DEFINES="$DEFINES -D_GNU_SOURCE -DHAVE_PTHREAD"
160 DEFINES="$DEFINES -DHAVE_PTHREAD -DSVR4"
163 DEFINES="$DEFINES -DHAVE_PTHREAD"
167 dnl Add flags for gcc and g++
168 if test "x$GCC" = xyes; then
171 CFLAGS="$CFLAGS -Wall -std=gnu99"
174 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -Wall -std=c99"
175 CFLAGS="$CFLAGS -Wall -std=c99"
179 # Enable -Werror=implicit-function-declaration and
180 # -Werror=missing-prototypes, if available, or otherwise, just
181 # -Wmissing-prototypes. This is particularly useful to avoid
182 # generating a loadable driver module that has undefined symbols.
183 save_CFLAGS="$CFLAGS"
184 AC_MSG_CHECKING([whether $CC supports -Werror=missing-prototypes])
185 CFLAGS="$CFLAGS -Werror=implicit-function-declaration"
186 CFLAGS="$CFLAGS -Werror=missing-prototypes"
187 AC_LINK_IFELSE([AC_LANG_PROGRAM()],
188 AC_MSG_RESULT([yes]),
189 [CFLAGS="$save_CFLAGS -Wmissing-prototypes";
190 AC_MSG_RESULT([no])]);
192 # Enable -fvisibility=hidden if using a gcc that supports it
193 save_CFLAGS="$CFLAGS"
194 AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
195 VISIBILITY_CFLAGS="-fvisibility=hidden"
196 CFLAGS="$CFLAGS $VISIBILITY_CFLAGS"
197 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
198 [VISIBILITY_CFLAGS=""; AC_MSG_RESULT([no])]);
200 # Restore CFLAGS; VISIBILITY_CFLAGS are added to it where needed.
203 # Work around aliasing bugs - developers should comment this out
204 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -fno-strict-aliasing"
205 CFLAGS="$CFLAGS -fno-strict-aliasing"
207 # gcc's builtin memcmp is slower than glibc's
208 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
209 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -fno-builtin-memcmp"
210 CFLAGS="$CFLAGS -fno-builtin-memcmp"
212 if test "x$GXX" = xyes; then
213 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -Wall"
214 CXXFLAGS="$CXXFLAGS -Wall"
216 # Enable -fvisibility=hidden if using a gcc that supports it
217 save_CXXFLAGS="$CXXFLAGS"
218 AC_MSG_CHECKING([whether $CXX supports -fvisibility=hidden])
219 VISIBILITY_CXXFLAGS="-fvisibility=hidden"
220 CXXFLAGS="$CXXFLAGS $VISIBILITY_CXXFLAGS"
222 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
223 [VISIBILITY_CXXFLAGS="" ; AC_MSG_RESULT([no])]);
226 # Restore CXXFLAGS; VISIBILITY_CXXFLAGS are added to it where needed.
227 CXXFLAGS=$save_CXXFLAGS
229 # Work around aliasing bugs - developers should comment this out
230 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -fno-strict-aliasing"
231 CXXFLAGS="$CXXFLAGS -fno-strict-aliasing"
233 # gcc's builtin memcmp is slower than glibc's
234 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
235 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -fno-builtin-memcmp"
236 CXXFLAGS="$CXXFLAGS -fno-builtin-memcmp"
239 dnl even if the compiler appears to support it, using visibility attributes isn't
240 dnl going to do anything useful currently on cygwin apart from emit lots of warnings
244 VISIBILITY_CXXFLAGS=""
248 AC_SUBST([VISIBILITY_CFLAGS])
249 AC_SUBST([VISIBILITY_CXXFLAGS])
252 dnl Hacks to enable 32 or 64 bit build
254 AC_ARG_ENABLE([32-bit],
255 [AS_HELP_STRING([--enable-32-bit],
256 [build 32-bit libraries @<:@default=auto@:>@])],
257 [enable_32bit="$enableval"],
260 if test "x$enable_32bit" = xyes; then
261 if test "x$GCC" = xyes; then
262 CFLAGS="$CFLAGS -m32"
263 CCASFLAGS="$CCASFLAGS -m32"
265 if test "x$GXX" = xyes; then
266 CXXFLAGS="$CXXFLAGS -m32"
269 AC_ARG_ENABLE([64-bit],
270 [AS_HELP_STRING([--enable-64-bit],
271 [build 64-bit libraries @<:@default=auto@:>@])],
272 [enable_64bit="$enableval"],
275 if test "x$enable_64bit" = xyes; then
276 if test "x$GCC" = xyes; then
277 CFLAGS="$CFLAGS -m64"
279 if test "x$GXX" = xyes; then
280 CXXFLAGS="$CXXFLAGS -m64"
284 dnl Can't have static and shared libraries, default to static if user
285 dnl explicitly requested. If both disabled, set to static since shared
286 dnl was explicitly requested.
287 case "x$enable_static$enable_shared" in
289 AC_MSG_WARN([Cannot build static and shared libraries, disabling shared])
293 AC_MSG_WARN([Cannot disable both static and shared libraries, enabling static])
298 AM_CONDITIONAL(BUILD_SHARED, test "x$enable_shared" = xyes)
301 dnl other compiler options
303 AC_ARG_ENABLE([debug],
304 [AS_HELP_STRING([--enable-debug],
305 [use debug compiler flags and macros @<:@default=disabled@:>@])],
306 [enable_debug="$enableval"],
309 if test "x$enable_debug" = xyes; then
310 DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -DDEBUG"
311 if test "x$GCC_FOR_BUILD" = xyes; then
312 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -g -O0"
314 if test "x$GXX_FOR_BUILD" = xyes; then
315 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -g -O0"
318 DEFINES="$DEFINES -DDEBUG"
319 if test "x$GCC" = xyes; then
320 CFLAGS="$CFLAGS -g -O0"
322 if test "x$GXX" = xyes; then
323 CXXFLAGS="$CXXFLAGS -g -O0"
330 LIB_PREFIX_GLOB='lib'
331 LIB_VERSION_SEPARATOR='.'
332 if test "$enable_static" = yes; then
337 LIB_EXTENSION='dylib' ;;
339 dnl prefix can be 'cyg' or 'lib'
340 LIB_PREFIX_GLOB='???'
341 LIB_VERSION_SEPARATOR='-'
342 LIB_EXTENSION='dll' ;;
346 LIB_EXTENSION='so' ;;
349 AC_ARG_WITH([gl-lib-name],
350 [AS_HELP_STRING([--with-gl-lib-name@<:@=NAME@:>@],
351 [specify GL library name @<:@default=GL@:>@])],
354 AC_ARG_WITH([osmesa-lib-name],
355 [AS_HELP_STRING([--with-osmesa-lib-name@<:@=NAME@:>@],
356 [specify OSMesa library name @<:@default=OSMesa@:>@])],
357 [OSMESA_LIB=$withval],
359 AS_IF([test "x$GL_LIB" = xyes], [GL_LIB=GL])
360 AS_IF([test "x$OSMESA_LIB" = xyes], [OSMESA_LIB=OSMesa])
363 dnl Mangled Mesa support
365 AC_ARG_ENABLE([mangling],
366 [AS_HELP_STRING([--enable-mangling],
367 [enable mangled symbols and library name @<:@default=disabled@:>@])],
368 [enable_mangling="${enableval}"],
371 if test "x${enable_mangling}" = "xyes" ; then
372 DEFINES="${DEFINES} -DUSE_MGL_NAMESPACE"
373 GL_LIB="Mangled${GL_LIB}"
374 OSMESA_LIB="Mangled${OSMESA_LIB}"
377 AC_SUBST([OSMESA_LIB])
380 dnl potentially-infringing-but-nobody-knows-for-sure stuff
382 AC_ARG_ENABLE([texture-float],
383 [AS_HELP_STRING([--enable-texture-float],
384 [enable floating-point textures and renderbuffers @<:@default=disabled@:>@])],
385 [enable_texture_float="$enableval"],
386 [enable_texture_float=no]
388 if test "x$enable_texture_float" = xyes; then
389 AC_MSG_WARN([Floating-point textures enabled.])
390 AC_MSG_WARN([Please consult docs/patents.txt with your lawyer before building Mesa.])
391 DEFINES="$DEFINES -DTEXTURE_FLOAT_ENABLED"
394 GL_LIB_NAME='lib$(GL_LIB).'${LIB_EXTENSION}
395 OSMESA_LIB_NAME='lib$(OSMESA_LIB).'${LIB_EXTENSION}
396 EGL_LIB_NAME='lib$(EGL_LIB).'${LIB_EXTENSION}
397 GLESv1_CM_LIB_NAME='lib$(GLESv1_CM_LIB).'${LIB_EXTENSION}
398 GLESv2_LIB_NAME='lib$(GLESv2_LIB).'${LIB_EXTENSION}
399 VG_LIB_NAME='lib$(VG_LIB).'${LIB_EXTENSION}
400 GLAPI_LIB_NAME='lib$(GLAPI_LIB).'${LIB_EXTENSION}
402 GL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
403 EGL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(EGL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
404 EGL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(EGL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
405 GLESv1_CM_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLESv1_CM_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
406 GLESv2_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLESv2_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
407 VG_LIB_GLOB=${LIB_PREFIX_GLOB}'$(VG_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
408 GLAPI_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLAPI_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
410 AC_SUBST([GL_LIB_NAME])
411 AC_SUBST([OSMESA_LIB_NAME])
412 AC_SUBST([EGL_LIB_NAME])
413 AC_SUBST([GLESv1_CM_LIB_NAME])
414 AC_SUBST([GLESv2_LIB_NAME])
415 AC_SUBST([VG_LIB_NAME])
416 AC_SUBST([GLAPI_LIB_NAME])
418 AC_SUBST([GL_LIB_GLOB])
419 AC_SUBST([EGL_LIB_GLOB])
420 AC_SUBST([GLESv1_CM_LIB_GLOB])
421 AC_SUBST([GLESv2_LIB_GLOB])
422 AC_SUBST([VG_LIB_GLOB])
423 AC_SUBST([GLAPI_LIB_GLOB])
426 dnl Arch/platform-specific settings
429 [AS_HELP_STRING([--disable-asm],
430 [disable assembly usage @<:@default=enabled on supported plaforms@:>@])],
431 [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
459 linux* | *freebsd* | dragonfly* | *netbsd*)
460 test "x$enable_32bit" = xyes && asm_arch=x86 || asm_arch=x86_64
475 DEFINES="$DEFINES -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM"
476 MESA_ASM_FILES='$(X86_FILES)'
477 AC_MSG_RESULT([yes, x86])
480 DEFINES="$DEFINES -DUSE_X86_64_ASM"
481 MESA_ASM_FILES='$(X86_64_FILES)'
482 AC_MSG_RESULT([yes, x86_64])
485 DEFINES="$DEFINES -DUSE_SPARC_ASM"
486 MESA_ASM_FILES='$(SPARC_FILES)'
487 AC_MSG_RESULT([yes, sparc])
490 AC_MSG_RESULT([no, platform not supported])
494 AC_SUBST([MESA_ASM_FILES])
496 dnl Check to see if dlopen is in default libraries (like Solaris, which
497 dnl has it in libc), or if libdl is needed to get it.
498 AC_CHECK_FUNC([dlopen], [DEFINES="$DEFINES -DHAVE_DLOPEN"],
499 [AC_CHECK_LIB([dl], [dlopen],
500 [DEFINES="$DEFINES -DHAVE_DLOPEN"; DLOPEN_LIBS="-ldl"])])
501 AC_SUBST([DLOPEN_LIBS])
507 AC_CHECK_FUNCS([clock_gettime], [CLOCK_LIB=],
508 [AC_CHECK_LIB([rt], [clock_gettime], [CLOCK_LIB=-lrt],
509 [AC_MSG_ERROR([Couldn't find clock_gettime])])])
510 AC_SUBST([CLOCK_LIB])
514 dnl See if posix_memalign is available
515 AC_CHECK_FUNC([posix_memalign], [DEFINES="$DEFINES -DHAVE_POSIX_MEMALIGN"])
517 dnl Check for pthreads
519 dnl AX_PTHREADS leaves PTHREAD_LIBS empty for gcc and sets PTHREAD_CFLAGS
520 dnl to -pthread, which causes problems if we need -lpthread to appear in
522 test -z "$PTHREAD_LIBS" && PTHREAD_LIBS="-lpthread"
524 dnl SELinux awareness.
525 AC_ARG_ENABLE([selinux],
526 [AS_HELP_STRING([--enable-selinux],
527 [Build SELinux-aware Mesa @<:@default=disabled@:>@])],
528 [MESA_SELINUX="$enableval"],
530 if test "x$enable_selinux" = "xyes"; then
531 AC_CHECK_HEADER([selinux/selinux.h],[],
532 [AC_MSG_ERROR([SELinux headers not found])])
533 AC_CHECK_LIB([selinux],[is_selinux_enabled],[],
534 [AC_MSG_ERROR([SELinux library not found])])
535 SELINUX_LIBS="-lselinux"
536 DEFINES="$DEFINES -DMESA_SELINUX"
538 AC_SUBST([SELINUX_LIBS])
541 AC_ARG_ENABLE([opengl],
542 [AS_HELP_STRING([--disable-opengl],
543 [disable support for standard OpenGL API @<:@default=no@:>@])],
544 [enable_opengl="$enableval"],
546 AC_ARG_ENABLE([gles1],
547 [AS_HELP_STRING([--enable-gles1],
548 [enable support for OpenGL ES 1.x API @<:@default=no@:>@])],
549 [enable_gles1="$enableval"],
551 AC_ARG_ENABLE([gles2],
552 [AS_HELP_STRING([--enable-gles2],
553 [enable support for OpenGL ES 2.x API @<:@default=no@:>@])],
554 [enable_gles2="$enableval"],
556 AC_ARG_ENABLE([openvg],
557 [AS_HELP_STRING([--enable-openvg],
558 [enable support for OpenVG API @<:@default=no@:>@])],
559 [enable_openvg="$enableval"],
563 [AS_HELP_STRING([--enable-dri],
564 [enable DRI modules @<:@default=enabled@:>@])],
565 [enable_dri="$enableval"],
568 [AS_HELP_STRING([--enable-glx],
569 [enable GLX library @<:@default=enabled@:>@])],
570 [enable_glx="$enableval"],
572 AC_ARG_ENABLE([osmesa],
573 [AS_HELP_STRING([--enable-osmesa],
574 [enable OSMesa library @<:@default=disabled@:>@])],
575 [enable_osmesa="$enableval"],
578 [AS_HELP_STRING([--disable-egl],
579 [disable EGL library @<:@default=enabled@:>@])],
580 [enable_egl="$enableval"],
583 AC_ARG_ENABLE([xorg],
584 [AS_HELP_STRING([--enable-xorg],
585 [enable support for X.Org DDX API @<:@default=no@:>@])],
586 [enable_xorg="$enableval"],
589 [AS_HELP_STRING([--enable-xa],
590 [enable build of the XA X Acceleration API @<:@default=no@:>@])],
591 [enable_xa="$enableval"],
594 [AS_HELP_STRING([--enable-gbm],
595 [enable gbm library @<:@default=auto@:>@])],
596 [enable_gbm="$enableval"],
599 AC_ARG_ENABLE([xvmc],
600 [AS_HELP_STRING([--enable-xvmc],
601 [enable xvmc library @<:@default=auto@:>@])],
602 [enable_xvmc="$enableval"],
604 AC_ARG_ENABLE([vdpau],
605 [AS_HELP_STRING([--enable-vdpau],
606 [enable vdpau library @<:@default=auto@:>@])],
607 [enable_vdpau="$enableval"],
609 AC_ARG_ENABLE([opencl],
610 [AS_HELP_STRING([--enable-opencl],
611 [enable OpenCL library NOTE: Enabling this option will also enable
612 --with-llvm-shared-libs
613 @<:@default=no@:>@])],
616 AC_ARG_ENABLE([xlib_glx],
617 [AS_HELP_STRING([--enable-xlib-glx],
618 [make GLX library Xlib-based instead of DRI-based @<:@default=disabled@:>@])],
619 [enable_xlib_glx="$enableval"],
620 [enable_xlib_glx=no])
621 AC_ARG_ENABLE([gallium_egl],
622 [AS_HELP_STRING([--enable-gallium-egl],
623 [enable optional EGL state tracker (not required
624 for EGL support in Gallium with OpenGL and OpenGL ES)
625 @<:@default=disable@:>@])],
626 [enable_gallium_egl="$enableval"],
627 [enable_gallium_egl=no])
628 AC_ARG_ENABLE([gallium_gbm],
629 [AS_HELP_STRING([--enable-gallium-gbm],
630 [enable optional gbm state tracker (not required for
631 gbm support in Gallium)
632 @<:@default=auto@:>@])],
633 [enable_gallium_gbm="$enableval"],
634 [enable_gallium_gbm=auto])
636 AC_ARG_ENABLE([r600-llvm-compiler],
637 [AS_HELP_STRING([--enable-r600-llvm-compiler],
638 [Enable experimental LLVM backend for graphics shaders @<:@default=disable@:>@])],
639 [enable_r600_llvm="$enableval"],
640 [enable_r600_llvm=no])
642 AC_ARG_ENABLE([gallium_tests],
643 [AS_HELP_STRING([--enable-gallium-tests],
644 [Enable optional Gallium tests) @<:@default=disable@:>@])],
645 [enable_gallium_tests="$enableval"],
646 [enable_gallium_tests=no])
648 # Option for Gallium drivers
650 # Keep this in sync with the --with-gallium-drivers help string default value
651 GALLIUM_DRIVERS_DEFAULT="r300,r600,svga,swrast"
653 AC_ARG_WITH([gallium-drivers],
654 [AS_HELP_STRING([--with-gallium-drivers@<:@=DIRS...@:>@],
655 [comma delimited Gallium drivers list, e.g.
656 "i915,nouveau,r300,r600,radeonsi,svga,swrast"
657 @<:@default=r300,r600,svga,swrast@:>@])],
658 [with_gallium_drivers="$withval"],
659 [with_gallium_drivers="$GALLIUM_DRIVERS_DEFAULT"])
661 # Doing '--without-gallium-drivers' will set this variable to 'no'. Clear it
662 # here so that the script doesn't choke on an unknown driver name later.
663 case "$with_gallium_drivers" in
664 yes) with_gallium_drivers="$GALLIUM_DRIVERS_DEFAULT" ;;
665 no) with_gallium_drivers='' ;;
668 if test "x$enable_opengl" = xno -a \
669 "x$enable_gles1" = xno -a \
670 "x$enable_gles2" = xno -a \
671 "x$enable_openvg" = xno -a \
672 "x$enable_xorg" = xno -a \
673 "x$enable_xa" = xno -a \
674 "x$enable_xvmc" = xno -a \
675 "x$enable_vdpau" = xno -a \
676 "x$enable_opencl" = xno; then
677 AC_MSG_ERROR([at least one API should be enabled])
681 if test "x$enable_opengl" = xno; then
682 API_DEFINES="$API_DEFINES -DFEATURE_GL=0"
684 API_DEFINES="$API_DEFINES -DFEATURE_GL=1"
686 if test "x$enable_gles1" = xyes; then
687 API_DEFINES="$API_DEFINES -DFEATURE_ES1=1"
689 if test "x$enable_gles2" = xyes; then
690 API_DEFINES="$API_DEFINES -DFEATURE_ES2=1"
692 AC_SUBST([API_DEFINES])
694 if test "x$enable_glx" = xno; then
695 AC_MSG_WARN([GLX disabled, disabling Xlib-GLX])
699 if test "x$enable_dri$enable_xlib_glx" = xyesyes; then
700 AC_MSG_ERROR([DRI and Xlib-GLX cannot be built together])
703 if test "x$enable_opengl$enable_xlib_glx" = xnoyes; then
704 AC_MSG_ERROR([Xlib-GLX cannot be built without OpenGL])
707 # Disable GLX if OpenGL is not enabled
708 if test "x$enable_glx$enable_opengl" = xyesno; then
709 AC_MSG_WARN([OpenGL not enabled, disabling GLX])
713 # Disable GLX if DRI and Xlib-GLX are not enabled
714 if test "x$enable_glx" = xyes -a \
715 "x$enable_dri" = xno -a \
716 "x$enable_xlib_glx" = xno; then
717 AC_MSG_WARN([Neither DRI nor Xlib-GLX enabled, disabling GLX])
721 AM_CONDITIONAL(HAVE_DRI, test "x$enable_dri" = xyes)
722 AM_CONDITIONAL(NEED_LIBMESA, test "x$enable_xlib_glx" = xyes -o \
723 "x$enable_osmesa" = xyes)
725 AC_ARG_ENABLE([shared-glapi],
726 [AS_HELP_STRING([--enable-shared-glapi],
727 [Enable shared glapi for OpenGL @<:@default=yes@:>@])],
728 [enable_shared_glapi="$enableval"],
729 [enable_shared_glapi="$enable_dri"])
731 # Shared GLAPI is only useful for DRI
732 if test "x$enable_dri" = xno; then
733 AC_MSG_NOTICE([Shared GLAPI is only useful for DRI, disabling])
734 enable_shared_glapi=no
737 if test "x$enable_shared_glapi" = xyes; then
738 # libGL will use libglapi for function lookups (IN_DRI_DRIVER means to use
740 DEFINES="$DEFINES -DIN_DRI_DRIVER"
741 CORE_DIRS="mapi/shared-glapi"
743 AM_CONDITIONAL(HAVE_SHARED_GLAPI, test "x$enable_shared_glapi" = xyes)
746 dnl Driver specific build directories
748 GALLIUM_DIRS="auxiliary drivers state_trackers"
749 GALLIUM_TARGET_DIRS=""
750 GALLIUM_WINSYS_DIRS="sw"
751 GALLIUM_DRIVERS_DIRS="galahad trace rbug noop identity"
752 GALLIUM_STATE_TRACKERS_DIRS=""
754 # build glapi if OpenGL is enabled
755 if test "x$enable_opengl" = xyes; then
756 CORE_DIRS="$CORE_DIRS mapi/glapi"
759 # build es1api if OpenGL ES 1.x is enabled
760 if test "x$enable_gles1" = xyes; then
761 CORE_DIRS="$CORE_DIRS mapi/es1api"
764 # build es2api if OpenGL ES 2.x is enabled
765 if test "x$enable_gles2" = xyes; then
766 CORE_DIRS="$CORE_DIRS mapi/es2api"
769 # build glsl and mesa if OpenGL or OpenGL ES is enabled
770 case "x$enable_opengl$enable_gles1$enable_gles2" in
772 CORE_DIRS="mapi/glapi/gen $CORE_DIRS gtest glsl mesa"
776 case "x$enable_glx$enable_xlib_glx" in
778 DRIVER_DIRS="$DRIVER_DIRS x11"
779 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib"
780 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS libgl-xlib"
781 GALLIUM_STATE_TRACKERS_DIRS="glx $GALLIUM_STATE_TRACKERS_DIRS"
782 HAVE_WINSYS_XLIB="yes"
786 SRC_DIRS="$SRC_DIRS glx"
790 if test "x$enable_dri" = xyes; then
791 DRIVER_DIRS="$DRIVER_DIRS dri"
793 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/dri"
794 GALLIUM_STATE_TRACKERS_DIRS="dri $GALLIUM_STATE_TRACKERS_DIRS"
798 if test "x$enable_osmesa" = xyes; then
799 DRIVER_DIRS="$DRIVER_DIRS osmesa"
803 AC_SUBST([DRIVER_DIRS])
804 AC_SUBST([GALLIUM_DIRS])
805 AC_SUBST([GALLIUM_TARGET_DIRS])
806 AC_SUBST([GALLIUM_WINSYS_DIRS])
807 AC_SUBST([GALLIUM_DRIVERS_DIRS])
808 AC_SUBST([GALLIUM_STATE_TRACKERS_DIRS])
809 AC_SUBST([MESA_LLVM])
812 PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED],
813 [have_libdrm=yes], [have_libdrm=no])
815 if test "x$enable_dri" = xyes; then
816 # DRI must be shared, I think
817 if test "$enable_static" = yes; then
818 AC_MSG_ERROR([Cannot use static libraries for DRI drivers])
821 # not a hard requirement as swrast does not depend on it
822 if test "x$have_libdrm" = xyes; then
823 DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED"
827 dnl Direct rendering or just indirect rendering
830 dnl Disable by default on GNU/Hurd
831 driglx_direct_default="no"
834 dnl Disable by default on cygwin
835 driglx_direct_default="no"
838 driglx_direct_default="yes"
841 AC_ARG_ENABLE([driglx-direct],
842 [AS_HELP_STRING([--disable-driglx-direct],
843 [disable direct rendering in GLX and EGL for DRI \
844 @<:@default=auto@:>@])],
845 [driglx_direct="$enableval"],
846 [driglx_direct="$driglx_direct_default"])
849 dnl libGL configuration per driver
851 case "x$enable_glx$enable_xlib_glx" in
854 PKG_CHECK_MODULES([XLIBGL], [x11 xext])
855 GL_PC_REQ_PRIV="x11 xext"
856 X11_INCLUDES="$X11_INCLUDES $XLIBGL_CFLAGS"
857 GL_LIB_DEPS="$XLIBGL_LIBS"
858 GL_LIB_DEPS="$GL_LIB_DEPS $SELINUX_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
859 GL_PC_LIB_PRIV="$GL_PC_LIB_PRIV $SELINUX_LIBS -lm $PTHREAD_LIBS"
863 PKG_CHECK_MODULES([GLPROTO], [glproto >= $GLPROTO_REQUIRED])
864 if test x"$driglx_direct" = xyes; then
865 if test "x$have_libdrm" != xyes; then
866 AC_MSG_ERROR([Direct rendering requires libdrm >= $LIBDRM_REQUIRED])
868 PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED])
869 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV libdrm >= $LIBDRM_REQUIRED"
872 # find the DRI deps for libGL
873 dri_modules="x11 xext xdamage xfixes x11-xcb xcb-glx >= 1.8.1 xcb-dri2 >= 1.8"
875 # add xf86vidmode if available
876 PKG_CHECK_MODULES([XF86VIDMODE], [xxf86vm], HAVE_XF86VIDMODE=yes, HAVE_XF86VIDMODE=no)
877 if test "$HAVE_XF86VIDMODE" = yes ; then
878 dri_modules="$dri_modules xxf86vm"
881 PKG_CHECK_MODULES([DRIGL], [$dri_modules])
882 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV $dri_modules"
883 X11_INCLUDES="$X11_INCLUDES $DRIGL_CFLAGS"
884 GL_LIB_DEPS="$DRIGL_LIBS"
886 # need DRM libs, $PTHREAD_LIBS, etc.
887 GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
888 GL_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
892 # This is outside the case (above) so that it is invoked even for non-GLX
894 AM_CONDITIONAL(HAVE_XF86VIDMODE, test "x$HAVE_XF86VIDMODE" = xyes)
896 GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
897 GLESv1_CM_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
898 GLESv2_LIB_DEPS="$LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
899 GLESv2_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
901 AC_SUBST([X11_INCLUDES])
902 AC_SUBST([GL_LIB_DEPS])
903 AC_SUBST([GL_PC_REQ_PRIV])
904 AC_SUBST([GL_PC_LIB_PRIV])
905 AC_SUBST([GL_PC_CFLAGS])
906 AC_SUBST([DRI_PC_REQ_PRIV])
907 AC_SUBST([GLESv1_CM_LIB_DEPS])
908 AC_SUBST([GLESv1_CM_PC_LIB_PRIV])
909 AC_SUBST([GLESv2_LIB_DEPS])
910 AC_SUBST([GLESv2_PC_LIB_PRIV])
912 DRI_LIB_DEPS="\$(top_builddir)/src/mesa/libdricore/libdricore${VERSION}.la"
914 AC_SUBST([HAVE_XF86VIDMODE])
919 case "x$enable_glx$enable_xlib_glx" in
921 DEFINES="$DEFINES -DUSE_XSHM"
924 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING"
925 if test "x$driglx_direct" = xyes; then
926 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
935 AC_ARG_ENABLE([glx-tls],
936 [AS_HELP_STRING([--enable-glx-tls],
937 [enable TLS support in GLX @<:@default=disabled@:>@])],
938 [GLX_USE_TLS="$enableval"],
940 AC_SUBST(GLX_TLS, ${GLX_USE_TLS})
942 AS_IF([test "x$GLX_USE_TLS" = xyes -a "x$ax_pthread_ok" = xyes],
943 [DEFINES="${DEFINES} -DGLX_USE_TLS -DHAVE_PTHREAD"])
948 dnl Directory for DRI drivers
949 AC_ARG_WITH([dri-driverdir],
950 [AS_HELP_STRING([--with-dri-driverdir=DIR],
951 [directory for the DRI drivers @<:@${libdir}/dri@:>@])],
952 [DRI_DRIVER_INSTALL_DIR="$withval"],
953 [DRI_DRIVER_INSTALL_DIR='${libdir}/dri'])
954 AC_SUBST([DRI_DRIVER_INSTALL_DIR])
955 dnl Extra search path for DRI drivers
956 AC_ARG_WITH([dri-searchpath],
957 [AS_HELP_STRING([--with-dri-searchpath=DIRS...],
958 [semicolon delimited DRI driver search directories @<:@${libdir}/dri@:>@])],
959 [DRI_DRIVER_SEARCH_DIR="$withval"],
960 [DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}'])
961 AC_SUBST([DRI_DRIVER_SEARCH_DIR])
962 dnl Which drivers to build - default is chosen by platform
963 AC_ARG_WITH([dri-drivers],
964 [AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@],
965 [comma delimited DRI drivers list, e.g.
966 "swrast,i965,radeon" @<:@default=auto@:>@])],
967 [with_dri_drivers="$withval"],
968 [with_dri_drivers=yes])
969 if test "x$with_dri_drivers" = x; then
973 dnl If $with_dri_drivers is yes, directories will be added through
976 case "$with_dri_drivers" in
979 # classic DRI drivers require FEATURE_GL to build
980 if test "x$enable_opengl" = xyes; then
985 # verify the requested driver directories exist
986 dri_drivers=`IFS=', '; echo $with_dri_drivers`
987 for driver in $dri_drivers; do
988 test -d "$srcdir/src/mesa/drivers/dri/$driver" || \
989 AC_MSG_ERROR([DRI driver directory '$driver' does not exist])
991 DRI_DIRS="$dri_drivers"
992 if test -n "$DRI_DIRS" -a "x$enable_opengl" != xyes; then
993 AC_MSG_ERROR([--with-dri-drivers requires OpenGL])
998 dnl Set DRI_DIRS, DEFINES and LIB_DEPS
999 if test "x$enable_dri" = xyes; then
1000 # Platform specific settings and drivers to build
1003 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1004 DEFINES="$DEFINES -DHAVE_ALIAS"
1008 if test "x$DRI_DIRS" = "xyes"; then
1009 DRI_DIRS="i915 i965 nouveau r200 radeon swrast"
1013 # Build only the drivers for cards that exist on PowerPC.
1014 if test "x$DRI_DIRS" = "xyes"; then
1015 DRI_DIRS="r200 radeon swrast"
1019 # Build only the drivers for cards that exist on sparc
1020 if test "x$DRI_DIRS" = "xyes"; then
1021 DRI_DIRS="r200 radeon swrast"
1026 freebsd* | dragonfly* | *netbsd*)
1027 DEFINES="$DEFINES -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1"
1028 DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS"
1030 if test "x$DRI_DIRS" = "xyes"; then
1031 DRI_DIRS="i915 i965 nouveau r200 radeon swrast"
1035 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1036 DEFINES="$DEFINES -DHAVE_ALIAS"
1039 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1042 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
1043 if test "x$DRI_DIRS" = "xyes"; then
1050 if test "x$DRI_DIRS" = "xyes"; then
1051 DRI_DIRS="i915 i965 nouveau r200 radeon swrast"
1054 DRI_DIRS=`echo "$DRI_DIRS" | $SED 's/ */ /g'`
1059 AC_ARG_WITH([expat],
1060 [AS_HELP_STRING([--with-expat=DIR],
1061 [expat install directory])],[
1062 EXPAT_INCLUDES="-I$withval/include"
1063 CPPFLAGS="$CPPFLAGS $EXPAT_INCLUDES"
1064 LDFLAGS="$LDFLAGS -L$withval/$LIB_DIR"
1065 EXPAT_LIB="-L$withval/$LIB_DIR -lexpat"
1067 AC_CHECK_HEADER([expat.h],[],[AC_MSG_ERROR([Expat required for DRI.])])
1069 AC_CHECK_LIB([expat],[XML_ParserCreate],[],
1070 [AC_MSG_ERROR([Expat required for DRI.])])
1073 # If we are building any DRI driver other than swrast.
1074 if test -n "$DRI_DIRS" -a x"$DRI_DIRS" != xswrast; then
1075 # ... libdrm is required
1076 if test "x$have_libdrm" != xyes; then
1077 AC_MSG_ERROR([DRI drivers requires libdrm >= $LIBDRM_REQUIRED])
1079 # ... and build dricommon
1083 # put all the necessary libs together
1084 DRI_LIB_DEPS="$DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm $PTHREAD_LIBS $DLOPEN_LIBS"
1085 GALLIUM_DRI_LIB_DEPS="$GALLIUM_DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm $CLOCK_LIB $PTHREAD_LIBS $DLOPEN_LIBS"
1087 AM_CONDITIONAL(NEED_LIBDRICORE, test -n "$DRI_DIRS")
1088 AC_SUBST([DRI_DIRS])
1089 AC_SUBST([EXPAT_INCLUDES])
1090 AC_SUBST([DRI_LIB_DEPS])
1091 AC_SUBST([GALLIUM_DRI_LIB_DEPS])
1095 PKG_CHECK_MODULES([INTEL], [libdrm_intel >= $LIBDRM_INTEL_REQUIRED])
1097 for d in $(echo $DRI_DIRS | sed 's/,/ /g'); do
1113 PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NVVIEUX_REQUIRED])
1114 HAVE_NOUVEAU_DRI=yes;
1120 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1122 for d in $(echo $DRI_DIRS | sed 's/,/ /g'); do
1125 HAVE_RADEON_DRI=yes;
1138 HAVE_SWRAST_DRI=yes;
1143 dnl OSMesa configuration
1146 dnl Configure the channel bits for OSMesa (libOSMesa, libOSMesa16, ...)
1147 AC_ARG_WITH([osmesa-bits],
1148 [AS_HELP_STRING([--with-osmesa-bits=BITS],
1149 [OSMesa channel bits and library name: 8, 16, 32 @<:@default=8@:>@])],
1150 [osmesa_bits="$withval"],
1152 if test "x$osmesa_bits" != x8; then
1153 if test "x$enable_dri" = xyes -o "x$enable_glx" = xyes; then
1154 AC_MSG_WARN([Ignoring OSMesa channel bits because of non-OSMesa driver])
1158 case "x$osmesa_bits" in
1160 OSMESA_LIB="${OSMESA_LIB}"
1163 OSMESA_LIB="${OSMESA_LIB}$osmesa_bits"
1164 DEFINES="$DEFINES -DCHAN_BITS=$osmesa_bits -DDEFAULT_SOFTWARE_DEPTH_BITS=31"
1167 AC_MSG_ERROR([OSMesa bits '$osmesa_bits' is not a valid option])
1171 if test "x$enable_osmesa" = xyes; then
1172 # only link libraries with osmesa if shared
1173 if test "$enable_static" = no; then
1174 OSMESA_LIB_DEPS="-lm $PTHREAD_LIBS $SELINUX_LIBS $DLOPEN_LIBS"
1179 OSMESA_PC_LIB_PRIV="-lm $PTHREAD_LIBS $SELINUX_LIBS $DLOPEN_LIBS"
1182 AC_SUBST([OSMESA_LIB_DEPS])
1183 AC_SUBST([OSMESA_MESA_DEPS])
1184 AC_SUBST([OSMESA_PC_REQ])
1185 AC_SUBST([OSMESA_PC_LIB_PRIV])
1188 dnl gbm configuration
1190 if test "x$enable_gbm" = xauto; then
1191 case "$with_egl_platforms" in
1198 if test "x$enable_gbm" = xyes; then
1199 SRC_DIRS="$SRC_DIRS gbm"
1201 PKG_CHECK_MODULES([LIBUDEV], [libudev], [],
1202 AC_MSG_ERROR([gbm needs udev]))
1204 if test "x$enable_dri" = xyes; then
1205 GBM_BACKEND_DIRS="$GBM_BACKEND_DIRS dri"
1206 if test "x$enable_shared_glapi" = xno; then
1207 AC_MSG_ERROR([gbm_dri requires --enable-shared-glapi])
1211 GBM_PC_REQ_PRIV="libudev"
1212 GBM_PC_LIB_PRIV="$DLOPEN_LIBS"
1213 AC_SUBST([GBM_PC_REQ_PRIV])
1214 AC_SUBST([GBM_PC_LIB_PRIV])
1217 dnl EGL configuration
1221 if test "x$enable_egl" = xyes; then
1222 SRC_DIRS="$SRC_DIRS egl"
1223 EGL_LIB_DEPS="$DLOPEN_LIBS $SELINUX_LIBS $PTHREAD_LIBS"
1225 AC_CHECK_FUNC(mincore, [DEFINES="$DEFINES -DHAVE_MINCORE"])
1227 if test "$enable_static" != yes; then
1228 # build egl_glx when libGL is built
1229 PKG_CHECK_MODULES([LIBUDEV], [libudev > 150],
1230 [have_libudev=yes],[have_libudev=no])
1231 if test "$have_libudev" = yes; then
1232 DEFINES="$DEFINES -DHAVE_LIBUDEV"
1235 if test "x$enable_dri" = xyes; then
1236 HAVE_EGL_DRIVER_DRI2=1
1241 AC_SUBST([EGL_LIB_DEPS])
1244 dnl EGL Gallium configuration
1246 if test "x$enable_gallium_egl" = xyes; then
1247 if test "x$with_gallium_drivers" = x; then
1248 AC_MSG_ERROR([cannot enable egl_gallium without Gallium])
1250 if test "x$enable_egl" = xno; then
1251 AC_MSG_ERROR([cannot enable egl_gallium without EGL])
1253 if test "x$have_libdrm" != xyes; then
1254 AC_MSG_ERROR([egl_gallium requires libdrm >= $LIBDRM_REQUIRED])
1257 GALLIUM_STATE_TRACKERS_DIRS="egl $GALLIUM_STATE_TRACKERS_DIRS"
1258 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS egl-static"
1263 dnl gbm Gallium configuration
1265 if test "x$enable_gallium_gbm" = xauto; then
1266 case "$enable_gbm$HAVE_ST_EGL$enable_dri$with_egl_platforms" in
1268 enable_gallium_gbm=yes ;;
1270 enable_gallium_gbm=no ;;
1273 if test "x$enable_gallium_gbm" = xyes; then
1274 if test "x$with_gallium_drivers" = x; then
1275 AC_MSG_ERROR([cannot enable gbm_gallium without Gallium])
1277 if test "x$enable_gbm" = xno; then
1278 AC_MSG_ERROR([cannot enable gbm_gallium without gbm])
1280 # gbm_gallium abuses DRI_LIB_DEPS to link. Make sure it is set.
1281 if test "x$enable_dri" = xno; then
1282 AC_MSG_ERROR([gbm_gallium requires --enable-dri to build])
1285 GALLIUM_STATE_TRACKERS_DIRS="gbm $GALLIUM_STATE_TRACKERS_DIRS"
1286 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS gbm"
1288 enable_gallium_loader=yes
1292 dnl X.Org DDX configuration
1294 if test "x$enable_xorg" = xyes; then
1295 PKG_CHECK_MODULES([XORG], [xorg-server >= 1.6.0])
1296 PKG_CHECK_MODULES([LIBDRM_XORG], [libdrm >= $LIBDRM_XORG_REQUIRED])
1297 PKG_CHECK_MODULES([LIBKMS_XORG], [libkms >= $LIBKMS_XORG_REQUIRED])
1298 PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
1299 HAVE_XEXTPROTO_71="yes"; DEFINES="$DEFINES -DHAVE_XEXTPROTO_71",
1300 HAVE_XEXTPROTO_71="no")
1301 GALLIUM_STATE_TRACKERS_DIRS="xorg $GALLIUM_STATE_TRACKERS_DIRS"
1306 dnl XA configuration
1308 if test "x$enable_xa" = xyes; then
1311 AC_CHECK_PROG(NM, nm, "nm")
1312 if test "x$AWK" = x || test "x$GREP" = x || test "x$NM" = x; then
1313 AC_MSG_WARN([Missing one of nm, grep or awk. Disabling xa.])
1317 if test "x$enable_xa" = xyes; then
1318 GALLIUM_STATE_TRACKERS_DIRS="xa $GALLIUM_STATE_TRACKERS_DIRS"
1326 dnl OpenVG configuration
1330 if test "x$enable_openvg" = xyes; then
1331 if test "x$enable_egl" = xno; then
1332 AC_MSG_ERROR([cannot enable OpenVG without EGL])
1334 if test "x$with_gallium_drivers" = x; then
1335 AC_MSG_ERROR([cannot enable OpenVG without Gallium])
1337 if test "x$enable_gallium_egl" = xno; then
1338 AC_MSG_ERROR([cannot enable OpenVG without egl_gallium])
1341 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(VG_LIB)'
1342 VG_LIB_DEPS="$VG_LIB_DEPS $SELINUX_LIBS $PTHREAD_LIBS"
1343 CORE_DIRS="$CORE_DIRS mapi/vgapi"
1344 GALLIUM_STATE_TRACKERS_DIRS="vega $GALLIUM_STATE_TRACKERS_DIRS"
1346 VG_PC_LIB_PRIV="-lm $CLOCK_LIB $PTHREAD_LIBS $DLOPEN_LIBS"
1347 AC_SUBST([VG_PC_LIB_PRIV])
1349 AM_CONDITIONAL(HAVE_OPENVG, test "x$enable_openvg" = xyes)
1352 dnl Gallium G3DVL configuration
1354 AC_ARG_ENABLE([gallium-g3dvl],
1355 [AS_HELP_STRING([--enable-gallium-g3dvl],
1356 [build gallium g3dvl @<:@default=disabled@:>@])],
1357 [enable_gallium_g3dvl="$enableval"],
1358 [enable_gallium_g3dvl=no])
1359 if test "x$enable_gallium_g3dvl" = xyes; then
1360 if test "x$with_gallium_drivers" = x; then
1361 AC_MSG_ERROR([cannot enable G3DVL without Gallium])
1364 if test "x$enable_xvmc" = xauto; then
1365 PKG_CHECK_EXISTS([xvmc], [enable_xvmc=yes], [enable_xvmc=no])
1368 if test "x$enable_vdpau" = xauto; then
1369 PKG_CHECK_EXISTS([vdpau], [enable_vdpau=yes], [enable_vdpau=no])
1373 if test "x$enable_xvmc" = xyes; then
1374 PKG_CHECK_MODULES([XVMC], [xvmc >= 1.0.6 x11-xcb xcb-dri2 >= 1.8])
1375 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS xvmc"
1379 if test "x$enable_vdpau" = xyes; then
1380 PKG_CHECK_MODULES([VDPAU], [vdpau >= 0.4.1 x11-xcb xcb-dri2 >= 1.8])
1381 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS vdpau"
1386 dnl OpenCL configuration
1389 AC_ARG_WITH([libclc-path],
1390 [AS_HELP_STRING([--with-libclc-path],
1391 [DEPRECATED: See http://dri.freedesktop.org/wiki/GalliumCompute#How_to_Install])],
1392 [LIBCLC_PATH="$withval"],
1395 if test "x$LIBCLC_PATH" != x; then
1396 AC_MSG_ERROR([The --with-libclc-path option has been deprecated.
1397 Please review the updated build instructions for clover:
1398 http://dri.freedesktop.org/wiki/GalliumCompute])
1402 AC_ARG_WITH([clang-libdir],
1403 [AS_HELP_STRING([--with-clang-libdir],
1404 [Path to Clang libraries @<:@default=llvm-config --libdir@:>@])],
1405 [CLANG_LIBDIR="$withval"],
1408 LIBCLC_INCLUDEDIR=`pkg-config --variable=includedir libclc`
1409 LIBCLC_LIBEXECDIR=`pkg-config --variable=libexecdir libclc`
1410 AC_SUBST([LIBCLC_INCLUDEDIR])
1411 AC_SUBST([LIBCLC_LIBEXECDIR])
1413 if test "x$enable_opencl" = xyes; then
1414 if test "x$with_gallium_drivers" = x; then
1415 AC_MSG_ERROR([cannot enable OpenCL without Gallium])
1418 if test $GCC_VERSION_MAJOR -lt 4 -o $GCC_VERSION_MAJOR -eq 4 -a $GCC_VERSION_MINOR -lt 6; then
1419 AC_MSG_ERROR([gcc >= 4.6 is required to build clover])
1422 if test "x$LIBCLC_INCLUDEDIR" == x || test "x$LIBCLC_LIBEXECDIR" == x; then
1423 AC_MSG_ERROR([pkg-config cannot use libclc.pc which is required to build clover])
1426 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS clover"
1427 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS opencl"
1428 enable_gallium_loader=yes
1431 if test "x$enable_gallium_gbm" = xyes || test "x$enable_opencl" = xyes; then
1432 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS pipe-loader"
1436 dnl Gallium configuration
1438 if test "x$with_gallium_drivers" != x; then
1439 SRC_DIRS="$SRC_DIRS gallium gallium/winsys gallium/targets"
1441 AM_CONDITIONAL(HAVE_GALLIUM, test "x$with_gallium_drivers" != x)
1443 AC_SUBST([LLVM_BINDIR])
1444 AC_SUBST([LLVM_CFLAGS])
1445 AC_SUBST([LLVM_CPPFLAGS])
1446 AC_SUBST([LLVM_CXXFLAGS])
1447 AC_SUBST([LLVM_LIBDIR])
1448 AC_SUBST([LLVM_LIBS])
1449 AC_SUBST([LLVM_LDFLAGS])
1450 AC_SUBST([LLVM_INCLUDEDIR])
1451 AC_SUBST([LLVM_VERSION])
1452 AC_SUBST([CLANG_RESOURCE_DIR])
1454 case "x$enable_opengl$enable_gles1$enable_gles2" in
1456 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(GL_LIB)'
1460 AM_CONDITIONAL(HAVE_OPENGL, test "x$HAVE_OPENGL" = xyes)
1462 AC_SUBST([VG_LIB_DEPS])
1463 AC_SUBST([EGL_CLIENT_APIS])
1466 dnl EGL Platforms configuration
1468 AC_ARG_WITH([egl-platforms],
1469 [AS_HELP_STRING([--with-egl-platforms@<:@=DIRS...@:>@],
1470 [comma delimited native platforms libEGL supports, e.g.
1471 "x11,drm" @<:@default=auto@:>@])],
1472 [with_egl_platforms="$withval"],
1473 [if test "x$enable_egl" = xyes; then
1474 with_egl_platforms="x11"
1476 with_egl_platforms=""
1481 if test "x$with_egl_platforms" != "x" -a "x$enable_egl" != xyes; then
1482 AC_MSG_ERROR([cannot build egl state tracker without EGL library])
1485 # Do per-EGL platform setups and checks
1486 egl_platforms=`IFS=', '; echo $with_egl_platforms`
1487 for plat in $egl_platforms; do
1490 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/$plat"
1494 PKG_CHECK_MODULES([WAYLAND], [wayland-client >= 1.0.2 wayland-server >= 1.0.2])
1495 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/wayland"
1497 WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client`
1498 AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],,
1499 [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH])
1503 PKG_CHECK_MODULES([XCB_DRI2], [x11-xcb xcb-dri2 >= 1.8 xcb-xfixes])
1505 if test "x$enable_glx" = xyes; then
1506 HAVE_EGL_DRIVER_GLX=1
1511 test "x$enable_gbm" = "xno" &&
1512 AC_MSG_ERROR([EGL platform drm needs gbm])
1519 AC_MSG_ERROR([EGL platform '$plat' does not exist])
1523 case "$plat$have_libudev" in
1525 AC_MSG_ERROR([cannot build $plat platfrom without udev]) ;;
1529 # libEGL wants to default to the first platform specified in
1530 # ./configure. parse that here.
1531 if test "x$egl_platforms" != "x"; then
1532 FIRST_PLATFORM_CAPS=`echo $egl_platforms | sed 's| .*||' | tr 'a-z' 'A-Z'`
1533 EGL_NATIVE_PLATFORM="_EGL_PLATFORM_$FIRST_PLATFORM_CAPS"
1535 EGL_NATIVE_PLATFORM="_EGL_INVALID_PLATFORM"
1538 EGL_PLATFORMS="$egl_platforms"
1540 AM_CONDITIONAL(HAVE_EGL_PLATFORM_X11, echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1)
1541 AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND, echo "$egl_platforms" | grep 'wayland' >/dev/null 2>&1)
1542 AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep 'drm' >/dev/null 2>&1)
1543 AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep 'fbdev' >/dev/null 2>&1)
1544 AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep 'null' >/dev/null 2>&1)
1546 AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x")
1547 AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x")
1549 AC_SUBST([EGL_NATIVE_PLATFORM])
1550 AC_SUBST([EGL_PLATFORMS])
1551 AC_SUBST([EGL_CFLAGS])
1553 AC_ARG_WITH([egl-driver-dir],
1554 [AS_HELP_STRING([--with-egl-driver-dir=DIR],
1555 [directory for EGL drivers [[default=${libdir}/egl]]])],
1556 [EGL_DRIVER_INSTALL_DIR="$withval"],
1557 [EGL_DRIVER_INSTALL_DIR='${libdir}/egl'])
1558 AC_SUBST([EGL_DRIVER_INSTALL_DIR])
1560 AC_ARG_WITH([xorg-driver-dir],
1561 [AS_HELP_STRING([--with-xorg-driver-dir=DIR],
1562 [Default xorg driver directory[[default=${libdir}/xorg/modules/drivers]]])],
1563 [XORG_DRIVER_INSTALL_DIR="$withval"],
1564 [XORG_DRIVER_INSTALL_DIR="${libdir}/xorg/modules/drivers"])
1565 AC_SUBST([XORG_DRIVER_INSTALL_DIR])
1567 AC_ARG_WITH([max-width],
1568 [AS_HELP_STRING([--with-max-width=N],
1569 [Maximum framebuffer width (4096)])],
1570 [DEFINES="${DEFINES} -DMAX_WIDTH=${withval}";
1571 AS_IF([test "${withval}" -gt "4096"],
1572 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1574 AC_ARG_WITH([max-height],
1575 [AS_HELP_STRING([--with-max-height=N],
1576 [Maximum framebuffer height (4096)])],
1577 [DEFINES="${DEFINES} -DMAX_HEIGHT=${withval}";
1578 AS_IF([test "${withval}" -gt "4096"],
1579 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1585 AC_ARG_ENABLE([gallium-llvm],
1586 [AS_HELP_STRING([--enable-gallium-llvm],
1587 [build gallium LLVM support @<:@default=enabled on x86/x86_64@:>@])],
1588 [enable_gallium_llvm="$enableval"],
1589 [enable_gallium_llvm=auto])
1591 AC_ARG_WITH([llvm-shared-libs],
1592 [AS_HELP_STRING([--with-llvm-shared-libs],
1593 [link with LLVM shared libraries @<:@default=disabled@:>@])],
1595 [with_llvm_shared_libs=no])
1596 AS_IF([test x$enable_opencl = xyes],
1598 AC_MSG_WARN([OpenCL required, forcing LLVM shared libraries])
1599 with_llvm_shared_libs=yes
1602 AC_ARG_WITH([llvm-prefix],
1603 [AS_HELP_STRING([--with-llvm-prefix],
1604 [Prefix for LLVM installations in non-standard locations])],
1605 [llvm_prefix="$withval"],
1609 # Call this inside ` ` to get the return value.
1610 # $1 is the llvm-config command with arguments.
1611 strip_unwanted_llvm_flags() {
1612 # Use \> (marks the end of the word)
1614 -e 's/-DNDEBUG\>//g' \
1615 -e 's/-pedantic\>//g' \
1616 -e 's/-Wcovered-switch-default\>//g' \
1620 -e 's/-fomit-frame-pointer\>//g'
1624 if test "x$with_gallium_drivers" = x; then
1625 enable_gallium_llvm=no
1627 if test "x$enable_gallium_llvm" = xauto; then
1629 i*86|x86_64) enable_gallium_llvm=yes;;
1632 if test "x$enable_gallium_llvm" = xyes; then
1633 if test "x$llvm_prefix" != x; then
1634 AC_PATH_PROG([LLVM_CONFIG], [llvm-config], [no], ["$llvm_prefix/bin"])
1636 AC_PATH_PROG([LLVM_CONFIG], [llvm-config], [no])
1639 if test "x$LLVM_CONFIG" != xno; then
1640 LLVM_VERSION=`$LLVM_CONFIG --version | sed 's/svn.*//g'`
1641 LLVM_VERSION_INT=`echo $LLVM_VERSION | sed -e 's/\([[0-9]]\)\.\([[0-9]]\)/\10\2/g'`
1642 LLVM_COMPONENTS="engine bitwriter"
1643 if $LLVM_CONFIG --components | grep -q '\<mcjit\>'; then
1644 LLVM_COMPONENTS="${LLVM_COMPONENTS} mcjit"
1646 if $LLVM_CONFIG --components | grep -q '\<oprofilejit\>'; then
1647 LLVM_COMPONENTS="${LLVM_COMPONENTS} oprofilejit"
1650 if test "x$enable_opencl" = xyes; then
1651 LLVM_COMPONENTS="${LLVM_COMPONENTS} ipo linker instrumentation"
1653 LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
1654 LLVM_BINDIR=`$LLVM_CONFIG --bindir`
1655 LLVM_CPPFLAGS=`strip_unwanted_llvm_flags "$LLVM_CONFIG --cppflags"`
1656 LLVM_CFLAGS=$LLVM_CPPFLAGS # CPPFLAGS seem to be sufficient
1657 LLVM_CXXFLAGS=`strip_unwanted_llvm_flags "$LLVM_CONFIG --cxxflags"`
1658 LLVM_INCLUDEDIR=`$LLVM_CONFIG --includedir`
1659 LLVM_LIBDIR=`$LLVM_CONFIG --libdir`
1660 DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT"
1663 dnl Check for Clang interanl headers
1664 if test "x$enable_opencl" = xyes; then
1665 if test "x$CLANG_LIBDIR" = x; then
1666 CLANG_LIBDIR=${LLVM_LIBDIR}
1668 CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION}
1669 AC_CHECK_FILE("$CLANG_RESOURCE_DIR/include/stddef.h",,
1670 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.]))
1681 dnl Directory for XVMC libs
1682 AC_ARG_WITH([xvmc-libdir],
1683 [AS_HELP_STRING([--with-xvmc-libdir=DIR],
1684 [directory for the XVMC libraries @<:@default=${libdir}@:>@])],
1685 [XVMC_LIB_INSTALL_DIR="$withval"],
1686 [XVMC_LIB_INSTALL_DIR='${libdir}'])
1687 AC_SUBST([XVMC_LIB_INSTALL_DIR])
1692 if test "x$enable_gallium_tests" = xyes; then
1693 SRC_DIRS="$SRC_DIRS gallium/tests/trivial gallium/tests/unit"
1694 enable_gallium_loader=yes
1697 dnl Directory for VDPAU libs
1698 AC_ARG_WITH([vdpau-libdir],
1699 [AS_HELP_STRING([--with-vdpau-libdir=DIR],
1700 [directory for the VDPAU libraries @<:@default=${libdir}/vdpau@:>@])],
1701 [VDPAU_LIB_INSTALL_DIR="$withval"],
1702 [VDPAU_LIB_INSTALL_DIR='${libdir}/vdpau'])
1703 AC_SUBST([VDPAU_LIB_INSTALL_DIR])
1705 dnl Directory for OpenCL libs
1706 AC_ARG_WITH([opencl-libdir],
1707 [AS_HELP_STRING([--with-opencl-libdir=DIR],
1708 [directory for auxiliary libraries used by the OpenCL implementation @<:@default=${libdir}/opencl@:>@])],
1709 [OPENCL_LIB_INSTALL_DIR="$withval"],
1710 [OPENCL_LIB_INSTALL_DIR='${libdir}/opencl'])
1711 AC_SUBST([OPENCL_LIB_INSTALL_DIR])
1714 dnl Gallium helper functions
1716 gallium_check_st() {
1717 if test "x$HAVE_ST_DRI" = xyes || test "x$HAVE_ST_XORG" = xyes ||
1718 test "x$HAVE_ST_XA" = xyes || test "x$HAVE_ST_XVMC" = xyes ||
1719 test "x$HAVE_ST_VDPAU" = xyes; then
1720 if test "x$have_libdrm" != xyes; then
1721 AC_MSG_ERROR([DRI or Xorg DDX requires libdrm >= $LIBDRM_REQUIRED])
1723 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS $1"
1725 if test "x$HAVE_ST_DRI" = xyes && test "x$2" != x; then
1726 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $2"
1729 if test "x$HAVE_ST_XORG" = xyes && test "x$3" != x; then
1730 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $3"
1732 if test "x$HAVE_ST_XA" = xyes && test "x$4" != x; then
1733 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $4"
1735 if test "x$HAVE_ST_XVMC" = xyes && test "x$5" != x; then
1736 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $5"
1738 if test "x$HAVE_ST_VDPAU" = xyes && test "x$6" != x; then
1739 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $6"
1743 gallium_require_llvm() {
1744 if test "x$MESA_LLVM" = x0; then
1746 i*86|x86_64) AC_MSG_ERROR([LLVM is required to build $1 on x86 and x86_64]);;
1751 gallium_require_drm_loader() {
1752 if test "x$enable_gallium_loader" = xyes; then
1753 PKG_CHECK_MODULES([LIBUDEV], [libudev], [],
1754 AC_MSG_ERROR([Gallium drm loader requires libudev]))
1755 if test "x$have_libdrm" != xyes; then
1756 AC_MSG_ERROR([Gallium drm loader requires libdrm >= $LIBDRM_REQUIRED])
1758 enable_gallium_drm_loader=yes
1762 radeon_llvm_check() {
1763 LLVM_REQUIRED_VERSION_MAJOR="3"
1764 LLVM_REQUIRED_VERSION_MINOR="2"
1765 if test "$LLVM_VERSION_INT" -lt "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}"; then
1766 AC_MSG_ERROR([LLVM $LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR or newer with R600 target enabled is required.
1767 To use the r600/radeonsi LLVM backend, you need to fetch the LLVM source from:
1768 git://people.freedesktop.org/~tstellar/llvm master
1769 and build with --enable-experimental-targets=R600])
1771 if test true && $LLVM_CONFIG --targets-built | grep -qv '\<R600\>' ; then
1772 AC_MSG_ERROR([LLVM R600 Target not enabled. You can enable it when building the LLVM
1773 sources with the --enable-experimental-targets=R600
1776 AC_MSG_WARN([Please ensure you use the latest llvm tree from git://people.freedesktop.org/~tstellar/llvm master before submitting a bug])
1777 LLVM_COMPONENTS="${LLVM_COMPONENTS} r600"
1781 dnl Duplicates in GALLIUM_DRIVERS_DIRS are removed by sorting it after this block
1782 if test "x$with_gallium_drivers" != x; then
1783 gallium_drivers=`IFS=', '; echo $with_gallium_drivers`
1784 for driver in $gallium_drivers; do
1787 HAVE_GALLIUM_SVGA=yes
1788 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS svga softpipe"
1789 gallium_check_st "svga/drm" "dri-vmwgfx" "" "xa-vmwgfx"
1792 HAVE_GALLIUM_I915=yes
1793 PKG_CHECK_MODULES([INTEL], [libdrm_intel >= $LIBDRM_INTEL_REQUIRED])
1794 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i915 softpipe"
1795 if test "x$MESA_LLVM" = x1; then
1796 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS llvmpipe"
1798 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS i915/sw"
1799 gallium_check_st "i915/drm" "dri-i915" "xorg-i915"
1802 HAVE_GALLIUM_R300=yes
1803 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1804 gallium_require_llvm "Gallium R300"
1805 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300"
1806 gallium_check_st "radeon/drm" "dri-r300" "" "" "xvmc-r300" "vdpau-r300"
1809 HAVE_GALLIUM_R600=yes
1810 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1811 gallium_require_drm_loader
1812 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r600"
1813 if test "x$enable_r600_llvm" = xyes -o "x$enable_opencl" = xyes; then
1815 NEED_RADEON_GALLIUM=yes;
1816 R600_NEED_RADEON_GALLIUM=yes;
1817 LLVM_COMPONENTS="${LLVM_COMPONENTS} ipo bitreader asmparser"
1819 if test "x$enable_r600_llvm" = xyes; then
1820 USE_R600_LLVM_COMPILER=yes;
1822 if test "x$enable_opencl" = xyes; then
1823 LLVM_COMPONENTS="${LLVM_COMPONENTS} bitreader asmparser"
1825 gallium_check_st "radeon/drm" "dri-r600" "xorg-r600" "" "xvmc-r600" "vdpau-r600"
1828 HAVE_GALLIUM_RADEONSI=yes
1829 PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
1830 gallium_require_drm_loader
1831 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS radeonsi"
1833 NEED_RADEON_GALLIUM=yes;
1834 gallium_check_st "radeon/drm" "dri-radeonsi" "xorg-radeonsi" "" "" "vdpau-radeonsi" ""
1837 HAVE_GALLIUM_NOUVEAU=yes
1838 PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NOUVEAU_REQUIRED])
1839 gallium_require_drm_loader
1840 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS nouveau nv30 nv50 nvc0"
1841 gallium_check_st "nouveau/drm" "dri-nouveau" "xorg-nouveau" "" "xvmc-nouveau" "vdpau-nouveau"
1844 HAVE_GALLIUM_SOFTPIPE=yes
1845 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS softpipe"
1846 if test "x$MESA_LLVM" = x1; then
1847 HAVE_GALLIUM_LLVMPIPE=yes
1848 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS llvmpipe"
1851 if test "x$HAVE_ST_DRI" = xyes; then
1852 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS dri-swrast"
1854 if test "x$HAVE_ST_VDPAU" = xyes; then
1855 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS vdpau-softpipe"
1857 if test "x$HAVE_ST_XVMC" = xyes; then
1858 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS xvmc-softpipe"
1860 if test "x$HAVE_ST_VDPAU" = xyes ||
1861 test "x$HAVE_ST_XVMC" = xyes; then
1862 if test "x$HAVE_WINSYS_XLIB" != xyes; then
1863 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib"
1868 AC_MSG_ERROR([Unknown Gallium driver: $driver])
1874 dnl Set LLVM_LIBS - This is done after the driver configuration so
1875 dnl that drivers can add additonal components to LLVM_COMPONENTS.
1876 dnl Previously, gallium drivers were updating LLVM_LIBS directly
1877 dnl by calling llvm-config --libs ${DRIVER_LLVM_COMPONENTS}, but
1878 dnl this was causing the same libraries to be appear multiple times
1881 if test "x$MESA_LLVM" != x0; then
1883 LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
1885 if test "x$with_llvm_shared_libs" = xyes; then
1886 dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
1887 LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version`
1888 AC_CHECK_FILE("$LLVM_LIBDIR/lib$LLVM_SO_NAME.so", llvm_have_one_so=yes,)
1890 if test "x$llvm_have_one_so" = xyes; then
1891 dnl LLVM was built using auto*, so there is only one shared object.
1892 LLVM_LIBS="-l$LLVM_SO_NAME"
1894 dnl If LLVM was built with CMake, there will be one shared object per
1896 AC_CHECK_FILE("$LLVM_LIBDIR/libLLVMTarget.so",,
1897 AC_MSG_ERROR([Could not find llvm shared libraries:
1898 Please make sure you have built llvm with the --enable-shared option
1899 and that your llvm libraries are installed in $LLVM_LIBDIR
1900 If you have installed your llvm libraries to a different directory you
1901 can use the --with-llvm-prefix= configure flag to specify this directory.
1902 NOTE: Mesa is attempting to use llvm shared libraries because you have
1903 passed one of the following options to configure:
1904 --with-llvm-shared-libs
1906 If you do not want to build with llvm shared libraries and instead want to
1907 use llvm static libraries then remove these options from your configure
1908 invocation and reconfigure.]))
1910 dnl We don't need to update LLVM_LIBS in this case because the LLVM
1911 dnl install uses a shared object for each compoenent and we have
1912 dnl already added all of these objects to LLVM_LIBS.
1917 AM_CONDITIONAL(HAVE_GALLIUM_SVGA, test "x$HAVE_GALLIUM_SVGA" = xyes)
1918 AM_CONDITIONAL(HAVE_GALLIUM_I915, test "x$HAVE_GALLIUM_I915" = xyes)
1919 AM_CONDITIONAL(HAVE_GALLIUM_R300, test "x$HAVE_GALLIUM_R300" = xyes)
1920 AM_CONDITIONAL(HAVE_GALLIUM_R600, test "x$HAVE_GALLIUM_R600" = xyes)
1921 AM_CONDITIONAL(HAVE_GALLIUM_RADEONSI, test "x$HAVE_GALLIUM_RADEONSI" = xyes)
1922 AM_CONDITIONAL(HAVE_GALLIUM_NOUVEAU, test "x$HAVE_GALLIUM_NOUVEAU" = xyes)
1923 AM_CONDITIONAL(HAVE_GALLIUM_SOFTPIPE, test "x$HAVE_GALLIUM_SOFTPIPE" = xyes)
1924 AM_CONDITIONAL(HAVE_GALLIUM_LLVMPIPE, test "x$HAVE_GALLIUM_LLVMPIPE" = xyes)
1926 if test "x$enable_gallium_loader" = xyes; then
1927 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/null"
1928 GALLIUM_PIPE_LOADER_DEFINES="-DHAVE_PIPE_LOADER_SW"
1929 GALLIUM_PIPE_LOADER_LIBS="\$(top_builddir)/src/gallium/auxiliary/pipe-loader/libpipe_loader.la"
1930 GALLIUM_PIPE_LOADER_LIBS="$GALLIUM_PIPE_LOADER_LIBS \$(top_builddir)/src/gallium/winsys/sw/null/libws_null.la"
1932 if test "x$HAVE_WINSYS_XLIB" = xyes; then
1933 GALLIUM_PIPE_LOADER_DEFINES="$GALLIUM_PIPE_LOADER_DEFINES -DHAVE_PIPE_LOADER_XLIB"
1934 GALLIUM_PIPE_LOADER_LIBS="$GALLIUM_PIPE_LOADER_LIBS \$(top_builddir)/src/gallium/winsys/sw/xlib/libws_xlib.la"
1937 if test "x$enable_gallium_drm_loader" = xyes; then
1938 GALLIUM_PIPE_LOADER_DEFINES="$GALLIUM_PIPE_LOADER_DEFINES -DHAVE_PIPE_LOADER_DRM"
1939 PKG_CHECK_MODULES([GALLIUM_PIPE_LOADER_XCB], [xcb xcb-dri2],
1940 pipe_loader_have_xcb=yes, pipe_loader_have_xcb=no)
1941 if test "x$pipe_loader_have_xcb" = xyes; then
1942 GALLIUM_PIPE_LOADER_DEFINES="$GALLIUM_PIPE_LOADER_DEFINES -DPIPE_LOADER_HAVE_XCB"
1943 GALLIUM_PIPE_LOADER_LIBS="$GALLIUM_PIPE_LOADER_LIBS $GALLIUM_PIPE_LOADER_XCB_LIBS $LIBDRM_LIBS"
1947 AC_SUBST([GALLIUM_PIPE_LOADER_DEFINES])
1948 AC_SUBST([GALLIUM_PIPE_LOADER_LIBS])
1951 dnl Tell Automake which drivers to build
1952 for driver in $GALLIUM_DRIVERS_DIRS; do
1955 HAVE_GALAHAD_GALLIUM=yes;
1958 HAVE_IDENTITY_GALLIUM=yes;
1961 HAVE_NOOP_GALLIUM=yes;
1964 GALLIUM_MAKE_DIRS="$GALLIUM_MAKE_DIRS $driver"
1969 AM_CONDITIONAL(HAVE_I915_DRI, test x$HAVE_I915_DRI = xyes)
1970 AM_CONDITIONAL(HAVE_I965_DRI, test x$HAVE_I965_DRI = xyes)
1971 AM_CONDITIONAL(HAVE_NOUVEAU_DRI, test x$HAVE_NOUVEAU_DRI = xyes)
1972 AM_CONDITIONAL(HAVE_R200_DRI, test x$HAVE_R200_DRI = xyes)
1973 AM_CONDITIONAL(HAVE_RADEON_DRI, test x$HAVE_RADEON_DRI = xyes)
1974 AM_CONDITIONAL(HAVE_SWRAST_DRI, test x$HAVE_SWRAST_DRI = xyes)
1975 AM_CONDITIONAL(HAVE_COMMON_DRI, test x$HAVE_COMMON_DRI = xyes)
1977 AM_CONDITIONAL(HAVE_GALAHAD_GALLIUM, test x$HAVE_GALAHAD_GALLIUM = xyes)
1978 AM_CONDITIONAL(HAVE_IDENTITY_GALLIUM, test x$HAVE_IDENTITY_GALLIUM = xyes)
1979 AM_CONDITIONAL(HAVE_NOOP_GALLIUM, test x$HAVE_NOOP_GALLIUM = xyes)
1980 AM_CONDITIONAL(NEED_RADEON_GALLIUM, test x$NEED_RADEON_GALLIUM = xyes)
1981 AM_CONDITIONAL(R600_NEED_RADEON_GALLIUM, test x$R600_NEED_RADEON_GALLIUM = xyes)
1982 AM_CONDITIONAL(USE_R600_LLVM_COMPILER, test x$USE_R600_LLVM_COMPILER = xyes)
1983 AM_CONDITIONAL(HAVE_LOADER_GALLIUM, test x$enable_gallium_loader = xyes)
1984 AM_CONDITIONAL(HAVE_DRM_LOADER_GALLIUM, test x$enable_gallium_drm_loader = xyes)
1985 AM_CONDITIONAL(HAVE_GALLIUM_COMPUTE, test x$enable_opencl = xyes)
1986 AM_CONDITIONAL(HAVE_MESA_LLVM, test x$MESA_LLVM = x1)
1987 AM_CONDITIONAL(LLVM_NEEDS_FNORTTI, test $LLVM_VERSION_INT -ge 302)
1989 AC_SUBST([GALLIUM_MAKE_DIRS])
1991 AM_CONDITIONAL(NEED_LIBPROGRAM, test "x$with_gallium_drivers" != x -o \
1992 "x$enable_xlib_glx" = xyes -o \
1993 "x$enable_osmesa" = xyes)
1994 AM_CONDITIONAL(HAVE_X11_DRIVER, echo "$DRIVER_DIRS" | grep 'x11' >/dev/null 2>&1)
1996 AM_CONDITIONAL(HAVE_X86_ASM, echo "$DEFINES" | grep 'X86_ASM' >/dev/null 2>&1)
1997 AM_CONDITIONAL(HAVE_X86_64_ASM, echo "$DEFINES" | grep 'X86_64_ASM' >/dev/null 2>&1)
1998 AM_CONDITIONAL(HAVE_SPARC_ASM, echo "$DEFINES" | grep 'SPARC_ASM' >/dev/null 2>&1)
2000 AM_CONDITIONAL(CROSS_COMPILING, test "x$cross_compiling" = xyes)
2002 AC_SUBST([VDPAU_MAJOR], 1)
2003 AC_SUBST([VDPAU_MINOR], 0)
2005 AC_SUBST([XVMC_MAJOR], 1)
2006 AC_SUBST([XVMC_MINOR], 0)
2008 AC_SUBST([XA_MAJOR], 1)
2009 AC_SUBST([XA_MINOR], 0)
2010 AC_SUBST([XA_TINY], 0)
2011 AC_SUBST([XA_VERSION], "$XA_MAJOR.$XA_MINOR.$XA_TINY")
2013 dnl prepend CORE_DIRS to SRC_DIRS
2014 SRC_DIRS="$CORE_DIRS $SRC_DIRS"
2016 dnl Restore LDFLAGS and CPPFLAGS
2017 LDFLAGS="$_SAVE_LDFLAGS"
2018 CPPFLAGS="$_SAVE_CPPFLAGS"
2020 dnl Add user CFLAGS and CXXFLAGS
2021 CFLAGS="$CFLAGS $USER_CFLAGS"
2022 CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS"
2024 dnl Substitute the config
2025 AC_CONFIG_FILES([Makefile
2028 src/egl/drivers/Makefile
2029 src/egl/drivers/dri2/Makefile
2030 src/egl/drivers/glx/Makefile
2031 src/egl/main/Makefile
2033 src/egl/wayland/Makefile
2034 src/egl/wayland/wayland-drm/Makefile
2035 src/egl/wayland/wayland-egl/Makefile
2036 src/egl/wayland/wayland-egl/wayland-egl.pc
2037 src/gallium/Makefile
2038 src/gallium/auxiliary/Makefile
2039 src/gallium/auxiliary/pipe-loader/Makefile
2040 src/gallium/drivers/Makefile
2041 src/gallium/drivers/i915/Makefile
2042 src/gallium/drivers/llvmpipe/Makefile
2043 src/gallium/drivers/nouveau/Makefile
2044 src/gallium/drivers/nv30/Makefile
2045 src/gallium/drivers/nv50/Makefile
2046 src/gallium/drivers/nvc0/Makefile
2047 src/gallium/drivers/r300/Makefile
2048 src/gallium/drivers/r600/Makefile
2049 src/gallium/drivers/radeon/Makefile
2050 src/gallium/drivers/radeonsi/Makefile
2051 src/gallium/drivers/rbug/Makefile
2052 src/gallium/drivers/softpipe/Makefile
2053 src/gallium/drivers/svga/Makefile
2054 src/gallium/drivers/trace/Makefile
2055 src/gallium/state_trackers/Makefile
2056 src/gallium/state_trackers/clover/Makefile
2057 src/gallium/state_trackers/dri/Makefile
2058 src/gallium/state_trackers/dri/drm/Makefile
2059 src/gallium/state_trackers/dri/sw/Makefile
2060 src/gallium/state_trackers/egl/Makefile
2061 src/gallium/state_trackers/gbm/Makefile
2062 src/gallium/state_trackers/glx/Makefile
2063 src/gallium/state_trackers/vdpau/Makefile
2064 src/gallium/state_trackers/vega/Makefile
2065 src/gallium/state_trackers/xa/Makefile
2066 src/gallium/state_trackers/xorg/Makefile
2067 src/gallium/state_trackers/xvmc/Makefile
2068 src/gallium/targets/Makefile
2069 src/gallium/targets/dri-i915/Makefile
2070 src/gallium/targets/dri-nouveau/Makefile
2071 src/gallium/targets/dri-r300/Makefile
2072 src/gallium/targets/dri-r600/Makefile
2073 src/gallium/targets/dri-radeonsi/Makefile
2074 src/gallium/targets/dri-swrast/Makefile
2075 src/gallium/targets/dri-vmwgfx/Makefile
2076 src/gallium/targets/egl-static/Makefile
2077 src/gallium/targets/gbm/Makefile
2078 src/gallium/targets/opencl/Makefile
2079 src/gallium/targets/pipe-loader/Makefile
2080 src/gallium/targets/libgl-xlib/Makefile
2081 src/gallium/targets/vdpau-nouveau/Makefile
2082 src/gallium/targets/vdpau-r300/Makefile
2083 src/gallium/targets/vdpau-r600/Makefile
2084 src/gallium/targets/vdpau-radeonsi/Makefile
2085 src/gallium/targets/vdpau-softpipe/Makefile
2086 src/gallium/targets/xa-vmwgfx/Makefile
2087 src/gallium/targets/xa-vmwgfx/xatracker.pc
2088 src/gallium/targets/xorg-i915/Makefile
2089 src/gallium/targets/xorg-nouveau/Makefile
2090 src/gallium/targets/xorg-r600/Makefile
2091 src/gallium/targets/xorg-radeonsi/Makefile
2092 src/gallium/targets/xvmc-nouveau/Makefile
2093 src/gallium/targets/xvmc-r300/Makefile
2094 src/gallium/targets/xvmc-r600/Makefile
2095 src/gallium/targets/xvmc-softpipe/Makefile
2096 src/gallium/tests/trivial/Makefile
2097 src/gallium/tests/unit/Makefile
2098 src/gallium/winsys/Makefile
2099 src/gallium/winsys/i915/drm/Makefile
2100 src/gallium/winsys/i915/sw/Makefile
2101 src/gallium/winsys/nouveau/drm/Makefile
2102 src/gallium/winsys/radeon/drm/Makefile
2103 src/gallium/winsys/svga/drm/Makefile
2104 src/gallium/winsys/sw/Makefile
2105 src/gallium/winsys/sw/dri/Makefile
2106 src/gallium/winsys/sw/fbdev/Makefile
2107 src/gallium/winsys/sw/null/Makefile
2108 src/gallium/winsys/sw/wayland/Makefile
2109 src/gallium/winsys/sw/wrapper/Makefile
2110 src/gallium/winsys/sw/xlib/Makefile
2114 src/glsl/builtin_compiler/Makefile
2116 src/glx/tests/Makefile
2118 src/mapi/es1api/Makefile
2119 src/mapi/es1api/glesv1_cm.pc
2120 src/mapi/es2api/Makefile
2121 src/mapi/es2api/glesv2.pc
2122 src/mapi/glapi/Makefile
2123 src/mapi/glapi/gen/Makefile
2124 src/mapi/glapi/tests/Makefile
2125 src/mapi/shared-glapi/Makefile
2126 src/mapi/shared-glapi/tests/Makefile
2127 src/mapi/vgapi/Makefile
2128 src/mapi/vgapi/vg.pc
2131 src/mesa/drivers/Makefile
2132 src/mesa/drivers/dri/dri.pc
2133 src/mesa/drivers/dri/common/Makefile
2134 src/mesa/drivers/dri/common/xmlpool/Makefile
2135 src/mesa/drivers/dri/i915/Makefile
2136 src/mesa/drivers/dri/i965/Makefile
2137 src/mesa/drivers/dri/Makefile
2138 src/mesa/drivers/dri/nouveau/Makefile
2139 src/mesa/drivers/dri/r200/Makefile
2140 src/mesa/drivers/dri/radeon/Makefile
2141 src/mesa/drivers/dri/swrast/Makefile
2142 src/mesa/drivers/osmesa/Makefile
2143 src/mesa/drivers/osmesa/osmesa.pc
2144 src/mesa/drivers/x11/Makefile
2145 src/mesa/libdricore/Makefile
2146 src/mesa/main/tests/Makefile
2147 src/mesa/main/tests/hash_table/Makefile
2148 src/mesa/program/Makefile
2149 src/mesa/x86-64/Makefile
2150 src/mesa/x86/Makefile])
2152 dnl Sort the dirs alphabetically
2153 GALLIUM_TARGET_DIRS=`echo $GALLIUM_TARGET_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2154 GALLIUM_WINSYS_DIRS=`echo $GALLIUM_WINSYS_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2155 GALLIUM_DRIVERS_DIRS=`echo $GALLIUM_DRIVERS_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2156 GALLIUM_MAKE_DIRS=`echo $GALLIUM_MAKE_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2157 GALLIUM_STATE_TRACKERS_DIRS=`echo $GALLIUM_STATE_TRACKERS_DIRS|tr " " "\n"|sort -u|tr "\n" " "`
2162 dnl Output some configuration info for the user
2165 echo " prefix: $prefix"
2166 echo " exec_prefix: $exec_prefix"
2167 echo " libdir: $libdir"
2168 echo " includedir: $includedir"
2172 echo " OpenGL: $enable_opengl (ES1: $enable_gles1 ES2: $enable_gles2)"
2173 echo " OpenVG: $enable_openvg"
2177 if test "x$enable_osmesa" != xno; then
2178 echo " OSMesa: lib$OSMESA_LIB"
2183 if test "x$enable_dri" != xno; then
2184 # cleanup the drivers var
2185 dri_dirs=`echo $DRI_DIRS | $SED 's/^ *//;s/ */ /;s/ *$//'`
2186 if test "x$DRI_DIRS" = x; then
2187 echo " DRI drivers: no"
2189 echo " DRI drivers: $dri_dirs"
2191 echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
2194 case "x$enable_glx$enable_xlib_glx" in
2196 echo " GLX: Xlib-based"
2199 echo " GLX: DRI-based"
2202 echo " GLX: $enable_glx"
2208 echo " EGL: $enable_egl"
2209 if test "$enable_egl" = yes; then
2210 echo " EGL platforms: $EGL_PLATFORMS"
2213 if test "x$HAVE_EGL_DRIVER_GLX" != "x"; then
2214 egl_drivers="$egl_drivers builtin:egl_glx"
2216 if test "x$HAVE_EGL_DRIVER_DRI2" != "x"; then
2217 egl_drivers="$egl_drivers builtin:egl_dri2"
2220 if test "x$HAVE_ST_EGL" = xyes; then
2221 echo " EGL drivers: ${egl_drivers} egl_gallium"
2222 echo " EGL Gallium STs:$EGL_CLIENT_APIS"
2224 echo " EGL drivers: $egl_drivers"
2229 if test "x$MESA_LLVM" = x1; then
2231 echo " llvm-config: $LLVM_CONFIG"
2232 echo " llvm-version: $LLVM_VERSION"
2238 if echo "$SRC_DIRS" | grep 'gallium' >/dev/null 2>&1; then
2239 echo " Gallium: yes"
2240 echo " Gallium dirs: $GALLIUM_DIRS"
2241 echo " Target dirs: $GALLIUM_TARGET_DIRS"
2242 echo " Winsys dirs: $GALLIUM_WINSYS_DIRS"
2243 echo " Driver dirs: $GALLIUM_DRIVERS_DIRS"
2244 echo " Trackers dirs: $GALLIUM_STATE_TRACKERS_DIRS"
2252 echo " Shared libs: $enable_shared"
2253 echo " Static libs: $enable_static"
2254 echo " Shared-glapi: $enable_shared_glapi"
2256 dnl Compiler options
2257 # cleanup the CFLAGS/CXXFLAGS/DEFINES vars
2258 cflags=`echo $CFLAGS | \
2259 $SED 's/^ *//;s/ */ /;s/ *$//'`
2260 cxxflags=`echo $CXXFLAGS | \
2261 $SED 's/^ *//;s/ */ /;s/ *$//'`
2262 defines=`echo $DEFINES | $SED 's/^ *//;s/ */ /;s/ *$//'`
2264 echo " CFLAGS: $cflags"
2265 echo " CXXFLAGS: $cxxflags"
2266 echo " Macros: $defines"
2268 if test "x$MESA_LLVM" = x1; then
2269 echo " LLVM_CFLAGS: $LLVM_CFLAGS"
2270 echo " LLVM_CXXFLAGS: $LLVM_CXXFLAGS"
2271 echo " LLVM_CPPFLAGS: $LLVM_CPPFLAGS"
2274 echo " PYTHON2: $PYTHON2"
2277 echo " Run '${MAKE-make}' to build Mesa"