summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--recipes-graphics/userland/userland-nogl.bb87
-rw-r--r--recipes-graphics/userland/userland_git.bb15
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend4
-rw-r--r--recipes-multimedia/omxplayer/omxplayer_git.bb6
4 files changed, 15 insertions, 97 deletions
diff --git a/recipes-graphics/userland/userland-nogl.bb b/recipes-graphics/userland/userland-nogl.bb
deleted file mode 100644
index ec5cbdc..0000000
--- a/recipes-graphics/userland/userland-nogl.bb
+++ /dev/null
@@ -1,87 +0,0 @@
1DESCRIPTION = "This repository contains the source code for the ARM side \
2libraries used on Raspberry Pi. These typically are installed in /opt/vc/lib \
3and includes source for the ARM side code to interface to: EGL, mmal, GLESv2,\
4vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG."
5LICENSE = "BSD-3-Clause"
6LIC_FILES_CHKSUM = "file://LICENCE;md5=0448d6488ef8cc380632b1569ee6d196"
7
8COMPATIBLE_MACHINE = "^rpi$"
9
10SRCBRANCH = "master"
11SRCFORK = "raspberrypi"
12SRCREV = "409dfcd90bae0a09b1b8c1f718a532728d26cde2"
13
14# Use the date of the above commit as the package version. Update this when
15# SRCREV is changed.
16PV = "20180702"
17
18SRC_URI = "\
19 git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \
20 file://0001-Allow-applications-to-set-next-resource-handle.patch \
21 file://0002-wayland-Add-support-for-the-Wayland-winsys.patch \
22 file://0003-wayland-Add-Wayland-example.patch \
23 file://0004-wayland-egl-Add-bcm_host-to-dependencies.patch \
24 file://0005-interface-remove-faulty-assert-to-make-weston-happy-.patch \
25 file://0006-zero-out-wl-buffers-in-egl_surface_free.patch \
26 file://0007-initialize-front-back-wayland-buffers.patch \
27 file://0008-Remove-RPC_FLUSH.patch \
28 file://0009-fix-cmake-dependency-race.patch \
29 file://0010-Fix-for-framerate-with-nested-composition.patch \
30 file://0011-build-shared-library-for-vchostif.patch \
31 file://0012-implement-buffer-wrapping-interface-for-dispmanx.patch \
32 file://0013-Implement-triple-buffering-for-wayland.patch \
33 file://0014-GLES2-gl2ext.h-Define-GL_R8_EXT-and-GL_RG8_EXT.patch \
34 file://0015-EGL-glplatform.h-define-EGL_CAST.patch \
35 file://0016-Allow-multiple-wayland-compositor-state-data-per-pro.patch \
36 file://0017-khronos-backport-typedef-for-EGL_EXT_image_dma_buf_i.patch \
37 file://0018-Add-EGL_IMG_context_priority-related-defines.patch \
38"
39S = "${WORKDIR}/git"
40
41inherit cmake pkgconfig
42
43ASNEEDED = ""
44
45EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=Release -DCMAKE_EXE_LINKER_FLAGS='-Wl,--no-as-needed' \
46 -DVMCS_INSTALL_PREFIX=${exec_prefix} \
47"
48
49EXTRA_OECMAKE_append_aarch64 = " -DARM64=ON "
50
51
52PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}"
53
54PACKAGECONFIG[wayland] = "-DBUILD_WAYLAND=TRUE -DWAYLAND_SCANNER_EXECUTABLE:FILEPATH=${STAGING_BINDIR_NATIVE}/wayland-scanner,,wayland-native wayland"
55
56CFLAGS_append = " -fPIC"
57
58do_install_append () {
59 for f in `find ${D}${includedir}/interface/vcos/ -name "*.h"`; do
60 sed -i 's/include "vcos_platform.h"/include "pthreads\/vcos_platform.h"/g' ${f}
61 sed -i 's/include "vcos_futex_mutex.h"/include "pthreads\/vcos_futex_mutex.h"/g' ${f}
62 sed -i 's/include "vcos_platform_types.h"/include "pthreads\/vcos_platform_types.h"/g' ${f}
63 done
64 rm -rf ${D}${libdir}/libEGL*
65 rm -rf ${D}${libdir}/libGLES*
66 rm -rf ${D}${libdir}/libwayland-*
67 rm -rf ${D}${libdir}/pkgconfig/egl.pc ${D}${libdir}/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/wayland-egl.pc
68 rm -rf ${D}${includedir}/EGL ${D}${includedir}/GLES* ${D}${includedir}/KHR
69}
70
71# Shared libs from userland package build aren't versioned, so we need
72# to force the .so files into the runtime package (and keep them
73# out of -dev package).
74FILES_SOLIBSDEV = ""
75INSANE_SKIP_${PN} += "dev-so"
76
77FILES_${PN} += " \
78 ${libdir}/*.so \
79 ${libdir}/plugins"
80FILES_${PN}-dev += "${includedir} \
81 ${prefix}/src"
82FILES_${PN}-doc += "${datadir}/install"
83FILES_${PN}-dbg += "${libdir}/plugins/.debug"
84
85PACKAGE_ARCH = "${MACHINE_ARCH}"
86
87RDEPENDS_${PN} += "bash libegl"
diff --git a/recipes-graphics/userland/userland_git.bb b/recipes-graphics/userland/userland_git.bb
index 3903284..ae65446 100644
--- a/recipes-graphics/userland/userland_git.bb
+++ b/recipes-graphics/userland/userland_git.bb
@@ -5,11 +5,9 @@ vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG."
5LICENSE = "BSD-3-Clause" 5LICENSE = "BSD-3-Clause"
6LIC_FILES_CHKSUM = "file://LICENCE;md5=0448d6488ef8cc380632b1569ee6d196" 6LIC_FILES_CHKSUM = "file://LICENCE;md5=0448d6488ef8cc380632b1569ee6d196"
7 7
8PROVIDES = "virtual/libgles2 \ 8PROVIDES += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "", "virtual/libgles2 virtual/egl", d)}"
9 virtual/egl"
10
11RPROVIDES_${PN} += "libgles2 egl libegl"
12 9
10RPROVIDES_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "", "libgles2 egl libegl", d)}"
13COMPATIBLE_MACHINE = "^rpi$" 11COMPATIBLE_MACHINE = "^rpi$"
14 12
15SRCBRANCH = "master" 13SRCBRANCH = "master"
@@ -66,6 +64,14 @@ do_install_append () {
66 sed -i 's/include "vcos_futex_mutex.h"/include "pthreads\/vcos_futex_mutex.h"/g' ${f} 64 sed -i 's/include "vcos_futex_mutex.h"/include "pthreads\/vcos_futex_mutex.h"/g' ${f}
67 sed -i 's/include "vcos_platform_types.h"/include "pthreads\/vcos_platform_types.h"/g' ${f} 65 sed -i 's/include "vcos_platform_types.h"/include "pthreads\/vcos_platform_types.h"/g' ${f}
68 done 66 done
67 if [ "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "1", "0", d)}" = "1" ]; then
68 rm -rf ${D}${libdir}/libEGL*
69 rm -rf ${D}${libdir}/libGLES*
70 rm -rf ${D}${libdir}/libwayland-*
71 rm -rf ${D}${libdir}/pkgconfig/egl.pc ${D}${libdir}/pkgconfig/glesv2.pc \
72 ${D}${libdir}/pkgconfig/wayland-egl.pc
73 rm -rf ${D}${includedir}/EGL ${D}${includedir}/GLES* ${D}${includedir}/KHR
74 fi
69} 75}
70 76
71# Shared libs from userland package build aren't versioned, so we need 77# Shared libs from userland package build aren't versioned, so we need
@@ -85,3 +91,4 @@ FILES_${PN}-dbg += "${libdir}/plugins/.debug"
85PACKAGE_ARCH = "${MACHINE_ARCH}" 91PACKAGE_ARCH = "${MACHINE_ARCH}"
86 92
87RDEPENDS_${PN} += "bash" 93RDEPENDS_${PN} += "bash"
94RDEPENDS_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "libegl", "", d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend
index 19cd259..f892c66 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-omx_%.bbappend
@@ -1,4 +1,4 @@
1DEPENDS_append_rpi = "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", " userland-nogl", "", d)}" 1DEPENDS_append_rpi = " userland"
2GSTREAMER_1_0_OMX_TARGET_rpi = "rpi" 2GSTREAMER_1_0_OMX_TARGET_rpi = "rpi"
3GSTREAMER_1_0_OMX_CORE_NAME_rpi = "${libdir}/libopenmaxil.so" 3GSTREAMER_1_0_OMX_CORE_NAME_rpi = "${libdir}/libopenmaxil.so"
4# How to make this RPI specific? 4# How to make this RPI specific?
@@ -6,4 +6,4 @@ EXTRA_OECONF_append_rpi = " CFLAGS="$CFLAGS -I${STAGING_DIR_TARGET}/usr/include
6#examples only build with GL but not GLES, so disable it for RPI 6#examples only build with GL but not GLES, so disable it for RPI
7EXTRA_OECONF_append_rpi = " --disable-examples" 7EXTRA_OECONF_append_rpi = " --disable-examples"
8 8
9RDEPENDS_${PN}_append_rpi = "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", " userland-nogl", "", d)}" 9RDEPENDS_${PN}_append_rpi = " userland"
diff --git a/recipes-multimedia/omxplayer/omxplayer_git.bb b/recipes-multimedia/omxplayer/omxplayer_git.bb
index 4ec0b24..f557207 100644
--- a/recipes-multimedia/omxplayer/omxplayer_git.bb
+++ b/recipes-multimedia/omxplayer/omxplayer_git.bb
@@ -7,8 +7,7 @@ SECTION = "console/utils"
7LICENSE = "GPLv2" 7LICENSE = "GPLv2"
8LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" 8LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
9 9
10DEPENDS = "libpcre libav virtual/egl boost freetype dbus openssl libssh libomxil coreutils-native curl-native" 10DEPENDS = "libpcre libav virtual/egl boost freetype dbus openssl libssh libomxil coreutils-native curl-native userland"
11DEPENDS += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", " userland-nogl", "", d)}"
12 11
13PR = "r4" 12PR = "r4"
14 13
@@ -105,5 +104,4 @@ FILES_${PN} = "${bindir}/omxplayer* \
105 104
106FILES_${PN}-dev += "${libdir}/omxplayer/*.so" 105FILES_${PN}-dev += "${libdir}/omxplayer/*.so"
107 106
108RDEPENDS_${PN} += "bash procps" 107RDEPENDS_${PN} += "bash procps userland"
109RDEPENDS_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", " userland-nogl", "", d)}"