summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>2011-08-22 16:18:45 +0200
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>2011-08-25 14:27:45 +0200
commiteefea266a7ca3d5e56ebaccf63beeffce80c526a (patch)
tree27459be97779d6c8ebbc1f4ef62ae51f7c7b2d59
parente303e5e5c6b99f25ce20da324d5c417427c87aaa (diff)
New project build rules and files.
-rw-r--r--AUTHORS10
-rw-r--r--COPYING19
-rw-r--r--Makefile.am9
-rw-r--r--NEWS40
-rw-r--r--README39
-rwxr-xr-xautogen.sh3
-rw-r--r--configure.ac99
-rw-r--r--src/Makefile.am15
-rw-r--r--src/i965_avc_bsd.c2
-rw-r--r--src/i965_avc_hw_scoreboard.c2
-rw-r--r--src/i965_avc_ildb.c1
-rw-r--r--src/i965_drv_video.c2
-rw-r--r--src/i965_media_h264.c1
-rw-r--r--src/i965_render.c2
-rw-r--r--src/intel_driver.c2
-rw-r--r--src/shaders/Makefile.am3
-rw-r--r--src/shaders/h264/Makefile.am3
-rw-r--r--src/shaders/h264/mc/Makefile.am3
-rw-r--r--src/shaders/mpeg2/Makefile.am3
-rw-r--r--src/shaders/mpeg2/vld/Makefile.am4
-rw-r--r--src/shaders/post_processing/Makefile.am3
-rw-r--r--src/shaders/render/Makefile.am3
-rw-r--r--src/shaders/vme/Makefile.am3
23 files changed, 257 insertions, 14 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..f296b02
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,10 @@
+Intel Linux graphics team working on the driver:
+Chang Zhou
+Gwenole Beauchesne
+Haihao Xiang (primary author)
+Nanhai Zou
+
+Additional contributors:
+Alexander Osin
+Damien Lespiau
+Edgar Hucek
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..900e775
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,19 @@
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sub license, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice (including the
+ next paragraph) shall be included in all copies or substantial portions
+ of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+ IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
+ ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..099031a
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,9 @@
+AUTOMAKE_OPTIONS = foreign
+
+SUBDIRS = src
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = \
+ aclocal.m4 compile config.guess config.sub \
+ configure depcomp install-sh ltmain.sh \
+ Makefile.in missing
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..16c8ed5
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,40 @@
+libva-driver-intel NEWS -- summary of changes. 2011-07-28
+Copyright (C) 2009-2011 Intel Corporation
+
+Version 1.0.14 - 28.Jul.2011
+* Add H.264 encoding support to Ivy Bridge
+* Add support for VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD
+* Fix next slice vertical position for MPEG-2 (#38628)
+* Fix subpicture scale factor for Y axis
+* Fix GPU hang when decoding field coded MPEG-2 picture
+* Fix memory leaks (Edgar Hucek)
+
+Version 1.0.13 - 25.May.2011
+* Add H.264 encoding support to Sandy Bridge
+* Add MPEG-2, VC-1 and H.264 decoding support to Ivy Bridge
+* Fix thread safety issues
+
+Version 1.0.11 - 14.Mar.2011
+* Add deinterlacing & scaling support to Sandy Bridge
+* Add vaDeriveImage() implementation
+* Fix VC-1 decoding for Main/Simple profiles
+
+Version 1.0.9 - 27.Jan.2011
+* Add VC-1 decoding support to Sandy Bridge
+
+Version 1.0.8 - 21.Jan.2011
+* Add support for IA44/AI44 subpicture formats (#32868)
+
+Version 1.0.7 - 17.Dec.2011
+* Add MPEG-2 and H.264 decoding support to Sandy Bridge
+
+Version 1.0.5 - 02.Sep.2010
+* Add deinterlacing & scaling support to Ironlake
+
+Version 1.0.4 - 13.Jul.2010
+* Add vaGetImage() implementation
+* Add support for RGBA subpictures
+* Fix H.264 decoding on Ironlake
+
+Version 1.0.3 - 10.Jun.2010
+* Add H.264 decoding support to Ironlake
diff --git a/README b/README
new file mode 100644
index 0000000..d681d42
--- /dev/null
+++ b/README
@@ -0,0 +1,39 @@
+
+ libva-driver-intel
+ VA driver for Intel G45 & HD Graphics family
+
+ Copyright (C) 2009-2011 Intel Corporation
+
+
+License
+-------
+
+Please read the COPYING file available in this package.
+
+
+Overview
+--------
+
+libva-driver-intel is the VA-API implementation for Intel G45 chipsets
+and Intel HD Graphics for Intel Core processor family.
+
+Platform definitions:
+CTG: Cantiga, Intel GMA 4500MHD (GM45)
+ILK: Ironlake, Intel HD Graphics for 2010 Intel Core processor family
+SNB: Sandybridge, Intel HD Graphics for 2011 Intel Core processor family
+IVB: Ivybridge
+
+
+Codecs
+------
+
+H.264 D ILK+
+H.264 E SNB+
+MPEG-2 D CTG+
+VC-1 D SNB+
+
+
+Requirements
+------------
+
+libva >= 1.0.14
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000..9c2f4f6
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,3 @@
+#! /bin/sh
+autoreconf -v --install
+./configure "$@"
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..18b9ad3
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,99 @@
+# intel-driver package version number
+m4_define([intel_driver_major_version], [1])
+m4_define([intel_driver_minor_version], [0])
+m4_define([intel_driver_micro_version], [14])
+m4_define([intel_driver_pre_version], [0])
+m4_define([intel_driver_version],
+ [intel_driver_major_version.intel_driver_minor_version.intel_driver_micro_version])
+m4_if(intel_driver_pre_version, [0], [], [
+m4_append([intel_driver_version], intel_driver_pre_version, [.pre])
+])
+
+AC_PREREQ([2.57])
+AC_INIT([intel_driver], [intel_driver_version], [haihao.xiang@intel.com],
+ [libva-driver-intel])
+AC_CONFIG_SRCDIR([Makefile.am])
+AM_INIT_AUTOMAKE
+
+AM_CONFIG_HEADER([src/config.h])
+
+INTEL_DRIVER_MAJOR_VERSION=intel_driver_major_version
+INTEL_DRIVER_MINOR_VERSION=intel_driver_minor_version
+INTEL_DRIVER_MICRO_VERSION=intel_driver_micro_version
+AC_DEFINE([INTEL_DRIVER_MAJOR_VERSION], [intel_driver_major_version], [Major version of the driver])
+AC_DEFINE([INTEL_DRIVER_MINOR_VERSION], [intel_driver_minor_version], [Minor version of the driver])
+AC_DEFINE([INTEL_DRIVER_MICRO_VERSION], [intel_driver_micro_version], [Micro version of the driver])
+AC_DEFINE([INTEL_DRIVER_PRE_VERSION], [intel_driver_pre_version], [Preversion of the driver])
+
+INTEL_DRIVER_LT_LDFLAGS="-avoid-version"
+AC_SUBST(INTEL_DRIVER_LT_LDFLAGS)
+
+dnl Use pretty build output with automake >= 1.11
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [
+ AM_DEFAULT_VERBOSITY=1
+ AC_SUBST(AM_DEFAULT_VERBOSITY)
+])
+
+AC_DISABLE_STATIC
+AC_PROG_LIBTOOL
+AC_PROG_CC
+AM_PROG_CC_C_O
+
+AC_C_BIGENDIAN
+AC_HEADER_STDC
+AC_SYS_LARGEFILE
+
+dnl Check for recent enough DRM
+PKG_CHECK_MODULES([DRM], [libdrm >= 2.4.23])
+
+dnl Check for gen4asm
+PKG_CHECK_MODULES(GEN4ASM, [intel-gen4asm >= 1.2], [gen4asm=yes], [gen4asm=no])
+AM_CONDITIONAL(HAVE_GEN4ASM, test x$gen4asm = xyes)
+
+dnl Check for VA-API
+PKG_CHECK_MODULES(LIBVA_DEPS, [libva])
+PKG_CHECK_MODULES(LIBVA_X11_DEPS, [libva-x11])
+
+VA_VERSION=`$PKG_CONFIG --modversion libva`
+VA_MAJOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f1`
+VA_MINOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f2`
+VA_MICRO_VERSION=`echo "$VA_VERSION" | cut -d'.' -f3`
+VA_VERSION_STR="$VA_VERSION"
+
+va_full_version_int=`expr ${VA_MAJOR_VERSION:-0} "*" 1000000 + \
+ ${VA_MINOR_VERSION:-0} "*" 10000 + \
+ ${VA_MICRO_VERSION:-0} "*" 100 + \
+ 0`
+VA_DRIVER_INIT_FUNC="__vaDriverInit_${VA_MAJOR_VERSION}_${VA_MINOR_VERSION}"
+AC_DEFINE_UNQUOTED([VA_DRIVER_INIT_FUNC], [$VA_DRIVER_INIT_FUNC],
+ [Define driver entry-point])
+
+dnl Check for VA-API drivers path
+AC_MSG_CHECKING([for VA drivers path])
+LIBVA_DRIVERS_PATH=`$PKG_CONFIG libva --variable driverdir`
+if test -z "$LIBVA_DRIVERS_PATH"; then
+ LIBVA_DRIVERS_PATH="/usr/lib/xorg/modules/drivers"
+fi
+AC_MSG_RESULT([$LIBVA_DRIVERS_PATH])
+AC_SUBST(LIBVA_DRIVERS_PATH)
+
+AC_OUTPUT([
+ Makefile
+ src/Makefile
+ src/shaders/Makefile
+ src/shaders/h264/Makefile
+ src/shaders/h264/mc/Makefile
+ src/shaders/mpeg2/Makefile
+ src/shaders/mpeg2/vld/Makefile
+ src/shaders/post_processing/Makefile
+ src/shaders/render/Makefile
+ src/shaders/vme/Makefile
+])
+
+dnl Print summary
+echo
+echo $PACKAGE configuration summary:
+echo
+echo VA-API version ................... : $VA_VERSION_STR
+echo VA-API drivers path .............. : $LIBVA_DRIVERS_PATH
+echo
diff --git a/src/Makefile.am b/src/Makefile.am
index 405489b..7a8de4d 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -23,11 +23,9 @@
SUBDIRS = shaders
INCLUDES = \
- -I$(top_srcdir) \
- -I$(top_srcdir)/va \
- -I$(top_srcdir)/va/x11 \
-DPTHREADS \
$(DRM_CFLAGS) \
+ $(LIBVA_DEPS_CFLAGS) \
$(NULL)
driver_cflags = \
@@ -39,7 +37,13 @@ driver_ldflags = \
-module -avoid-version \
-no-undefined \
-Wl,--no-undefined \
+ $(NULL)
+
+driver_libs = \
+ -lpthread \
$(DRM_LIBS) -ldrm_intel \
+ $(LIBVA_DEPS_LIBS) \
+ $(LIBVA_X11_DEPS_LIBS) \
$(NULL)
source_c = \
@@ -94,6 +98,9 @@ i965_drv_video_la_LTLIBRARIES = i965_drv_video.la
i965_drv_video_ladir = $(LIBVA_DRIVERS_PATH)
i965_drv_video_la_CFLAGS = $(driver_cflags)
i965_drv_video_la_LDFLAGS = $(driver_ldflags)
-i965_drv_video_la_LIBADD = $(top_builddir)/va/libva-x11.la -lpthread
+i965_drv_video_la_LIBADD = $(driver_libs)
i965_drv_video_la_SOURCES = $(source_c)
noinst_HEADERS = $(source_h)
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in config.h.in
diff --git a/src/i965_avc_bsd.c b/src/i965_avc_bsd.c
index 2fa53fc..9fa9649 100644
--- a/src/i965_avc_bsd.c
+++ b/src/i965_avc_bsd.c
@@ -30,8 +30,6 @@
#include <string.h>
#include <assert.h>
-#include "va_backend.h"
-
#include "intel_batchbuffer.h"
#include "intel_driver.h"
diff --git a/src/i965_avc_hw_scoreboard.c b/src/i965_avc_hw_scoreboard.c
index 3fb7ae3..b17ea83 100644
--- a/src/i965_avc_hw_scoreboard.c
+++ b/src/i965_avc_hw_scoreboard.c
@@ -30,8 +30,6 @@
#include <string.h>
#include <assert.h>
-#include "va_backend.h"
-
#include "intel_batchbuffer.h"
#include "intel_driver.h"
diff --git a/src/i965_avc_ildb.c b/src/i965_avc_ildb.c
index 0518a18..a4277d7 100644
--- a/src/i965_avc_ildb.c
+++ b/src/i965_avc_ildb.c
@@ -30,7 +30,6 @@
#include <string.h>
#include <assert.h>
-#include "va_backend.h"
#include "intel_batchbuffer.h"
#include "intel_driver.h"
diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c
index 72f82b7..e788bc5 100644
--- a/src/i965_drv_video.c
+++ b/src/i965_drv_video.c
@@ -32,7 +32,7 @@
#include <string.h>
#include <assert.h>
-#include "va/x11/va_dricommon.h"
+#include <va/va_dricommon.h>
#include "intel_driver.h"
#include "intel_memman.h"
diff --git a/src/i965_media_h264.c b/src/i965_media_h264.c
index ddc43de..b31ef0b 100644
--- a/src/i965_media_h264.c
+++ b/src/i965_media_h264.c
@@ -3,7 +3,6 @@
#include <string.h>
#include <assert.h>
-#include "va_backend.h"
#include "intel_batchbuffer.h"
#include "intel_driver.h"
diff --git a/src/i965_render.c b/src/i965_render.c
index fee7109..ad8de1e 100644
--- a/src/i965_render.c
+++ b/src/i965_render.c
@@ -37,7 +37,7 @@
#include <assert.h>
#include <va/va_backend.h>
-#include "va/x11/va_dricommon.h"
+#include <va/va_dricommon.h>
#include "intel_batchbuffer.h"
#include "intel_driver.h"
diff --git a/src/intel_driver.c b/src/intel_driver.c
index 5ccdfa5..5fd22c9 100644
--- a/src/intel_driver.c
+++ b/src/intel_driver.c
@@ -29,7 +29,7 @@
#include <assert.h>
-#include "va_dricommon.h"
+#include <va/va_dricommon.h>
#include "intel_batchbuffer.h"
#include "intel_memman.h"
diff --git a/src/shaders/Makefile.am b/src/shaders/Makefile.am
index 17770a9..6669923 100644
--- a/src/shaders/Makefile.am
+++ b/src/shaders/Makefile.am
@@ -1 +1,4 @@
SUBDIRS = h264 mpeg2 render post_processing vme
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/h264/Makefile.am b/src/shaders/h264/Makefile.am
index d6d106b..68a9b59 100644
--- a/src/shaders/h264/Makefile.am
+++ b/src/shaders/h264/Makefile.am
@@ -1 +1,4 @@
SUBDIRS = mc
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/h264/mc/Makefile.am b/src/shaders/h264/mc/Makefile.am
index a4ab3c0..f3be1ed 100644
--- a/src/shaders/h264/mc/Makefile.am
+++ b/src/shaders/h264/mc/Makefile.am
@@ -182,3 +182,6 @@ clean-local:
-rm -f $(INTEL_G4B_GEN5)
-rm -f $(INTEL_MC_G4B_GEN5) $(INTEL_MC_EXPORT_GEN5)
endif
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/mpeg2/Makefile.am b/src/shaders/mpeg2/Makefile.am
index e5c6e7f..9795594 100644
--- a/src/shaders/mpeg2/Makefile.am
+++ b/src/shaders/mpeg2/Makefile.am
@@ -1 +1,4 @@
SUBDIRS = vld
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/mpeg2/vld/Makefile.am b/src/shaders/mpeg2/vld/Makefile.am
index ff534fe..0413054 100644
--- a/src/shaders/mpeg2/vld/Makefile.am
+++ b/src/shaders/mpeg2/vld/Makefile.am
@@ -1,4 +1,3 @@
-
INTEL_G4I = addidct.g4i \
do_iq_intra.g4i \
do_iq_non_intra.g4i \
@@ -88,3 +87,6 @@ clean-local:
-rm -f $(INTEL_G4B)
-rm -f $(INTEL_G4B_GEN5)
endif
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/post_processing/Makefile.am b/src/shaders/post_processing/Makefile.am
index e5af86b..762c3ce 100644
--- a/src/shaders/post_processing/Makefile.am
+++ b/src/shaders/post_processing/Makefile.am
@@ -140,3 +140,6 @@ clean-local:
-rm -f $(INTEL_PP_G6B)
endif
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/render/Makefile.am b/src/shaders/render/Makefile.am
index a571ea2..b3a8c23 100644
--- a/src/shaders/render/Makefile.am
+++ b/src/shaders/render/Makefile.am
@@ -87,3 +87,6 @@ clean-local:
-rm -f $(INTEL_G6B)
-rm -f $(INTEL_G7B)
endif
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/shaders/vme/Makefile.am b/src/shaders/vme/Makefile.am
index e1097a7..5252ff9 100644
--- a/src/shaders/vme/Makefile.am
+++ b/src/shaders/vme/Makefile.am
@@ -35,3 +35,6 @@ clean-local:
-rm -f $(INTEL_G7B)
endif
+
+# Extra clean files so that maintainer-clean removes *everything*
+MAINTAINERCLEANFILES = Makefile.in