blob: a37249c82da385f244158bc4ea3ef83b24011481 [file] [log] [blame]
Patrick Williams8b8bc412016-08-17 15:02:23 -05001DESCRIPTION = "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
8PR = "r5"
9
10PROVIDES = "virtual/libgles2 \
11 virtual/egl"
12
13RPROVIDES_${PN} += "libgles2 libgl"
14
15COMPATIBLE_MACHINE = "raspberrypi"
16
17SRCBRANCH = "master"
18SRCFORK = "raspberrypi"
Patrick Williamsb2e6a9b2017-02-23 20:31:26 -060019SRCREV = "bb15afe33b313fe045d52277a78653d288e04f67"
Patrick Williams8b8bc412016-08-17 15:02:23 -050020
21SRC_URI = "\
22 git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \
23 file://0001-Allow-applications-to-set-next-resource-handle.patch \
24 file://0002-wayland-Add-support-for-the-Wayland-winsys.patch \
25 file://0003-wayland-Add-Wayland-example.patch \
26 file://0004-wayland-egl-Add-bcm_host-to-dependencies.patch \
27 file://0005-interface-remove-faulty-assert-to-make-weston-happy-.patch \
28 file://0006-zero-out-wl-buffers-in-egl_surface_free.patch \
29 file://0007-initialize-front-back-wayland-buffers.patch \
30 file://0008-Remove-RPC_FLUSH.patch \
31 file://0009-fix-cmake-dependency-race.patch \
Patrick Williamsb2e6a9b2017-02-23 20:31:26 -060032 file://0010-Fix-for-framerate-with-nested-composition.patch \
33 file://0011-build-shared-library-for-vchostif.patch \
34 file://0012-implement-buffer-wrapping-interface-for-dispmanx.patch \
Patrick Williams8b8bc412016-08-17 15:02:23 -050035"
36S = "${WORKDIR}/git"
37
38inherit cmake pkgconfig
39
Patrick Williamsb2e6a9b2017-02-23 20:31:26 -060040ASNEEDED = ""
41
Patrick Williams8b8bc412016-08-17 15:02:23 -050042EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=Release -DCMAKE_EXE_LINKER_FLAGS='-Wl,--no-as-needed' \
43 -DVMCS_INSTALL_PREFIX=${exec_prefix} \
44"
45
Patrick Williamsb2e6a9b2017-02-23 20:31:26 -060046EXTRA_OECMAKE_append_aarch64 = " -DARM64=ON "
47
48
Patrick Williams8b8bc412016-08-17 15:02:23 -050049PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}"
50
51PACKAGECONFIG[wayland] = "-DBUILD_WAYLAND=TRUE -DWAYLAND_SCANNER_EXECUTABLE:FILEPATH=${STAGING_BINDIR_NATIVE}/wayland-scanner,,wayland-native wayland"
52
53CFLAGS_append = " -fPIC"
54
55do_install_append () {
56 for f in `find ${D}${includedir}/interface/vcos/ -name "*.h"`; do
57 sed -i 's/include "vcos_platform.h"/include "pthreads\/vcos_platform.h"/g' ${f}
58 sed -i 's/include "vcos_futex_mutex.h"/include "pthreads\/vcos_futex_mutex.h"/g' ${f}
59 sed -i 's/include "vcos_platform_types.h"/include "pthreads\/vcos_platform_types.h"/g' ${f}
60 done
61}
62
63# Shared libs from userland package build aren't versioned, so we need
64# to force the .so files into the runtime package (and keep them
65# out of -dev package).
66FILES_SOLIBSDEV = ""
67INSANE_SKIP_${PN} += "dev-so"
68
69FILES_${PN} += " \
70 ${libdir}/*.so \
71 ${libdir}/plugins"
72FILES_${PN}-dev += "${includedir} \
73 ${prefix}/src"
74FILES_${PN}-doc += "${datadir}/install"
75FILES_${PN}-dbg += "${libdir}/plugins/.debug"
76
77PACKAGE_ARCH = "${MACHINE_ARCH}"
Patrick Williamsb2e6a9b2017-02-23 20:31:26 -060078
79RDEPENDS_${PN} += "bash"