Eric Anholt | 8c64183 | 2009-03-26 17:15:11 -0700 | [diff] [blame] | 1 | # Copyright 2005 Adam Jackson. |
| 2 | # |
| 3 | # Permission is hereby granted, free of charge, to any person obtaining a |
| 4 | # copy of this software and associated documentation files (the "Software"), |
| 5 | # to deal in the Software without restriction, including without limitation |
| 6 | # on the rights to use, copy, modify, merge, publish, distribute, sub |
| 7 | # license, and/or sell copies of the Software, and to permit persons to whom |
| 8 | # the Software is furnished to do so, subject to the following conditions: |
| 9 | # |
| 10 | # The above copyright notice and this permission notice (including the next |
| 11 | # paragraph) shall be included in all copies or substantial portions of the |
| 12 | # Software. |
| 13 | # |
| 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| 15 | # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 16 | # FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL |
| 17 | # ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER |
| 18 | # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN |
| 19 | # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| 20 | # |
| 21 | # Process this file with autoconf to produce a configure script |
| 22 | |
Gaetan Nadon | d63a1f6 | 2012-01-03 21:12:25 -0500 | [diff] [blame] | 23 | AC_PREREQ([2.60]) |
Arkadiusz Hiler | eccae13 | 2018-05-15 14:07:50 +0300 | [diff] [blame] | 24 | AC_INIT([igt-gpu-tools], |
Petri Latvala | 22850c1 | 2019-06-20 14:52:12 +0300 | [diff] [blame] | 25 | [1.24], |
Mike Frysinger | e73e398 | 2016-06-22 07:08:03 -0400 | [diff] [blame] | 26 | [https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=IGT], |
Arkadiusz Hiler | eccae13 | 2018-05-15 14:07:50 +0300 | [diff] [blame] | 27 | [igt-gpu-tools]) |
Eric Anholt | 8c64183 | 2009-03-26 17:15:11 -0700 | [diff] [blame] | 28 | |
| 29 | AC_CONFIG_SRCDIR([Makefile.am]) |
Javier Jardón | 68b64f1 | 2011-02-08 22:33:12 +0000 | [diff] [blame] | 30 | AC_CONFIG_HEADERS([config.h]) |
| 31 | AC_CONFIG_MACRO_DIR([m4]) |
| 32 | AC_CONFIG_AUX_DIR([build-aux]) |
Alan Coopersmith | 504c4fa | 2012-01-06 15:45:29 -0800 | [diff] [blame] | 33 | AC_USE_SYSTEM_EXTENSIONS |
Chris Wilson | d364c28 | 2012-03-14 10:59:51 +0000 | [diff] [blame] | 34 | AC_SYS_LARGEFILE |
Ben Widawsky | 8af53e0 | 2012-03-24 19:03:38 -0700 | [diff] [blame] | 35 | AC_GNU_SOURCE |
Daniel Vetter | 831a471 | 2013-12-10 09:23:44 +0100 | [diff] [blame] | 36 | AC_CANONICAL_HOST |
Daniel Stone | bccc0ec | 2016-01-25 18:33:12 +0000 | [diff] [blame] | 37 | AC_CANONICAL_TARGET |
Eric Anholt | 8c64183 | 2009-03-26 17:15:11 -0700 | [diff] [blame] | 38 | |
Damien Lespiau | fd772e3 | 2015-06-05 15:51:40 +0100 | [diff] [blame] | 39 | AM_INIT_AUTOMAKE([1.12 foreign subdir-objects dist-bzip2]) |
Gaetan Nadon | 4768adf | 2012-01-10 17:25:24 -0500 | [diff] [blame] | 40 | AM_PATH_PYTHON([3],, [:]) |
Eric Anholt | 8c64183 | 2009-03-26 17:15:11 -0700 | [diff] [blame] | 41 | |
Damien Lespiau | 191c859 | 2013-01-14 23:21:21 +0000 | [diff] [blame] | 42 | AC_PROG_CC |
Tvrtko Ursulin | d9dcfc3 | 2017-05-26 12:11:04 +0100 | [diff] [blame] | 43 | AC_PROG_LEX |
Damien Lespiau | 191c859 | 2013-01-14 23:21:21 +0000 | [diff] [blame] | 44 | AC_PROG_YACC |
| 45 | |
Alan Coopersmith | 9ebb860 | 2012-01-06 14:37:16 -0800 | [diff] [blame] | 46 | # Checks for functions, headers, structures, etc. |
Damien Lespiau | 191c859 | 2013-01-14 23:21:21 +0000 | [diff] [blame] | 47 | AC_HEADER_STDC |
Thomas Wood | 80f1553 | 2015-07-16 11:41:32 +0100 | [diff] [blame] | 48 | AC_CHECK_HEADERS([termios.h linux/kd.h sys/kd.h libgen.h sys/io.h]) |
Alan Coopersmith | 9ebb860 | 2012-01-06 14:37:16 -0800 | [diff] [blame] | 49 | AC_CHECK_MEMBERS([struct sysinfo.totalram],[],[],[AC_INCLUDES_DEFAULT |
Ben Widawsky | 90f0b3d | 2013-01-31 13:04:18 -0800 | [diff] [blame] | 50 | #include <sys/sysinfo.h> |
| 51 | ]) |
Alan Coopersmith | 95ea5d5 | 2014-12-23 19:07:12 -0800 | [diff] [blame] | 52 | AC_CHECK_TYPES([sighandler_t],[],[],[AC_INCLUDES_DEFAULT |
| 53 | #include <signal.h>]) |
Alan Coopersmith | fbae138 | 2012-01-23 20:13:49 -0800 | [diff] [blame] | 54 | AC_CHECK_FUNCS([swapctl]) |
Ben Widawsky | 8af53e0 | 2012-03-24 19:03:38 -0700 | [diff] [blame] | 55 | AC_CHECK_FUNCS([asprintf]) |
Lyude | 31811f4 | 2016-12-21 14:00:54 -0500 | [diff] [blame] | 56 | AX_GCC_FUNC_ATTRIBUTE([constructor]) |
Alan Coopersmith | 9ebb860 | 2012-01-06 14:37:16 -0800 | [diff] [blame] | 57 | |
Chris Wilson | d545610 | 2016-03-19 13:04:02 +0000 | [diff] [blame] | 58 | dnl Check for POSIX timers |
| 59 | AC_CHECK_FUNCS(timer_create, [], [ |
| 60 | AC_CHECK_LIB(rt, timer_create, [ |
Chris Wilson | d545610 | 2016-03-19 13:04:02 +0000 | [diff] [blame] | 61 | TIMER_LIBS="-lrt" |
| 62 | ], [ |
| 63 | AC_CHECK_LIB(pthread, timer_create, [ |
Chris Wilson | d545610 | 2016-03-19 13:04:02 +0000 | [diff] [blame] | 64 | TIMER_LIBS="-lpthread" |
Tvrtko Ursulin | a958d3f | 2019-03-01 10:25:58 +0000 | [diff] [blame] | 65 | ], [ |
| 66 | AC_MSG_ERROR([Failed to find library containing timer_create.]) |
Chris Wilson | d545610 | 2016-03-19 13:04:02 +0000 | [diff] [blame] | 67 | ]) |
| 68 | ]) |
| 69 | ]) |
| 70 | AC_SUBST(TIMER_LIBS) |
| 71 | |
Lucas De Marchi | bcb37a9 | 2018-07-24 15:20:24 -0700 | [diff] [blame] | 72 | dnl Check for memfd_create |
| 73 | AC_CHECK_FUNCS(memfd_create) |
| 74 | |
Chris Wilson | 545fe0f | 2016-07-11 12:39:01 +0100 | [diff] [blame] | 75 | dnl Check for CPUID |
| 76 | cpuid="yes" |
| 77 | AC_TRY_LINK([ |
| 78 | #include <cpuid.h> |
| 79 | #include <stddef.h> |
| 80 | ], |
| 81 | [ |
| 82 | int eax, ebx, ecx, edx; |
| 83 | if (__get_cpuid_max(0, NULL) < 4) |
| 84 | return 0; |
| 85 | __cpuid_count(4, 0, eax, ebx, ecx, edx); |
| 86 | ], |
| 87 | [cpuid="yes"], |
| 88 | [cpuid="no"] |
| 89 | ) |
| 90 | if test "x$cpuid" = "xyes"; then |
| 91 | AC_DEFINE(HAVE_CPUID_H, 1, [Found a useable cpuid.h]) |
| 92 | fi |
| 93 | |
Javier Jardón | 68b64f1 | 2011-02-08 22:33:12 +0000 | [diff] [blame] | 94 | # Initialize libtool |
Gaetan Nadon | 65db78f | 2012-01-03 21:13:39 -0500 | [diff] [blame] | 95 | AC_DISABLE_STATIC |
| 96 | AC_PROG_LIBTOOL |
Javier Jardón | 68b64f1 | 2011-02-08 22:33:12 +0000 | [diff] [blame] | 97 | |
Alan Coopersmith | 504c4fa | 2012-01-06 15:45:29 -0800 | [diff] [blame] | 98 | # Require X.Org macros 1.16 or later for XORG_TESTSET_CFLAG |
Gaetan Nadon | 1722b78 | 2012-01-03 21:12:22 -0500 | [diff] [blame] | 99 | m4_ifndef([XORG_MACROS_VERSION], |
Gaetan Nadon | 4768adf | 2012-01-10 17:25:24 -0500 | [diff] [blame] | 100 | [m4_fatal([must install xorg-macros 1.16 or later before running autoconf/autogen])]) |
Alan Coopersmith | 504c4fa | 2012-01-06 15:45:29 -0800 | [diff] [blame] | 101 | XORG_MACROS_VERSION(1.16) |
Gaetan Nadon | 1722b78 | 2012-01-03 21:12:22 -0500 | [diff] [blame] | 102 | XORG_DEFAULT_OPTIONS |
| 103 | |
Dave Airlie | 0c514b0 | 2017-08-14 17:07:05 +1000 | [diff] [blame] | 104 | PKG_CHECK_MODULES(DRM, [libdrm >= 2.4.82]) |
Eric Anholt | 8c64183 | 2009-03-26 17:15:11 -0700 | [diff] [blame] | 105 | PKG_CHECK_MODULES(PCIACCESS, [pciaccess >= 0.10]) |
Chris Wilson | 2021ef6 | 2016-11-26 16:13:13 +0000 | [diff] [blame] | 106 | PKG_CHECK_MODULES(KMOD, [libkmod]) |
Arkadiusz Hiler | 643dc09 | 2017-11-24 17:17:48 +0200 | [diff] [blame] | 107 | PKG_CHECK_MODULES(PROCPS, [libprocps]) |
Arkadiusz Hiler | 3601533 | 2017-12-01 15:19:54 +0200 | [diff] [blame] | 108 | PKG_CHECK_MODULES(LIBUNWIND, [libunwind]) |
Maarten Lankhorst | e39e099 | 2018-08-28 14:04:25 +0200 | [diff] [blame] | 109 | PKG_CHECK_MODULES(LIBDW, [libdw]) |
Maarten Lankhorst | d930b64 | 2017-02-09 10:42:01 +0100 | [diff] [blame] | 110 | PKG_CHECK_MODULES(VALGRIND, [valgrind], [have_valgrind=yes], [have_valgrind=no]) |
| 111 | |
| 112 | if test x$have_valgrind = xyes; then |
| 113 | AC_DEFINE(HAVE_VALGRIND, 1, [Enable valgrind annotation support.]) |
| 114 | fi |
Daniel Stone | bccc0ec | 2016-01-25 18:33:12 +0000 | [diff] [blame] | 115 | |
| 116 | case "$target_cpu" in |
Ville Syrjälä | 764d668 | 2016-10-12 19:03:49 +0300 | [diff] [blame] | 117 | x86*|i?86) |
Daniel Stone | bccc0ec | 2016-01-25 18:33:12 +0000 | [diff] [blame] | 118 | build_x86="yes" |
| 119 | ;; |
| 120 | *) |
| 121 | build_x86="no" |
| 122 | ;; |
| 123 | esac |
| 124 | |
Chris Wilson | 5aeacd5 | 2019-05-24 22:43:51 +0100 | [diff] [blame] | 125 | if test x"$build_x86" = xyes; then |
| 126 | PKG_CHECK_MODULES(OVERLAY_XVLIB, [xv x11 xext dri2proto >= 2.6], enable_overlay_xvlib=yes, enable_overlay_xvlib=no) |
| 127 | PKG_CHECK_MODULES(OVERLAY_XLIB, [cairo-xlib dri2proto >= 2.6], enable_overlay_xlib=yes, enable_overlay_xlib=no) |
| 128 | |
| 129 | AC_CHECK_TOOL([LEG], [leg]) |
| 130 | if test x"$LEG" != xleg; then |
| 131 | enable_overlay_xvlib="no" |
| 132 | enable_overlay_xlib="no" |
| 133 | AC_MSG_NOTICE([Failed to find leg, required for overlay, try : apt-get install peg]) |
| 134 | fi |
| 135 | else |
| 136 | enable_overlay_xvlib="no" |
| 137 | enable_overlay_xlib="no" |
| 138 | fi |
Daniel Stone | bccc0ec | 2016-01-25 18:33:12 +0000 | [diff] [blame] | 139 | AM_CONDITIONAL(BUILD_X86, [test "x$build_x86" = xyes]) |
| 140 | |
Chris Wilson | 34e4780 | 2013-08-18 21:10:26 +0100 | [diff] [blame] | 141 | AM_CONDITIONAL(BUILD_OVERLAY_XVLIB, [test "x$enable_overlay_xvlib" = xyes]) |
| 142 | AM_CONDITIONAL(BUILD_OVERLAY_XLIB, [test "x$enable_overlay_xlib" = xyes]) |
Lionel Landwerlin | 865a47c | 2017-12-18 23:00:54 +0000 | [diff] [blame] | 143 | AM_CONDITIONAL(BUILD_OVERLAY, [test "x$enable_overlay_xlib" = xyes -o "x$enable_overlay_xvlib" = "xyes"]) |
Chris Wilson | 34e4780 | 2013-08-18 21:10:26 +0100 | [diff] [blame] | 144 | if test x$enable_overlay_xvlib = xyes; then |
| 145 | AC_DEFINE(HAVE_OVERLAY_XVLIB, 1, [Enable XV backend]) |
| 146 | fi |
| 147 | if test x$enable_overlay_xlib = xyes; then |
| 148 | AC_DEFINE(HAVE_OVERLAY_XLIB, 1, [Enable X backend]) |
| 149 | fi |
Chris Wilson | ddcd1b2 | 2013-08-27 14:25:38 +0100 | [diff] [blame] | 150 | PKG_CHECK_MODULES(XRANDR, xrandr >= 1.3, AC_DEFINE(HAVE_XRANDR, 1, [Have libXrandr]), [have_xrandr=no]) |
Eric Anholt | 8c64183 | 2009-03-26 17:15:11 -0700 | [diff] [blame] | 151 | |
Daniel Vetter | 08ccec1 | 2012-01-19 13:01:03 +0100 | [diff] [blame] | 152 | # for testdisplay |
Maarten Lankhorst | cb8e45a | 2019-02-01 11:13:59 +0100 | [diff] [blame] | 153 | PKG_CHECK_MODULES(CAIRO, [cairo >= 1.17.2], [], |
| 154 | [AC_MSG_WARN([Cairo too old, HDR formats not available. Upgrade to cairo 1.17.2]) |
| 155 | PKG_CHECK_MODULES(CAIRO, [cairo >= 1.12.0])] |
| 156 | ) |
Antonio Argenziano | d75e676 | 2018-02-23 15:14:40 -0800 | [diff] [blame] | 157 | PKG_CHECK_MODULES(LIBUDEV, [libudev]) |
Petri Latvala | 9bbfbb1 | 2018-06-21 14:06:24 +0300 | [diff] [blame] | 158 | PKG_CHECK_MODULES(GLIB, [glib-2.0]) |
Maarten Lankhorst | cb8e45a | 2019-02-01 11:13:59 +0100 | [diff] [blame] | 159 | PKG_CHECK_MODULES(PIXMAN, [pixman-1 >= 0.36.0], [], [ |
| 160 | AC_MSG_WARN([Pixman too old, HDR formats not available. Upgrade to pixman 0.36.0]) |
| 161 | PKG_CHECK_MODULES(PIXMAN, [pixman-1]) |
| 162 | ]) |
| 163 | |
Paul Kocialkowski | 8cf32fe | 2017-07-20 18:13:36 +0300 | [diff] [blame] | 164 | PKG_CHECK_MODULES(GSL, [gsl], [gsl=yes], [gsl=no]) |
| 165 | AM_CONDITIONAL(HAVE_GSL, [test "x$gsl" = xyes]) |
Jesse Barnes | 5406c63 | 2010-12-21 09:38:23 -0800 | [diff] [blame] | 166 | |
Simon Ser | 6406844 | 2019-04-25 13:43:22 +0300 | [diff] [blame] | 167 | PKG_CHECK_MODULES(ALSA, [alsa], [alsa=yes], [alsa=no]) |
| 168 | AM_CONDITIONAL(HAVE_ALSA, [test "x$alsa" = xyes]) |
| 169 | |
Lyude | c99f8b7 | 2016-10-18 14:12:09 -0400 | [diff] [blame] | 170 | # for chamelium |
Paul Kocialkowski | f145475 | 2017-07-26 11:11:54 +0300 | [diff] [blame] | 171 | AC_ARG_ENABLE(chamelium, AS_HELP_STRING([--enable-chamelium], |
| 172 | [Enable building of chamelium libraries and tests (default: no)]), |
| 173 | [if test x$enableval = xyes; then enable_chamelium=yes; fi], |
| 174 | [enable_chamelium=no]) |
Lyude | fd096fc | 2017-07-17 19:38:32 -0400 | [diff] [blame] | 175 | AM_CONDITIONAL(HAVE_CHAMELIUM, [test "x$enable_chamelium" = xyes]) |
| 176 | if test "x$enable_chamelium" = xyes; then |
Petri Latvala | 28ed1c4 | 2017-08-03 16:34:45 +0300 | [diff] [blame] | 177 | PKG_CHECK_MODULES(XMLRPC, xmlrpc xmlrpc_util xmlrpc_client, |
| 178 | [xmlrpc=yes], [xmlrpc=no]) |
| 179 | if test x"$xmlrpc" != xyes; then |
| 180 | AC_CHECK_PROG([XMLRPC_C_CONFIG], [xmlrpc-c-config], [yes], [no]) |
| 181 | if test x"$XMLRPC_C_CONFIG" = xyes; then |
| 182 | XMLRPC_CFLAGS=$(xmlrpc-c-config client --cflags) |
| 183 | XMLRPC_LIBS=$(xmlrpc-c-config client --libs) |
| 184 | AC_SUBST(XMLRPC_CFLAGS) |
| 185 | AC_SUBST(XMLRPC_LIBS) |
| 186 | else |
| 187 | AC_MSG_ERROR([Failed to find xmlrpc, required by chamelium.]) |
| 188 | fi |
| 189 | fi |
Paul Kocialkowski | e246ff0 | 2017-07-20 18:13:37 +0300 | [diff] [blame] | 190 | if test x"$gsl" != xyes; then |
Paul Kocialkowski | f145475 | 2017-07-26 11:11:54 +0300 | [diff] [blame] | 191 | AC_MSG_ERROR([Failed to find gsl, required by chamelium.]) |
Paul Kocialkowski | e246ff0 | 2017-07-20 18:13:37 +0300 | [diff] [blame] | 192 | fi |
Simon Ser | 6406844 | 2019-04-25 13:43:22 +0300 | [diff] [blame] | 193 | if test x"$alsa" != xyes; then |
| 194 | AC_MSG_ERROR([Failed to find alsa, required by chamelium.]) |
| 195 | fi |
Paul Kocialkowski | e246ff0 | 2017-07-20 18:13:37 +0300 | [diff] [blame] | 196 | |
Petri Latvala | d8c6cf9 | 2017-06-08 10:47:00 +0300 | [diff] [blame] | 197 | AC_DEFINE(HAVE_CHAMELIUM, 1, [Enable Chamelium support]) |
| 198 | fi |
Lyude | c99f8b7 | 2016-10-18 14:12:09 -0400 | [diff] [blame] | 199 | |
Gaetan Nadon | 4768adf | 2012-01-10 17:25:24 -0500 | [diff] [blame] | 200 | # ----------------------------------------------------------------------------- |
| 201 | # Configuration options |
| 202 | # ----------------------------------------------------------------------------- |
Robert Foss | 0fbab81 | 2016-07-27 13:17:35 -0400 | [diff] [blame] | 203 | AC_ARG_ENABLE(intel, AS_HELP_STRING([--disable-intel], |
| 204 | [Enable building of intel specific parts (default: auto)]), |
| 205 | [INTEL=$enableval], [INTEL=auto]) |
| 206 | if test "x$INTEL" = xauto; then |
Daniel Vetter | b389bdb | 2017-07-07 13:56:02 +0200 | [diff] [blame] | 207 | PKG_CHECK_EXISTS([libdrm_intel >= 2.4.75], [INTEL=yes], [INTEL=no]) |
Robert Foss | 0fbab81 | 2016-07-27 13:17:35 -0400 | [diff] [blame] | 208 | fi |
| 209 | if test "x$INTEL" = xyes; then |
Jani Nikula | b30ff3b | 2017-03-01 13:25:52 +0200 | [diff] [blame] | 210 | PKG_CHECK_MODULES(DRM_INTEL, [libdrm_intel >= 2.4.75]) |
Robert Foss | 0fbab81 | 2016-07-27 13:17:35 -0400 | [diff] [blame] | 211 | AC_DEFINE(HAVE_LIBDRM_INTEL, 1, [Have intel support]) |
Robert Foss | 0fbab81 | 2016-07-27 13:17:35 -0400 | [diff] [blame] | 212 | else |
Emil Velikov | 31a00b1 | 2016-10-26 17:18:47 +0100 | [diff] [blame] | 213 | DRM_INTEL_CFLAGS=-I$\(top_srcdir\)/lib/stubs/drm/ |
| 214 | DRM_INTEL_LIBS= |
Robert Foss | 0fbab81 | 2016-07-27 13:17:35 -0400 | [diff] [blame] | 215 | fi |
Emil Velikov | 31a00b1 | 2016-10-26 17:18:47 +0100 | [diff] [blame] | 216 | DRM_CFLAGS="$DRM_CFLAGS $DRM_INTEL_CFLAGS" |
| 217 | DRM_LIBS="$DRM_LIBS $DRM_INTEL_LIBS" |
| 218 | AC_SUBST([DRM_CFLAGS]) |
| 219 | AC_SUBST([DRM_LIBS]) |
| 220 | |
Robert Foss | 0fbab81 | 2016-07-27 13:17:35 -0400 | [diff] [blame] | 221 | AM_CONDITIONAL(HAVE_LIBDRM_INTEL, [test "x$INTEL" = xyes]) |
| 222 | |
Chris Wilson | 36b92e8 | 2017-04-22 13:45:18 +0100 | [diff] [blame] | 223 | AC_ARG_ENABLE(amdgpu, AS_HELP_STRING([--disable-amdgpu], |
| 224 | [Enable building of amdgpu tests (default: auto)]), |
| 225 | [AMDGPU=$enableval], [AMDGPU=auto]) |
| 226 | if test "x$AMDGPU" = xauto; then |
Petri Latvala | d8c837a | 2018-03-09 14:21:31 +0200 | [diff] [blame] | 227 | PKG_CHECK_EXISTS([libdrm_amdgpu >= 2.4.81], [AMDGPU=yes], [AMDGPU=no]) |
Chris Wilson | 36b92e8 | 2017-04-22 13:45:18 +0100 | [diff] [blame] | 228 | fi |
| 229 | if test "x$AMDGPU" = xyes; then |
Petri Latvala | 621d309 | 2018-03-09 11:01:07 +0200 | [diff] [blame] | 230 | PKG_CHECK_MODULES(DRM_AMDGPU, [libdrm_amdgpu >= 2.4.81]) |
Chris Wilson | 36b92e8 | 2017-04-22 13:45:18 +0100 | [diff] [blame] | 231 | AC_DEFINE(HAVE_LIBDRM_AMDGPU, 1, [Have amdgpu support]) |
| 232 | fi |
| 233 | AM_CONDITIONAL(HAVE_LIBDRM_AMDGPU, [test "x$AMDGPU" = xyes]) |
| 234 | |
Ben Widawsky | 66ec9bd | 2013-02-07 08:29:24 -0800 | [diff] [blame] | 235 | # for dma-buf tests |
| 236 | AC_ARG_ENABLE(nouveau, AS_HELP_STRING([--disable-nouveau], |
Matt Turner | cd460f1 | 2013-10-10 20:54:25 -0700 | [diff] [blame] | 237 | [Enable use of nouveau API for prime tests (default: auto)]), |
| 238 | [NOUVEAU=$enableval], [NOUVEAU=auto]) |
| 239 | if test "x$NOUVEAU" = xauto; then |
| 240 | PKG_CHECK_EXISTS([libdrm_nouveau >= 2.4.33], [NOUVEAU=yes], [NOUVEAU=no]) |
| 241 | fi |
Ben Widawsky | 66ec9bd | 2013-02-07 08:29:24 -0800 | [diff] [blame] | 242 | if test "x$NOUVEAU" = xyes; then |
| 243 | PKG_CHECK_MODULES(DRM_NOUVEAU, [libdrm_nouveau >= 2.4.33]) |
Robert Foss | 5bde148 | 2016-07-27 13:17:36 -0400 | [diff] [blame] | 244 | AC_DEFINE(HAVE_LIBDRM_NOUVEAU, 1, [Have nouveau support]) |
Ben Widawsky | 66ec9bd | 2013-02-07 08:29:24 -0800 | [diff] [blame] | 245 | fi |
Robert Foss | 5bde148 | 2016-07-27 13:17:36 -0400 | [diff] [blame] | 246 | AM_CONDITIONAL(HAVE_LIBDRM_NOUVEAU, [test "x$NOUVEAU" = xyes]) |
Ben Widawsky | 66ec9bd | 2013-02-07 08:29:24 -0800 | [diff] [blame] | 247 | |
Thomas Wood | 76dad7f | 2015-03-23 11:46:25 +0000 | [diff] [blame] | 248 | # enable debug symbols |
| 249 | AC_ARG_ENABLE(debug, |
| 250 | AS_HELP_STRING([--disable-debug], |
| 251 | [Build tests without debug symbols]), |
| 252 | [], [enable_debug=yes]) |
| 253 | |
marius vlad | 701d8fd | 2016-05-10 17:32:15 +0300 | [diff] [blame] | 254 | AC_ARG_ENABLE(werror, |
| 255 | AS_HELP_STRING([--enable-werror], |
| 256 | [Fail on warnings]), |
| 257 | [], [enable_werror=no]) |
| 258 | |
Tvrtko Ursulin | a117a5b | 2019-02-28 14:06:26 +0000 | [diff] [blame] | 259 | # disable "warning: pointer of type ‘void *’ used in arithmetic" |
| 260 | AS_COMPILER_FLAG([-Wno-pointer-arith], [CWARNFLAGS+=" -Wno-pointer-arith"], []) |
| 261 | |
Thomas Wood | 76dad7f | 2015-03-23 11:46:25 +0000 | [diff] [blame] | 262 | if test "x$enable_debug" = xyes; then |
| 263 | AS_COMPILER_FLAG([-g3], [DEBUG_CFLAGS="-g3"], [DEBUG_CFLAGS="-g"]) |
| 264 | AS_COMPILER_FLAG([-Og], [DEBUG_CFLAGS+=" -Og -Wno-maybe-uninitialized"], # disable maybe-uninitialized due to false positives |
| 265 | [DEBUG_CFLAGS+=" -O0"]) |
| 266 | AC_SUBST([DEBUG_CFLAGS]) |
| 267 | fi |
| 268 | |
marius vlad | 701d8fd | 2016-05-10 17:32:15 +0300 | [diff] [blame] | 269 | if test "x$enable_werror" = xyes; then |
| 270 | AS_COMPILER_FLAG([-Werror], [WERROR_CFLAGS="-Werror"]) |
| 271 | fi |
| 272 | |
Damien Lespiau | e5653d5 | 2015-07-01 23:40:36 +0100 | [diff] [blame] | 273 | # prevent relinking the world on every commit for developers |
| 274 | AC_ARG_ENABLE(git-hash, |
| 275 | AS_HELP_STRING([--disable-git-hash], |
| 276 | [Do not use git hash in version]), |
| 277 | [git_hash=$enableval], [git_hash=yes]) |
Damien Lespiau | ec9e599 | 2015-07-02 14:59:25 +0100 | [diff] [blame] | 278 | AC_SUBST(GIT_HASH, [$git_hash]) |
Damien Lespiau | e5653d5 | 2015-07-01 23:40:36 +0100 | [diff] [blame] | 279 | |
Gaetan Nadon | 4768adf | 2012-01-10 17:25:24 -0500 | [diff] [blame] | 280 | # ----------------------------------------------------------------------------- |
| 281 | |
Alan Coopersmith | 504c4fa | 2012-01-06 15:45:29 -0800 | [diff] [blame] | 282 | # To build multithread code, gcc uses -pthread, Solaris Studio cc uses -mt |
| 283 | XORG_TESTSET_CFLAG([THREAD_CFLAGS], [-pthread], [-mt]) |
| 284 | AC_SUBST([THREAD_CFLAGS]) |
| 285 | |
Rodrigo Vivi | 7c17072 | 2013-02-05 16:17:54 -0200 | [diff] [blame] | 286 | AC_ARG_ENABLE(tests, |
| 287 | AS_HELP_STRING([--disable-tests], |
| 288 | [Disable tests build (default: enabled)]), |
| 289 | [BUILD_TESTS=$enableval], [BUILD_TESTS="yes"]) |
| 290 | if test "x$BUILD_TESTS" = xyes; then |
| 291 | AC_DEFINE(BUILD_TESTS, 1, [Build tests]) |
Rodrigo Vivi | 7c17072 | 2013-02-05 16:17:54 -0200 | [diff] [blame] | 292 | fi |
| 293 | AM_CONDITIONAL(BUILD_TESTS, [test "x$BUILD_TESTS" = xyes]) |
Daniel Vetter | 831a471 | 2013-12-10 09:23:44 +0100 | [diff] [blame] | 294 | AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform]) |
Rodrigo Vivi | 7c17072 | 2013-02-05 16:17:54 -0200 | [diff] [blame] | 295 | |
Thomas Wood | 4839447 | 2014-10-16 14:23:24 +0100 | [diff] [blame] | 296 | files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake" |
Thomas Wood | c54ee98 | 2014-06-06 15:28:50 +0100 | [diff] [blame] | 297 | for file in $files; do |
Thomas Wood | 9ecb50e | 2015-09-04 14:46:45 +0100 | [diff] [blame] | 298 | REGISTER_FILES="$REGISTER_FILES $file `cat $srcdir/tools/registers/$file`" |
Thomas Wood | c54ee98 | 2014-06-06 15:28:50 +0100 | [diff] [blame] | 299 | done |
Thomas Wood | 9ecb50e | 2015-09-04 14:46:45 +0100 | [diff] [blame] | 300 | REGISTER_FILES=`echo $REGISTER_FILES | tr ' ' '\n' | sort -u | tr '\n' ' '` |
| 301 | AC_SUBST(REGISTER_FILES) |
Thomas Wood | c54ee98 | 2014-06-06 15:28:50 +0100 | [diff] [blame] | 302 | |
Javier Jardón | 68b64f1 | 2011-02-08 22:33:12 +0000 | [diff] [blame] | 303 | AC_CONFIG_FILES([ |
Ben Widawsky | 90f0b3d | 2013-01-31 13:04:18 -0800 | [diff] [blame] | 304 | Makefile |
| 305 | benchmarks/Makefile |
Ben Widawsky | 90f0b3d | 2013-01-31 13:04:18 -0800 | [diff] [blame] | 306 | lib/Makefile |
Ben Widawsky | 90f0b3d | 2013-01-31 13:04:18 -0800 | [diff] [blame] | 307 | scripts/Makefile |
Ben Widawsky | 3a752a3 | 2013-02-07 10:30:03 -0800 | [diff] [blame] | 308 | tests/Makefile |
Petri Latvala | 8648655 | 2017-06-09 14:32:17 +0300 | [diff] [blame] | 309 | tests/intel-ci/Makefile |
Ben Widawsky | 90f0b3d | 2013-01-31 13:04:18 -0800 | [diff] [blame] | 310 | tools/Makefile |
Mika Kuoppala | d60d4c8 | 2014-04-10 15:15:13 +0300 | [diff] [blame] | 311 | tools/null_state_gen/Makefile |
Thomas Wood | af97918 | 2015-08-25 11:30:11 +0100 | [diff] [blame] | 312 | tools/registers/Makefile |
Chris Wilson | f9a50de | 2013-08-17 11:12:07 +0100 | [diff] [blame] | 313 | overlay/Makefile |
Kristian Høgsberg Kristensen | 5f9bc98 | 2015-08-05 11:55:09 -0700 | [diff] [blame] | 314 | ]) |
| 315 | |
| 316 | AC_CONFIG_FILES([tools/intel_aubdump], [chmod +x tools/intel_aubdump]) |
Kristian Høgsberg Kristensen | e6a5d79 | 2015-07-29 23:12:16 -0700 | [diff] [blame] | 317 | |
Javier Jardón | 68b64f1 | 2011-02-08 22:33:12 +0000 | [diff] [blame] | 318 | AC_OUTPUT |
Ben Widawsky | c75b8c6 | 2013-01-31 13:06:17 -0800 | [diff] [blame] | 319 | |
Damien Lespiau | 5435708 | 2013-01-21 23:02:36 +0000 | [diff] [blame] | 320 | # Print a summary of the compilation |
| 321 | echo "" |
| 322 | echo "Intel GPU tools" |
| 323 | |
| 324 | echo "" |
Damien Lespiau | 94444ae | 2013-07-19 16:08:11 +0100 | [diff] [blame] | 325 | echo " • Tests:" |
| 326 | echo " Build tests : ${BUILD_TESTS}" |
Paul Kocialkowski | f145475 | 2017-07-26 11:11:54 +0300 | [diff] [blame] | 327 | echo " Chamelium tests : ${enable_chamelium}" |
Damien Lespiau | 94444ae | 2013-07-19 16:08:11 +0100 | [diff] [blame] | 328 | echo " Compile prime tests: ${NOUVEAU}" |
Thomas Wood | 76dad7f | 2015-03-23 11:46:25 +0000 | [diff] [blame] | 329 | echo " Debug flags : ${DEBUG_CFLAGS}" |
Damien Lespiau | 94444ae | 2013-07-19 16:08:11 +0100 | [diff] [blame] | 330 | echo "" |
Damien Lespiau | 5435708 | 2013-01-21 23:02:36 +0000 | [diff] [blame] | 331 | echo " • Tools:" |
Damien Lespiau | b5acc10 | 2013-08-20 14:18:58 +0100 | [diff] [blame] | 332 | echo " Overlay : X: ${enable_overlay_xlib}, Xv: ${enable_overlay_xvlib}" |
Daniel Stone | bccc0ec | 2016-01-25 18:33:12 +0000 | [diff] [blame] | 333 | echo " x86-specific tools : ${build_x86}" |
Petri Latvala | 18c1e75 | 2018-08-08 14:07:00 +0300 | [diff] [blame] | 334 | echo " Test runner : ${BUILD_RUNNER}" |
Damien Lespiau | 5435708 | 2013-01-21 23:02:36 +0000 | [diff] [blame] | 335 | echo "" |
Marius Vlad | 3ce58b6 | 2016-05-31 18:33:24 +0300 | [diff] [blame] | 336 | echo " • Fail on warnings : ${enable_werror}" |
Daniel Vetter | a90846a | 2014-03-11 21:03:39 +0100 | [diff] [blame] | 337 | echo "" |
Daniel Vetter | 67993c1 | 2019-01-22 14:42:12 +0100 | [diff] [blame] | 338 | echo " WARNING: automake is deprecated, please use meson" |
| 339 | echo "" |
Damien Lespiau | 5435708 | 2013-01-21 23:02:36 +0000 | [diff] [blame] | 340 | |
Ben Widawsky | c75b8c6 | 2013-01-31 13:06:17 -0800 | [diff] [blame] | 341 | # vim: set ft=config ts=8 sw=8 tw=0 noet : |