r300g: rename radeong_dri.so to r300_dri.so
[mesa.git] / configure.ac
1 dnl Process this file with autoconf to create configure.
2
3 AC_PREREQ([2.59])
4
5 dnl Versioning - scrape the version from configs/default
6 m4_define([mesa_version],
7 [m4_esyscmd([${MAKE-make} -s -f bin/version.mk version | tr -d '\n' | tr -d '\r'])])
8 m4_ifval(mesa_version,,
9 [m4_fatal([Failed to get the Mesa version from `make -f bin/version.mk version`])])
10
11 dnl Tell the user about autoconf.html in the --help output
12 m4_divert_once([HELP_END], [
13 See docs/autoconf.html for more details on the options for Mesa.])
14
15 AC_INIT([Mesa],[mesa_version],
16 [https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa])
17 AC_CONFIG_AUX_DIR([bin])
18 AC_CANONICAL_HOST
19
20 dnl Versions for external dependencies
21 LIBDRM_REQUIRED=2.4.15
22 LIBDRM_RADEON_REQUIRED=2.4.17
23 DRI2PROTO_REQUIRED=2.1
24 GLPROTO_REQUIRED=1.4.11
25 LIBDRM_XORG_REQUIRED=2.4.17
26 LIBKMS_XORG_REQUIRED=1.0.0
27
28 dnl Check for progs
29 AC_PROG_CPP
30 AC_PROG_CC
31 AC_PROG_CXX
32 AC_CHECK_PROGS([MAKE], [gmake make])
33 AC_PATH_PROG([MKDEP], [makedepend])
34 AC_PATH_PROG([SED], [sed])
35
36 dnl Our fallback install-sh is a symlink to minstall. Use the existing
37 dnl configuration in that case.
38 AC_PROG_INSTALL
39 test "x$INSTALL" = "x$ac_install_sh" && INSTALL='$(MINSTALL)'
40
41 dnl We need a POSIX shell for parts of the build. Assume we have one
42 dnl in most cases.
43 case "$host_os" in
44 solaris*)
45 # Solaris /bin/sh is too old/non-POSIX compliant
46 AC_PATH_PROGS(POSIX_SHELL, [ksh93 ksh sh])
47 SHELL="$POSIX_SHELL"
48 ;;
49 esac
50
51 dnl If we're using GCC, make sure that it is at least version 3.3.0. Older
52 dnl versions are explictly not supported.
53 if test "x$GCC" = xyes; then
54 AC_MSG_CHECKING([whether gcc version is sufficient])
55 major=0
56 minor=0
57
58 GCC_VERSION=`$CC -dumpversion`
59 if test $? -eq 0; then
60 major=`echo $GCC_VERSION | cut -d. -f1`
61 minor=`echo $GCC_VERSION | cut -d. -f1`
62 fi
63
64 if test $major -lt 3 -o $major -eq 3 -a $minor -lt 3 ; then
65 AC_MSG_RESULT([no])
66 AC_MSG_ERROR([If using GCC, version 3.3.0 or later is required.])
67 else
68 AC_MSG_RESULT([yes])
69 fi
70 fi
71
72
73 MKDEP_OPTIONS=-fdepend
74 dnl Ask gcc where it's keeping its secret headers
75 if test "x$GCC" = xyes; then
76 for dir in include include-fixed; do
77 GCC_INCLUDES=`$CC -print-file-name=$dir`
78 if test "x$GCC_INCLUDES" != x && \
79 test "$GCC_INCLUDES" != "$dir" && \
80 test -d "$GCC_INCLUDES"; then
81 MKDEP_OPTIONS="$MKDEP_OPTIONS -I$GCC_INCLUDES"
82 fi
83 done
84 fi
85 AC_SUBST([MKDEP_OPTIONS])
86
87 dnl Make sure the pkg-config macros are defined
88 m4_ifndef([PKG_PROG_PKG_CONFIG],
89 [m4_fatal([Could not locate the pkg-config autoconf macros.
90 These are usually located in /usr/share/aclocal/pkg.m4. If your macros
91 are in a different location, try setting the environment variable
92 ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
93 PKG_PROG_PKG_CONFIG()
94
95 dnl LIB_DIR - library basename
96 LIB_DIR=`echo $libdir | $SED 's%.*/%%'`
97 AC_SUBST([LIB_DIR])
98
99 dnl Cache LDFLAGS so we can add EXTRA_LIB_PATH and restore it later
100 _SAVE_LDFLAGS="$LDFLAGS"
101 AC_ARG_VAR([EXTRA_LIB_PATH],[Extra -L paths for the linker])
102 AC_SUBST([EXTRA_LIB_PATH])
103
104 dnl Cache CPPFLAGS so we can add *_INCLUDES and restore it later
105 _SAVE_CPPFLAGS="$CPPFLAGS"
106 AC_ARG_VAR([X11_INCLUDES],[Extra -I paths for X11 headers])
107 AC_SUBST([X11_INCLUDES])
108
109 dnl Compiler macros
110 DEFINES=""
111 AC_SUBST([DEFINES])
112 case "$host_os" in
113 linux*|*-gnu*|gnu*)
114 DEFINES="$DEFINES -D_GNU_SOURCE -DPTHREADS"
115 ;;
116 solaris*)
117 DEFINES="$DEFINES -DPTHREADS -DSVR4"
118 ;;
119 cygwin*)
120 DEFINES="$DEFINES -DPTHREADS"
121 ;;
122 esac
123
124 dnl Add flags for gcc and g++
125 if test "x$GCC" = xyes; then
126 CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -std=c99 -ffast-math"
127
128 # Enable -fvisibility=hidden if using a gcc that supports it
129 save_CFLAGS="$CFLAGS"
130 AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
131 CFLAGS="$CFLAGS -fvisibility=hidden"
132 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
133 [CFLAGS="$save_CFLAGS" ; AC_MSG_RESULT([no])]);
134
135 # Work around aliasing bugs - developers should comment this out
136 CFLAGS="$CFLAGS -fno-strict-aliasing"
137 fi
138 if test "x$GXX" = xyes; then
139 CXXFLAGS="$CXXFLAGS -Wall"
140
141 # Work around aliasing bugs - developers should comment this out
142 CXXFLAGS="$CXXFLAGS -fno-strict-aliasing"
143 fi
144
145 dnl These should be unnecessary, but let the user set them if they want
146 AC_ARG_VAR([OPT_FLAGS], [Additional optimization flags for the compiler.
147 Default is to use CFLAGS.])
148 AC_ARG_VAR([ARCH_FLAGS], [Additional architecture specific flags for the
149 compiler. Default is to use CFLAGS.])
150 AC_SUBST([OPT_FLAGS])
151 AC_SUBST([ARCH_FLAGS])
152
153 dnl
154 dnl Hacks to enable 32 or 64 bit build
155 dnl
156 AC_ARG_ENABLE([32-bit],
157 [AS_HELP_STRING([--enable-32-bit],
158 [build 32-bit libraries @<:@default=auto@:>@])],
159 [enable_32bit="$enableval"],
160 [enable_32bit=auto]
161 )
162 if test "x$enable_32bit" = xyes; then
163 if test "x$GCC" = xyes; then
164 CFLAGS="$CFLAGS -m32"
165 ARCH_FLAGS="$ARCH_FLAGS -m32"
166 fi
167 if test "x$GXX" = xyes; then
168 CXXFLAGS="$CXXFLAGS -m32"
169 fi
170 fi
171 AC_ARG_ENABLE([64-bit],
172 [AS_HELP_STRING([--enable-64-bit],
173 [build 64-bit libraries @<:@default=auto@:>@])],
174 [enable_64bit="$enableval"],
175 [enable_64bit=auto]
176 )
177 if test "x$enable_64bit" = xyes; then
178 if test "x$GCC" = xyes; then
179 CFLAGS="$CFLAGS -m64"
180 fi
181 if test "x$GXX" = xyes; then
182 CXXFLAGS="$CXXFLAGS -m64"
183 fi
184 fi
185
186 dnl
187 dnl shared/static libraries, mimic libtool options
188 dnl
189 AC_ARG_ENABLE([static],
190 [AS_HELP_STRING([--enable-static],
191 [build static libraries @<:@default=disabled@:>@])],
192 [enable_static="$enableval"],
193 [enable_static=no]
194 )
195 case "x$enable_static" in
196 xyes|xno ) ;;
197 x ) enable_static=no ;;
198 * )
199 AC_MSG_ERROR([Static library option '$enable_static' is not a valid])
200 ;;
201 esac
202 AC_ARG_ENABLE([shared],
203 [AS_HELP_STRING([--disable-shared],
204 [build shared libraries @<:@default=enabled@:>@])],
205 [enable_shared="$enableval"],
206 [enable_shared=yes]
207 )
208 case "x$enable_shared" in
209 xyes|xno ) ;;
210 x ) enable_shared=yes ;;
211 * )
212 AC_MSG_ERROR([Shared library option '$enable_shared' is not a valid])
213 ;;
214 esac
215
216 dnl Can't have static and shared libraries, default to static if user
217 dnl explicitly requested. If both disabled, set to static since shared
218 dnl was explicitly requirested.
219 case "x$enable_static$enable_shared" in
220 xyesyes )
221 AC_MSG_WARN([Can't build static and shared libraries, disabling shared])
222 enable_shared=no
223 ;;
224 xnono )
225 AC_MSG_WARN([Can't disable both static and shared libraries, enabling static])
226 enable_static=yes
227 ;;
228 esac
229
230 dnl
231 dnl mklib options
232 dnl
233 AC_ARG_VAR([MKLIB_OPTIONS],[Options for the Mesa library script, mklib])
234 if test "$enable_static" = yes; then
235 MKLIB_OPTIONS="$MKLIB_OPTIONS -static"
236 fi
237 AC_SUBST([MKLIB_OPTIONS])
238
239 dnl
240 dnl other compiler options
241 dnl
242 AC_ARG_ENABLE([debug],
243 [AS_HELP_STRING([--enable-debug],
244 [use debug compiler flags and macros @<:@default=disabled@:>@])],
245 [enable_debug="$enableval"],
246 [enable_debug=no]
247 )
248 if test "x$enable_debug" = xyes; then
249 DEFINES="$DEFINES -DDEBUG"
250 if test "x$GCC" = xyes; then
251 CFLAGS="$CFLAGS -g"
252 fi
253 if test "x$GXX" = xyes; then
254 CXXFLAGS="$CXXFLAGS -g"
255 fi
256 fi
257
258 dnl
259 dnl library names
260 dnl
261 if test "$enable_static" = yes; then
262 LIB_EXTENSION='a'
263 else
264 case "$host_os" in
265 darwin* )
266 LIB_EXTENSION='dylib' ;;
267 cygwin* )
268 LIB_EXTENSION='dll.a' ;;
269 aix* )
270 LIB_EXTENSION='a' ;;
271 * )
272 LIB_EXTENSION='so' ;;
273 esac
274 fi
275
276 GL_LIB_NAME='lib$(GL_LIB).'${LIB_EXTENSION}
277 GLU_LIB_NAME='lib$(GLU_LIB).'${LIB_EXTENSION}
278 GLUT_LIB_NAME='lib$(GLUT_LIB).'${LIB_EXTENSION}
279 GLW_LIB_NAME='lib$(GLW_LIB).'${LIB_EXTENSION}
280 OSMESA_LIB_NAME='lib$(OSMESA_LIB).'${LIB_EXTENSION}
281 EGL_LIB_NAME='lib$(EGL_LIB).'${LIB_EXTENSION}
282 GLESv1_CM_LIB_NAME='lib$(GLESv1_CM_LIB).'${LIB_EXTENSION}
283 GLESv2_LIB_NAME='lib$(GLESv2_LIB).'${LIB_EXTENSION}
284 VG_LIB_NAME='lib$(VG_LIB).'${LIB_EXTENSION}
285
286 GL_LIB_GLOB='lib$(GL_LIB).*'${LIB_EXTENSION}'*'
287 GLU_LIB_GLOB='lib$(GLU_LIB).*'${LIB_EXTENSION}'*'
288 GLUT_LIB_GLOB='lib$(GLUT_LIB).*'${LIB_EXTENSION}'*'
289 GLW_LIB_GLOB='lib$(GLW_LIB).*'${LIB_EXTENSION}'*'
290 OSMESA_LIB_GLOB='lib$(OSMESA_LIB).*'${LIB_EXTENSION}'*'
291 EGL_LIB_GLOB='lib$(EGL_LIB).*'${LIB_EXTENSION}'*'
292 GLESv1_CM_LIB_GLOB='lib$(GLESv1_CM_LIB).*'${LIB_EXTENSION}'*'
293 GLESv2_LIB_GLOB='lib$(GLESv2_LIB).*'${LIB_EXTENSION}'*'
294 VG_LIB_GLOB='lib$(VG_LIB).*'${LIB_EXTENSION}'*'
295
296 AC_SUBST([GL_LIB_NAME])
297 AC_SUBST([GLU_LIB_NAME])
298 AC_SUBST([GLUT_LIB_NAME])
299 AC_SUBST([GLW_LIB_NAME])
300 AC_SUBST([OSMESA_LIB_NAME])
301 AC_SUBST([EGL_LIB_NAME])
302 AC_SUBST([GLESv1_CM_LIB_NAME])
303 AC_SUBST([GLESv2_LIB_NAME])
304 AC_SUBST([VG_LIB_NAME])
305
306 AC_SUBST([GL_LIB_GLOB])
307 AC_SUBST([GLU_LIB_GLOB])
308 AC_SUBST([GLUT_LIB_GLOB])
309 AC_SUBST([GLW_LIB_GLOB])
310 AC_SUBST([OSMESA_LIB_GLOB])
311 AC_SUBST([EGL_LIB_GLOB])
312 AC_SUBST([GLESv1_CM_LIB_GLOB])
313 AC_SUBST([GLESv2_LIB_GLOB])
314 AC_SUBST([VG_LIB_GLOB])
315
316 dnl
317 dnl Arch/platform-specific settings
318 dnl
319 AC_ARG_ENABLE([asm],
320 [AS_HELP_STRING([--disable-asm],
321 [disable assembly usage @<:@default=enabled on supported plaforms@:>@])],
322 [enable_asm="$enableval"],
323 [enable_asm=yes]
324 )
325 asm_arch=""
326 ASM_FLAGS=""
327 MESA_ASM_SOURCES=""
328 GLAPI_ASM_SOURCES=""
329 AC_MSG_CHECKING([whether to enable assembly])
330 test "x$enable_asm" = xno && AC_MSG_RESULT([no])
331 # disable if cross compiling on x86/x86_64 since we must run gen_matypes
332 if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then
333 case "$host_cpu" in
334 i?86 | x86_64)
335 enable_asm=no
336 AC_MSG_RESULT([no, cross compiling])
337 ;;
338 esac
339 fi
340 # check for supported arches
341 if test "x$enable_asm" = xyes; then
342 case "$host_cpu" in
343 i?86)
344 case "$host_os" in
345 linux* | *freebsd* | dragonfly*)
346 test "x$enable_64bit" = xyes && asm_arch=x86_64 || asm_arch=x86
347 ;;
348 esac
349 ;;
350 x86_64)
351 case "$host_os" in
352 linux* | *freebsd* | dragonfly*)
353 test "x$enable_32bit" = xyes && asm_arch=x86 || asm_arch=x86_64
354 ;;
355 esac
356 ;;
357 powerpc)
358 case "$host_os" in
359 linux*)
360 asm_arch=ppc
361 ;;
362 esac
363 ;;
364 sparc*)
365 case "$host_os" in
366 linux*)
367 asm_arch=sparc
368 ;;
369 esac
370 ;;
371 esac
372
373 case "$asm_arch" in
374 x86)
375 ASM_FLAGS="-DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM"
376 MESA_ASM_SOURCES='$(X86_SOURCES)'
377 GLAPI_ASM_SOURCES='$(X86_API)'
378 AC_MSG_RESULT([yes, x86])
379 ;;
380 x86_64)
381 ASM_FLAGS="-DUSE_X86_64_ASM"
382 MESA_ASM_SOURCES='$(X86-64_SOURCES)'
383 GLAPI_ASM_SOURCES='$(X86-64_API)'
384 AC_MSG_RESULT([yes, x86_64])
385 ;;
386 ppc)
387 ASM_FLAGS="-DUSE_PPC_ASM -DUSE_VMX_ASM"
388 MESA_ASM_SOURCES='$(PPC_SOURCES)'
389 AC_MSG_RESULT([yes, ppc])
390 ;;
391 sparc)
392 ASM_FLAGS="-DUSE_SPARC_ASM"
393 MESA_ASM_SOURCES='$(SPARC_SOURCES)'
394 GLAPI_ASM_SOURCES='$(SPARC_API)'
395 AC_MSG_RESULT([yes, sparc])
396 ;;
397 *)
398 AC_MSG_RESULT([no, platform not supported])
399 ;;
400 esac
401 fi
402 AC_SUBST([ASM_FLAGS])
403 AC_SUBST([MESA_ASM_SOURCES])
404 AC_SUBST([GLAPI_ASM_SOURCES])
405
406 dnl PIC code macro
407 MESA_PIC_FLAGS
408
409 dnl Check to see if dlopen is in default libraries (like Solaris, which
410 dnl has it in libc), or if libdl is needed to get it.
411 AC_CHECK_FUNC([dlopen], [],
412 [AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
413 AC_SUBST([DLOPEN_LIBS])
414
415 dnl See if posix_memalign is available
416 AC_CHECK_FUNC([posix_memalign], [DEFINES="$DEFINES -DHAVE_POSIX_MEMALIGN"])
417
418 dnl SELinux awareness.
419 AC_ARG_ENABLE([selinux],
420 [AS_HELP_STRING([--enable-selinux],
421 [Build SELinux-aware Mesa @<:@default=disabled@:>@])],
422 [MESA_SELINUX="$enableval"],
423 [MESA_SELINUX=no])
424 if test "x$enable_selinux" = "xyes"; then
425 AC_CHECK_HEADER([selinux/selinux.h],[],
426 [AC_MSG_ERROR([SELinux headers not found])])
427 AC_CHECK_LIB([selinux],[is_selinux_enabled],[],
428 [AC_MSG_ERROR([SELinux library not found])])
429 SELINUX_LIBS="-lselinux"
430 DEFINES="$DEFINES -DMESA_SELINUX"
431 fi
432
433 dnl
434 dnl Driver configuration. Options are xlib, dri and osmesa right now.
435 dnl More later: fbdev, ...
436 dnl
437 default_driver="xlib"
438
439 case "$host_os" in
440 linux*)
441 case "$host_cpu" in
442 i*86|x86_64|powerpc*|sparc*) default_driver="dri";;
443 esac
444 ;;
445 *freebsd* | dragonfly*)
446 case "$host_cpu" in
447 i*86|x86_64|powerpc*|sparc*) default_driver="dri";;
448 esac
449 ;;
450 esac
451
452 AC_ARG_WITH([driver],
453 [AS_HELP_STRING([--with-driver=DRIVER],
454 [driver for Mesa: xlib,dri,osmesa @<:@default=dri when available, or xlib@:>@])],
455 [mesa_driver="$withval"],
456 [mesa_driver="$default_driver"])
457 dnl Check for valid option
458 case "x$mesa_driver" in
459 xxlib|xdri|xosmesa)
460 ;;
461 *)
462 AC_MSG_ERROR([Driver '$mesa_driver' is not a valid option])
463 ;;
464 esac
465
466 PKG_CHECK_MODULES([TALLOC], [talloc])
467 AC_SUBST([TALLOC_LIBS])
468 AC_SUBST([TALLOC_CFLAGS])
469
470 dnl
471 dnl Driver specific build directories
472 dnl
473
474 dnl this variable will be prepended to SRC_DIRS and is not exported
475 CORE_DIRS="mapi/glapi glsl mesa"
476
477 SRC_DIRS=""
478 GLU_DIRS="sgi"
479 GALLIUM_DIRS="auxiliary drivers state_trackers"
480 GALLIUM_TARGET_DIRS=""
481 GALLIUM_WINSYS_DIRS="sw"
482 GALLIUM_DRIVERS_DIRS="softpipe failover galahad trace rbug identity"
483 GALLIUM_STATE_TRACKERS_DIRS=""
484
485 case "$mesa_driver" in
486 xlib)
487 DRIVER_DIRS="x11"
488 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib"
489 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS libgl-xlib"
490 ;;
491 dri)
492 SRC_DIRS="$SRC_DIRS glx"
493 DRIVER_DIRS="dri"
494 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib sw/dri"
495 ;;
496 osmesa)
497 DRIVER_DIRS="osmesa"
498 ;;
499 esac
500 AC_SUBST([SRC_DIRS])
501 AC_SUBST([GLU_DIRS])
502 AC_SUBST([DRIVER_DIRS])
503 AC_SUBST([GALLIUM_DIRS])
504 AC_SUBST([GALLIUM_TARGET_DIRS])
505 AC_SUBST([GALLIUM_WINSYS_DIRS])
506 AC_SUBST([GALLIUM_DRIVERS_DIRS])
507 AC_SUBST([GALLIUM_STATE_TRACKERS_DIRS])
508 AC_SUBST([MESA_LLVM])
509
510 dnl
511 dnl Find out if X is available. The variable have_x is set if libX11 is
512 dnl found to mimic AC_PATH_XTRA.
513 dnl
514 if test -n "$PKG_CONFIG"; then
515 AC_MSG_CHECKING([pkg-config files for X11 are available])
516 PKG_CHECK_EXISTS([x11],[
517 x11_pkgconfig=yes
518 have_x=yes
519 ],[
520 x11_pkgconfig=no
521 ])
522 AC_MSG_RESULT([$x11_pkgconfig])
523 else
524 x11_pkgconfig=no
525 fi
526 dnl Use the autoconf macro if no pkg-config files
527 if test "$x11_pkgconfig" = yes; then
528 PKG_CHECK_MODULES([X11], [x11])
529 else
530 AC_PATH_XTRA
531 test -z "$X11_CFLAGS" && X11_CFLAGS="$X_CFLAGS"
532 test -z "$X11_LIBS" && X11_LIBS="$X_LIBS -lX11"
533 AC_SUBST([X11_CFLAGS])
534 AC_SUBST([X11_LIBS])
535 fi
536
537 dnl Try to tell the user that the --x-* options are only used when
538 dnl pkg-config is not available. This must be right after AC_PATH_XTRA.
539 m4_divert_once([HELP_BEGIN],
540 [These options are only used when the X libraries cannot be found by the
541 pkg-config utility.])
542
543 dnl We need X for xlib and dri, so bomb now if it's not found
544 case "$mesa_driver" in
545 xlib|dri)
546 if test "$no_x" = yes; then
547 AC_MSG_ERROR([X11 development libraries needed for $mesa_driver driver])
548 fi
549 ;;
550 esac
551
552 dnl XCB - this is only used for GLX right now
553 AC_ARG_ENABLE([xcb],
554 [AS_HELP_STRING([--enable-xcb],
555 [use XCB for GLX @<:@default=disabled@:>@])],
556 [enable_xcb="$enableval"],
557 [enable_xcb=no])
558 if test "x$enable_xcb" = xyes; then
559 DEFINES="$DEFINES -DUSE_XCB"
560 else
561 enable_xcb=no
562 fi
563
564 dnl
565 dnl libGL configuration per driver
566 dnl
567 case "$mesa_driver" in
568 xlib)
569 if test "$x11_pkgconfig" = yes; then
570 PKG_CHECK_MODULES([XLIBGL], [x11 xext])
571 GL_PC_REQ_PRIV="x11 xext"
572 X11_INCLUDES="$X11_INCLUDES $XLIBGL_CFLAGS"
573 GL_LIB_DEPS="$XLIBGL_LIBS"
574 else
575 # should check these...
576 X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
577 GL_LIB_DEPS="$X_LIBS -lX11 -lXext"
578 GL_PC_LIB_PRIV="$GL_LIB_DEPS"
579 GL_PC_CFLAGS="$X11_INCLUDES"
580 fi
581 GL_LIB_DEPS="$GL_LIB_DEPS $SELINUX_LIBS -lm -lpthread"
582 GL_PC_LIB_PRIV="$GL_PC_LIB_PRIV $SELINUX_LIBS -lm -lpthread"
583
584 # if static, move the external libraries to the programs
585 # and empty the libraries for libGL
586 if test "$enable_static" = yes; then
587 APP_LIB_DEPS="$APP_LIB_DEPS $GL_LIB_DEPS"
588 GL_LIB_DEPS=""
589 fi
590 ;;
591 dri)
592 # DRI must be shared, I think
593 if test "$enable_static" = yes; then
594 AC_MSG_ERROR([Can't use static libraries for DRI drivers])
595 fi
596
597 # Check for libdrm
598 PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED])
599 PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED])
600 PKG_CHECK_MODULES([GLPROTO], [glproto >= $GLPROTO_REQUIRED])
601 GL_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED dri2proto >= $DRI2PROTO_REQUIRED glproto >= $GLPROTO_REQUIRED"
602 DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED"
603
604 # find the DRI deps for libGL
605 if test "$x11_pkgconfig" = yes; then
606 # add xcb modules if necessary
607 dri_modules="x11 xext xxf86vm xdamage xfixes"
608 if test "$enable_xcb" = yes; then
609 dri_modules="$dri_modules x11-xcb xcb-glx"
610 fi
611
612 PKG_CHECK_MODULES([DRIGL], [$dri_modules])
613 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV $dri_modules"
614 X11_INCLUDES="$X11_INCLUDES $DRIGL_CFLAGS"
615 GL_LIB_DEPS="$DRIGL_LIBS"
616 else
617 # should check these...
618 X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
619 GL_LIB_DEPS="$X_LIBS -lX11 -lXext -lXxf86vm -lXdamage -lXfixes"
620 GL_PC_LIB_PRIV="$GL_LIB_DEPS"
621 GL_PC_CFLAGS="$X11_INCLUDES"
622
623 # XCB can only be used from pkg-config
624 if test "$enable_xcb" = yes; then
625 PKG_CHECK_MODULES([XCB],[x11-xcb xcb-glx])
626 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV x11-xcb xcb-glx"
627 X11_INCLUDES="$X11_INCLUDES $XCB_CFLAGS"
628 GL_LIB_DEPS="$GL_LIB_DEPS $XCB_LIBS"
629 fi
630 fi
631
632 # need DRM libs, -lpthread, etc.
633 GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
634 GL_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
635 GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
636 GLESv1_CM_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
637 GLESv2_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
638 GLESv2_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
639 ;;
640 osmesa)
641 # No libGL for osmesa
642 GL_LIB_DEPS=""
643 ;;
644 esac
645 AC_SUBST([GL_LIB_DEPS])
646 AC_SUBST([GL_PC_REQ_PRIV])
647 AC_SUBST([GL_PC_LIB_PRIV])
648 AC_SUBST([GL_PC_CFLAGS])
649 AC_SUBST([DRI_PC_REQ_PRIV])
650 AC_SUBST([GLESv1_CM_LIB_DEPS])
651 AC_SUBST([GLESv1_CM_PC_LIB_PRIV])
652 AC_SUBST([GLESv2_LIB_DEPS])
653 AC_SUBST([GLESv2_PC_LIB_PRIV])
654
655
656 dnl
657 dnl More X11 setup
658 dnl
659 if test "$mesa_driver" = xlib; then
660 DEFINES="$DEFINES -DUSE_XSHM"
661 fi
662
663 dnl
664 dnl More DRI setup
665 dnl
666 AC_ARG_ENABLE([glx-tls],
667 [AS_HELP_STRING([--enable-glx-tls],
668 [enable TLS support in GLX @<:@default=disabled@:>@])],
669 [GLX_USE_TLS="$enableval"],
670 [GLX_USE_TLS=no])
671 dnl Directory for DRI drivers
672 AC_ARG_WITH([dri-driverdir],
673 [AS_HELP_STRING([--with-dri-driverdir=DIR],
674 [directory for the DRI drivers @<:@${libdir}/dri@:>@])],
675 [DRI_DRIVER_INSTALL_DIR="$withval"],
676 [DRI_DRIVER_INSTALL_DIR='${libdir}/dri'])
677 AC_SUBST([DRI_DRIVER_INSTALL_DIR])
678 dnl Extra search path for DRI drivers
679 AC_ARG_WITH([dri-searchpath],
680 [AS_HELP_STRING([--with-dri-searchpath=DIRS...],
681 [semicolon delimited DRI driver search directories @<:@${libdir}/dri@:>@])],
682 [DRI_DRIVER_SEARCH_DIR="$withval"],
683 [DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}'])
684 AC_SUBST([DRI_DRIVER_SEARCH_DIR])
685 dnl Direct rendering or just indirect rendering
686 AC_ARG_ENABLE([driglx-direct],
687 [AS_HELP_STRING([--disable-driglx-direct],
688 [enable direct rendering in GLX and EGL for DRI @<:@default=enabled@:>@])],
689 [driglx_direct="$enableval"],
690 [driglx_direct="yes"])
691 dnl Which drivers to build - default is chosen by platform
692 AC_ARG_WITH([dri-drivers],
693 [AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@],
694 [comma delimited DRI drivers list, e.g.
695 "swrast,i965,radeon" @<:@default=auto@:>@])],
696 [with_dri_drivers="$withval"],
697 [with_dri_drivers=yes])
698 if test "x$with_dri_drivers" = x; then
699 with_dri_drivers=no
700 fi
701
702 dnl Determine which APIs to support
703 AC_ARG_ENABLE([opengl],
704 [AS_HELP_STRING([--disable-opengl],
705 [disable support for standard OpenGL API @<:@default=no@:>@])],
706 [enable_opengl="$enableval"],
707 [enable_opengl=yes])
708 AC_ARG_ENABLE([gles1],
709 [AS_HELP_STRING([--enable-gles1],
710 [enable support for OpenGL ES 1.x API @<:@default=no@:>@])],
711 [enable_gles1="$enableval"],
712 [enable_gles1=no])
713 AC_ARG_ENABLE([gles2],
714 [AS_HELP_STRING([--enable-gles2],
715 [enable support for OpenGL ES 2.x API @<:@default=no@:>@])],
716 [enable_gles2="$enableval"],
717 [enable_gles2=no])
718 AC_ARG_ENABLE([gles-overlay],
719 [AS_HELP_STRING([--enable-gles-overlay],
720 [build separate OpenGL ES only libraries @<:@default=no@:>@])],
721 [enable_gles_overlay="$enableval"],
722 [enable_gles_overlay=no])
723
724 API_DEFINES=""
725 GLES_OVERLAY=0
726 if test "x$enable_opengl" = xno; then
727 API_DEFINES="$API_DEFINES -DFEATURE_GL=0"
728 else
729 API_DEFINES="$API_DEFINES -DFEATURE_GL=1"
730 fi
731 if test "x$enable_gles1" = xyes; then
732 API_DEFINES="$API_DEFINES -DFEATURE_ES1=1"
733 fi
734 if test "x$enable_gles2" = xyes; then
735 API_DEFINES="$API_DEFINES -DFEATURE_ES2=1"
736 fi
737 if test "x$enable_gles_overlay" = xyes -o \
738 "x$enable_gles1" = xyes -o "x$enable_gles2" = xyes; then
739 CORE_DIRS="mapi/es1api mapi/es2api $CORE_DIRS"
740 if test "x$enable_gles_overlay" = xyes; then
741 GLES_OVERLAY=1
742 fi
743 fi
744 AC_SUBST([API_DEFINES])
745 AC_SUBST([GLES_OVERLAY])
746
747 dnl If $with_dri_drivers is yes, directories will be added through
748 dnl platform checks
749 DRI_DIRS=""
750 case "$with_dri_drivers" in
751 no) ;;
752 yes)
753 DRI_DIRS="yes"
754 ;;
755 *)
756 # verify the requested driver directories exist
757 dri_drivers=`IFS=', '; echo $with_dri_drivers`
758 for driver in $dri_drivers; do
759 test -d "$srcdir/src/mesa/drivers/dri/$driver" || \
760 AC_MSG_ERROR([DRI driver directory '$driver' doesn't exist])
761 done
762 DRI_DIRS="$dri_drivers"
763 ;;
764 esac
765
766 dnl Set DRI_DIRS, DEFINES and LIB_DEPS
767 if test "$mesa_driver" = dri; then
768 # Use TLS in GLX?
769 if test "x$GLX_USE_TLS" = xyes; then
770 DEFINES="$DEFINES -DGLX_USE_TLS -DPTHREADS"
771 fi
772
773 # Platform specific settings and drivers to build
774 case "$host_os" in
775 linux*)
776 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
777 if test "x$driglx_direct" = xyes; then
778 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
779 fi
780 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS"
781
782 case "$host_cpu" in
783 x86_64)
784 # sis is missing because they have not be converted to use
785 # the new interface. i810 are missing because there is no
786 # x86-64 system where they could *ever* be used.
787 if test "x$DRI_DIRS" = "xyes"; then
788 DRI_DIRS="i915 i965 mach64 mga r128 r200 r300 r600 radeon \
789 savage tdfx unichrome swrast"
790 fi
791 ;;
792 powerpc*)
793 # Build only the drivers for cards that exist on PowerPC.
794 # At some point MGA will be added, but not yet.
795 if test "x$DRI_DIRS" = "xyes"; then
796 DRI_DIRS="mach64 r128 r200 r300 r600 radeon tdfx swrast"
797 fi
798 ;;
799 sparc*)
800 # Build only the drivers for cards that exist on sparc`
801 if test "x$DRI_DIRS" = "xyes"; then
802 DRI_DIRS="mach64 r128 r200 r300 r600 radeon swrast"
803 fi
804 ;;
805 esac
806 ;;
807 freebsd* | dragonfly*)
808 DEFINES="$DEFINES -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1"
809 DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS"
810 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING"
811 if test "x$driglx_direct" = xyes; then
812 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
813 fi
814 if test "x$GXX" = xyes; then
815 CXXFLAGS="$CXXFLAGS -ansi -pedantic"
816 fi
817
818 if test "x$DRI_DIRS" = "xyes"; then
819 DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon tdfx \
820 unichrome savage sis swrast"
821 fi
822 ;;
823 gnu*)
824 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
825 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS"
826 ;;
827 solaris*)
828 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
829 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING"
830 if test "x$driglx_direct" = xyes; then
831 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
832 fi
833 ;;
834 esac
835
836 # default drivers
837 if test "x$DRI_DIRS" = "xyes"; then
838 DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon \
839 savage sis tdfx unichrome swrast"
840 fi
841
842 DRI_DIRS=`echo "$DRI_DIRS" | $SED 's/ */ /g'`
843
844 # Check for expat
845 EXPAT_INCLUDES=""
846 EXPAT_LIB=-lexpat
847 AC_ARG_WITH([expat],
848 [AS_HELP_STRING([--with-expat=DIR],
849 [expat install directory])],[
850 EXPAT_INCLUDES="-I$withval/include"
851 CPPFLAGS="$CPPFLAGS $EXPAT_INCLUDES"
852 LDFLAGS="$LDFLAGS -L$withval/$LIB_DIR"
853 EXPAT_LIB="-L$withval/$LIB_DIR -lexpat"
854 ])
855 AC_CHECK_HEADER([expat.h],[],[AC_MSG_ERROR([Expat required for DRI.])])
856 AC_CHECK_LIB([expat],[XML_ParserCreate],[],
857 [AC_MSG_ERROR([Expat required for DRI.])])
858
859 # put all the necessary libs together
860 DRI_LIB_DEPS="$SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm -lpthread $DLOPEN_LIBS $TALLOC_LIBS"
861 fi
862 AC_SUBST([DRI_DIRS])
863 AC_SUBST([EXPAT_INCLUDES])
864 AC_SUBST([DRI_LIB_DEPS])
865
866 case $DRI_DIRS in
867 *i915*|*i965*)
868 PKG_CHECK_MODULES([INTEL], [libdrm_intel >= 2.4.21])
869 ;;
870 esac
871
872 case $DRI_DIRS in
873 *radeon*|*r200*|*r300*|*r600*)
874 PKG_CHECK_MODULES([LIBDRM_RADEON],
875 [libdrm_radeon libdrm >= $LIBDRM_RADEON_REQUIRED],
876 HAVE_LIBDRM_RADEON=yes,
877 HAVE_LIBDRM_RADEON=no)
878
879 if test "$HAVE_LIBDRM_RADEON" = yes; then
880 RADEON_CFLAGS="-DHAVE_LIBDRM_RADEON=1 $LIBDRM_RADEON_CFLAGS"
881 RADEON_LDFLAGS=$LIBDRM_RADEON_LIBS
882 fi
883 ;;
884 esac
885 AC_SUBST([RADEON_CFLAGS])
886 AC_SUBST([RADEON_LDFLAGS])
887
888
889 dnl
890 dnl OSMesa configuration
891 dnl
892 if test "$mesa_driver" = xlib; then
893 default_gl_osmesa=yes
894 else
895 default_gl_osmesa=no
896 fi
897 AC_ARG_ENABLE([gl-osmesa],
898 [AS_HELP_STRING([--enable-gl-osmesa],
899 [enable OSMesa with libGL @<:@default=enabled for xlib driver@:>@])],
900 [gl_osmesa="$enableval"],
901 [gl_osmesa="$default_gl_osmesa"])
902 if test "x$gl_osmesa" = xyes; then
903 if test "$mesa_driver" = osmesa; then
904 AC_MSG_ERROR([libGL is not available for OSMesa driver])
905 else
906 DRIVER_DIRS="$DRIVER_DIRS osmesa"
907 fi
908 fi
909
910 dnl Configure the channel bits for OSMesa (libOSMesa, libOSMesa16, ...)
911 AC_ARG_WITH([osmesa-bits],
912 [AS_HELP_STRING([--with-osmesa-bits=BITS],
913 [OSMesa channel bits and library name: 8, 16, 32 @<:@default=8@:>@])],
914 [osmesa_bits="$withval"],
915 [osmesa_bits=8])
916 if test "$mesa_driver" != osmesa && test "x$osmesa_bits" != x8; then
917 AC_MSG_WARN([Ignoring OSMesa channel bits for non-OSMesa driver])
918 osmesa_bits=8
919 fi
920 case "x$osmesa_bits" in
921 x8)
922 OSMESA_LIB=OSMesa
923 ;;
924 x16|x32)
925 OSMESA_LIB="OSMesa$osmesa_bits"
926 DEFINES="$DEFINES -DCHAN_BITS=$osmesa_bits -DDEFAULT_SOFTWARE_DEPTH_BITS=31"
927 ;;
928 *)
929 AC_MSG_ERROR([OSMesa bits '$osmesa_bits' is not a valid option])
930 ;;
931 esac
932 AC_SUBST([OSMESA_LIB])
933
934 case "$DRIVER_DIRS" in
935 *osmesa*)
936 # only link libraries with osmesa if shared
937 if test "$enable_static" = no; then
938 OSMESA_LIB_DEPS="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS"
939 else
940 OSMESA_LIB_DEPS=""
941 fi
942 OSMESA_MESA_DEPS=""
943 OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS"
944 ;;
945 esac
946 AC_SUBST([OSMESA_LIB_DEPS])
947 AC_SUBST([OSMESA_MESA_DEPS])
948 AC_SUBST([OSMESA_PC_REQ])
949 AC_SUBST([OSMESA_PC_LIB_PRIV])
950
951 dnl
952 dnl EGL configuration
953 dnl
954 AC_ARG_ENABLE([egl],
955 [AS_HELP_STRING([--disable-egl],
956 [disable EGL library @<:@default=enabled@:>@])],
957 [enable_egl="$enableval"],
958 [enable_egl=yes])
959 if test "x$enable_egl" = xyes; then
960 SRC_DIRS="$SRC_DIRS egl"
961 EGL_LIB_DEPS="$DLOPEN_LIBS -lpthread"
962 EGL_DRIVERS_DIRS=""
963 if test "$enable_static" != yes; then
964 # build egl_glx when libGL is built
965 if test "$mesa_driver" != osmesa; then
966 EGL_DRIVERS_DIRS="glx"
967 fi
968
969 if test "$mesa_driver" = dri; then
970 # build egl_dri2 when xcb-dri2 is available
971 PKG_CHECK_MODULES([XCB_DRI2], [x11-xcb xcb-dri2 xcb-xfixes],
972 [have_xcb_dri2=yes],[have_xcb_dri2=no])
973 PKG_CHECK_MODULES([LIBUDEV], [libudev > 150],
974 [have_libudev=yes],[have_libudev=no])
975
976 if test "$have_xcb_dri2" = yes; then
977 EGL_DRIVER_DRI2=dri2
978 DEFINES="$DEFINES -DHAVE_XCB_DRI2"
979 if test "$have_libudev" = yes; then
980 DEFINES="$DEFINES -DHAVE_LIBUDEV"
981 fi
982 fi
983 fi
984
985 EGL_DRIVERS_DIRS="$EGL_DRIVERS_DIRS $EGL_DRIVER_DRI2"
986 fi
987 fi
988 AC_SUBST([EGL_LIB_DEPS])
989 AC_SUBST([EGL_DRIVERS_DIRS])
990
991 dnl
992 dnl GLU configuration
993 dnl
994 AC_ARG_ENABLE([glu],
995 [AS_HELP_STRING([--disable-glu],
996 [enable OpenGL Utility library @<:@default=enabled@:>@])],
997 [enable_glu="$enableval"],
998 [enable_glu=yes])
999 if test "x$enable_glu" = xyes; then
1000 SRC_DIRS="$SRC_DIRS glu"
1001
1002 case "$mesa_driver" in
1003 osmesa)
1004 # Link libGLU to libOSMesa instead of libGL
1005 GLU_LIB_DEPS=""
1006 GLU_PC_REQ="osmesa"
1007 if test "$enable_static" = no; then
1008 GLU_MESA_DEPS='-l$(OSMESA_LIB)'
1009 else
1010 GLU_MESA_DEPS=""
1011 fi
1012 ;;
1013 *)
1014 # If static, empty GLU_LIB_DEPS and add libs for programs to link
1015 GLU_PC_REQ="gl"
1016 GLU_PC_LIB_PRIV="-lm"
1017 if test "$enable_static" = no; then
1018 GLU_LIB_DEPS="-lm"
1019 GLU_MESA_DEPS='-l$(GL_LIB)'
1020 else
1021 GLU_LIB_DEPS=""
1022 GLU_MESA_DEPS=""
1023 APP_LIB_DEPS="$APP_LIB_DEPS -lstdc++"
1024 fi
1025 ;;
1026 esac
1027 fi
1028 if test "$enable_static" = no; then
1029 GLU_LIB_DEPS="$GLU_LIB_DEPS $OS_CPLUSPLUS_LIBS"
1030 fi
1031 GLU_PC_LIB_PRIV="$GLU_PC_LIB_PRIV $OS_CPLUSPLUS_LIBS"
1032 AC_SUBST([GLU_LIB_DEPS])
1033 AC_SUBST([GLU_MESA_DEPS])
1034 AC_SUBST([GLU_PC_REQ])
1035 AC_SUBST([GLU_PC_REQ_PRIV])
1036 AC_SUBST([GLU_PC_LIB_PRIV])
1037 AC_SUBST([GLU_PC_CFLAGS])
1038
1039 dnl
1040 dnl GLw configuration
1041 dnl
1042 AC_ARG_ENABLE([glw],
1043 [AS_HELP_STRING([--disable-glw],
1044 [enable Xt/Motif widget library @<:@default=enabled@:>@])],
1045 [enable_glw="$enableval"],
1046 [enable_glw=yes])
1047 dnl Don't build GLw on osmesa
1048 if test "x$enable_glw" = xyes && test "$mesa_driver" = osmesa; then
1049 AC_MSG_WARN([Disabling GLw since the driver is OSMesa])
1050 enable_glw=no
1051 fi
1052 AC_ARG_ENABLE([motif],
1053 [AS_HELP_STRING([--enable-motif],
1054 [use Motif widgets in GLw @<:@default=disabled@:>@])],
1055 [enable_motif="$enableval"],
1056 [enable_motif=no])
1057
1058 if test "x$enable_glw" = xyes; then
1059 SRC_DIRS="$SRC_DIRS glw"
1060 if test "$x11_pkgconfig" = yes; then
1061 PKG_CHECK_MODULES([GLW],[x11 xt])
1062 GLW_PC_REQ_PRIV="x11 xt"
1063 GLW_LIB_DEPS="$GLW_LIBS"
1064 else
1065 # should check these...
1066 GLW_LIB_DEPS="$X_LIBS -lXt -lX11"
1067 GLW_PC_LIB_PRIV="$GLW_LIB_DEPS"
1068 GLW_PC_CFLAGS="$X11_INCLUDES"
1069 fi
1070
1071 GLW_SOURCES="GLwDrawA.c"
1072 MOTIF_CFLAGS=
1073 if test "x$enable_motif" = xyes; then
1074 GLW_SOURCES="$GLW_SOURCES GLwMDrawA.c"
1075 AC_PATH_PROG([MOTIF_CONFIG], [motif-config], [no])
1076 if test "x$MOTIF_CONFIG" != xno; then
1077 MOTIF_CFLAGS=`$MOTIF_CONFIG --cflags`
1078 MOTIF_LIBS=`$MOTIF_CONFIG --libs`
1079 else
1080 AC_CHECK_HEADER([Xm/PrimitiveP.h], [],
1081 [AC_MSG_ERROR([Can't locate Motif headers])])
1082 AC_CHECK_LIB([Xm], [XmGetPixmap], [MOTIF_LIBS="-lXm"],
1083 [AC_MSG_ERROR([Can't locate Motif Xm library])])
1084 fi
1085 # MOTIF_LIBS is prepended to GLW_LIB_DEPS since Xm needs Xt/X11
1086 GLW_LIB_DEPS="$MOTIF_LIBS $GLW_LIB_DEPS"
1087 GLW_PC_LIB_PRIV="$MOTIF_LIBS $GLW_PC_LIB_PRIV"
1088 GLW_PC_CFLAGS="$MOTIF_CFLAGS $GLW_PC_CFLAGS"
1089 fi
1090
1091 # If static, empty GLW_LIB_DEPS and add libs for programs to link
1092 GLW_PC_LIB_PRIV="$GLW_PC_LIB_PRIV"
1093 if test "$enable_static" = no; then
1094 GLW_MESA_DEPS='-l$(GL_LIB)'
1095 GLW_LIB_DEPS="$GLW_LIB_DEPS"
1096 else
1097 APP_LIB_DEPS="$APP_LIB_DEPS $GLW_LIB_DEPS"
1098 GLW_LIB_DEPS=""
1099 GLW_MESA_DEPS=""
1100 fi
1101 fi
1102 AC_SUBST([GLW_LIB_DEPS])
1103 AC_SUBST([GLW_MESA_DEPS])
1104 AC_SUBST([GLW_SOURCES])
1105 AC_SUBST([MOTIF_CFLAGS])
1106 AC_SUBST([GLW_PC_REQ_PRIV])
1107 AC_SUBST([GLW_PC_LIB_PRIV])
1108 AC_SUBST([GLW_PC_CFLAGS])
1109
1110 dnl
1111 dnl GLUT configuration
1112 dnl
1113 if test -f "$srcdir/include/GL/glut.h"; then
1114 default_glut=yes
1115 else
1116 default_glut=no
1117 fi
1118 AC_ARG_ENABLE([glut],
1119 [AS_HELP_STRING([--disable-glut],
1120 [enable GLUT library @<:@default=enabled if source available@:>@])],
1121 [enable_glut="$enableval"],
1122 [enable_glut="$default_glut"])
1123
1124 dnl Can't build glut if GLU not available
1125 if test "x$enable_glu$enable_glut" = xnoyes; then
1126 AC_MSG_WARN([Disabling glut since GLU is disabled])
1127 enable_glut=no
1128 fi
1129 dnl Don't build glut on osmesa
1130 if test "x$enable_glut" = xyes && test "$mesa_driver" = osmesa; then
1131 AC_MSG_WARN([Disabling glut since the driver is OSMesa])
1132 enable_glut=no
1133 fi
1134
1135 if test "x$enable_glut" = xyes; then
1136 SRC_DIRS="$SRC_DIRS glut/glx"
1137 if test "$x11_pkgconfig" = yes; then
1138 PKG_CHECK_MODULES([GLUT],[x11 xmu xi])
1139 GLUT_PC_REQ_PRIV="x11 xmu xi"
1140 GLUT_LIB_DEPS="$GLUT_LIBS"
1141 else
1142 # should check these...
1143 GLUT_LIB_DEPS="$X_LIBS -lX11 -lXmu -lXi"
1144 GLUT_PC_LIB_PRIV="$GLUT_LIB_DEPS"
1145 GLUT_PC_CFLAGS="$X11_INCLUDES"
1146 fi
1147 if test "x$GCC" = xyes; then
1148 GLUT_CFLAGS="$GLUT_CFLAGS -fexceptions"
1149 fi
1150 GLUT_LIB_DEPS="$GLUT_LIB_DEPS -lm"
1151 GLUT_PC_LIB_PRIV="$GLUT_PC_LIB_PRIV -lm"
1152
1153 # If static, empty GLUT_LIB_DEPS and add libs for programs to link
1154 if test "$enable_static" = no; then
1155 GLUT_MESA_DEPS='-l$(GLU_LIB) -l$(GL_LIB)'
1156 else
1157 APP_LIB_DEPS="$APP_LIB_DEPS $GLUT_LIB_DEPS"
1158 GLUT_LIB_DEPS=""
1159 GLUT_MESA_DEPS=""
1160 fi
1161 fi
1162 AC_SUBST([GLUT_LIB_DEPS])
1163 AC_SUBST([GLUT_MESA_DEPS])
1164 AC_SUBST([GLUT_CFLAGS])
1165 AC_SUBST([GLUT_PC_REQ_PRIV])
1166 AC_SUBST([GLUT_PC_LIB_PRIV])
1167 AC_SUBST([GLUT_PC_CFLAGS])
1168
1169 dnl
1170 dnl Program library dependencies
1171 dnl Only libm is added here if necessary as the libraries should
1172 dnl be pulled in by the linker
1173 dnl
1174 if test "x$APP_LIB_DEPS" = x; then
1175 case "$host_os" in
1176 solaris*)
1177 APP_LIB_DEPS="-lX11 -lsocket -lnsl -lm"
1178 ;;
1179 cygwin*)
1180 APP_LIB_DEPS="-lX11"
1181 ;;
1182 *)
1183 APP_LIB_DEPS="-lm"
1184 ;;
1185 esac
1186 fi
1187 AC_SUBST([APP_LIB_DEPS])
1188 AC_SUBST([PROGRAM_DIRS])
1189
1190 dnl
1191 dnl Gallium configuration
1192 dnl
1193 AC_ARG_ENABLE([gallium],
1194 [AS_HELP_STRING([--disable-gallium],
1195 [build gallium @<:@default=enabled@:>@])],
1196 [enable_gallium="$enableval"],
1197 [enable_gallium=yes])
1198 if test "x$enable_gallium" = xyes; then
1199 SRC_DIRS="$SRC_DIRS gallium gallium/winsys gallium/targets"
1200 AC_CHECK_HEADER([udis86.h], [HAS_UDIS86="yes"],
1201 [HAS_UDIS86="no"])
1202 AC_PATH_PROG([LLVM_CONFIG], [llvm-config], [no])
1203 fi
1204
1205 AC_SUBST([LLVM_CFLAGS])
1206 AC_SUBST([LLVM_LIBS])
1207 AC_SUBST([LLVM_LDFLAGS])
1208 AC_SUBST([LLVM_VERSION])
1209
1210 VG_LIB_DEPS=""
1211 EGL_CLIENT_APIS='$(GL_LIB)'
1212 if test "x$enable_gles_overlay" = xyes; then
1213 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(GLESv1_CM_LIB) $(GLESv2_LIB)'
1214 fi
1215
1216 dnl
1217 dnl Gallium state trackers configuration
1218 dnl
1219 AC_ARG_WITH([state-trackers],
1220 [AS_HELP_STRING([--with-state-trackers@<:@=DIRS...@:>@],
1221 [comma delimited state_trackers list, e.g.
1222 "egl,glx" @<:@default=auto@:>@])],
1223 [with_state_trackers="$withval"],
1224 [with_state_trackers=yes])
1225
1226 case "$with_state_trackers" in
1227 no)
1228 GALLIUM_STATE_TRACKERS_DIRS=""
1229 ;;
1230 yes)
1231 # look at what else is built
1232 case "$mesa_driver" in
1233 xlib)
1234 GALLIUM_STATE_TRACKERS_DIRS=glx
1235 ;;
1236 dri)
1237 GALLIUM_STATE_TRACKERS_DIRS="dri"
1238 HAVE_ST_DRI="yes"
1239 if test "x$enable_egl" = xyes; then
1240 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS egl"
1241 HAVE_ST_EGL="yes"
1242 fi
1243 # Have only tested st/xorg on 1.6.0 servers
1244 PKG_CHECK_MODULES(XORG, [xorg-server >= 1.6.0 libdrm >= $LIBDRM_XORG_REQUIRED libkms >= $LIBKMS_XORG_REQUIRED],
1245 HAVE_ST_XORG="yes"; GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS xorg",
1246 HAVE_ST_XORG="no")
1247 ;;
1248 esac
1249 ;;
1250 *)
1251 # verify the requested state tracker exist
1252 state_trackers=""
1253 _state_trackers=`IFS=', '; echo $with_state_trackers`
1254 for tracker in $_state_trackers; do
1255 case "$tracker" in
1256 dri)
1257 if test "x$mesa_driver" != xdri; then
1258 AC_MSG_ERROR([cannot build dri state tracker without mesa driver set to dri])
1259 fi
1260 HAVE_ST_DRI="yes"
1261 ;;
1262 egl)
1263 if test "x$enable_egl" != xyes; then
1264 AC_MSG_ERROR([cannot build egl state tracker without EGL library])
1265 fi
1266 HAVE_ST_EGL="yes"
1267 ;;
1268 xorg)
1269 PKG_CHECK_MODULES([XORG], [xorg-server >= 1.6.0])
1270 PKG_CHECK_MODULES([LIBDRM_XORG], [libdrm >= $LIBDRM_XORG_REQUIRED])
1271 PKG_CHECK_MODULES([LIBKMS_XORG], [libkms >= $LIBKMS_XORG_REQUIRED])
1272 HAVE_ST_XORG="yes"
1273 ;;
1274 es)
1275 AC_MSG_WARN([state tracker 'es' has been replaced by --enable-gles-overlay])
1276
1277 if test "x$enable_gles_overlay" != xyes; then
1278 if test "x$enable_gles1" != xyes -a "x$enable_gles2" != xyes; then
1279 CORE_DIRS="mapi/es1api mapi/es2api $CORE_DIRS"
1280 fi
1281 GLES_OVERLAY=1
1282 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(GLESv1_CM_LIB) $(GLESv2_LIB)'
1283 fi
1284 tracker=""
1285 ;;
1286 vega)
1287 CORE_DIRS="$CORE_DIRS mapi/vgapi"
1288 VG_LIB_DEPS="$VG_LIB_DEPS -lpthread"
1289 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(VG_LIB)'
1290 ;;
1291 esac
1292
1293 if test -n "$tracker"; then
1294 test -d "$srcdir/src/gallium/state_trackers/$tracker" || \
1295 AC_MSG_ERROR([state tracker '$tracker' doesn't exist])
1296 if test -n "$state_trackers"; then
1297 state_trackers="$state_trackers $tracker"
1298 else
1299 state_trackers="$tracker"
1300 fi
1301 fi
1302 done
1303 GALLIUM_STATE_TRACKERS_DIRS="$state_trackers"
1304 ;;
1305 esac
1306
1307 AC_SUBST([VG_LIB_DEPS])
1308 AC_SUBST([EGL_CLIENT_APIS])
1309
1310 if test "x$HAVE_ST_EGL" = xyes; then
1311 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS egl"
1312 # define GLX_DIRECT_RENDERING even when the driver is not dri
1313 if test "x$mesa_driver" != xdri -a "x$driglx_direct" = xyes; then
1314 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
1315 fi
1316 fi
1317
1318 if test "x$HAVE_ST_XORG" = xyes; then
1319 PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
1320 HAVE_XEXTPROTO_71="yes"; DEFINES="$DEFINES -DHAVE_XEXTPROTO_71",
1321 HAVE_XEXTPROTO_71="no")
1322 fi
1323
1324 AC_ARG_WITH([egl-platforms],
1325 [AS_HELP_STRING([--with-egl-platforms@<:@=DIRS...@:>@],
1326 [comma delimited native platforms libEGL supports, e.g.
1327 "x11,kms" @<:@default=auto@:>@])],
1328 [with_egl_platforms="$withval"],
1329 [with_egl_platforms=yes])
1330 AC_ARG_WITH([egl-displays],
1331 [AS_HELP_STRING([--with-egl-displays@<:@=DIRS...@:>@],
1332 [DEPRECATED. Use --with-egl-platforms instead])],
1333 [with_egl_platforms="$withval"])
1334
1335 EGL_PLATFORMS=""
1336 case "$with_egl_platforms" in
1337 yes)
1338 if test "x$enable_egl" = xyes && test "x$mesa_driver" != xosmesa; then
1339 EGL_PLATFORMS="x11"
1340 fi
1341 ;;
1342 *)
1343 if test "x$enable_egl" != xyes; then
1344 AC_MSG_ERROR([cannot build egl state tracker without EGL library])
1345 fi
1346 # verify the requested driver directories exist
1347 egl_platforms=`IFS=', '; echo $with_egl_platforms`
1348 for plat in $egl_platforms; do
1349 test -d "$srcdir/src/gallium/state_trackers/egl/$plat" || \
1350 AC_MSG_ERROR([EGL platform '$plat' does't exist])
1351 if test "$plat" = "fbdev"; then
1352 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/fbdev"
1353 fi
1354 done
1355 EGL_PLATFORMS="$egl_platforms"
1356 ;;
1357 esac
1358 AC_SUBST([EGL_PLATFORMS])
1359
1360 AC_ARG_WITH([egl-driver-dir],
1361 [AS_HELP_STRING([--with-egl-driver-dir=DIR],
1362 [directory for EGL drivers [[default=${libdir}/egl]]])],
1363 [EGL_DRIVER_INSTALL_DIR="$withval"],
1364 [EGL_DRIVER_INSTALL_DIR='${libdir}/egl'])
1365 AC_SUBST([EGL_DRIVER_INSTALL_DIR])
1366
1367 AC_ARG_WITH([xorg-driver-dir],
1368 [AS_HELP_STRING([--with-xorg-driver-dir=DIR],
1369 [Default xorg driver directory[[default=${libdir}/xorg/modules/drivers]]])],
1370 [XORG_DRIVER_INSTALL_DIR="$withval"],
1371 [XORG_DRIVER_INSTALL_DIR="${libdir}/xorg/modules/drivers"])
1372 AC_SUBST([XORG_DRIVER_INSTALL_DIR])
1373
1374 AC_ARG_WITH([max-width],
1375 [AS_HELP_STRING([--with-max-width=N],
1376 [Maximum framebuffer width (4096)])],
1377 [DEFINES="${DEFINES} -DMAX_WIDTH=${withval}";
1378 AS_IF([test "${withval}" -gt "4096"],
1379 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1380 )
1381 AC_ARG_WITH([max-height],
1382 [AS_HELP_STRING([--with-max-height=N],
1383 [Maximum framebuffer height (4096)])],
1384 [DEFINES="${DEFINES} -DMAX_HEIGHT=${withval}";
1385 AS_IF([test "${withval}" -gt "4096"],
1386 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1387 )
1388
1389 dnl
1390 dnl Gallium LLVM
1391 dnl
1392 AC_ARG_ENABLE([gallium-llvm],
1393 [AS_HELP_STRING([--enable-gallium-llvm],
1394 [build gallium LLVM support @<:@default=disabled@:>@])],
1395 [enable_gallium_llvm="$enableval"],
1396 [enable_gallium_llvm=auto])
1397 if test "x$enable_gallium_llvm" = xyes; then
1398 if test "x$LLVM_CONFIG" != xno; then
1399 LLVM_VERSION=`$LLVM_CONFIG --version`
1400 LLVM_CFLAGS=`$LLVM_CONFIG --cflags`
1401 LLVM_LIBS="`$LLVM_CONFIG --libs jit interpreter nativecodegen bitwriter` -lstdc++"
1402
1403 if test "x$HAS_UDIS86" != xno; then
1404 LLVM_LIBS="$LLVM_LIBS -ludis86"
1405 DEFINES="$DEFINES -DHAVE_UDIS86"
1406 fi
1407 LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
1408 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS llvmpipe"
1409 DEFINES="$DEFINES -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS"
1410 MESA_LLVM=1
1411 else
1412 MESA_LLVM=0
1413 fi
1414 else
1415 MESA_LLVM=0
1416 fi
1417
1418 dnl
1419 dnl Gallium helper functions
1420 dnl
1421 gallium_check_st() {
1422 if test "x$HAVE_ST_DRI" = xyes || test "x$HAVE_ST_XORG" = xyes; then
1423 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS $1"
1424 fi
1425 if test "x$HAVE_ST_DRI" = xyes && test "x$2" != x; then
1426 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $2"
1427 fi
1428 if test "x$HAVE_ST_XORG" = xyes && test "x$3" != x; then
1429 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $3"
1430 fi
1431 }
1432
1433
1434 dnl
1435 dnl Gallium SVGA configuration
1436 dnl
1437 AC_ARG_ENABLE([gallium-svga],
1438 [AS_HELP_STRING([--enable-gallium-svga],
1439 [build gallium SVGA @<:@default=disabled@:>@])],
1440 [enable_gallium_svga="$enableval"],
1441 [enable_gallium_svga=auto])
1442 if test "x$enable_gallium_svga" = xyes; then
1443 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS svga"
1444 gallium_check_st "svga/drm" "dri-vmwgfx" "xorg-vmwgfx"
1445 elif test "x$enable_gallium_svga" = xauto; then
1446 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS svga"
1447 fi
1448
1449 dnl
1450 dnl Gallium i915 configuration
1451 dnl
1452 AC_ARG_ENABLE([gallium-i915],
1453 [AS_HELP_STRING([--enable-gallium-i915],
1454 [build gallium i915 @<:@default=disabled@:>@])],
1455 [enable_gallium_i915="$enableval"],
1456 [enable_gallium_i915=auto])
1457 if test "x$enable_gallium_i915" = xyes; then
1458 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS i915/sw"
1459 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i915"
1460 gallium_check_st "i915/drm" "dri-i915" "xorg-i915"
1461 elif test "x$enable_gallium_i915" = xauto; then
1462 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS i915/sw"
1463 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i915"
1464 fi
1465
1466 dnl
1467 dnl Gallium i965 configuration
1468 dnl
1469 AC_ARG_ENABLE([gallium-i965],
1470 [AS_HELP_STRING([--enable-gallium-i965],
1471 [build gallium i965 @<:@default=disabled@:>@])],
1472 [enable_gallium_i965="$enableval"],
1473 [enable_gallium_i965=auto])
1474 if test "x$enable_gallium_i965" = xyes; then
1475 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i965"
1476 gallium_check_st "i965/drm" "dri-i965" "xorg-i965"
1477 elif test "x$enable_gallium_i965" = xauto; then
1478 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i965"
1479 fi
1480
1481 dnl
1482 dnl Gallium Radeon configuration
1483 dnl
1484 AC_ARG_ENABLE([gallium-radeon],
1485 [AS_HELP_STRING([--enable-gallium-radeon],
1486 [build gallium radeon @<:@default=disabled@:>@])],
1487 [enable_gallium_radeon="$enableval"],
1488 [enable_gallium_radeon=auto])
1489 if test "x$enable_gallium_radeon" = xyes; then
1490 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300"
1491 gallium_check_st "radeon/drm" "dri-r300" "xorg-radeon"
1492 elif test "x$enable_gallium_radeon" = xauto; then
1493 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300"
1494 fi
1495
1496 dnl
1497 dnl Gallium Radeon r600g configuration
1498 dnl
1499 AC_ARG_ENABLE([gallium-r600],
1500 [AS_HELP_STRING([--enable-gallium-r600],
1501 [build gallium radeon @<:@default=disabled@:>@])],
1502 [enable_gallium_r600="$enableval"],
1503 [enable_gallium_r600=auto])
1504 if test "x$enable_gallium_r600" = xyes; then
1505 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r600"
1506 gallium_check_st "r600/drm" "dri-r600"
1507 fi
1508
1509 dnl
1510 dnl Gallium Nouveau configuration
1511 dnl
1512 AC_ARG_ENABLE([gallium-nouveau],
1513 [AS_HELP_STRING([--enable-gallium-nouveau],
1514 [build gallium nouveau @<:@default=disabled@:>@])],
1515 [enable_gallium_nouveau="$enableval"],
1516 [enable_gallium_nouveau=no])
1517 if test "x$enable_gallium_nouveau" = xyes; then
1518 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS nouveau nvfx nv50"
1519 gallium_check_st "nouveau/drm" "dri-nouveau" "xorg-nouveau"
1520 fi
1521
1522 dnl
1523 dnl Gallium swrast configuration
1524 dnl
1525 AC_ARG_ENABLE([gallium-swrast],
1526 [AS_HELP_STRING([--enable-gallium-swrast],
1527 [build gallium swrast @<:@default=auto@:>@])],
1528 [enable_gallium_swrast="$enableval"],
1529 [enable_gallium_swrast=auto])
1530 if test "x$enable_gallium_swrast" = xyes || test "x$enable_gallium_swrast" = xauto; then
1531 if test "x$HAVE_ST_DRI" = xyes; then
1532 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS dri-swrast"
1533 fi
1534 fi
1535
1536 dnl prepend CORE_DIRS to SRC_DIRS
1537 SRC_DIRS="$CORE_DIRS $SRC_DIRS"
1538
1539 dnl Restore LDFLAGS and CPPFLAGS
1540 LDFLAGS="$_SAVE_LDFLAGS"
1541 CPPFLAGS="$_SAVE_CPPFLAGS"
1542
1543 dnl Substitute the config
1544 AC_CONFIG_FILES([configs/autoconf])
1545
1546 dnl Replace the configs/current symlink
1547 AC_CONFIG_COMMANDS([configs],[
1548 if test -f configs/current || test -L configs/current; then
1549 rm -f configs/current
1550 fi
1551 ln -s autoconf configs/current
1552 ])
1553
1554 AC_OUTPUT
1555
1556 dnl
1557 dnl Output some configuration info for the user
1558 dnl
1559 echo ""
1560 echo " prefix: $prefix"
1561 echo " exec_prefix: $exec_prefix"
1562 echo " libdir: $libdir"
1563 echo " includedir: $includedir"
1564
1565 dnl Driver info
1566 echo ""
1567 echo " Driver: $mesa_driver"
1568 if echo "$DRIVER_DIRS" | grep 'osmesa' >/dev/null 2>&1; then
1569 echo " OSMesa: lib$OSMESA_LIB"
1570 else
1571 echo " OSMesa: no"
1572 fi
1573 if test "$mesa_driver" = dri; then
1574 # cleanup the drivers var
1575 dri_dirs=`echo $DRI_DIRS | $SED 's/^ *//;s/ */ /;s/ *$//'`
1576 if test "x$DRI_DIRS" = x; then
1577 echo " DRI drivers: no"
1578 else
1579 echo " DRI drivers: $dri_dirs"
1580 fi
1581 echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
1582 fi
1583 echo " Use XCB: $enable_xcb"
1584
1585 echo ""
1586 if test "x$MESA_LLVM" = x1; then
1587 echo " llvm: yes"
1588 echo " llvm-config: $LLVM_CONFIG"
1589 echo " llvm-version: $LLVM_VERSION"
1590 else
1591 echo " llvm: no"
1592 fi
1593
1594 echo ""
1595 if echo "$SRC_DIRS" | grep 'gallium' >/dev/null 2>&1; then
1596 echo " Gallium: yes"
1597 echo " Gallium dirs: $GALLIUM_DIRS"
1598 echo " Target dirs: $GALLIUM_TARGET_DIRS"
1599 echo " Winsys dirs: $GALLIUM_WINSYS_DIRS"
1600 echo " Driver dirs: $GALLIUM_DRIVERS_DIRS"
1601 echo " Trackers dirs: $GALLIUM_STATE_TRACKERS_DIRS"
1602 if test "x$HAVE_ST_EGL" = xyes; then
1603 echo " EGL client APIs: $EGL_CLIENT_APIS"
1604 fi
1605 else
1606 echo " Gallium: no"
1607 fi
1608
1609 dnl Libraries
1610 echo ""
1611 echo " Shared libs: $enable_shared"
1612 echo " Static libs: $enable_static"
1613 if test "$enable_egl" = yes; then
1614 echo " EGL: $EGL_DRIVERS_DIRS"
1615 echo " EGL platforms: $EGL_PLATFORMS"
1616 else
1617 echo " EGL: no"
1618 fi
1619 echo " GLU: $enable_glu"
1620 echo " GLw: $enable_glw (Motif: $enable_motif)"
1621 echo " glut: $enable_glut"
1622
1623 dnl Compiler options
1624 # cleanup the CFLAGS/CXXFLAGS/DEFINES vars
1625 cflags=`echo $CFLAGS $OPT_FLAGS $PIC_FLAGS $ARCH_FLAGS | \
1626 $SED 's/^ *//;s/ */ /;s/ *$//'`
1627 cxxflags=`echo $CXXFLAGS $OPT_FLAGS $PIC_FLAGS $ARCH_FLAGS | \
1628 $SED 's/^ *//;s/ */ /;s/ *$//'`
1629 defines=`echo $DEFINES $ASM_FLAGS | $SED 's/^ *//;s/ */ /;s/ *$//'`
1630 echo ""
1631 echo " CFLAGS: $cflags"
1632 echo " CXXFLAGS: $cxxflags"
1633 echo " Macros: $defines"
1634
1635 echo ""
1636 echo " Run '${MAKE-make}' to build Mesa"
1637 echo ""