OSDN Git Service

Fix the ROI bottom setting issue in vdenc
[android-x86/hardware-intel-common-vaapi.git] / configure.ac
1 # intel-vaapi-driver package version number
2 m4_define([intel_vaapi_driver_major_version], [1])
3 m4_define([intel_vaapi_driver_minor_version], [8])
4 m4_define([intel_vaapi_driver_micro_version], [4])
5 m4_define([intel_vaapi_driver_pre_version],   [1])
6 m4_define([intel_vaapi_driver_version],
7           [intel_vaapi_driver_major_version.intel_vaapi_driver_minor_version.intel_vaapi_driver_micro_version])
8 m4_if(intel_vaapi_driver_pre_version, [0], [], [
9 m4_append([intel_vaapi_driver_version], intel_vaapi_driver_pre_version, [.pre])
10 ])
11
12 # libva minimum version requirement
13 m4_define([va_api_version], [0.39.4])
14 m4_define([libva_package_version], [1.7.3])
15
16 # libdrm minimum version requirement
17 m4_define([libdrm_version], [2.4.52])
18
19 # Wayland minimum version requirement
20 # 1.11.0 for wl_proxy_create_wrapper
21 m4_define([wayland_api_version], [1.11.0])
22
23 AC_PREREQ([2.57])
24 AC_INIT([intel_vaapi_driver],
25         [intel_vaapi_driver_version],
26         [https://github.com/01org/intel-vaapi-driver/issues/new],
27         [intel-vaapi-driver],
28         [https://github.com/01org/intel-vaapi-driver])
29 AC_CONFIG_SRCDIR([Makefile.am])
30 AM_INIT_AUTOMAKE([1.9 tar-ustar])
31
32 AC_CONFIG_HEADERS([src/config.h])
33
34 INTEL_DRIVER_MAJOR_VERSION=intel_vaapi_driver_major_version
35 INTEL_DRIVER_MINOR_VERSION=intel_vaapi_driver_minor_version
36 INTEL_DRIVER_MICRO_VERSION=intel_vaapi_driver_micro_version
37 AC_DEFINE([INTEL_DRIVER_MAJOR_VERSION], [intel_vaapi_driver_major_version], [Major version of the driver])
38 AC_DEFINE([INTEL_DRIVER_MINOR_VERSION], [intel_vaapi_driver_minor_version], [Minor version of the driver])
39 AC_DEFINE([INTEL_DRIVER_MICRO_VERSION], [intel_vaapi_driver_micro_version], [Micro version of the driver])
40 AC_DEFINE([INTEL_DRIVER_PRE_VERSION], [intel_vaapi_driver_pre_version], [Preversion of the driver])
41
42 INTEL_DRIVER_LT_LDFLAGS="-avoid-version"
43 AC_SUBST(INTEL_DRIVER_LT_LDFLAGS)
44
45 dnl Use pretty build output with automake >= 1.11
46 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [
47     AM_DEFAULT_VERBOSITY=1
48     AC_SUBST(AM_DEFAULT_VERBOSITY)
49 ])
50
51 AC_ARG_ENABLE(drm,
52     [AC_HELP_STRING([--enable-drm],
53                     [build with VA/DRM API support @<:@default=yes@:>@])],
54     [], [enable_drm="yes"])
55
56 AC_ARG_ENABLE(x11,
57     [AC_HELP_STRING([--enable-x11],
58                     [build with VA/X11 API support @<:@default=yes@:>@])],
59     [], [enable_x11="yes"])
60
61 AC_ARG_ENABLE([wayland],
62     [AC_HELP_STRING([--enable-wayland],
63                     [build with VA/Wayland API support @<:@default=yes@:>@])],
64     [], [enable_wayland="yes"])
65
66 AC_ARG_ENABLE([hybrid-codec],
67     [AC_HELP_STRING([--enable-hybrid-codec],
68                     [build with hybrid codec support @<:@default=no@:>@])],
69     [], [enable_hybrid_codec="no"])
70
71 AC_ARG_ENABLE([tests],
72     [AC_HELP_STRING([--enable-tests],
73                     [build tests @<:@default=no@:>@])],
74     [], [enable_tests="no"])
75
76 AC_DISABLE_STATIC
77 AC_PROG_LIBTOOL
78 AC_PROG_CC
79 AM_PROG_CC_C_O
80 AC_PROG_CXX
81 AC_C_BIGENDIAN
82 AC_HEADER_STDC
83 AC_SYS_LARGEFILE
84 AC_CHECK_LIB([m], [sin])
85 AC_CHECK_FUNCS([log2f])
86 AC_CHECK_PROGS([PYTHON2], [python2 python])
87
88 LIBVA_PACKAGE_VERSION=libva_package_version
89 AC_SUBST(LIBVA_PACKAGE_VERSION)
90
91 dnl Check for recent enough DRM
92 LIBDRM_VERSION=libdrm_version
93 PKG_CHECK_MODULES([DRM], [libdrm >= $LIBDRM_VERSION])
94 AC_SUBST(LIBDRM_VERSION)
95
96 dnl Check for gen4asm
97 PKG_CHECK_MODULES(GEN4ASM, [intel-gen4asm >= 1.9], [gen4asm=yes], [gen4asm=no])
98 AC_PATH_PROG([GEN4ASM], [intel-gen4asm])
99 AS_IF([test "x$GEN4ASM" = "x" ], [AM_CONDITIONAL(HAVE_GEN4ASM, false)],
100     [AM_CONDITIONAL(HAVE_GEN4ASM, [test x$gen4asm = xyes])])
101
102 dnl Check for git
103 AC_ARG_VAR([GIT], [Path to git program, if any])
104 AC_PATH_PROG([GIT], [git])
105 AM_CONDITIONAL([HAVE_GIT], [test -n "$GIT"])
106
107 dnl Check for VA-API
108 PKG_CHECK_MODULES(LIBVA_DEPS,     [libva >= va_api_version])
109
110 dnl Check for VA/DRM API
111 USE_DRM="$enable_drm"
112 if test "$USE_DRM" = "yes"; then
113     PKG_CHECK_MODULES(LIBVA_DRM_DEPS, [libva-drm],
114       [AC_DEFINE([HAVE_VA_DRM], [1], [Defined to 1 if VA/DRM API is enabled])],
115       [USE_DRM="no"])
116
117     # Check for <drm_fourcc.h>
118     if test "$USE_DRM" = "yes"; then
119         saved_CPPFLAGS="$CPPFLAGS"
120         CPPFLAGS="$CPPFLAGS $DRM_CFLAGS"
121         AC_CHECK_HEADERS([drm_fourcc.h], [:], [USE_DRM="no"])
122         CPPFLAGS="$saved_CPPFLAGS"
123     fi
124 fi
125 AM_CONDITIONAL(USE_DRM, test "$USE_DRM" = "yes")
126
127 if test "$enable_hybrid_codec" = "yes"; then
128     AC_DEFINE([HAVE_HYBRID_CODEC], [1], [Defined to 1 if hybrid codec is needed])
129 fi
130
131 AM_CONDITIONAL(ENABLE_TESTS, test "$enable_tests" = "yes")
132
133 VA_VERSION=`$PKG_CONFIG --modversion libva`
134 VA_MAJOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f1`
135 VA_MINOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f2`
136 VA_MICRO_VERSION=`echo "$VA_VERSION" | cut -d'.' -f3`
137 VA_VERSION_STR="$VA_VERSION"
138
139 va_full_version_int=`expr ${VA_MAJOR_VERSION:-0} "*" 1000000 + \
140                           ${VA_MINOR_VERSION:-0} "*" 10000   + \
141                           ${VA_MICRO_VERSION:-0} "*" 100     + \
142                           0`
143 VA_DRIVER_INIT_FUNC="__vaDriverInit_${VA_MAJOR_VERSION}_${VA_MINOR_VERSION}"
144 AC_DEFINE_UNQUOTED([VA_DRIVER_INIT_FUNC], [$VA_DRIVER_INIT_FUNC],
145     [Define driver entry-point])
146
147 dnl Check for VA/DRM API
148 USE_X11="$enable_x11"
149
150 dnl Check for X11
151 if test "$enable_x11" = "yes"; then
152     USE_X11="yes"
153     PKG_CHECK_MODULES([X11],    [x11],    [:], [USE_X11="no"])
154     PKG_CHECK_MODULES([XEXT],   [xext],   [:], [USE_X11="no"])
155     PKG_CHECK_MODULES([XFIXES], [xfixes], [:], [USE_X11="no"])
156 fi
157
158 if test "$USE_X11" = "yes"; then
159     PKG_CHECK_MODULES(LIBVA_X11_DEPS, [libva-x11],
160       [AC_DEFINE([HAVE_VA_X11], [1], [Defined to 1 if VA/X11 API is enabled])],
161       [USE_X11="no"])
162 fi
163 AM_CONDITIONAL(USE_X11, test "$USE_X11" = "yes")
164
165 dnl Check for VA-API drivers path
166 AC_ARG_VAR(LIBVA_DRIVERS_PATH, [drivers install path])
167 if test -z "$LIBVA_DRIVERS_PATH"; then
168     AC_MSG_CHECKING([for VA drivers path])
169     LIBVA_DRIVERS_PATH=`$PKG_CONFIG libva --variable driverdir`
170 fi
171 if test -z "$LIBVA_DRIVERS_PATH"; then
172     LIBVA_DRIVERS_PATH="${libdir}/xorg/modules/drivers"
173 fi
174 AC_MSG_RESULT([$LIBVA_DRIVERS_PATH])
175 AC_SUBST(LIBVA_DRIVERS_PATH)
176
177 # Check for EGL
178 if test "$enable_wayland" = "yes"; then
179     enable_egl="yes"
180 fi
181
182 USE_EGL="no"
183 if test "$enable_egl" = "yes"; then
184     PKG_CHECK_MODULES([EGL], [egl], [USE_EGL="yes"], [USE_EGL="no"])
185     saved_CPPFLAGS="$CPPFLAGS"
186     saved_LIBS="$LIBS"
187     CPPFLAGS="$CPPFLAGS $EGL_CFLAGS"
188     LIBS="$LIBS $EGL_LIBS"
189     AC_CHECK_HEADERS([EGL/egl.h], [:], [USE_EGL="no"])
190     AC_CHECK_LIB([EGL], [eglGetDisplay], [:], [USE_EGL="no"])
191     CPPFLAGS="$saved_CPPFLAGS"
192     LIBS="$saved_LIBS"
193 fi
194 AM_CONDITIONAL(USE_EGL, test "$USE_EGL" = "yes")
195
196 # Check for Wayland
197 USE_WAYLAND="no"
198 if test "$enable_wayland" = "yes"; then
199     PKG_CHECK_MODULES([LIBVA_WAYLAND_DEPS], [libva-wayland],
200         [USE_WAYLAND="yes"], [:])
201
202     if test "$USE_WAYLAND" = "yes"; then
203
204         PKG_CHECK_MODULES([WAYLAND_CLIENT], [wayland-client >= wayland_api_version],
205         [INCLUDES="$INCLUDES $WAYLAND_CLIENT_CFLAGS"], [:])
206         WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client`
207         AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],,
208                      [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH])
209
210         AC_DEFINE([HAVE_VA_WAYLAND], [1],
211                   [Defined to 1 if VA/Wayland API is enabled])
212     fi
213 fi
214 AM_CONDITIONAL(USE_WAYLAND, test "$USE_WAYLAND" = "yes")
215
216 AC_OUTPUT([
217     Makefile
218     src/Makefile
219     src/shaders/Makefile
220     src/shaders/brc/Makefile
221     src/shaders/brc/bsw/Makefile
222     src/shaders/brc/skl/Makefile
223     src/shaders/h264/Makefile
224     src/shaders/h264/ildb/Makefile
225     src/shaders/h264/mc/Makefile
226     src/shaders/mpeg2/Makefile
227     src/shaders/mpeg2/vld/Makefile
228     src/shaders/post_processing/Makefile
229     src/shaders/post_processing/gen5_6/Makefile
230     src/shaders/post_processing/gen7/Makefile
231     src/shaders/post_processing/gen75/Makefile
232     src/shaders/post_processing/gen8/Makefile
233     src/shaders/post_processing/gen9/Makefile
234     src/shaders/render/Makefile
235     src/shaders/utils/Makefile
236     src/shaders/vme/Makefile
237     test/Makefile
238 ])
239
240 dnl Print summary
241 BACKENDS=""
242 AS_IF([test "$USE_DRM" = "yes"], [BACKENDS="$BACKENDS drm"])
243 AS_IF([test "$USE_X11" = "yes"], [BACKENDS="$BACKENDS x11"])
244 AS_IF([test "$USE_WAYLAND" = "yes"], [BACKENDS="$BACKENDS wayland"])
245
246 echo
247 echo $PACKAGE configuration summary:
248 echo
249 echo VA-API version ................... : $VA_VERSION_STR
250 echo VA-API drivers path .............. : $LIBVA_DRIVERS_PATH
251 echo Windowing systems ................ : $BACKENDS
252 echo Build tests ...................... : $enable_tests
253 echo