summaryrefslogtreecommitdiffstats
path: root/common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb
diff options
context:
space:
mode:
authorNitin A Kamble <nitin.a.kamble@intel.com>2013-01-22 15:36:46 -0800
committerTom Zanussi <tom.zanussi@intel.com>2013-03-20 17:31:01 -0500
commit199f3a6ff4ebd4c7f1093be1e3f5c174d65575f9 (patch)
tree32f5ea17c58defa81c04bc7890dfe97a2e4bbc11 /common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb
parentd7dbbcba891c18d5134e4ff8f0c51f44f2a4b1dd (diff)
downloadmeta-intel-199f3a6ff4ebd4c7f1093be1e3f5c174d65575f9.tar.gz
emgd-1.16: create a new recipe
Create a new recipe for the latest emgd 1.16 version of the graphics driver. Also add the custom license files of the recipe to avoid build time QA warnings. There are strange characters in the license files, because they are copied verbatim from the sources. Include RDEPENDS fix (commit bfa92b9) from Richard Purdie for danny backport: RDEPENDS should be set on specific packages, not applied to everything in general (e.g. -dev, -dbg or -doc packages). This fixes up warnings in the build. Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Diffstat (limited to 'common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb')
-rw-r--r--common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb157
1 files changed, 157 insertions, 0 deletions
diff --git a/common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb b/common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb
new file mode 100644
index 00000000..8f37bfe2
--- /dev/null
+++ b/common/recipes-graphics/xorg-driver/emgd-driver-bin_1.16.bb
@@ -0,0 +1,157 @@
1SUMMARY = "EMGD 1.16 xserver binaries"
2DESCRIPTION = "EMGD 1.16 includes some userspace binaries that use non-free \
3licensing, which are now available via a non-click-through downloadable \
4tarball, and is what this recipe now uses. Since it is a non-free license, \
5this recipe is marked as 'License_emgd-driver-bin_1.16' and you need to add \
6to LICENSE_FLAGS_WHITELIST += \"license_emgd-driver-bin_1.16\" to your \
7local.conf in order to enable it in a build."
8LICENSE = "Intel-software-license-emgd-1.16 & Intel-user-space-graphics-driver-binary-license-emgd-1.16"
9LICENSE_FLAGS = "license_${PN}_${PV}"
10PR = "r0"
11
12EMGD_LIC_DIR = "IEMGD_HEAD_Linux/License"
13EMGD_RPM_DIR = "IEMGD_HEAD_Linux/MeeGo1.2"
14EMGD_VIDEO_PLUGIN_DIR = "../common/video_plugin"
15
16LIC_FILES_CHKSUM = "file://${WORKDIR}/${EMGD_LIC_DIR}/License.txt;md5=b54f01caaf8483b3cb60c0c40f2bf22d \
17 file://${WORKDIR}/${EMGD_LIC_DIR}/readme.txt;md5=73cbec7a0d2bc22faf567238e055bfc8"
18
19DEPENDS = "rpm-native xz-native"
20RDEPENDS_${PN} = "libxcb-dri2"
21
22SRC_URI = "https://edc.intel.com/App_Shared/Downloads/LIN_IEMGD_1_16_GOLD_3228.tgz"
23
24SRC_URI[md5sum] = "339c902baeac0a5816108bea827b3685"
25SRC_URI[sha256sum] = "33ef38b83914ef7d1e12a430ec009352b415b9d5840c9d0db25744b7dc6a2473"
26
27
28# make sure generated rpm packages get non conflicting names
29PKG_${PN} = "emgd-driver"
30PKG_${PN}-dev = "emgd-driver-dev"
31PKG_${PN}-dbg = "emgd-driver-dbg"
32PKG_${PN}-doc = "emgd-driver-doc"
33
34PACKAGES =+ "emgd-libmixcommon emgd-libmixvideo emgd-libmixvbp \
35 emgd-gst-vabuffer emgd-gst-plugins-mixvideo \
36 emgd-gst-plugins-va emgd-driver-video"
37
38# These are closed binaries generated elsewhere so don't check ldflags & text relocations
39INSANE_SKIP_emgd-driver-video = "ldflags textrel"
40# Inhibit warnings about files being stripped, we can't do anything about it.
41INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
42
43# Avoid auto renaming of these packages
44DEBIAN_NOAUTONAME_emgd-libmixcommon = "1"
45DEBIAN_NOAUTONAME_emgd-libmixvideo = "1"
46DEBIAN_NOAUTONAME_emgd-libmixvbp = "1"
47DEBIAN_NOAUTONAME_emgd-gst-vabuffer = "1"
48
49FILES_emgd-libmixcommon = "${libdir}/libmixcommon.so.0.10.8 ${libdir}/libmixcommon.so.0"
50FILES_emgd-libmixvideo = "${libdir}/libmixvideo.so.0.10.10 ${libdir}/libmixvideo.so.0"
51FILES_emgd-libmixvbp = "${libdir}/libmixvbp.so.0.10.9 ${libdir}/libmixvbp.so.0 \
52 ${libdir}/libmixvbp_h264.so.0.10.9 ${libdir}/libmixvbp_h264.so.0 \
53 ${libdir}/libmixvbp_mpeg4.so.0.10.9 ${libdir}/libmixvbp_mpeg4.so.0 \
54 ${libdir}/libmixvbp_vc1.so.0.10.9 ${libdir}/libmixvbp_vc1.so.0 "
55FILES_emgd-gst-vabuffer = "${libdir}/libgstvabuffer.so.0.10.8 ${libdir}/libgstvabuffer.so.0"
56FILES_emgd-gst-plugins-mixvideo = "${libdir}/gstreamer-0.10/libgstmixvideoplugin.so"
57FILES_emgd-gst-plugins-va = "${libdir}/gstreamer-0.10/libgstvaplugin.so"
58FILES_emgd-driver-video = "${libdir}/dri/emgd_drv_video.so"
59FILES_${PN} += "${libdir}/dri ${libdir}/xorg/modules/drivers"
60FILES_${PN}-dbg += "${libdir}/xorg/modules/drivers/.debug ${libdir}/dri/.debug ${libdir}/gstreamer-0.10/.debug"
61
62S = "${WORKDIR}/${EMGD_RPM_DIR}"
63
64RPM2CPIO = "${COREBASE}/scripts/rpm2cpio.sh"
65
66do_install () {
67 # cleanup previous files if any
68 rm -rf usr
69
70 # A gstreamer VA buffer library
71 ${RPM2CPIO} ${S}/${EMGD_VIDEO_PLUGIN_DIR}/gst-vabuffer*.rpm | cpio -id
72
73 # MIX Common contains common classes, datatype, header files used by other MIX components
74 ${RPM2CPIO} ${S}/${EMGD_VIDEO_PLUGIN_DIR}/mixcommon*.rpm | cpio -id
75
76 # MIX Video Bitstream Parser is an user library interface for various video format bitstream parsing
77 ${RPM2CPIO} ${S}/${EMGD_VIDEO_PLUGIN_DIR}/mixvbp*.rpm | cpio -id
78
79 # MIX Video is an user library interface for various video codecs available on the platform.
80 ${RPM2CPIO} ${S}/${EMGD_VIDEO_PLUGIN_DIR}/mixvideo*.rpm | cpio -id
81
82 install -d -m 0755 ${D}${libdir}/gstreamer-0.10
83 install -m 0755 ${S}/usr/lib/* ${D}${libdir}/
84
85 # A gstreamer plugin that uses MIX Video for hardware accelerated video decoding and rendering.
86 ${RPM2CPIO} ${S}/${EMGD_VIDEO_PLUGIN_DIR}/gst-plugins-mixvideo*.rpm | cpio -id
87
88 # A collection of gstreamer plugins that uses VA libraries for hardware accelerated video rendering and text overlay.
89 ${RPM2CPIO} ${S}/${EMGD_VIDEO_PLUGIN_DIR}/gst-plugins-va*.rpm | cpio -id
90
91 install -m 0755 ${S}/usr/lib/gstreamer-0.10/* ${D}${libdir}/gstreamer-0.10/
92
93 # EMGD runtime graphics libraries
94 ${RPM2CPIO} ${S}/emgd-bin*.rpm | cpio -id
95
96 install -d -m 0755 ${D}${libdir}/dri
97 install -d -m 0755 ${D}${libdir}/xorg/modules/drivers
98 install -d -m 0755 ${D}${sysconfdir}
99 install -d -m 0755 ${D}${mandir}/man4
100 install -m 0755 ${S}/usr/lib/*.so.* ${D}${libdir}/
101 install -m 0755 ${S}/usr/lib/dri/* ${D}${libdir}/dri/
102 install -m 0755 ${S}/usr/lib/xorg/modules/drivers/* ${D}${libdir}/xorg/modules/drivers/
103 install -m 0755 ${S}/etc/* ${D}${sysconfdir}/
104 install -m 0755 ${S}/usr/share/man/man4/* ${D}${mandir}/man4/
105
106 # Khronos development headers needed for EGL, OpenGL-ES, and OpenVG development
107 ${RPM2CPIO} ${S}/emgd-devel*.rpm | cpio -id
108
109 install -d -m 0755 ${D}${includedir}/EGL
110 install -m 0755 ${S}/usr/include/EGL/*.h ${D}${includedir}/EGL/
111 install -d -m 0755 ${D}${includedir}/GLES
112 install -m 0755 ${S}/usr/include/GLES/*.h ${D}${includedir}/GLES/
113 install -d -m 0755 ${D}${includedir}/GLES2
114 install -m 0755 ${S}/usr/include/GLES2/*.h ${D}${includedir}/GLES2/
115 install -d -m 0755 ${D}${includedir}/KHR
116 install -m 0755 ${S}/usr/include/KHR/*.h ${D}${includedir}/KHR/
117 install -d -m 0755 ${D}${includedir}/VG
118 install -m 0755 ${S}/usr/include/VG/*.h ${D}${includedir}/VG/
119
120 EMGD_SNAPSHOT="1.5.15.3226"
121 ln -sf libEGL.so.${EMGD_SNAPSHOT} ${D}${libdir}/libEGL.so.1
122 ln -sf libEGL.so.1 ${D}${libdir}/libEGL.so
123 ln -sf libGLES_CM.so.${EMGD_SNAPSHOT} ${D}${libdir}/libGLES_CM.so.1
124 ln -sf libGLES_CM.so.1 ${D}${libdir}/libGLES_CM.so
125 ln -sf libGLESv2.so.${EMGD_SNAPSHOT} ${D}${libdir}/libGLESv2.so.2
126 ln -sf libGLESv2.so.2 ${D}${libdir}/libGLESv2.so
127 ln -sf libOpenVG.so.${EMGD_SNAPSHOT} ${D}${libdir}/libOpenVG.so.1
128 ln -sf libOpenVG.so.1 ${D}${libdir}/libOpenVG.so
129 ln -sf libOpenVGU.so.${EMGD_SNAPSHOT} ${D}${libdir}/libOpenVGU.so.1
130 ln -sf libOpenVGU.so.1 ${D}${libdir}/libOpenVGU.so
131 ln -sf libEMGD2d.so.${EMGD_SNAPSHOT} ${D}${libdir}/libEMGD2d.so
132 ln -sf libEMGDegl.so.${EMGD_SNAPSHOT} ${D}${libdir}/libEMGDegl.so
133 ln -sf libemgdglslcompiler.so.${EMGD_SNAPSHOT} ${D}${libdir}/libemgdglslcompiler.so
134 ln -sf libEMGDOGL.so.${EMGD_SNAPSHOT} ${D}${libdir}/libEMGDOGL.so
135 ln -sf libemgdPVR2D_DRIWSEGL.so.${EMGD_SNAPSHOT} ${D}${libdir}/libemgdPVR2D_DRIWSEGL.so
136 ln -sf libEMGDScopeServices.so.${EMGD_SNAPSHOT} ${D}${libdir}/libEMGDScopeServices.so
137 ln -sf libemgdsrv_init.so.${EMGD_SNAPSHOT} ${D}${libdir}/libemgdsrv_init.so
138 ln -sf libemgdsrv_um.so.${EMGD_SNAPSHOT} ${D}${libdir}/libemgdsrv_um.so
139
140 #Replace duplicate files with symlinks
141 rm -f ${D}${libdir}/libmixvideo.so.0
142 ln -sf libmixvideo.so.0.10.10 ${D}${libdir}/libmixvideo.so.0
143 rm -f ${D}${libdir}/libmixvbp_h264.so.0
144 ln -sf libmixvbp_h264.so.0.10.9 ${D}${libdir}/libmixvbp_h264.so.0
145 rm -f ${D}${libdir}/libmixvbp.so.0
146 ln -sf libmixvbp.so.0.10.9 ${D}${libdir}/libmixvbp.so.0
147 rm -f ${D}${libdir}/libmixvbp_vc1.so.0
148 ln -sf libmixvbp_vc1.so.0.10.9 ${D}${libdir}/libmixvbp_vc1.so.0
149 rm -f ${D}${libdir}/libmixvbp_mpeg4.so.0
150 ln -sf libmixvbp_mpeg4.so.0.10.9 ${D}${libdir}/libmixvbp_mpeg4.so.0
151 rm -f ${D}${libdir}/libmixcommon.so.0
152 ln -sf libmixcommon.so.0.10.8 ${D}${libdir}/libmixcommon.so.0
153 rm -f ${D}${libdir}/libgstvabuffer.so.0
154 ln -sf libgstvabuffer.so.0.10.8 ${D}${libdir}/libgstvabuffer.so.0
155}
156
157LEAD_SONAME = "libEGL.so"