blob: ca16edff50753a444d4e7ca52dac730e336d55b1 [file] [log] [blame]
Dan Nicholsondca1b792007-10-23 09:25:58 -07001dnl Process this file with autoconf to create configure.
2
Dan Nicholson297e16c2008-05-05 15:42:53 -07003AC_PREREQ([2.59])
Dan Nicholsondca1b792007-10-23 09:25:58 -07004
Dan Nicholson00994ac2008-04-30 15:06:00 -07005dnl Versioning - scrape the version from configs/default
6m4_define([mesa_version],
Vinson Lee48f8a762010-05-11 12:33:30 -07007 [m4_esyscmd([${MAKE-make} -s -f bin/version.mk version | tr -d '\n' | tr -d '\r'])])
Dan Nicholson356f3112009-04-29 06:49:27 -07008m4_ifval(mesa_version,,
9 [m4_fatal([Failed to get the Mesa version from `make -f bin/version.mk version`])])
Dan Nicholsondca1b792007-10-23 09:25:58 -070010
Dan Nicholsone97ab722008-07-01 08:55:42 -070011dnl Tell the user about autoconf.html in the --help output
12m4_divert_once([HELP_END], [
13See docs/autoconf.html for more details on the options for Mesa.])
14
Dan Nicholson00994ac2008-04-30 15:06:00 -070015AC_INIT([Mesa],[mesa_version],
Dan Nicholsonf64d6fe2007-12-12 17:57:45 -080016 [https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa])
Dan Nicholson297e16c2008-05-05 15:42:53 -070017AC_CONFIG_AUX_DIR([bin])
Dan Nicholsondca1b792007-10-23 09:25:58 -070018AC_CANONICAL_HOST
19
Dan Nicholsoncc77e8f2008-05-05 14:38:22 -070020dnl Versions for external dependencies
Eric Anholt859828c2009-10-08 17:18:12 -070021LIBDRM_REQUIRED=2.4.15
Fabio Pedrettiae1c0a02009-12-22 10:43:35 +100022LIBDRM_RADEON_REQUIRED=2.4.17
Kristian Høgsbergaa0cd702010-02-15 10:44:05 -050023DRI2PROTO_REQUIRED=2.1
Jesse Barnesf2f83d92010-01-11 17:28:10 -050024GLPROTO_REQUIRED=1.4.11
Jakob Bornecrantz683a0992010-03-11 19:23:15 +000025LIBDRM_XORG_REQUIRED=2.4.17
26LIBKMS_XORG_REQUIRED=1.0.0
Dan Nicholsoncc77e8f2008-05-05 14:38:22 -070027
Dan Nicholsondca1b792007-10-23 09:25:58 -070028dnl Check for progs
29AC_PROG_CPP
30AC_PROG_CC
31AC_PROG_CXX
Dan Nicholson297e16c2008-05-05 15:42:53 -070032AC_CHECK_PROGS([MAKE], [gmake make])
33AC_PATH_PROG([MKDEP], [makedepend])
34AC_PATH_PROG([SED], [sed])
Dan Nicholson41b00702007-12-12 08:48:30 -080035
Luca Barbierif762f7b2010-09-24 10:10:09 +020036if test "x$MKDEP" = "x"; then
37 AC_MSG_ERROR([makedepend is required to build Mesa])
38fi
39
Dan Nicholsonbc302b22009-05-22 09:39:02 -070040dnl Our fallback install-sh is a symlink to minstall. Use the existing
41dnl configuration in that case.
42AC_PROG_INSTALL
43test "x$INSTALL" = "x$ac_install_sh" && INSTALL='$(MINSTALL)'
44
Dan Nicholsonbfb27b52008-06-30 09:40:30 -070045dnl We need a POSIX shell for parts of the build. Assume we have one
46dnl in most cases.
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -070047case "$host_os" in
48solaris*)
49 # Solaris /bin/sh is too old/non-POSIX compliant
50 AC_PATH_PROGS(POSIX_SHELL, [ksh93 ksh sh])
Dan Nicholsonbfb27b52008-06-30 09:40:30 -070051 SHELL="$POSIX_SHELL"
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -070052 ;;
53esac
54
nobled2a501872010-08-29 20:03:37 -040055dnl clang is mostly GCC-compatible, but its version is much lower,
56dnl so we have to check for it.
57AC_MSG_CHECKING([if compiling with clang])
58
59AC_COMPILE_IFELSE(
60[AC_LANG_PROGRAM([], [[
61#ifndef __clang__
62 not clang
63#endif
64]])],
65[CLANG=yes], [CLANG=no])
66
67AC_MSG_RESULT([$CLANG])
68
Ian Romanick9aa3aa72010-03-03 15:59:37 -080069dnl If we're using GCC, make sure that it is at least version 3.3.0. Older
70dnl versions are explictly not supported.
nobled2a501872010-08-29 20:03:37 -040071if test "x$GCC" = xyes -a "x$CLANG" = xno; then
Ian Romanick9aa3aa72010-03-03 15:59:37 -080072 AC_MSG_CHECKING([whether gcc version is sufficient])
73 major=0
74 minor=0
75
76 GCC_VERSION=`$CC -dumpversion`
77 if test $? -eq 0; then
78 major=`echo $GCC_VERSION | cut -d. -f1`
79 minor=`echo $GCC_VERSION | cut -d. -f1`
80 fi
81
82 if test $major -lt 3 -o $major -eq 3 -a $minor -lt 3 ; then
83 AC_MSG_RESULT([no])
84 AC_MSG_ERROR([If using GCC, version 3.3.0 or later is required.])
85 else
86 AC_MSG_RESULT([yes])
87 fi
88fi
89
90
Dan Nicholsondb7fc632008-03-07 11:48:09 -080091MKDEP_OPTIONS=-fdepend
Kristian Høgsbergbcecea62008-02-25 18:50:26 -050092dnl Ask gcc where it's keeping its secret headers
93if test "x$GCC" = xyes; then
Dan Nicholsona3d223f2009-01-30 10:52:09 -080094 for dir in include include-fixed; do
95 GCC_INCLUDES=`$CC -print-file-name=$dir`
96 if test "x$GCC_INCLUDES" != x && \
97 test "$GCC_INCLUDES" != "$dir" && \
98 test -d "$GCC_INCLUDES"; then
99 MKDEP_OPTIONS="$MKDEP_OPTIONS -I$GCC_INCLUDES"
100 fi
101 done
Kristian Høgsbergbcecea62008-02-25 18:50:26 -0500102fi
Dan Nicholson297e16c2008-05-05 15:42:53 -0700103AC_SUBST([MKDEP_OPTIONS])
Kristian Høgsbergbcecea62008-02-25 18:50:26 -0500104
Dan Nicholson41b00702007-12-12 08:48:30 -0800105dnl Make sure the pkg-config macros are defined
Dan Nicholson356f3112009-04-29 06:49:27 -0700106m4_ifndef([PKG_PROG_PKG_CONFIG],
107 [m4_fatal([Could not locate the pkg-config autoconf macros.
108 These are usually located in /usr/share/aclocal/pkg.m4. If your macros
109 are in a different location, try setting the environment variable
110 ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700111PKG_PROG_PKG_CONFIG()
112
113dnl LIB_DIR - library basename
114LIB_DIR=`echo $libdir | $SED 's%.*/%%'`
Dan Nicholson297e16c2008-05-05 15:42:53 -0700115AC_SUBST([LIB_DIR])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700116
117dnl Cache LDFLAGS so we can add EXTRA_LIB_PATH and restore it later
118_SAVE_LDFLAGS="$LDFLAGS"
Dan Nicholson297e16c2008-05-05 15:42:53 -0700119AC_ARG_VAR([EXTRA_LIB_PATH],[Extra -L paths for the linker])
120AC_SUBST([EXTRA_LIB_PATH])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700121
122dnl Cache CPPFLAGS so we can add *_INCLUDES and restore it later
123_SAVE_CPPFLAGS="$CPPFLAGS"
Dan Nicholson297e16c2008-05-05 15:42:53 -0700124AC_ARG_VAR([X11_INCLUDES],[Extra -I paths for X11 headers])
125AC_SUBST([X11_INCLUDES])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700126
127dnl Compiler macros
128DEFINES=""
Dan Nicholson297e16c2008-05-05 15:42:53 -0700129AC_SUBST([DEFINES])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700130case "$host_os" in
Samuel Thibaultd18dd6a2009-04-23 05:43:22 -0700131linux*|*-gnu*|gnu*)
Dan Nicholson29f603a2009-01-12 11:10:31 -0800132 DEFINES="$DEFINES -D_GNU_SOURCE -DPTHREADS"
Dan Nicholsondca1b792007-10-23 09:25:58 -0700133 ;;
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -0700134solaris*)
135 DEFINES="$DEFINES -DPTHREADS -DSVR4"
136 ;;
Brian Paul97988902010-02-18 12:46:12 -0700137cygwin*)
138 DEFINES="$DEFINES -DPTHREADS"
139 ;;
Dan Nicholsondca1b792007-10-23 09:25:58 -0700140esac
141
142dnl Add flags for gcc and g++
143if test "x$GCC" = xyes; then
Eric Anholta3c2bd42010-08-30 14:19:23 -0700144 CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -std=c99"
145 if test "x$CLANG" = "xno"; then
146 CFLAGS="$CFLAGS -ffast-math"
147 fi
Alan Coopersmithadda7f32010-01-16 18:34:23 -0800148
149 # Enable -fvisibility=hidden if using a gcc that supports it
150 save_CFLAGS="$CFLAGS"
Alan Coopersmithf8107a42010-01-21 16:42:58 -0800151 AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
Alan Coopersmithadda7f32010-01-16 18:34:23 -0800152 CFLAGS="$CFLAGS -fvisibility=hidden"
153 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
154 [CFLAGS="$save_CFLAGS" ; AC_MSG_RESULT([no])]);
Dan Nicholson0c275b62008-01-15 22:52:25 -0800155
156 # Work around aliasing bugs - developers should comment this out
157 CFLAGS="$CFLAGS -fno-strict-aliasing"
Dan Nicholsondca1b792007-10-23 09:25:58 -0700158fi
159if test "x$GXX" = xyes; then
160 CXXFLAGS="$CXXFLAGS -Wall"
Dan Nicholson0c275b62008-01-15 22:52:25 -0800161
Kristian Høgsberg7b34fcc2010-09-08 20:34:07 -0400162 # Enable -fvisibility=hidden if using a gcc that supports it
163 save_CXXFLAGS="$CXXFLAGS"
164 AC_MSG_CHECKING([whether $CXX supports -fvisibility=hidden])
165 CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
166 AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
167 [CXXFLAGS="$save_CXXFLAGS" ; AC_MSG_RESULT([no])]);
168
Dan Nicholson0c275b62008-01-15 22:52:25 -0800169 # Work around aliasing bugs - developers should comment this out
170 CXXFLAGS="$CXXFLAGS -fno-strict-aliasing"
Dan Nicholsondca1b792007-10-23 09:25:58 -0700171fi
172
173dnl These should be unnecessary, but let the user set them if they want
Dan Nicholson297e16c2008-05-05 15:42:53 -0700174AC_ARG_VAR([OPT_FLAGS], [Additional optimization flags for the compiler.
Dan Nicholsondca1b792007-10-23 09:25:58 -0700175 Default is to use CFLAGS.])
Dan Nicholson297e16c2008-05-05 15:42:53 -0700176AC_ARG_VAR([ARCH_FLAGS], [Additional architecture specific flags for the
Dan Nicholsondca1b792007-10-23 09:25:58 -0700177 compiler. Default is to use CFLAGS.])
Dan Nicholson297e16c2008-05-05 15:42:53 -0700178AC_SUBST([OPT_FLAGS])
179AC_SUBST([ARCH_FLAGS])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700180
181dnl
Dan Nicholsonab57cba2007-12-26 11:12:29 -0600182dnl Hacks to enable 32 or 64 bit build
183dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -0700184AC_ARG_ENABLE([32-bit],
Dan Nicholsonab57cba2007-12-26 11:12:29 -0600185 [AS_HELP_STRING([--enable-32-bit],
186 [build 32-bit libraries @<:@default=auto@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700187 [enable_32bit="$enableval"],
188 [enable_32bit=auto]
Dan Nicholsonab57cba2007-12-26 11:12:29 -0600189)
190if test "x$enable_32bit" = xyes; then
191 if test "x$GCC" = xyes; then
192 CFLAGS="$CFLAGS -m32"
Marc Dietrichc705e722009-08-31 08:56:33 -0700193 ARCH_FLAGS="$ARCH_FLAGS -m32"
Dan Nicholsonab57cba2007-12-26 11:12:29 -0600194 fi
195 if test "x$GXX" = xyes; then
196 CXXFLAGS="$CXXFLAGS -m32"
197 fi
198fi
Dan Nicholson297e16c2008-05-05 15:42:53 -0700199AC_ARG_ENABLE([64-bit],
Dan Nicholsonab57cba2007-12-26 11:12:29 -0600200 [AS_HELP_STRING([--enable-64-bit],
201 [build 64-bit libraries @<:@default=auto@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700202 [enable_64bit="$enableval"],
203 [enable_64bit=auto]
Dan Nicholsonab57cba2007-12-26 11:12:29 -0600204)
205if test "x$enable_64bit" = xyes; then
206 if test "x$GCC" = xyes; then
207 CFLAGS="$CFLAGS -m64"
208 fi
209 if test "x$GXX" = xyes; then
210 CXXFLAGS="$CXXFLAGS -m64"
211 fi
212fi
213
214dnl
Dan Nicholson88586332007-11-15 08:59:57 -0800215dnl shared/static libraries, mimic libtool options
216dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -0700217AC_ARG_ENABLE([static],
Dan Nicholson88586332007-11-15 08:59:57 -0800218 [AS_HELP_STRING([--enable-static],
Dan Nicholson79ad4582007-12-07 19:11:01 -0800219 [build static libraries @<:@default=disabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700220 [enable_static="$enableval"],
221 [enable_static=no]
Dan Nicholson88586332007-11-15 08:59:57 -0800222)
223case "x$enable_static" in
224xyes|xno ) ;;
225x ) enable_static=no ;;
226* )
227 AC_MSG_ERROR([Static library option '$enable_static' is not a valid])
228 ;;
229esac
Dan Nicholson297e16c2008-05-05 15:42:53 -0700230AC_ARG_ENABLE([shared],
Dan Nicholson88586332007-11-15 08:59:57 -0800231 [AS_HELP_STRING([--disable-shared],
Dan Nicholson79ad4582007-12-07 19:11:01 -0800232 [build shared libraries @<:@default=enabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700233 [enable_shared="$enableval"],
234 [enable_shared=yes]
Dan Nicholson88586332007-11-15 08:59:57 -0800235)
236case "x$enable_shared" in
237xyes|xno ) ;;
238x ) enable_shared=yes ;;
239* )
240 AC_MSG_ERROR([Shared library option '$enable_shared' is not a valid])
241 ;;
242esac
243
244dnl Can't have static and shared libraries, default to static if user
245dnl explicitly requested. If both disabled, set to static since shared
246dnl was explicitly requirested.
247case "x$enable_static$enable_shared" in
248xyesyes )
249 AC_MSG_WARN([Can't build static and shared libraries, disabling shared])
250 enable_shared=no
251 ;;
252xnono )
253 AC_MSG_WARN([Can't disable both static and shared libraries, enabling static])
254 enable_static=yes
255 ;;
256esac
257
258dnl
259dnl mklib options
260dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -0700261AC_ARG_VAR([MKLIB_OPTIONS],[Options for the Mesa library script, mklib])
Dan Nicholson88586332007-11-15 08:59:57 -0800262if test "$enable_static" = yes; then
263 MKLIB_OPTIONS="$MKLIB_OPTIONS -static"
264fi
Dan Nicholson297e16c2008-05-05 15:42:53 -0700265AC_SUBST([MKLIB_OPTIONS])
Dan Nicholson88586332007-11-15 08:59:57 -0800266
Dan Nicholson23656c42007-12-12 09:02:31 -0800267dnl
268dnl other compiler options
269dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -0700270AC_ARG_ENABLE([debug],
Dan Nicholson23656c42007-12-12 09:02:31 -0800271 [AS_HELP_STRING([--enable-debug],
272 [use debug compiler flags and macros @<:@default=disabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700273 [enable_debug="$enableval"],
274 [enable_debug=no]
Dan Nicholson23656c42007-12-12 09:02:31 -0800275)
276if test "x$enable_debug" = xyes; then
277 DEFINES="$DEFINES -DDEBUG"
278 if test "x$GCC" = xyes; then
279 CFLAGS="$CFLAGS -g"
280 fi
281 if test "x$GXX" = xyes; then
282 CXXFLAGS="$CXXFLAGS -g"
283 fi
284fi
Dan Nicholson88586332007-11-15 08:59:57 -0800285
286dnl
Dan Nicholsondca1b792007-10-23 09:25:58 -0700287dnl library names
288dnl
Jon TURNEYc55a8a72010-07-24 12:05:34 +0100289LIB_PREFIX_GLOB='lib'
290LIB_VERSION_SEPARATOR='.'
Dan Nicholson88586332007-11-15 08:59:57 -0800291if test "$enable_static" = yes; then
Dan Nicholson8217f242009-02-11 15:16:00 -0800292 LIB_EXTENSION='a'
Dan Nicholson88586332007-11-15 08:59:57 -0800293else
Siddhartha Chaudhuri1a46c8a2009-02-09 07:58:38 -0700294 case "$host_os" in
295 darwin* )
296 LIB_EXTENSION='dylib' ;;
Jon TURNEY7eed6ab2009-06-08 16:02:18 +0100297 cygwin* )
Jon TURNEYc55a8a72010-07-24 12:05:34 +0100298 dnl prefix can be 'cyg' or 'lib'
299 LIB_PREFIX_GLOB='???'
300 LIB_VERSION_SEPARATOR='-'
301 LIB_EXTENSION='dll' ;;
Tom Fogal9282edf2009-10-13 10:55:33 -0700302 aix* )
303 LIB_EXTENSION='a' ;;
Siddhartha Chaudhuri1a46c8a2009-02-09 07:58:38 -0700304 * )
305 LIB_EXTENSION='so' ;;
306 esac
Dan Nicholson88586332007-11-15 08:59:57 -0800307fi
Dan Nicholson8217f242009-02-11 15:16:00 -0800308
309GL_LIB_NAME='lib$(GL_LIB).'${LIB_EXTENSION}
310GLU_LIB_NAME='lib$(GLU_LIB).'${LIB_EXTENSION}
311GLUT_LIB_NAME='lib$(GLUT_LIB).'${LIB_EXTENSION}
312GLW_LIB_NAME='lib$(GLW_LIB).'${LIB_EXTENSION}
313OSMESA_LIB_NAME='lib$(OSMESA_LIB).'${LIB_EXTENSION}
Chia-I Wud4c1ee02009-12-21 11:13:18 +0800314EGL_LIB_NAME='lib$(EGL_LIB).'${LIB_EXTENSION}
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500315GLESv1_CM_LIB_NAME='lib$(GLESv1_CM_LIB).'${LIB_EXTENSION}
316GLESv2_LIB_NAME='lib$(GLESv2_LIB).'${LIB_EXTENSION}
Chia-I Wu874ccd52010-05-04 22:43:05 +0800317VG_LIB_NAME='lib$(VG_LIB).'${LIB_EXTENSION}
Dan Nicholson8217f242009-02-11 15:16:00 -0800318
Jon TURNEYc55a8a72010-07-24 12:05:34 +0100319GL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
320GLU_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLU_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
321GLUT_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLUT_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
322GLW_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLW_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
323OSMESA_LIB_GLOB=${LIB_PREFIX_GLOB}'$(OSMESA_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
324EGL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(EGL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
325EGL_LIB_GLOB=${LIB_PREFIX_GLOB}'$(EGL_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
326GLESv1_CM_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLESv1_CM_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
327GLESv2_LIB_GLOB=${LIB_PREFIX_GLOB}'$(GLESv2_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
328VG_LIB_GLOB=${LIB_PREFIX_GLOB}'$(VG_LIB)'${LIB_VERSION_SEPARATOR}'*'${LIB_EXTENSION}'*'
Dan Nicholson8217f242009-02-11 15:16:00 -0800329
Dan Nicholson297e16c2008-05-05 15:42:53 -0700330AC_SUBST([GL_LIB_NAME])
331AC_SUBST([GLU_LIB_NAME])
332AC_SUBST([GLUT_LIB_NAME])
333AC_SUBST([GLW_LIB_NAME])
334AC_SUBST([OSMESA_LIB_NAME])
Chia-I Wud4c1ee02009-12-21 11:13:18 +0800335AC_SUBST([EGL_LIB_NAME])
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500336AC_SUBST([GLESv1_CM_LIB_NAME])
337AC_SUBST([GLESv2_LIB_NAME])
Chia-I Wu874ccd52010-05-04 22:43:05 +0800338AC_SUBST([VG_LIB_NAME])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700339
Siddhartha Chaudhuri1a46c8a2009-02-09 07:58:38 -0700340AC_SUBST([GL_LIB_GLOB])
341AC_SUBST([GLU_LIB_GLOB])
342AC_SUBST([GLUT_LIB_GLOB])
343AC_SUBST([GLW_LIB_GLOB])
344AC_SUBST([OSMESA_LIB_GLOB])
Chia-I Wud4c1ee02009-12-21 11:13:18 +0800345AC_SUBST([EGL_LIB_GLOB])
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500346AC_SUBST([GLESv1_CM_LIB_GLOB])
347AC_SUBST([GLESv2_LIB_GLOB])
Chia-I Wu874ccd52010-05-04 22:43:05 +0800348AC_SUBST([VG_LIB_GLOB])
Siddhartha Chaudhuri1a46c8a2009-02-09 07:58:38 -0700349
Dan Nicholsondca1b792007-10-23 09:25:58 -0700350dnl
Dan Nicholson871125a2008-06-04 13:00:35 -0700351dnl Arch/platform-specific settings
352dnl
353AC_ARG_ENABLE([asm],
354 [AS_HELP_STRING([--disable-asm],
355 [disable assembly usage @<:@default=enabled on supported plaforms@:>@])],
356 [enable_asm="$enableval"],
357 [enable_asm=yes]
358)
359asm_arch=""
360ASM_FLAGS=""
Dan Nicholsonc5bae142009-02-11 11:04:29 -0800361MESA_ASM_SOURCES=""
362GLAPI_ASM_SOURCES=""
Dan Nicholson871125a2008-06-04 13:00:35 -0700363AC_MSG_CHECKING([whether to enable assembly])
364test "x$enable_asm" = xno && AC_MSG_RESULT([no])
365# disable if cross compiling on x86/x86_64 since we must run gen_matypes
366if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then
367 case "$host_cpu" in
368 i?86 | x86_64)
369 enable_asm=no
370 AC_MSG_RESULT([no, cross compiling])
371 ;;
372 esac
373fi
374# check for supported arches
375if test "x$enable_asm" = xyes; then
376 case "$host_cpu" in
377 i?86)
378 case "$host_os" in
Julien Cristau98fcdf32008-10-28 18:56:05 +0100379 linux* | *freebsd* | dragonfly*)
Dan Nicholson871125a2008-06-04 13:00:35 -0700380 test "x$enable_64bit" = xyes && asm_arch=x86_64 || asm_arch=x86
381 ;;
382 esac
383 ;;
384 x86_64)
385 case "$host_os" in
Julien Cristau98fcdf32008-10-28 18:56:05 +0100386 linux* | *freebsd* | dragonfly*)
Dan Nicholson871125a2008-06-04 13:00:35 -0700387 test "x$enable_32bit" = xyes && asm_arch=x86 || asm_arch=x86_64
388 ;;
389 esac
390 ;;
391 powerpc)
392 case "$host_os" in
393 linux*)
394 asm_arch=ppc
395 ;;
396 esac
397 ;;
David S. Miller857ac1e2009-02-26 05:35:15 -0800398 sparc*)
399 case "$host_os" in
400 linux*)
401 asm_arch=sparc
402 ;;
403 esac
404 ;;
Dan Nicholson871125a2008-06-04 13:00:35 -0700405 esac
406
407 case "$asm_arch" in
408 x86)
Dan Nicholson61e925f2009-02-11 10:42:34 -0800409 ASM_FLAGS="-DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM"
Dan Nicholsonc5bae142009-02-11 11:04:29 -0800410 MESA_ASM_SOURCES='$(X86_SOURCES)'
411 GLAPI_ASM_SOURCES='$(X86_API)'
Dan Nicholson871125a2008-06-04 13:00:35 -0700412 AC_MSG_RESULT([yes, x86])
413 ;;
414 x86_64)
415 ASM_FLAGS="-DUSE_X86_64_ASM"
Dan Nicholsonc5bae142009-02-11 11:04:29 -0800416 MESA_ASM_SOURCES='$(X86-64_SOURCES)'
417 GLAPI_ASM_SOURCES='$(X86-64_API)'
Dan Nicholson871125a2008-06-04 13:00:35 -0700418 AC_MSG_RESULT([yes, x86_64])
419 ;;
420 ppc)
421 ASM_FLAGS="-DUSE_PPC_ASM -DUSE_VMX_ASM"
Dan Nicholsonc5bae142009-02-11 11:04:29 -0800422 MESA_ASM_SOURCES='$(PPC_SOURCES)'
Dan Nicholson871125a2008-06-04 13:00:35 -0700423 AC_MSG_RESULT([yes, ppc])
424 ;;
David S. Miller857ac1e2009-02-26 05:35:15 -0800425 sparc)
426 ASM_FLAGS="-DUSE_SPARC_ASM"
427 MESA_ASM_SOURCES='$(SPARC_SOURCES)'
428 GLAPI_ASM_SOURCES='$(SPARC_API)'
429 AC_MSG_RESULT([yes, sparc])
430 ;;
Dan Nicholson871125a2008-06-04 13:00:35 -0700431 *)
432 AC_MSG_RESULT([no, platform not supported])
433 ;;
434 esac
435fi
436AC_SUBST([ASM_FLAGS])
Dan Nicholsonc5bae142009-02-11 11:04:29 -0800437AC_SUBST([MESA_ASM_SOURCES])
438AC_SUBST([GLAPI_ASM_SOURCES])
Dan Nicholson871125a2008-06-04 13:00:35 -0700439
440dnl PIC code macro
441MESA_PIC_FLAGS
442
443dnl Check to see if dlopen is in default libraries (like Solaris, which
444dnl has it in libc), or if libdl is needed to get it.
445AC_CHECK_FUNC([dlopen], [],
446 [AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
Chia-I Wu08f4bc02010-07-16 20:09:29 +0800447AC_SUBST([DLOPEN_LIBS])
Dan Nicholson871125a2008-06-04 13:00:35 -0700448
Dan Nicholson985e1cd2008-06-04 13:17:06 -0700449dnl See if posix_memalign is available
450AC_CHECK_FUNC([posix_memalign], [DEFINES="$DEFINES -DHAVE_POSIX_MEMALIGN"])
451
Dan Nicholson871125a2008-06-04 13:00:35 -0700452dnl SELinux awareness.
453AC_ARG_ENABLE([selinux],
454 [AS_HELP_STRING([--enable-selinux],
455 [Build SELinux-aware Mesa @<:@default=disabled@:>@])],
456 [MESA_SELINUX="$enableval"],
457 [MESA_SELINUX=no])
458if test "x$enable_selinux" = "xyes"; then
459 AC_CHECK_HEADER([selinux/selinux.h],[],
460 [AC_MSG_ERROR([SELinux headers not found])])
461 AC_CHECK_LIB([selinux],[is_selinux_enabled],[],
462 [AC_MSG_ERROR([SELinux library not found])])
463 SELINUX_LIBS="-lselinux"
464 DEFINES="$DEFINES -DMESA_SELINUX"
465fi
466
Dan Nicholson871125a2008-06-04 13:00:35 -0700467dnl
Dan Nicholsona1307182007-12-12 17:49:49 -0800468dnl Driver configuration. Options are xlib, dri and osmesa right now.
Kristian Høgsberg43875802010-02-25 15:49:18 -0500469dnl More later: fbdev, ...
Dan Nicholson44d99142007-12-05 18:47:01 -0800470dnl
Eric Anholt711222b2008-04-18 15:03:01 -0700471default_driver="xlib"
472
473case "$host_os" in
474linux*)
475 case "$host_cpu" in
David S. Miller32dc28a2009-02-24 20:06:05 -0700476 i*86|x86_64|powerpc*|sparc*) default_driver="dri";;
Eric Anholt711222b2008-04-18 15:03:01 -0700477 esac
478 ;;
Julien Cristau98fcdf32008-10-28 18:56:05 +0100479*freebsd* | dragonfly*)
Eric Anholt711222b2008-04-18 15:03:01 -0700480 case "$host_cpu" in
Robert Noland48f05432009-04-10 11:41:27 -0500481 i*86|x86_64|powerpc*|sparc*) default_driver="dri";;
Eric Anholt711222b2008-04-18 15:03:01 -0700482 esac
483 ;;
484esac
485
Dan Nicholson297e16c2008-05-05 15:42:53 -0700486AC_ARG_WITH([driver],
Dan Nicholson44d99142007-12-05 18:47:01 -0800487 [AS_HELP_STRING([--with-driver=DRIVER],
Eric Anholt711222b2008-04-18 15:03:01 -0700488 [driver for Mesa: xlib,dri,osmesa @<:@default=dri when available, or xlib@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700489 [mesa_driver="$withval"],
490 [mesa_driver="$default_driver"])
Dan Nicholson44d99142007-12-05 18:47:01 -0800491dnl Check for valid option
492case "x$mesa_driver" in
Dan Nicholsona1307182007-12-12 17:49:49 -0800493xxlib|xdri|xosmesa)
Dan Nicholson44d99142007-12-05 18:47:01 -0800494 ;;
495*)
496 AC_MSG_ERROR([Driver '$mesa_driver' is not a valid option])
497 ;;
498esac
499
Eric Anholt0a1b54d2010-06-21 11:29:15 -0700500PKG_CHECK_MODULES([TALLOC], [talloc])
Eric Anholt639cdd32010-08-22 17:34:18 -0700501AC_SUBST([TALLOC_LIBS])
502AC_SUBST([TALLOC_CFLAGS])
Eric Anholt0a1b54d2010-06-21 11:29:15 -0700503
Dan Nicholson44d99142007-12-05 18:47:01 -0800504dnl
505dnl Driver specific build directories
Dan Nicholsondca1b792007-10-23 09:25:58 -0700506dnl
Chia-I Wu99a37ed2010-01-05 17:39:05 +0800507
508dnl this variable will be prepended to SRC_DIRS and is not exported
Chia-I Wu296adbd2010-04-26 12:56:44 +0800509CORE_DIRS="mapi/glapi glsl mesa"
Chia-I Wu99a37ed2010-01-05 17:39:05 +0800510
Jakob Bornecrantz05281062010-06-05 13:33:58 +0200511SRC_DIRS=""
Dan Nicholsondca1b792007-10-23 09:25:58 -0700512GLU_DIRS="sgi"
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +0100513GALLIUM_DIRS="auxiliary drivers state_trackers"
Keith Whitwell51bff092010-03-11 14:43:00 +0000514GALLIUM_TARGET_DIRS=""
Jakob Bornecrantzc9f98672010-03-16 13:54:18 +0000515GALLIUM_WINSYS_DIRS="sw"
Corbin Simpson25609782010-06-22 22:00:43 -0700516GALLIUM_DRIVERS_DIRS="softpipe failover galahad trace rbug identity"
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +0100517GALLIUM_STATE_TRACKERS_DIRS=""
518
Dan Nicholson44d99142007-12-05 18:47:01 -0800519case "$mesa_driver" in
Dan Nicholsona1307182007-12-12 17:49:49 -0800520xlib)
Dan Nicholson44d99142007-12-05 18:47:01 -0800521 DRIVER_DIRS="x11"
Jakob Bornecrantzc9f98672010-03-16 13:54:18 +0000522 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib"
Keith Whitwell51bff092010-03-11 14:43:00 +0000523 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS libgl-xlib"
Dan Nicholson44d99142007-12-05 18:47:01 -0800524 ;;
525dri)
Kristian Høgsberg6e8897f2010-02-09 09:58:36 -0500526 SRC_DIRS="$SRC_DIRS glx"
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +0100527 DRIVER_DIRS="dri"
Jakob Bornecrantz23a915e2010-06-23 03:31:18 +0200528 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/xlib sw/dri"
Dan Nicholson44d99142007-12-05 18:47:01 -0800529 ;;
Dan Nicholson979ff512007-12-05 18:47:01 -0800530osmesa)
531 DRIVER_DIRS="osmesa"
532 ;;
Dan Nicholson44d99142007-12-05 18:47:01 -0800533esac
Dan Nicholson297e16c2008-05-05 15:42:53 -0700534AC_SUBST([SRC_DIRS])
535AC_SUBST([GLU_DIRS])
536AC_SUBST([DRIVER_DIRS])
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +0100537AC_SUBST([GALLIUM_DIRS])
Keith Whitwell51bff092010-03-11 14:43:00 +0000538AC_SUBST([GALLIUM_TARGET_DIRS])
Jerome Glisse14f79d42008-12-18 13:36:07 +0100539AC_SUBST([GALLIUM_WINSYS_DIRS])
Jakob Bornecrantzd67bd602009-02-20 11:03:18 +0000540AC_SUBST([GALLIUM_DRIVERS_DIRS])
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +0100541AC_SUBST([GALLIUM_STATE_TRACKERS_DIRS])
Dave Airlie81fe1982010-04-22 14:59:29 +1000542AC_SUBST([MESA_LLVM])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700543
544dnl
Dan Nicholsone6a06092008-05-05 15:16:22 -0700545dnl Find out if X is available. The variable have_x is set if libX11 is
Dan Nicholson99803a42008-07-01 09:03:15 -0700546dnl found to mimic AC_PATH_XTRA.
Dan Nicholsondca1b792007-10-23 09:25:58 -0700547dnl
548if test -n "$PKG_CONFIG"; then
549 AC_MSG_CHECKING([pkg-config files for X11 are available])
Dan Nicholsone6a06092008-05-05 15:16:22 -0700550 PKG_CHECK_EXISTS([x11],[
Dan Nicholsondca1b792007-10-23 09:25:58 -0700551 x11_pkgconfig=yes
552 have_x=yes
Dan Nicholsone6a06092008-05-05 15:16:22 -0700553 ],[
Dan Nicholsondca1b792007-10-23 09:25:58 -0700554 x11_pkgconfig=no
Dan Nicholsone6a06092008-05-05 15:16:22 -0700555 ])
556 AC_MSG_RESULT([$x11_pkgconfig])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700557else
558 x11_pkgconfig=no
559fi
560dnl Use the autoconf macro if no pkg-config files
Jeff Smith8d86d392010-03-12 18:55:09 -0600561if test "$x11_pkgconfig" = yes; then
Dan Nicholsone725ef12010-03-15 20:53:56 -0700562 PKG_CHECK_MODULES([X11], [x11])
Jeff Smith8d86d392010-03-12 18:55:09 -0600563else
Dan Nicholsondca1b792007-10-23 09:25:58 -0700564 AC_PATH_XTRA
Dan Nicholsone725ef12010-03-15 20:53:56 -0700565 test -z "$X11_CFLAGS" && X11_CFLAGS="$X_CFLAGS"
566 test -z "$X11_LIBS" && X11_LIBS="$X_LIBS -lX11"
567 AC_SUBST([X11_CFLAGS])
568 AC_SUBST([X11_LIBS])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700569fi
570
Dan Nicholson99803a42008-07-01 09:03:15 -0700571dnl Try to tell the user that the --x-* options are only used when
572dnl pkg-config is not available. This must be right after AC_PATH_XTRA.
573m4_divert_once([HELP_BEGIN],
574[These options are only used when the X libraries cannot be found by the
575pkg-config utility.])
576
Dan Nicholson44d99142007-12-05 18:47:01 -0800577dnl We need X for xlib and dri, so bomb now if it's not found
578case "$mesa_driver" in
Dan Nicholsona1307182007-12-12 17:49:49 -0800579xlib|dri)
Dan Nicholson44d99142007-12-05 18:47:01 -0800580 if test "$no_x" = yes; then
581 AC_MSG_ERROR([X11 development libraries needed for $mesa_driver driver])
582 fi
583 ;;
584esac
Dan Nicholsondca1b792007-10-23 09:25:58 -0700585
Dan Nicholson2d709fe2008-05-06 10:51:49 -0700586dnl XCB - this is only used for GLX right now
587AC_ARG_ENABLE([xcb],
588 [AS_HELP_STRING([--enable-xcb],
589 [use XCB for GLX @<:@default=disabled@:>@])],
590 [enable_xcb="$enableval"],
591 [enable_xcb=no])
592if test "x$enable_xcb" = xyes; then
593 DEFINES="$DEFINES -DUSE_XCB"
594else
595 enable_xcb=no
596fi
597
Dan Nicholson44d99142007-12-05 18:47:01 -0800598dnl
599dnl libGL configuration per driver
600dnl
601case "$mesa_driver" in
Dan Nicholsona1307182007-12-12 17:49:49 -0800602xlib)
Dan Nicholson44d99142007-12-05 18:47:01 -0800603 if test "$x11_pkgconfig" = yes; then
Dan Nicholson297e16c2008-05-05 15:42:53 -0700604 PKG_CHECK_MODULES([XLIBGL], [x11 xext])
Dan Nicholson71e208b2008-11-24 11:01:57 -0800605 GL_PC_REQ_PRIV="x11 xext"
Dan Nicholsona1307182007-12-12 17:49:49 -0800606 X11_INCLUDES="$X11_INCLUDES $XLIBGL_CFLAGS"
607 GL_LIB_DEPS="$XLIBGL_LIBS"
Dan Nicholson44d99142007-12-05 18:47:01 -0800608 else
609 # should check these...
610 X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
611 GL_LIB_DEPS="$X_LIBS -lX11 -lXext"
Dan Nicholson71e208b2008-11-24 11:01:57 -0800612 GL_PC_LIB_PRIV="$GL_LIB_DEPS"
613 GL_PC_CFLAGS="$X11_INCLUDES"
Dan Nicholson44d99142007-12-05 18:47:01 -0800614 fi
Jon TURNEY63563032010-08-30 12:41:15 +0100615 GL_LIB_DEPS="$GL_LIB_DEPS $SELINUX_LIBS -lm -lpthread $TALLOC_LIBS"
616 GL_PC_LIB_PRIV="$GL_PC_LIB_PRIV $SELINUX_LIBS -lm -lpthread $TALLOC_LIBS"
Dan Nicholson88586332007-11-15 08:59:57 -0800617
618 # if static, move the external libraries to the programs
619 # and empty the libraries for libGL
620 if test "$enable_static" = yes; then
621 APP_LIB_DEPS="$APP_LIB_DEPS $GL_LIB_DEPS"
622 GL_LIB_DEPS=""
623 fi
Dan Nicholson44d99142007-12-05 18:47:01 -0800624 ;;
625dri)
Dan Nicholson88586332007-11-15 08:59:57 -0800626 # DRI must be shared, I think
627 if test "$enable_static" = yes; then
628 AC_MSG_ERROR([Can't use static libraries for DRI drivers])
629 fi
630
Dan Nicholson44d99142007-12-05 18:47:01 -0800631 # Check for libdrm
Dan Nicholsoncc77e8f2008-05-05 14:38:22 -0700632 PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED])
633 PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED])
Jesse Barnesf2f83d92010-01-11 17:28:10 -0500634 PKG_CHECK_MODULES([GLPROTO], [glproto >= $GLPROTO_REQUIRED])
Jesse Barnesed59b132010-01-13 15:48:14 -0500635 GL_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED dri2proto >= $DRI2PROTO_REQUIRED glproto >= $GLPROTO_REQUIRED"
636 DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED"
Dan Nicholson44d99142007-12-05 18:47:01 -0800637
638 # find the DRI deps for libGL
639 if test "$x11_pkgconfig" = yes; then
Jon TURNEY2b9dac32010-04-21 12:58:54 +0100640 dri_modules="x11 xext xdamage xfixes"
641
642 # add xf86vidmode if available
643 PKG_CHECK_MODULES([XF86VIDMODE], [xxf86vm], HAVE_XF86VIDMODE=yes, HAVE_XF86VIDMODE=no)
644 if test "$HAVE_XF86VIDMODE" = yes ; then
645 dri_modules="$dri_modules xxf86vm"
646 fi
647
Dan Nicholson2d709fe2008-05-06 10:51:49 -0700648 # add xcb modules if necessary
Dan Nicholson2d709fe2008-05-06 10:51:49 -0700649 if test "$enable_xcb" = yes; then
650 dri_modules="$dri_modules x11-xcb xcb-glx"
651 fi
652
653 PKG_CHECK_MODULES([DRIGL], [$dri_modules])
Dan Nicholson71e208b2008-11-24 11:01:57 -0800654 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV $dri_modules"
Dan Nicholson44d99142007-12-05 18:47:01 -0800655 X11_INCLUDES="$X11_INCLUDES $DRIGL_CFLAGS"
656 GL_LIB_DEPS="$DRIGL_LIBS"
657 else
658 # should check these...
659 X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
660 GL_LIB_DEPS="$X_LIBS -lX11 -lXext -lXxf86vm -lXdamage -lXfixes"
Dan Nicholson71e208b2008-11-24 11:01:57 -0800661 GL_PC_LIB_PRIV="$GL_LIB_DEPS"
662 GL_PC_CFLAGS="$X11_INCLUDES"
Dan Nicholson2d709fe2008-05-06 10:51:49 -0700663
664 # XCB can only be used from pkg-config
665 if test "$enable_xcb" = yes; then
666 PKG_CHECK_MODULES([XCB],[x11-xcb xcb-glx])
Dan Nicholson71e208b2008-11-24 11:01:57 -0800667 GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV x11-xcb xcb-glx"
Dan Nicholson2d709fe2008-05-06 10:51:49 -0700668 X11_INCLUDES="$X11_INCLUDES $XCB_CFLAGS"
669 GL_LIB_DEPS="$GL_LIB_DEPS $XCB_LIBS"
670 fi
Dan Nicholson44d99142007-12-05 18:47:01 -0800671 fi
672
673 # need DRM libs, -lpthread, etc.
Alan Coopersmith3cf6e622009-03-23 16:51:54 -0700674 GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
675 GL_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500676 GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
Kristian Høgsberg74399d42010-05-02 09:51:13 -0400677 GLESv1_CM_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500678 GLESv2_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
Kristian Høgsberg74399d42010-05-02 09:51:13 -0400679 GLESv2_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
Dan Nicholson44d99142007-12-05 18:47:01 -0800680 ;;
Dan Nicholson979ff512007-12-05 18:47:01 -0800681osmesa)
682 # No libGL for osmesa
Alan Coopersmith3cf6e622009-03-23 16:51:54 -0700683 GL_LIB_DEPS=""
Dan Nicholson979ff512007-12-05 18:47:01 -0800684 ;;
Dan Nicholson44d99142007-12-05 18:47:01 -0800685esac
Dan Nicholson297e16c2008-05-05 15:42:53 -0700686AC_SUBST([GL_LIB_DEPS])
Dan Nicholson71e208b2008-11-24 11:01:57 -0800687AC_SUBST([GL_PC_REQ_PRIV])
688AC_SUBST([GL_PC_LIB_PRIV])
689AC_SUBST([GL_PC_CFLAGS])
690AC_SUBST([DRI_PC_REQ_PRIV])
Li Pengc33c1912010-07-30 12:26:15 +0800691AC_SUBST([GLESv1_CM_LIB_DEPS])
Kristian Høgsberg9e4f2da2010-05-04 14:13:11 -0400692AC_SUBST([GLESv1_CM_PC_LIB_PRIV])
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500693AC_SUBST([GLESv2_LIB_DEPS])
Kristian Høgsberg9e4f2da2010-05-04 14:13:11 -0400694AC_SUBST([GLESv2_PC_LIB_PRIV])
695
Dan Nicholsondca1b792007-10-23 09:25:58 -0700696
Jon TURNEY2b9dac32010-04-21 12:58:54 +0100697AC_SUBST([HAVE_XF86VIDMODE])
698
Marek Olšáka1aec2e2010-09-26 17:52:58 +0200699PKG_CHECK_MODULES([LIBDRM_RADEON],
700 [libdrm_radeon libdrm >= $LIBDRM_RADEON_REQUIRED],
701 HAVE_LIBDRM_RADEON=yes,
702 HAVE_LIBDRM_RADEON=no)
703
Dan Nicholsondca1b792007-10-23 09:25:58 -0700704dnl
705dnl More X11 setup
706dnl
Dan Nicholsona1307182007-12-12 17:49:49 -0800707if test "$mesa_driver" = xlib; then
Dan Nicholsondca1b792007-10-23 09:25:58 -0700708 DEFINES="$DEFINES -DUSE_XSHM"
709fi
710
711dnl
Dan Nicholson44d99142007-12-05 18:47:01 -0800712dnl More DRI setup
713dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -0700714AC_ARG_ENABLE([glx-tls],
Dan Nicholson44d99142007-12-05 18:47:01 -0800715 [AS_HELP_STRING([--enable-glx-tls],
Dan Nicholson79ad4582007-12-07 19:11:01 -0800716 [enable TLS support in GLX @<:@default=disabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700717 [GLX_USE_TLS="$enableval"],
718 [GLX_USE_TLS=no])
Dan Nicholson44d99142007-12-05 18:47:01 -0800719dnl Directory for DRI drivers
Dan Nicholson297e16c2008-05-05 15:42:53 -0700720AC_ARG_WITH([dri-driverdir],
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800721 [AS_HELP_STRING([--with-dri-driverdir=DIR],
Dan Nicholson5dbbde52008-05-06 06:21:41 -0700722 [directory for the DRI drivers @<:@${libdir}/dri@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700723 [DRI_DRIVER_INSTALL_DIR="$withval"],
Dan Nicholson5dbbde52008-05-06 06:21:41 -0700724 [DRI_DRIVER_INSTALL_DIR='${libdir}/dri'])
Dan Nicholson297e16c2008-05-05 15:42:53 -0700725AC_SUBST([DRI_DRIVER_INSTALL_DIR])
Chow Loong Jin35506de2009-10-28 14:34:14 +0800726dnl Extra search path for DRI drivers
727AC_ARG_WITH([dri-searchpath],
728 [AS_HELP_STRING([--with-dri-searchpath=DIRS...],
729 [semicolon delimited DRI driver search directories @<:@${libdir}/dri@:>@])],
730 [DRI_DRIVER_SEARCH_DIR="$withval"],
731 [DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}'])
732AC_SUBST([DRI_DRIVER_SEARCH_DIR])
Dan Nicholson44d99142007-12-05 18:47:01 -0800733dnl Direct rendering or just indirect rendering
Dan Nicholson297e16c2008-05-05 15:42:53 -0700734AC_ARG_ENABLE([driglx-direct],
Dan Nicholson79ad4582007-12-07 19:11:01 -0800735 [AS_HELP_STRING([--disable-driglx-direct],
Chia-I Wucf588ab2010-07-06 14:34:43 +0800736 [enable direct rendering in GLX and EGL for DRI @<:@default=enabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700737 [driglx_direct="$enableval"],
738 [driglx_direct="yes"])
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800739dnl Which drivers to build - default is chosen by platform
Dan Nicholson297e16c2008-05-05 15:42:53 -0700740AC_ARG_WITH([dri-drivers],
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800741 [AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@],
Dan Nicholson5cae1b72008-06-30 10:28:02 -0700742 [comma delimited DRI drivers list, e.g.
Michel Dänzercade0712009-07-10 14:49:46 +0200743 "swrast,i965,radeon" @<:@default=auto@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700744 [with_dri_drivers="$withval"],
745 [with_dri_drivers=yes])
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800746if test "x$with_dri_drivers" = x; then
747 with_dri_drivers=no
748fi
749
Kristian Høgsberg0f680322010-04-27 13:42:33 -0400750dnl Determine which APIs to support
751AC_ARG_ENABLE([opengl],
752 [AS_HELP_STRING([--disable-opengl],
753 [disable support for standard OpenGL API @<:@default=no@:>@])],
754 [enable_opengl="$enableval"],
755 [enable_opengl=yes])
756AC_ARG_ENABLE([gles1],
757 [AS_HELP_STRING([--enable-gles1],
758 [enable support for OpenGL ES 1.x API @<:@default=no@:>@])],
759 [enable_gles1="$enableval"],
760 [enable_gles1=no])
761AC_ARG_ENABLE([gles2],
762 [AS_HELP_STRING([--enable-gles2],
763 [enable support for OpenGL ES 2.x API @<:@default=no@:>@])],
764 [enable_gles2="$enableval"],
765 [enable_gles2=no])
Chia-I Wu63ab2502010-05-05 15:38:02 +0800766AC_ARG_ENABLE([gles-overlay],
767 [AS_HELP_STRING([--enable-gles-overlay],
768 [build separate OpenGL ES only libraries @<:@default=no@:>@])],
769 [enable_gles_overlay="$enableval"],
770 [enable_gles_overlay=no])
Kristian Høgsberg0f680322010-04-27 13:42:33 -0400771
772API_DEFINES=""
Chia-I Wu87cc2da2010-05-12 14:17:17 +0800773GLES_OVERLAY=0
Kristian Høgsberg0f680322010-04-27 13:42:33 -0400774if test "x$enable_opengl" = xno; then
775 API_DEFINES="$API_DEFINES -DFEATURE_GL=0"
776else
777 API_DEFINES="$API_DEFINES -DFEATURE_GL=1"
778fi
779if test "x$enable_gles1" = xyes; then
780 API_DEFINES="$API_DEFINES -DFEATURE_ES1=1"
781fi
782if test "x$enable_gles2" = xyes; then
783 API_DEFINES="$API_DEFINES -DFEATURE_ES2=1"
784fi
Chia-I Wu63ab2502010-05-05 15:38:02 +0800785if test "x$enable_gles_overlay" = xyes -o \
786 "x$enable_gles1" = xyes -o "x$enable_gles2" = xyes; then
Chia-I Wu296adbd2010-04-26 12:56:44 +0800787 CORE_DIRS="mapi/es1api mapi/es2api $CORE_DIRS"
Chia-I Wu63ab2502010-05-05 15:38:02 +0800788 if test "x$enable_gles_overlay" = xyes; then
Chia-I Wu87cc2da2010-05-12 14:17:17 +0800789 GLES_OVERLAY=1
Chia-I Wu63ab2502010-05-05 15:38:02 +0800790 fi
Kristian Høgsberg9339c122010-03-05 19:01:43 -0500791fi
Kristian Høgsberg0f680322010-04-27 13:42:33 -0400792AC_SUBST([API_DEFINES])
Chia-I Wu87cc2da2010-05-12 14:17:17 +0800793AC_SUBST([GLES_OVERLAY])
Kristian Høgsberg0f680322010-04-27 13:42:33 -0400794
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800795dnl If $with_dri_drivers is yes, directories will be added through
796dnl platform checks
797DRI_DIRS=""
798case "$with_dri_drivers" in
Florent Thoumieb5095ab2008-07-28 14:44:43 +0100799no) ;;
800yes)
801 DRI_DIRS="yes"
802 ;;
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800803*)
804 # verify the requested driver directories exist
Dan Nicholsone6e4f252008-07-06 14:17:39 -0700805 dri_drivers=`IFS=', '; echo $with_dri_drivers`
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800806 for driver in $dri_drivers; do
807 test -d "$srcdir/src/mesa/drivers/dri/$driver" || \
808 AC_MSG_ERROR([DRI driver directory '$driver' doesn't exist])
809 done
810 DRI_DIRS="$dri_drivers"
811 ;;
812esac
813
Dan Nicholson44d99142007-12-05 18:47:01 -0800814dnl Set DRI_DIRS, DEFINES and LIB_DEPS
815if test "$mesa_driver" = dri; then
816 # Use TLS in GLX?
817 if test "x$GLX_USE_TLS" = xyes; then
818 DEFINES="$DEFINES -DGLX_USE_TLS -DPTHREADS"
819 fi
820
Dan Nicholson44d99142007-12-05 18:47:01 -0800821 # Platform specific settings and drivers to build
822 case "$host_os" in
823 linux*)
824 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
Dan Nicholson44d99142007-12-05 18:47:01 -0800825 if test "x$driglx_direct" = xyes; then
826 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
827 fi
Jerome Glisse14f79d42008-12-18 13:36:07 +0100828 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS"
Dan Nicholson44d99142007-12-05 18:47:01 -0800829
830 case "$host_cpu" in
Dan Nicholson44d99142007-12-05 18:47:01 -0800831 x86_64)
Kristian Høgsberg79aeafd2010-02-25 16:12:58 -0500832 # sis is missing because they have not be converted to use
833 # the new interface. i810 are missing because there is no
834 # x86-64 system where they could *ever* be used.
Florent Thoumieb5095ab2008-07-28 14:44:43 +0100835 if test "x$DRI_DIRS" = "xyes"; then
Alex Deucher4138bdb2009-04-08 15:16:35 -0400836 DRI_DIRS="i915 i965 mach64 mga r128 r200 r300 r600 radeon \
George Sapountzis280bf892008-05-11 14:43:40 +0300837 savage tdfx unichrome swrast"
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800838 fi
Dan Nicholson44d99142007-12-05 18:47:01 -0800839 ;;
840 powerpc*)
Dan Nicholsona76e2452007-12-07 11:25:08 -0800841 # Build only the drivers for cards that exist on PowerPC.
842 # At some point MGA will be added, but not yet.
Florent Thoumieb5095ab2008-07-28 14:44:43 +0100843 if test "x$DRI_DIRS" = "xyes"; then
Alex Deucher4138bdb2009-04-08 15:16:35 -0400844 DRI_DIRS="mach64 r128 r200 r300 r600 radeon tdfx swrast"
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800845 fi
Dan Nicholson44d99142007-12-05 18:47:01 -0800846 ;;
Dave Airlie2b0e75e2008-06-12 12:06:50 +1000847 sparc*)
848 # Build only the drivers for cards that exist on sparc`
Florent Thoumieb5095ab2008-07-28 14:44:43 +0100849 if test "x$DRI_DIRS" = "xyes"; then
Kristian Høgsberg79aeafd2010-02-25 16:12:58 -0500850 DRI_DIRS="mach64 r128 r200 r300 r600 radeon swrast"
Dave Airlie2b0e75e2008-06-12 12:06:50 +1000851 fi
852 ;;
Dan Nicholson44d99142007-12-05 18:47:01 -0800853 esac
854 ;;
Hasso Tepper9f8df2d2008-04-09 10:51:21 -0700855 freebsd* | dragonfly*)
Dan Nicholson44d99142007-12-05 18:47:01 -0800856 DEFINES="$DEFINES -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1"
857 DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS"
858 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING"
859 if test "x$driglx_direct" = xyes; then
860 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
861 fi
862 if test "x$GXX" = xyes; then
863 CXXFLAGS="$CXXFLAGS -ansi -pedantic"
864 fi
865
Florent Thoumieb5095ab2008-07-28 14:44:43 +0100866 if test "x$DRI_DIRS" = "xyes"; then
Alex Deucher4138bdb2009-04-08 15:16:35 -0400867 DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon tdfx \
George Sapountzis280bf892008-05-11 14:43:40 +0300868 unichrome savage sis swrast"
Dan Nicholsonaf3d2f22007-11-15 08:59:57 -0800869 fi
Dan Nicholson44d99142007-12-05 18:47:01 -0800870 ;;
Samuel Thibaultd18dd6a2009-04-23 05:43:22 -0700871 gnu*)
872 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
873 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS"
874 ;;
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -0700875 solaris*)
876 DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER"
877 DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING"
878 if test "x$driglx_direct" = xyes; then
879 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
880 fi
881 ;;
Dan Nicholson44d99142007-12-05 18:47:01 -0800882 esac
Dan Nicholson112a40e2008-02-21 10:17:19 -0800883
884 # default drivers
Florent Thoumieb5095ab2008-07-28 14:44:43 +0100885 if test "x$DRI_DIRS" = "xyes"; then
Corbin Simpson8e4657a2009-10-22 12:29:30 -0700886 DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon \
Kristian Høgsberg79aeafd2010-02-25 16:12:58 -0500887 savage sis tdfx unichrome swrast"
Dan Nicholson112a40e2008-02-21 10:17:19 -0800888 fi
889
Dan Nicholson44d99142007-12-05 18:47:01 -0800890 DRI_DIRS=`echo "$DRI_DIRS" | $SED 's/ */ /g'`
891
892 # Check for expat
893 EXPAT_INCLUDES=""
894 EXPAT_LIB=-lexpat
Dan Nicholson297e16c2008-05-05 15:42:53 -0700895 AC_ARG_WITH([expat],
896 [AS_HELP_STRING([--with-expat=DIR],
897 [expat install directory])],[
Dan Nicholson44d99142007-12-05 18:47:01 -0800898 EXPAT_INCLUDES="-I$withval/include"
899 CPPFLAGS="$CPPFLAGS $EXPAT_INCLUDES"
900 LDFLAGS="$LDFLAGS -L$withval/$LIB_DIR"
901 EXPAT_LIB="-L$withval/$LIB_DIR -lexpat"
902 ])
Dan Nicholson297e16c2008-05-05 15:42:53 -0700903 AC_CHECK_HEADER([expat.h],[],[AC_MSG_ERROR([Expat required for DRI.])])
904 AC_CHECK_LIB([expat],[XML_ParserCreate],[],
905 [AC_MSG_ERROR([Expat required for DRI.])])
Dan Nicholson44d99142007-12-05 18:47:01 -0800906
907 # put all the necessary libs together
Eric Anholt0a1b54d2010-06-21 11:29:15 -0700908 DRI_LIB_DEPS="$SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm -lpthread $DLOPEN_LIBS $TALLOC_LIBS"
Dan Nicholson44d99142007-12-05 18:47:01 -0800909fi
Dan Nicholson297e16c2008-05-05 15:42:53 -0700910AC_SUBST([DRI_DIRS])
911AC_SUBST([EXPAT_INCLUDES])
912AC_SUBST([DRI_LIB_DEPS])
Dan Nicholson44d99142007-12-05 18:47:01 -0800913
Kristian Høgsberg8616cec2010-01-01 17:03:33 -0500914case $DRI_DIRS in
915*i915*|*i965*)
Eric Anholt73de09f2010-06-07 09:25:10 -0700916 PKG_CHECK_MODULES([INTEL], [libdrm_intel >= 2.4.21])
Kristian Høgsberg8616cec2010-01-01 17:03:33 -0500917 ;;
Kristian Høgsberg27fe7a72010-01-07 10:29:29 -0500918esac
Kristian Høgsberg8616cec2010-01-01 17:03:33 -0500919
Kristian Høgsberg27fe7a72010-01-07 10:29:29 -0500920case $DRI_DIRS in
Kristian Høgsberg8616cec2010-01-01 17:03:33 -0500921*radeon*|*r200*|*r300*|*r600*)
Marek Olšáka1aec2e2010-09-26 17:52:58 +0200922 if test "x$HAVE_LIBDRM_RADEON" = xyes; then
Kristian Høgsberg8616cec2010-01-01 17:03:33 -0500923 RADEON_CFLAGS="-DHAVE_LIBDRM_RADEON=1 $LIBDRM_RADEON_CFLAGS"
924 RADEON_LDFLAGS=$LIBDRM_RADEON_LIBS
925 fi
926 ;;
927esac
928AC_SUBST([RADEON_CFLAGS])
929AC_SUBST([RADEON_LDFLAGS])
930
931
Dan Nicholson44d99142007-12-05 18:47:01 -0800932dnl
Dan Nicholsondca1b792007-10-23 09:25:58 -0700933dnl OSMesa configuration
934dnl
Dan Nicholsona1307182007-12-12 17:49:49 -0800935if test "$mesa_driver" = xlib; then
Dan Nicholson544ab202007-12-30 08:41:53 -0800936 default_gl_osmesa=yes
Dan Nicholson979ff512007-12-05 18:47:01 -0800937else
Dan Nicholson544ab202007-12-30 08:41:53 -0800938 default_gl_osmesa=no
Dan Nicholson44d99142007-12-05 18:47:01 -0800939fi
Dan Nicholson297e16c2008-05-05 15:42:53 -0700940AC_ARG_ENABLE([gl-osmesa],
Dan Nicholson544ab202007-12-30 08:41:53 -0800941 [AS_HELP_STRING([--enable-gl-osmesa],
Dan Nicholsoncbf30fc2010-06-16 09:23:17 -0700942 [enable OSMesa with libGL @<:@default=enabled for xlib driver@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700943 [gl_osmesa="$enableval"],
944 [gl_osmesa="$default_gl_osmesa"])
Dan Nicholson544ab202007-12-30 08:41:53 -0800945if test "x$gl_osmesa" = xyes; then
946 if test "$mesa_driver" = osmesa; then
947 AC_MSG_ERROR([libGL is not available for OSMesa driver])
Dan Nicholson979ff512007-12-05 18:47:01 -0800948 else
Dan Nicholson544ab202007-12-30 08:41:53 -0800949 DRIVER_DIRS="$DRIVER_DIRS osmesa"
Dan Nicholson979ff512007-12-05 18:47:01 -0800950 fi
951fi
952
Dan Nicholson6689f9e2007-12-05 21:04:15 -0800953dnl Configure the channel bits for OSMesa (libOSMesa, libOSMesa16, ...)
Dan Nicholson297e16c2008-05-05 15:42:53 -0700954AC_ARG_WITH([osmesa-bits],
Dan Nicholson6689f9e2007-12-05 21:04:15 -0800955 [AS_HELP_STRING([--with-osmesa-bits=BITS],
956 [OSMesa channel bits and library name: 8, 16, 32 @<:@default=8@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -0700957 [osmesa_bits="$withval"],
958 [osmesa_bits=8])
Dan Nicholson6689f9e2007-12-05 21:04:15 -0800959if test "$mesa_driver" != osmesa && test "x$osmesa_bits" != x8; then
960 AC_MSG_WARN([Ignoring OSMesa channel bits for non-OSMesa driver])
961 osmesa_bits=8
962fi
963case "x$osmesa_bits" in
964x8)
965 OSMESA_LIB=OSMesa
966 ;;
967x16|x32)
968 OSMESA_LIB="OSMesa$osmesa_bits"
969 DEFINES="$DEFINES -DCHAN_BITS=$osmesa_bits -DDEFAULT_SOFTWARE_DEPTH_BITS=31"
970 ;;
971*)
972 AC_MSG_ERROR([OSMesa bits '$osmesa_bits' is not a valid option])
973 ;;
974esac
Dan Nicholson297e16c2008-05-05 15:42:53 -0700975AC_SUBST([OSMESA_LIB])
Dan Nicholson6689f9e2007-12-05 21:04:15 -0800976
Dan Nicholsoncbf30fc2010-06-16 09:23:17 -0700977case "$DRIVER_DIRS" in
978*osmesa*)
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -0700979 # only link libraries with osmesa if shared
Dan Nicholson88586332007-11-15 08:59:57 -0800980 if test "$enable_static" = no; then
Jon TURNEYe637f8b2010-08-30 12:41:16 +0100981 OSMESA_LIB_DEPS="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS $TALLOC_LIBS"
Dan Nicholson88586332007-11-15 08:59:57 -0800982 else
983 OSMESA_LIB_DEPS=""
984 fi
Dan Nicholson979ff512007-12-05 18:47:01 -0800985 OSMESA_MESA_DEPS=""
Jon TURNEYe637f8b2010-08-30 12:41:16 +0100986 OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS $TALLOC_LIBS"
Dan Nicholson979ff512007-12-05 18:47:01 -0800987 ;;
Dan Nicholson979ff512007-12-05 18:47:01 -0800988esac
Dan Nicholson297e16c2008-05-05 15:42:53 -0700989AC_SUBST([OSMESA_LIB_DEPS])
990AC_SUBST([OSMESA_MESA_DEPS])
Dan Nicholson8be02fc2008-12-14 09:35:29 -0800991AC_SUBST([OSMESA_PC_REQ])
992AC_SUBST([OSMESA_PC_LIB_PRIV])
Dan Nicholsondca1b792007-10-23 09:25:58 -0700993
994dnl
Dan Nicholson53b37342009-02-25 17:45:34 -0800995dnl EGL configuration
996dnl
Dan Nicholson66f97862009-04-29 12:11:43 -0700997AC_ARG_ENABLE([egl],
998 [AS_HELP_STRING([--disable-egl],
999 [disable EGL library @<:@default=enabled@:>@])],
1000 [enable_egl="$enableval"],
1001 [enable_egl=yes])
1002if test "x$enable_egl" = xyes; then
1003 SRC_DIRS="$SRC_DIRS egl"
Chia-I Wud4c1ee02009-12-21 11:13:18 +08001004 EGL_LIB_DEPS="$DLOPEN_LIBS -lpthread"
1005 EGL_DRIVERS_DIRS=""
Chia-I Wu2eb7a2f2010-02-05 10:46:11 +08001006 if test "$enable_static" != yes; then
Chia-I Wud4c1ee02009-12-21 11:13:18 +08001007 # build egl_glx when libGL is built
Chia-I Wu2eb7a2f2010-02-05 10:46:11 +08001008 if test "$mesa_driver" != osmesa; then
1009 EGL_DRIVERS_DIRS="glx"
1010 fi
1011
Chia-I Wu39ae9652010-07-16 19:48:52 +08001012 if test "$mesa_driver" = dri; then
1013 # build egl_dri2 when xcb-dri2 is available
1014 PKG_CHECK_MODULES([XCB_DRI2], [x11-xcb xcb-dri2 xcb-xfixes],
1015 [have_xcb_dri2=yes],[have_xcb_dri2=no])
1016 PKG_CHECK_MODULES([LIBUDEV], [libudev > 150],
1017 [have_libudev=yes],[have_libudev=no])
1018
1019 if test "$have_xcb_dri2" = yes; then
1020 EGL_DRIVER_DRI2=dri2
1021 DEFINES="$DEFINES -DHAVE_XCB_DRI2"
1022 if test "$have_libudev" = yes; then
1023 DEFINES="$DEFINES -DHAVE_LIBUDEV"
1024 fi
1025 fi
1026 fi
Kristian Høgsberg2168b872010-06-02 22:48:06 -04001027
1028 EGL_DRIVERS_DIRS="$EGL_DRIVERS_DIRS $EGL_DRIVER_DRI2"
Kristian Høgsberg42fa0092010-02-03 10:18:28 -05001029 fi
Dan Nicholson53b37342009-02-25 17:45:34 -08001030fi
Dan Nicholson53b37342009-02-25 17:45:34 -08001031AC_SUBST([EGL_LIB_DEPS])
Chia-I Wud4c1ee02009-12-21 11:13:18 +08001032AC_SUBST([EGL_DRIVERS_DIRS])
Dan Nicholson53b37342009-02-25 17:45:34 -08001033
1034dnl
Dan Nicholsondca1b792007-10-23 09:25:58 -07001035dnl GLU configuration
1036dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -07001037AC_ARG_ENABLE([glu],
Dan Nicholson79ad4582007-12-07 19:11:01 -08001038 [AS_HELP_STRING([--disable-glu],
1039 [enable OpenGL Utility library @<:@default=enabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -07001040 [enable_glu="$enableval"],
1041 [enable_glu=yes])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001042if test "x$enable_glu" = xyes; then
1043 SRC_DIRS="$SRC_DIRS glu"
1044
Dan Nicholson979ff512007-12-05 18:47:01 -08001045 case "$mesa_driver" in
1046 osmesa)
Dan Nicholson979ff512007-12-05 18:47:01 -08001047 # Link libGLU to libOSMesa instead of libGL
1048 GLU_LIB_DEPS=""
Dan Nicholson8be02fc2008-12-14 09:35:29 -08001049 GLU_PC_REQ="osmesa"
Dan Nicholson88586332007-11-15 08:59:57 -08001050 if test "$enable_static" = no; then
1051 GLU_MESA_DEPS='-l$(OSMESA_LIB)'
1052 else
1053 GLU_MESA_DEPS=""
1054 fi
Dan Nicholson979ff512007-12-05 18:47:01 -08001055 ;;
1056 *)
Dan Nicholson88586332007-11-15 08:59:57 -08001057 # If static, empty GLU_LIB_DEPS and add libs for programs to link
Dan Nicholson71e208b2008-11-24 11:01:57 -08001058 GLU_PC_REQ="gl"
1059 GLU_PC_LIB_PRIV="-lm"
Dan Nicholson88586332007-11-15 08:59:57 -08001060 if test "$enable_static" = no; then
1061 GLU_LIB_DEPS="-lm"
1062 GLU_MESA_DEPS='-l$(GL_LIB)'
1063 else
1064 GLU_LIB_DEPS=""
1065 GLU_MESA_DEPS=""
1066 APP_LIB_DEPS="$APP_LIB_DEPS -lstdc++"
1067 fi
Dan Nicholson979ff512007-12-05 18:47:01 -08001068 ;;
1069 esac
Dan Nicholsondca1b792007-10-23 09:25:58 -07001070fi
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -07001071if test "$enable_static" = no; then
1072 GLU_LIB_DEPS="$GLU_LIB_DEPS $OS_CPLUSPLUS_LIBS"
1073fi
Dan Nicholson71e208b2008-11-24 11:01:57 -08001074GLU_PC_LIB_PRIV="$GLU_PC_LIB_PRIV $OS_CPLUSPLUS_LIBS"
Dan Nicholson297e16c2008-05-05 15:42:53 -07001075AC_SUBST([GLU_LIB_DEPS])
1076AC_SUBST([GLU_MESA_DEPS])
Dan Nicholson71e208b2008-11-24 11:01:57 -08001077AC_SUBST([GLU_PC_REQ])
1078AC_SUBST([GLU_PC_REQ_PRIV])
Dan Nicholson71e208b2008-11-24 11:01:57 -08001079AC_SUBST([GLU_PC_LIB_PRIV])
1080AC_SUBST([GLU_PC_CFLAGS])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001081
1082dnl
1083dnl GLw configuration
1084dnl
Dan Nicholson297e16c2008-05-05 15:42:53 -07001085AC_ARG_ENABLE([glw],
Dan Nicholson79ad4582007-12-07 19:11:01 -08001086 [AS_HELP_STRING([--disable-glw],
1087 [enable Xt/Motif widget library @<:@default=enabled@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -07001088 [enable_glw="$enableval"],
1089 [enable_glw=yes])
Dan Nicholson979ff512007-12-05 18:47:01 -08001090dnl Don't build GLw on osmesa
1091if test "x$enable_glw" = xyes && test "$mesa_driver" = osmesa; then
1092 AC_MSG_WARN([Disabling GLw since the driver is OSMesa])
1093 enable_glw=no
1094fi
Dan Nicholson776c60d2008-07-18 07:40:41 -07001095AC_ARG_ENABLE([motif],
1096 [AS_HELP_STRING([--enable-motif],
1097 [use Motif widgets in GLw @<:@default=disabled@:>@])],
1098 [enable_motif="$enableval"],
1099 [enable_motif=no])
1100
Dan Nicholsondca1b792007-10-23 09:25:58 -07001101if test "x$enable_glw" = xyes; then
1102 SRC_DIRS="$SRC_DIRS glw"
1103 if test "$x11_pkgconfig" = yes; then
Dan Nicholson297e16c2008-05-05 15:42:53 -07001104 PKG_CHECK_MODULES([GLW],[x11 xt])
Dan Nicholson71e208b2008-11-24 11:01:57 -08001105 GLW_PC_REQ_PRIV="x11 xt"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001106 GLW_LIB_DEPS="$GLW_LIBS"
1107 else
1108 # should check these...
Dan Nicholson776c60d2008-07-18 07:40:41 -07001109 GLW_LIB_DEPS="$X_LIBS -lXt -lX11"
Dan Nicholson71e208b2008-11-24 11:01:57 -08001110 GLW_PC_LIB_PRIV="$GLW_LIB_DEPS"
1111 GLW_PC_CFLAGS="$X11_INCLUDES"
Dan Nicholson776c60d2008-07-18 07:40:41 -07001112 fi
1113
1114 GLW_SOURCES="GLwDrawA.c"
1115 MOTIF_CFLAGS=
1116 if test "x$enable_motif" = xyes; then
1117 GLW_SOURCES="$GLW_SOURCES GLwMDrawA.c"
1118 AC_PATH_PROG([MOTIF_CONFIG], [motif-config], [no])
1119 if test "x$MOTIF_CONFIG" != xno; then
1120 MOTIF_CFLAGS=`$MOTIF_CONFIG --cflags`
1121 MOTIF_LIBS=`$MOTIF_CONFIG --libs`
1122 else
1123 AC_CHECK_HEADER([Xm/PrimitiveP.h], [],
1124 [AC_MSG_ERROR([Can't locate Motif headers])])
1125 AC_CHECK_LIB([Xm], [XmGetPixmap], [MOTIF_LIBS="-lXm"],
1126 [AC_MSG_ERROR([Can't locate Motif Xm library])])
1127 fi
1128 # MOTIF_LIBS is prepended to GLW_LIB_DEPS since Xm needs Xt/X11
1129 GLW_LIB_DEPS="$MOTIF_LIBS $GLW_LIB_DEPS"
Dan Nicholson71e208b2008-11-24 11:01:57 -08001130 GLW_PC_LIB_PRIV="$MOTIF_LIBS $GLW_PC_LIB_PRIV"
1131 GLW_PC_CFLAGS="$MOTIF_CFLAGS $GLW_PC_CFLAGS"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001132 fi
1133
Dan Nicholson88586332007-11-15 08:59:57 -08001134 # If static, empty GLW_LIB_DEPS and add libs for programs to link
Alan Coopersmith3cf6e622009-03-23 16:51:54 -07001135 GLW_PC_LIB_PRIV="$GLW_PC_LIB_PRIV"
Dan Nicholson88586332007-11-15 08:59:57 -08001136 if test "$enable_static" = no; then
1137 GLW_MESA_DEPS='-l$(GL_LIB)'
Alan Coopersmith3cf6e622009-03-23 16:51:54 -07001138 GLW_LIB_DEPS="$GLW_LIB_DEPS"
Dan Nicholson88586332007-11-15 08:59:57 -08001139 else
1140 APP_LIB_DEPS="$APP_LIB_DEPS $GLW_LIB_DEPS"
1141 GLW_LIB_DEPS=""
1142 GLW_MESA_DEPS=""
1143 fi
Dan Nicholsondca1b792007-10-23 09:25:58 -07001144fi
Dan Nicholson297e16c2008-05-05 15:42:53 -07001145AC_SUBST([GLW_LIB_DEPS])
1146AC_SUBST([GLW_MESA_DEPS])
Dan Nicholson776c60d2008-07-18 07:40:41 -07001147AC_SUBST([GLW_SOURCES])
1148AC_SUBST([MOTIF_CFLAGS])
Dan Nicholson71e208b2008-11-24 11:01:57 -08001149AC_SUBST([GLW_PC_REQ_PRIV])
1150AC_SUBST([GLW_PC_LIB_PRIV])
1151AC_SUBST([GLW_PC_CFLAGS])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001152
1153dnl
1154dnl GLUT configuration
1155dnl
1156if test -f "$srcdir/include/GL/glut.h"; then
1157 default_glut=yes
1158else
1159 default_glut=no
1160fi
Dan Nicholson297e16c2008-05-05 15:42:53 -07001161AC_ARG_ENABLE([glut],
Dan Nicholson79ad4582007-12-07 19:11:01 -08001162 [AS_HELP_STRING([--disable-glut],
1163 [enable GLUT library @<:@default=enabled if source available@:>@])],
Dan Nicholson297e16c2008-05-05 15:42:53 -07001164 [enable_glut="$enableval"],
1165 [enable_glut="$default_glut"])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001166
1167dnl Can't build glut if GLU not available
1168if test "x$enable_glu$enable_glut" = xnoyes; then
1169 AC_MSG_WARN([Disabling glut since GLU is disabled])
1170 enable_glut=no
1171fi
Dan Nicholson979ff512007-12-05 18:47:01 -08001172dnl Don't build glut on osmesa
1173if test "x$enable_glut" = xyes && test "$mesa_driver" = osmesa; then
1174 AC_MSG_WARN([Disabling glut since the driver is OSMesa])
1175 enable_glut=no
1176fi
1177
Dan Nicholsondca1b792007-10-23 09:25:58 -07001178if test "x$enable_glut" = xyes; then
1179 SRC_DIRS="$SRC_DIRS glut/glx"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001180 if test "$x11_pkgconfig" = yes; then
Dan Nicholson297e16c2008-05-05 15:42:53 -07001181 PKG_CHECK_MODULES([GLUT],[x11 xmu xi])
Dan Nicholson71e208b2008-11-24 11:01:57 -08001182 GLUT_PC_REQ_PRIV="x11 xmu xi"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001183 GLUT_LIB_DEPS="$GLUT_LIBS"
1184 else
1185 # should check these...
Dan Nicholson70d0c832007-12-07 11:12:20 -08001186 GLUT_LIB_DEPS="$X_LIBS -lX11 -lXmu -lXi"
Dan Nicholson71e208b2008-11-24 11:01:57 -08001187 GLUT_PC_LIB_PRIV="$GLUT_LIB_DEPS"
1188 GLUT_PC_CFLAGS="$X11_INCLUDES"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001189 fi
John Hein96172542010-07-01 12:53:28 -07001190 if test "x$GCC" = xyes; then
1191 GLUT_CFLAGS="$GLUT_CFLAGS -fexceptions"
1192 fi
Alan Coopersmith3cf6e622009-03-23 16:51:54 -07001193 GLUT_LIB_DEPS="$GLUT_LIB_DEPS -lm"
1194 GLUT_PC_LIB_PRIV="$GLUT_PC_LIB_PRIV -lm"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001195
Dan Nicholson88586332007-11-15 08:59:57 -08001196 # If static, empty GLUT_LIB_DEPS and add libs for programs to link
1197 if test "$enable_static" = no; then
1198 GLUT_MESA_DEPS='-l$(GLU_LIB) -l$(GL_LIB)'
1199 else
1200 APP_LIB_DEPS="$APP_LIB_DEPS $GLUT_LIB_DEPS"
1201 GLUT_LIB_DEPS=""
1202 GLUT_MESA_DEPS=""
1203 fi
Dan Nicholsondca1b792007-10-23 09:25:58 -07001204fi
Dan Nicholson297e16c2008-05-05 15:42:53 -07001205AC_SUBST([GLUT_LIB_DEPS])
1206AC_SUBST([GLUT_MESA_DEPS])
1207AC_SUBST([GLUT_CFLAGS])
Dan Nicholson71e208b2008-11-24 11:01:57 -08001208AC_SUBST([GLUT_PC_REQ_PRIV])
1209AC_SUBST([GLUT_PC_LIB_PRIV])
1210AC_SUBST([GLUT_PC_CFLAGS])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001211
1212dnl
1213dnl Program library dependencies
1214dnl Only libm is added here if necessary as the libraries should
1215dnl be pulled in by the linker
1216dnl
1217if test "x$APP_LIB_DEPS" = x; then
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -07001218 case "$host_os" in
1219 solaris*)
1220 APP_LIB_DEPS="-lX11 -lsocket -lnsl -lm"
1221 ;;
Jon TURNEY7eed6ab2009-06-08 16:02:18 +01001222 cygwin*)
1223 APP_LIB_DEPS="-lX11"
1224 ;;
Alan Coopersmithe1f9adc2008-06-20 17:58:53 -07001225 *)
1226 APP_LIB_DEPS="-lm"
1227 ;;
1228 esac
Dan Nicholsondca1b792007-10-23 09:25:58 -07001229fi
Dan Nicholson297e16c2008-05-05 15:42:53 -07001230AC_SUBST([APP_LIB_DEPS])
1231AC_SUBST([PROGRAM_DIRS])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001232
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001233dnl
1234dnl Gallium configuration
1235dnl
1236AC_ARG_ENABLE([gallium],
1237 [AS_HELP_STRING([--disable-gallium],
1238 [build gallium @<:@default=enabled@:>@])],
1239 [enable_gallium="$enableval"],
1240 [enable_gallium=yes])
1241if test "x$enable_gallium" = xyes; then
Jakob Bornecrantzbe38b322010-03-23 13:23:26 +00001242 SRC_DIRS="$SRC_DIRS gallium gallium/winsys gallium/targets"
Dave Airlie81fe1982010-04-22 14:59:29 +10001243 AC_CHECK_HEADER([udis86.h], [HAS_UDIS86="yes"],
1244 [HAS_UDIS86="no"])
1245 AC_PATH_PROG([LLVM_CONFIG], [llvm-config], [no])
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001246fi
Dan Nicholsondca1b792007-10-23 09:25:58 -07001247
Dave Airlie81fe1982010-04-22 14:59:29 +10001248AC_SUBST([LLVM_CFLAGS])
1249AC_SUBST([LLVM_LIBS])
1250AC_SUBST([LLVM_LDFLAGS])
1251AC_SUBST([LLVM_VERSION])
1252
Chia-I Wu874ccd52010-05-04 22:43:05 +08001253VG_LIB_DEPS=""
Chia-I Wu63ab2502010-05-05 15:38:02 +08001254EGL_CLIENT_APIS='$(GL_LIB)'
1255if test "x$enable_gles_overlay" = xyes; then
1256 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(GLESv1_CM_LIB) $(GLESv2_LIB)'
1257fi
Chia-I Wu874ccd52010-05-04 22:43:05 +08001258
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001259dnl
1260dnl Gallium state trackers configuration
1261dnl
1262AC_ARG_WITH([state-trackers],
1263 [AS_HELP_STRING([--with-state-trackers@<:@=DIRS...@:>@],
1264 [comma delimited state_trackers list, e.g.
1265 "egl,glx" @<:@default=auto@:>@])],
1266 [with_state_trackers="$withval"],
1267 [with_state_trackers=yes])
1268
1269case "$with_state_trackers" in
1270no)
1271 GALLIUM_STATE_TRACKERS_DIRS=""
1272 ;;
1273yes)
1274 # look at what else is built
1275 case "$mesa_driver" in
Jakob Bornecrantz373e6712009-04-18 23:13:56 +01001276 xlib)
1277 GALLIUM_STATE_TRACKERS_DIRS=glx
1278 ;;
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001279 dri)
Jakob Bornecrantz5b1fc142010-03-25 18:29:51 +01001280 GALLIUM_STATE_TRACKERS_DIRS="dri"
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001281 HAVE_ST_DRI="yes"
Jakob Bornecrantzbc0532b2009-12-04 18:50:29 +00001282 if test "x$enable_egl" = xyes; then
Chia-I Wu3c967a92010-01-22 16:31:43 +08001283 GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS egl"
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001284 HAVE_ST_EGL="yes"
Jakob Bornecrantzbc0532b2009-12-04 18:50:29 +00001285 fi
1286 # Have only tested st/xorg on 1.6.0 servers
Jakob Bornecrantz683a0992010-03-11 19:23:15 +00001287 PKG_CHECK_MODULES(XORG, [xorg-server >= 1.6.0 libdrm >= $LIBDRM_XORG_REQUIRED libkms >= $LIBKMS_XORG_REQUIRED],
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001288 HAVE_ST_XORG="yes"; GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS xorg",
1289 HAVE_ST_XORG="no")
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001290 ;;
1291 esac
1292 ;;
1293*)
1294 # verify the requested state tracker exist
Chia-I Wu63ab2502010-05-05 15:38:02 +08001295 state_trackers=""
1296 _state_trackers=`IFS=', '; echo $with_state_trackers`
1297 for tracker in $_state_trackers; do
Chia-I Wue5d351d2009-12-23 11:18:00 +08001298 case "$tracker" in
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001299 dri)
1300 if test "x$mesa_driver" != xdri; then
1301 AC_MSG_ERROR([cannot build dri state tracker without mesa driver set to dri])
1302 fi
1303 HAVE_ST_DRI="yes"
1304 ;;
Chia-I Wu3c967a92010-01-22 16:31:43 +08001305 egl)
Chia-I Wue5d351d2009-12-23 11:18:00 +08001306 if test "x$enable_egl" != xyes; then
Chia-I Wu3c967a92010-01-22 16:31:43 +08001307 AC_MSG_ERROR([cannot build egl state tracker without EGL library])
Chia-I Wue5d351d2009-12-23 11:18:00 +08001308 fi
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001309 HAVE_ST_EGL="yes"
Chia-I Wue5d351d2009-12-23 11:18:00 +08001310 ;;
1311 xorg)
Jakob Bornecrantz4f956882010-07-13 07:40:47 -07001312 PKG_CHECK_MODULES([XORG], [xorg-server >= 1.6.0])
Jakob Bornecrantz683a0992010-03-11 19:23:15 +00001313 PKG_CHECK_MODULES([LIBDRM_XORG], [libdrm >= $LIBDRM_XORG_REQUIRED])
1314 PKG_CHECK_MODULES([LIBKMS_XORG], [libkms >= $LIBKMS_XORG_REQUIRED])
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001315 HAVE_ST_XORG="yes"
Chia-I Wue5d351d2009-12-23 11:18:00 +08001316 ;;
1317 es)
Chia-I Wu63ab2502010-05-05 15:38:02 +08001318 AC_MSG_WARN([state tracker 'es' has been replaced by --enable-gles-overlay])
1319
1320 if test "x$enable_gles_overlay" != xyes; then
1321 if test "x$enable_gles1" != xyes -a "x$enable_gles2" != xyes; then
1322 CORE_DIRS="mapi/es1api mapi/es2api $CORE_DIRS"
1323 fi
Chia-I Wu87cc2da2010-05-12 14:17:17 +08001324 GLES_OVERLAY=1
Chia-I Wu63ab2502010-05-05 15:38:02 +08001325 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(GLESv1_CM_LIB) $(GLESv2_LIB)'
Chia-I Wu296adbd2010-04-26 12:56:44 +08001326 fi
Chia-I Wu63ab2502010-05-05 15:38:02 +08001327 tracker=""
Chia-I Wue5d351d2009-12-23 11:18:00 +08001328 ;;
Chia-I Wu75143ef2010-04-16 18:12:37 +08001329 vega)
1330 CORE_DIRS="$CORE_DIRS mapi/vgapi"
Chia-I Wu874ccd52010-05-04 22:43:05 +08001331 VG_LIB_DEPS="$VG_LIB_DEPS -lpthread"
Chia-I Wu63ab2502010-05-05 15:38:02 +08001332 EGL_CLIENT_APIS="$EGL_CLIENT_APIS "'$(VG_LIB)'
Chia-I Wu75143ef2010-04-16 18:12:37 +08001333 ;;
Chia-I Wue5d351d2009-12-23 11:18:00 +08001334 esac
Chia-I Wu63ab2502010-05-05 15:38:02 +08001335
1336 if test -n "$tracker"; then
1337 test -d "$srcdir/src/gallium/state_trackers/$tracker" || \
1338 AC_MSG_ERROR([state tracker '$tracker' doesn't exist])
1339 if test -n "$state_trackers"; then
1340 state_trackers="$state_trackers $tracker"
1341 else
1342 state_trackers="$tracker"
1343 fi
1344 fi
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001345 done
1346 GALLIUM_STATE_TRACKERS_DIRS="$state_trackers"
1347 ;;
1348esac
1349
Chia-I Wu874ccd52010-05-04 22:43:05 +08001350AC_SUBST([VG_LIB_DEPS])
Chia-I Wu63ab2502010-05-05 15:38:02 +08001351AC_SUBST([EGL_CLIENT_APIS])
1352
1353if test "x$HAVE_ST_EGL" = xyes; then
Chia-I Wud8e0e112010-06-29 14:04:27 +08001354 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS egl"
Chia-I Wucf588ab2010-07-06 14:34:43 +08001355 # define GLX_DIRECT_RENDERING even when the driver is not dri
1356 if test "x$mesa_driver" != xdri -a "x$driglx_direct" = xyes; then
1357 DEFINES="$DEFINES -DGLX_DIRECT_RENDERING"
1358 fi
Chia-I Wu63ab2502010-05-05 15:38:02 +08001359fi
Chia-I Wu874ccd52010-05-04 22:43:05 +08001360
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001361if test "x$HAVE_ST_XORG" = xyes; then
Jakob Bornecrantz683a0992010-03-11 19:23:15 +00001362 PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
1363 HAVE_XEXTPROTO_71="yes"; DEFINES="$DEFINES -DHAVE_XEXTPROTO_71",
1364 HAVE_XEXTPROTO_71="no")
1365fi
1366
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001367AC_ARG_WITH([egl-platforms],
1368 [AS_HELP_STRING([--with-egl-platforms@<:@=DIRS...@:>@],
1369 [comma delimited native platforms libEGL supports, e.g.
Chia-I Wue7424d72010-09-19 16:54:39 +08001370 "x11,drm" @<:@default=auto@:>@])],
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001371 [with_egl_platforms="$withval"],
1372 [with_egl_platforms=yes])
Chia-I Wu49381d62010-01-11 01:23:01 +08001373AC_ARG_WITH([egl-displays],
1374 [AS_HELP_STRING([--with-egl-displays@<:@=DIRS...@:>@],
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001375 [DEPRECATED. Use --with-egl-platforms instead])],
1376 [with_egl_platforms="$withval"])
Chia-I Wu49381d62010-01-11 01:23:01 +08001377
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001378EGL_PLATFORMS=""
1379case "$with_egl_platforms" in
Chia-I Wu49381d62010-01-11 01:23:01 +08001380yes)
1381 if test "x$enable_egl" = xyes && test "x$mesa_driver" != xosmesa; then
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001382 EGL_PLATFORMS="x11"
Chia-I Wu2a910b32010-09-19 17:31:34 +08001383 if test "$mesa_driver" = dri; then
1384 EGL_PLATFORMS="$EGL_PLATFORMS drm"
1385 fi
Chia-I Wu49381d62010-01-11 01:23:01 +08001386 fi
1387 ;;
1388*)
1389 if test "x$enable_egl" != xyes; then
1390 AC_MSG_ERROR([cannot build egl state tracker without EGL library])
1391 fi
1392 # verify the requested driver directories exist
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001393 egl_platforms=`IFS=', '; echo $with_egl_platforms`
1394 for plat in $egl_platforms; do
1395 test -d "$srcdir/src/gallium/state_trackers/egl/$plat" || \
1396 AC_MSG_ERROR([EGL platform '$plat' does't exist])
1397 if test "$plat" = "fbdev"; then
Chia-I Wu8f3e48e2010-06-17 14:10:53 +08001398 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/fbdev"
1399 fi
Chia-I Wu49381d62010-01-11 01:23:01 +08001400 done
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001401 EGL_PLATFORMS="$egl_platforms"
Chia-I Wu49381d62010-01-11 01:23:01 +08001402 ;;
1403esac
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001404AC_SUBST([EGL_PLATFORMS])
Chia-I Wu49381d62010-01-11 01:23:01 +08001405
Chia-I Wu28c3e572010-01-23 20:18:43 +08001406AC_ARG_WITH([egl-driver-dir],
1407 [AS_HELP_STRING([--with-egl-driver-dir=DIR],
1408 [directory for EGL drivers [[default=${libdir}/egl]]])],
1409 [EGL_DRIVER_INSTALL_DIR="$withval"],
1410 [EGL_DRIVER_INSTALL_DIR='${libdir}/egl'])
1411AC_SUBST([EGL_DRIVER_INSTALL_DIR])
1412
Joel Bosveld8acca482009-03-06 08:46:08 +09001413AC_ARG_WITH([xorg-driver-dir],
1414 [AS_HELP_STRING([--with-xorg-driver-dir=DIR],
1415 [Default xorg driver directory[[default=${libdir}/xorg/modules/drivers]]])],
1416 [XORG_DRIVER_INSTALL_DIR="$withval"],
1417 [XORG_DRIVER_INSTALL_DIR="${libdir}/xorg/modules/drivers"])
1418AC_SUBST([XORG_DRIVER_INSTALL_DIR])
1419
Tom Fogal7085dce2009-08-13 19:40:30 -06001420AC_ARG_WITH([max-width],
1421 [AS_HELP_STRING([--with-max-width=N],
1422 [Maximum framebuffer width (4096)])],
1423 [DEFINES="${DEFINES} -DMAX_WIDTH=${withval}";
1424 AS_IF([test "${withval}" -gt "4096"],
1425 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1426)
1427AC_ARG_WITH([max-height],
1428 [AS_HELP_STRING([--with-max-height=N],
1429 [Maximum framebuffer height (4096)])],
1430 [DEFINES="${DEFINES} -DMAX_HEIGHT=${withval}";
1431 AS_IF([test "${withval}" -gt "4096"],
1432 [AC_MSG_WARN([Large framebuffer: see s_tritemp.h comments.])])]
1433)
1434
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001435dnl
Dave Airlie81fe1982010-04-22 14:59:29 +10001436dnl Gallium LLVM
1437dnl
1438AC_ARG_ENABLE([gallium-llvm],
1439 [AS_HELP_STRING([--enable-gallium-llvm],
1440 [build gallium LLVM support @<:@default=disabled@:>@])],
1441 [enable_gallium_llvm="$enableval"],
1442 [enable_gallium_llvm=auto])
1443if test "x$enable_gallium_llvm" = xyes; then
Dave Airlie22e8ddc2010-04-25 07:48:48 +10001444 if test "x$LLVM_CONFIG" != xno; then
1445 LLVM_VERSION=`$LLVM_CONFIG --version`
1446 LLVM_CFLAGS=`$LLVM_CONFIG --cflags`
1447 LLVM_LIBS="`$LLVM_CONFIG --libs jit interpreter nativecodegen bitwriter` -lstdc++"
1448
1449 if test "x$HAS_UDIS86" != xno; then
1450 LLVM_LIBS="$LLVM_LIBS -ludis86"
1451 DEFINES="$DEFINES -DHAVE_UDIS86"
Dave Airlie81fe1982010-04-22 14:59:29 +10001452 fi
Dave Airlie22e8ddc2010-04-25 07:48:48 +10001453 LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
1454 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS llvmpipe"
Chia-I Wu3ecb8c22010-05-11 12:36:49 +08001455 DEFINES="$DEFINES -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS"
Dave Airlie22e8ddc2010-04-25 07:48:48 +10001456 MESA_LLVM=1
1457 else
Dave Airlie81fe1982010-04-22 14:59:29 +10001458 MESA_LLVM=0
Dave Airlie22e8ddc2010-04-25 07:48:48 +10001459 fi
1460else
1461 MESA_LLVM=0
Dave Airlie81fe1982010-04-22 14:59:29 +10001462fi
1463
1464dnl
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001465dnl Gallium helper functions
1466dnl
1467gallium_check_st() {
Chia-I Wud8e0e112010-06-29 14:04:27 +08001468 if test "x$HAVE_ST_DRI" = xyes || test "x$HAVE_ST_XORG" = xyes; then
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001469 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS $1"
1470 fi
1471 if test "x$HAVE_ST_DRI" = xyes && test "x$2" != x; then
1472 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $2"
1473 fi
Chia-I Wud8e0e112010-06-29 14:04:27 +08001474 if test "x$HAVE_ST_XORG" = xyes && test "x$3" != x; then
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001475 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $3"
1476 fi
Jakob Bornecrantza82e37b2010-03-25 22:21:39 +01001477}
1478
1479
1480dnl
Jakob Bornecrantz60769b22009-11-12 01:28:26 +01001481dnl Gallium SVGA configuration
1482dnl
1483AC_ARG_ENABLE([gallium-svga],
Jakob Bornecrantz5e6fff72009-07-19 09:22:31 +02001484 [AS_HELP_STRING([--enable-gallium-svga],
1485 [build gallium SVGA @<:@default=disabled@:>@])],
Jakob Bornecrantz60769b22009-11-12 01:28:26 +01001486 [enable_gallium_svga="$enableval"],
Jakob Bornecrantz5e6fff72009-07-19 09:22:31 +02001487 [enable_gallium_svga=auto])
Jakob Bornecrantz60769b22009-11-12 01:28:26 +01001488if test "x$enable_gallium_svga" = xyes; then
Xavier Chantryff0987a2010-03-26 11:02:03 +01001489 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS svga"
Chia-I Wud8e0e112010-06-29 14:04:27 +08001490 gallium_check_st "svga/drm" "dri-vmwgfx" "xorg-vmwgfx"
Jakob Bornecrantz5e6fff72009-07-19 09:22:31 +02001491elif test "x$enable_gallium_svga" = xauto; then
1492 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS svga"
Jakob Bornecrantz60769b22009-11-12 01:28:26 +01001493fi
1494
1495dnl
Jakob Bornecrantz7dce4f32010-06-11 13:00:16 +02001496dnl Gallium i915 configuration
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001497dnl
Jakob Bornecrantz7dce4f32010-06-11 13:00:16 +02001498AC_ARG_ENABLE([gallium-i915],
1499 [AS_HELP_STRING([--enable-gallium-i915],
1500 [build gallium i915 @<:@default=disabled@:>@])],
1501 [enable_gallium_i915="$enableval"],
1502 [enable_gallium_i915=auto])
1503if test "x$enable_gallium_i915" = xyes; then
Jakob Bornecrantz44bafca2010-04-17 15:17:33 +01001504 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS i915/sw"
Jakob Bornecrantz7dce4f32010-06-11 13:00:16 +02001505 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i915"
Chia-I Wud8e0e112010-06-29 14:04:27 +08001506 gallium_check_st "i915/drm" "dri-i915" "xorg-i915"
Jakob Bornecrantz7dce4f32010-06-11 13:00:16 +02001507elif test "x$enable_gallium_i915" = xauto; then
Jakob Bornecrantz44bafca2010-04-17 15:17:33 +01001508 GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS i915/sw"
Jakob Bornecrantz7dce4f32010-06-11 13:00:16 +02001509 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i915"
1510fi
1511
1512dnl
1513dnl Gallium i965 configuration
1514dnl
1515AC_ARG_ENABLE([gallium-i965],
1516 [AS_HELP_STRING([--enable-gallium-i965],
1517 [build gallium i965 @<:@default=disabled@:>@])],
1518 [enable_gallium_i965="$enableval"],
1519 [enable_gallium_i965=auto])
1520if test "x$enable_gallium_i965" = xyes; then
1521 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i965"
Chia-I Wud8e0e112010-06-29 14:04:27 +08001522 gallium_check_st "i965/drm" "dri-i965" "xorg-i965"
Jakob Bornecrantz7dce4f32010-06-11 13:00:16 +02001523elif test "x$enable_gallium_i965" = xauto; then
1524 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS i965"
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001525fi
1526
1527dnl
Marek Olšák85a45dc2010-09-23 21:50:43 +02001528dnl Gallium Radeon r300g configuration
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001529dnl
1530AC_ARG_ENABLE([gallium-radeon],
1531 [AS_HELP_STRING([--enable-gallium-radeon],
1532 [build gallium radeon @<:@default=disabled@:>@])],
1533 [enable_gallium_radeon="$enableval"],
Jakob Bornecrantz877cadb2010-01-14 22:51:25 +00001534 [enable_gallium_radeon=auto])
Marek Olšák85a45dc2010-09-23 21:50:43 +02001535if test "x$enable_gallium_radeon" = xyes || test "x$enable_gallium_radeon" = xauto; then
Marek Olšáka1aec2e2010-09-26 17:52:58 +02001536 if test "x$HAVE_LIBDRM_RADEON" = xyes; then
1537 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300"
1538 gallium_check_st "radeon/drm" "dri-r300" "xorg-radeon"
1539 else
1540 AC_MSG_WARN([libdrm_radeon is missing, not building gallium-radeon (r300)])
1541 fi
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001542fi
1543
1544dnl
Jakob Bornecrantzaeee5262010-05-13 20:29:18 +01001545dnl Gallium Radeon r600g configuration
1546dnl
1547AC_ARG_ENABLE([gallium-r600],
1548 [AS_HELP_STRING([--enable-gallium-r600],
1549 [build gallium radeon @<:@default=disabled@:>@])],
1550 [enable_gallium_r600="$enableval"],
1551 [enable_gallium_r600=auto])
1552if test "x$enable_gallium_r600" = xyes; then
Marek Olšáka1aec2e2010-09-26 17:52:58 +02001553 if test "x$HAVE_LIBDRM_RADEON" = xyes; then
1554 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r600"
1555 gallium_check_st "r600/drm" "dri-r600"
1556 else
1557 AC_MSG_ERROR([libdrm_radeon is missing, cannot build gallium-r600])
1558 fi
Jakob Bornecrantzaeee5262010-05-13 20:29:18 +01001559fi
1560
1561dnl
Thierry Vignaud1402ea82009-09-14 11:48:51 -06001562dnl Gallium Nouveau configuration
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001563dnl
1564AC_ARG_ENABLE([gallium-nouveau],
1565 [AS_HELP_STRING([--enable-gallium-nouveau],
1566 [build gallium nouveau @<:@default=disabled@:>@])],
1567 [enable_gallium_nouveau="$enableval"],
1568 [enable_gallium_nouveau=no])
1569if test "x$enable_gallium_nouveau" = xyes; then
Luca Barbierif9d09a22010-02-21 15:13:12 +01001570 GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS nouveau nvfx nv50"
Chia-I Wud8e0e112010-06-29 14:04:27 +08001571 gallium_check_st "nouveau/drm" "dri-nouveau" "xorg-nouveau"
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001572fi
1573
Chia-I Wua1306f42010-01-22 15:51:51 +08001574dnl
1575dnl Gallium swrast configuration
1576dnl
1577AC_ARG_ENABLE([gallium-swrast],
1578 [AS_HELP_STRING([--enable-gallium-swrast],
Jakob Bornecrantzf5ba2cd2010-03-24 10:58:45 +01001579 [build gallium swrast @<:@default=auto@:>@])],
Chia-I Wua1306f42010-01-22 15:51:51 +08001580 [enable_gallium_swrast="$enableval"],
1581 [enable_gallium_swrast=auto])
George Sapountzis7b333292010-03-25 17:01:54 +02001582if test "x$enable_gallium_swrast" = xyes || test "x$enable_gallium_swrast" = xauto; then
Jakob Bornecrantz5b1fc142010-03-25 18:29:51 +01001583 if test "x$HAVE_ST_DRI" = xyes; then
George Sapountzis7b333292010-03-25 17:01:54 +02001584 GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS dri-swrast"
Jakob Bornecrantzf5ba2cd2010-03-24 10:58:45 +01001585 fi
Chia-I Wua1306f42010-01-22 15:51:51 +08001586fi
1587
Chia-I Wu99a37ed2010-01-05 17:39:05 +08001588dnl prepend CORE_DIRS to SRC_DIRS
1589SRC_DIRS="$CORE_DIRS $SRC_DIRS"
Jakob Bornecrantz3ede3772009-02-13 00:57:47 +01001590
Dan Nicholsondca1b792007-10-23 09:25:58 -07001591dnl Restore LDFLAGS and CPPFLAGS
1592LDFLAGS="$_SAVE_LDFLAGS"
1593CPPFLAGS="$_SAVE_CPPFLAGS"
1594
1595dnl Substitute the config
Dan Nicholsonf64d6fe2007-12-12 17:57:45 -08001596AC_CONFIG_FILES([configs/autoconf])
Dan Nicholsondca1b792007-10-23 09:25:58 -07001597
Dan Nicholsonaab38cf2007-12-11 08:21:51 -08001598dnl Replace the configs/current symlink
Dan Nicholsone14ebbc2008-05-06 11:28:43 -07001599AC_CONFIG_COMMANDS([configs],[
Dan Nicholsonaab38cf2007-12-11 08:21:51 -08001600if test -f configs/current || test -L configs/current; then
1601 rm -f configs/current
1602fi
1603ln -s autoconf configs/current
Dan Nicholsone14ebbc2008-05-06 11:28:43 -07001604])
1605
1606AC_OUTPUT
Dan Nicholsonaab38cf2007-12-11 08:21:51 -08001607
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001608dnl
1609dnl Output some configuration info for the user
1610dnl
1611echo ""
1612echo " prefix: $prefix"
1613echo " exec_prefix: $exec_prefix"
1614echo " libdir: $libdir"
Dan Nicholson11ac5b22008-07-03 09:17:44 -07001615echo " includedir: $includedir"
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001616
1617dnl Driver info
1618echo ""
1619echo " Driver: $mesa_driver"
Dan Nicholson544ab202007-12-30 08:41:53 -08001620if echo "$DRIVER_DIRS" | grep 'osmesa' >/dev/null 2>&1; then
1621 echo " OSMesa: lib$OSMESA_LIB"
1622else
1623 echo " OSMesa: no"
1624fi
1625if test "$mesa_driver" = dri; then
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001626 # cleanup the drivers var
1627 dri_dirs=`echo $DRI_DIRS | $SED 's/^ *//;s/ */ /;s/ *$//'`
Florent Thoumieb5095ab2008-07-28 14:44:43 +01001628if test "x$DRI_DIRS" = x; then
1629 echo " DRI drivers: no"
1630else
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001631 echo " DRI drivers: $dri_dirs"
Florent Thoumieb5095ab2008-07-28 14:44:43 +01001632fi
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001633 echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
Dan Nicholson544ab202007-12-30 08:41:53 -08001634fi
RALOVICH, Kristóf5f19f5c2008-11-04 11:53:32 +01001635echo " Use XCB: $enable_xcb"
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001636
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001637echo ""
Eric Anholt1a8b1272010-05-21 12:17:24 -07001638if test "x$MESA_LLVM" = x1; then
Jakob Bornecrantzfe0fe672010-04-28 13:38:58 +01001639 echo " llvm: yes"
1640 echo " llvm-config: $LLVM_CONFIG"
1641 echo " llvm-version: $LLVM_VERSION"
1642else
1643 echo " llvm: no"
1644fi
1645
1646echo ""
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001647if echo "$SRC_DIRS" | grep 'gallium' >/dev/null 2>&1; then
1648 echo " Gallium: yes"
1649 echo " Gallium dirs: $GALLIUM_DIRS"
Keith Whitwell51bff092010-03-11 14:43:00 +00001650 echo " Target dirs: $GALLIUM_TARGET_DIRS"
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001651 echo " Winsys dirs: $GALLIUM_WINSYS_DIRS"
Jakob Bornecrantzd67bd602009-02-20 11:03:18 +00001652 echo " Driver dirs: $GALLIUM_DRIVERS_DIRS"
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001653 echo " Trackers dirs: $GALLIUM_STATE_TRACKERS_DIRS"
Chia-I Wu63ab2502010-05-05 15:38:02 +08001654 if test "x$HAVE_ST_EGL" = xyes; then
1655 echo " EGL client APIs: $EGL_CLIENT_APIS"
1656 fi
Jakob Bornecrantz7e54d7d2009-02-11 02:38:21 +01001657else
1658 echo " Gallium: no"
1659fi
1660
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001661dnl Libraries
1662echo ""
1663echo " Shared libs: $enable_shared"
1664echo " Static libs: $enable_static"
Kristian Høgsberg42fa0092010-02-03 10:18:28 -05001665if test "$enable_egl" = yes; then
1666 echo " EGL: $EGL_DRIVERS_DIRS"
Chia-I Wuda39d5d2010-06-17 16:07:46 +08001667 echo " EGL platforms: $EGL_PLATFORMS"
Kristian Høgsberg42fa0092010-02-03 10:18:28 -05001668else
1669 echo " EGL: no"
1670fi
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001671echo " GLU: $enable_glu"
Dan Nicholson776c60d2008-07-18 07:40:41 -07001672echo " GLw: $enable_glw (Motif: $enable_motif)"
Dan Nicholson9cad8e32007-11-30 08:49:57 -08001673echo " glut: $enable_glut"
1674
Dan Nicholson16a07fb2007-12-12 09:12:15 -08001675dnl Compiler options
1676# cleanup the CFLAGS/CXXFLAGS/DEFINES vars
1677cflags=`echo $CFLAGS $OPT_FLAGS $PIC_FLAGS $ARCH_FLAGS | \
1678 $SED 's/^ *//;s/ */ /;s/ *$//'`
1679cxxflags=`echo $CXXFLAGS $OPT_FLAGS $PIC_FLAGS $ARCH_FLAGS | \
1680 $SED 's/^ *//;s/ */ /;s/ *$//'`
1681defines=`echo $DEFINES $ASM_FLAGS | $SED 's/^ *//;s/ */ /;s/ *$//'`
1682echo ""
1683echo " CFLAGS: $cflags"
1684echo " CXXFLAGS: $cxxflags"
1685echo " Macros: $defines"
1686
Dan Nicholsondca1b792007-10-23 09:25:58 -07001687echo ""
Dan Nicholsonb6459422008-03-24 10:01:50 -07001688echo " Run '${MAKE-make}' to build Mesa"
Dan Nicholsondca1b792007-10-23 09:25:58 -07001689echo ""