Allow build without VA/X11 API.
[platform/upstream/libva-intel-driver.git] / configure.ac
1 # intel-driver package version number
2 m4_define([intel_driver_major_version], [1])
3 m4_define([intel_driver_minor_version], [0])
4 m4_define([intel_driver_micro_version], [16])
5 m4_define([intel_driver_pre_version],   [1])
6 m4_define([intel_driver_version],
7           [intel_driver_major_version.intel_driver_minor_version.intel_driver_micro_version])
8 m4_if(intel_driver_pre_version, [0], [], [
9 m4_append([intel_driver_version], intel_driver_pre_version, [.pre])
10 ])
11
12 # libva minimum version requirement
13 m4_define([libva_version], [0.34])
14 m4_define([libva_package_version], [1.2.0])
15
16 # libdrm minimum version requirement
17 m4_define([libdrm_version], [2.4.23])
18
19 AC_PREREQ([2.57])
20 AC_INIT([intel_driver], [intel_driver_version], [haihao.xiang@intel.com],
21         [libva-driver-intel])
22 AC_CONFIG_SRCDIR([Makefile.am])
23 AM_INIT_AUTOMAKE([1.9 tar-ustar])
24
25 AM_CONFIG_HEADER([src/config.h])
26
27 INTEL_DRIVER_MAJOR_VERSION=intel_driver_major_version
28 INTEL_DRIVER_MINOR_VERSION=intel_driver_minor_version
29 INTEL_DRIVER_MICRO_VERSION=intel_driver_micro_version
30 AC_DEFINE([INTEL_DRIVER_MAJOR_VERSION], [intel_driver_major_version], [Major version of the driver])
31 AC_DEFINE([INTEL_DRIVER_MINOR_VERSION], [intel_driver_minor_version], [Minor version of the driver])
32 AC_DEFINE([INTEL_DRIVER_MICRO_VERSION], [intel_driver_micro_version], [Micro version of the driver])
33 AC_DEFINE([INTEL_DRIVER_PRE_VERSION], [intel_driver_pre_version], [Preversion of the driver])
34
35 INTEL_DRIVER_LT_LDFLAGS="-avoid-version"
36 AC_SUBST(INTEL_DRIVER_LT_LDFLAGS)
37
38 dnl Use pretty build output with automake >= 1.11
39 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [
40     AM_DEFAULT_VERBOSITY=1
41     AC_SUBST(AM_DEFAULT_VERBOSITY)
42 ])
43
44 AC_ARG_ENABLE(drm,
45     [AC_HELP_STRING([--enable-drm],
46                     [build with VA/DRM API support @<:@default=yes@:>@])],
47     [], [enable_drm="yes"])
48
49 AC_ARG_ENABLE(x11,
50     [AC_HELP_STRING([--enable-x11],
51                     [build with VA/X11 API support @<:@default=yes@:>@])],
52     [], [enable_x11="yes"])
53
54 AC_DISABLE_STATIC
55 AC_PROG_LIBTOOL
56 AC_PROG_CC
57 AM_PROG_CC_C_O
58
59 AC_C_BIGENDIAN
60 AC_HEADER_STDC
61 AC_SYS_LARGEFILE
62
63 LIBVA_PACKAGE_VERSION=libva_package_version
64 AC_SUBST(LIBVA_PACKAGE_VERSION)
65
66 dnl Check for recent enough DRM
67 LIBDRM_VERSION=libdrm_version
68 PKG_CHECK_MODULES([DRM], [libdrm >= $LIBDRM_VERSION])
69 AC_SUBST(LIBDRM_VERSION)
70
71 dnl Check for gen4asm
72 PKG_CHECK_MODULES(GEN4ASM, [intel-gen4asm >= 1.2], [gen4asm=yes], [gen4asm=no])
73 AM_CONDITIONAL(HAVE_GEN4ASM, test x$gen4asm = xyes)
74 AC_PATH_PROG([GEN4ASM], [intel-gen4asm])
75
76 dnl Check for VA-API
77 PKG_CHECK_MODULES(LIBVA_DEPS,     [libva >= libva_version])
78
79 dnl Check for VA/DRM API
80 USE_DRM="$enable_drm"
81 if test "$USE_DRM" = "yes"; then
82     PKG_CHECK_MODULES(LIBVA_DRM_DEPS, [libva-drm],
83       [AC_DEFINE([HAVE_VA_DRM], [1], [Defined to 1 if VA/DRM API is enabled])],
84       [USE_DRM="no"])
85
86     # Check for <drm_fourcc.h>
87     if test "$USE_DRM" = "yes"; then
88         saved_CPPFLAGS="$CPPFLAGS"
89         CPPFLAGS="$CPPFLAGS $DRM_CFLAGS"
90         AC_CHECK_HEADERS([drm_fourcc.h], [:], [USE_DRM="no"])
91         CPPFLAGS="$saved_CPPFLAGS"
92     fi
93 fi
94 AM_CONDITIONAL(USE_DRM, test "$USE_DRM" = "yes")
95
96 VA_VERSION=`$PKG_CONFIG --modversion libva`
97 VA_MAJOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f1`
98 VA_MINOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f2`
99 VA_MICRO_VERSION=`echo "$VA_VERSION" | cut -d'.' -f3`
100 VA_VERSION_STR="$VA_VERSION"
101
102 va_full_version_int=`expr ${VA_MAJOR_VERSION:-0} "*" 1000000 + \
103                           ${VA_MINOR_VERSION:-0} "*" 10000   + \
104                           ${VA_MICRO_VERSION:-0} "*" 100     + \
105                           0`
106 VA_DRIVER_INIT_FUNC="__vaDriverInit_${VA_MAJOR_VERSION}_${VA_MINOR_VERSION}"
107 AC_DEFINE_UNQUOTED([VA_DRIVER_INIT_FUNC], [$VA_DRIVER_INIT_FUNC],
108     [Define driver entry-point])
109
110 dnl Check for VA/DRM API
111 USE_X11="$enable_x11"
112 if test "$USE_X11" = "yes"; then
113     PKG_CHECK_MODULES(LIBVA_X11_DEPS, [libva-x11],
114       [AC_DEFINE([HAVE_VA_X11], [1], [Defined to 1 if VA/X11 API is enabled])],
115       [USE_X11="no"])
116 fi
117 AM_CONDITIONAL(USE_X11, test "$USE_X11" = "yes")
118
119 dnl Check for VA-API drivers path
120 AC_MSG_CHECKING([for VA drivers path])
121 LIBVA_DRIVERS_PATH=`$PKG_CONFIG libva --variable driverdir`
122 if test -z "$LIBVA_DRIVERS_PATH"; then
123     LIBVA_DRIVERS_PATH="/usr/lib/xorg/modules/drivers"
124 fi
125 AC_MSG_RESULT([$LIBVA_DRIVERS_PATH])
126 AC_SUBST(LIBVA_DRIVERS_PATH)
127
128 AC_OUTPUT([
129     Makefile
130     debian.upstream/Makefile 
131     src/Makefile
132     src/shaders/Makefile
133     src/shaders/h264/Makefile
134     src/shaders/h264/ildb/Makefile
135     src/shaders/h264/mc/Makefile
136     src/shaders/mpeg2/Makefile
137     src/shaders/mpeg2/vld/Makefile
138     src/shaders/post_processing/Makefile
139     src/shaders/post_processing/gen5_6/Makefile
140     src/shaders/post_processing/gen7/Makefile
141     src/shaders/render/Makefile
142     src/shaders/utils/Makefile
143     src/shaders/vme/Makefile
144 ])
145
146 dnl Print summary
147 BACKENDS=""
148 AS_IF([test "$USE_DRM" = "yes"], [BACKENDS="$BACKENDS drm"])
149 AS_IF([test "$USE_X11" = "yes"], [BACKENDS="$BACKENDS x11"])
150
151 echo
152 echo $PACKAGE configuration summary:
153 echo
154 echo VA-API version ................... : $VA_VERSION_STR
155 echo VA-API drivers path .............. : $LIBVA_DRIVERS_PATH
156 echo Windowing systems ................ : $BACKENDS
157 echo