media-libs/raspberrypi-userland: version bump
authorMiroslav Šulc <fordfrog@gentoo.org>
Mon, 11 Apr 2016 20:28:25 +0000 (22:28 +0200)
committerMiroslav Šulc <fordfrog@gentoo.org>
Mon, 11 Apr 2016 20:28:25 +0000 (22:28 +0200)
Package-Manager: portage-2.2.28

media-libs/raspberrypi-userland/Manifest
media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160408.ebuild [new file with mode: 0644]

index 4a34270200124fab6fe6c4e71083b909d743455c..1823f230ec7584ab97932e943b4c3cb5effd7b2e 100644 (file)
@@ -4,3 +4,4 @@ DIST raspberrypi-userland-0_pre20140830.tar.xz 32066536 SHA256 f9a06d2ca7d41cdc7
 DIST raspberrypi-userland-0_pre20150921.tar.xz 32395092 SHA256 771bf96111d40c3b86cf2590f22d02306e5f56668f6ee11ace389c719bfccb2b SHA512 0aad096f5c6d54ef1d494708e80f8fb921e30e0d93ced79b4e939afffa8e824e35347595d6f925d1d7ee86917e72fa0b160ad56c8a4df7711d5e87b5cc399be1 WHIRLPOOL 2204dd8f8acf79c3d8baab770e133d18596f00fbf714e9ab46bf4a5ae1a1c0cf9edcbf763bf7fc0403126bb0ca9de7f422a3427dd429d849df6aee1be08b4b6a
 DIST raspberrypi-userland-0_pre20160305.tar.gz 32888927 SHA256 01cc6dfb5ee50733d58e6cb1ba0f79cb90ab7ef46718c302cbac0fd9e3a09b6a SHA512 8621f48d699b2736d4a22f03e5cdde6be564b8d2100f46ab85d3f6e0fc958634436fafc8d218f55a114a37acaf6dbe21b5cf2bf57c258a3067af2720d63d0c27 WHIRLPOOL 109aabddfc483900741758a737f93c1f3bc4074de2e2f0d25d28a620f8381adb44d21b5fa8eb3f59a69eb3a9903b95b32e3a5d9d9353560d42e37d19aaa9b085
 DIST raspberrypi-userland-0_pre20160330.tar.gz 32928211 SHA256 a1f3772afee594c7f08e5362cff96d783d2a0a4970d0172c611a638fe93cfeea SHA512 5b56885a1d832fff7d806718341d0050df66641d698ead4997e684c2aedb8faebd5cd9ce84a69537cc0ed362ca1b6c487ff2fd5575f5a3fbb1d4a7fe8602fb6e WHIRLPOOL ec3d224715e351150f72d021fd5a623287a64bc39379137cde01f8c460e083069f9cc18cf4899fff43d69a711b4c5bd9c69f51113b3b0a6b5092bb62441d9355
+DIST raspberrypi-userland-0_pre20160408.tar.gz 32930276 SHA256 006500715b4131db263b81059685877eeb46b2591c13f772fa9f79b2368f195a SHA512 f42c561d1b9ebe9fe6335166a35e47d5dc932c1fefe567458f6a4ae9c57849ccf33e8ede8144989e3a1fa4c9b2a6c892cf61f77d69350d590443d0360388814b WHIRLPOOL 786ca22ad4e7a9740b853d7adbf362b618add9f12e987192f40bf012fdb313dcf9a38b27c963e87566cf91c98c4f02d59d8ef2eee602ea13369036c4e3a7891c
diff --git a/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160408.ebuild b/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160408.ebuild
new file mode 100644 (file)
index 0000000..8c40e8e
--- /dev/null
@@ -0,0 +1,108 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit cmake-utils
+
+DESCRIPTION="Raspberry Pi userspace tools and libraries"
+HOMEPAGE="https://github.com/raspberrypi/userland"
+
+if [[ ${PV} == 9999* ]]; then
+       inherit git-2
+       EGIT_REPO_URI="git://github.com/${PN/-//}.git"
+       SRC_URI=""
+       KEYWORDS=""
+else
+       GIT_COMMIT="cfd971c"
+       SRC_URI="https://github.com/raspberrypi/userland/tarball/${GIT_COMMIT} -> ${P}.tar.gz"
+       KEYWORDS="~arm"
+       S="${WORKDIR}/raspberrypi-userland-${GIT_COMMIT}"
+fi
+
+RDEPEND="!media-libs/raspberrypi-userland-bin
+       wayland? ( dev-libs/wayland )"
+DEPEND="${RDEPEND}
+       wayland? ( virtual/pkgconfig )"
+
+IUSE="examples wayland"
+LICENSE="BSD"
+SLOT="0"
+
+# TODO:
+# * port vcfiled init script
+# * stuff is still installed to hardcoded /opt/vc location, investigate whether
+#   anything else depends on it being there
+# * live ebuild
+
+src_unpack() {
+       if [[ ${PV} == 9999* ]]; then
+               git-2_src_unpack
+       else
+               default
+       fi
+}
+
+src_prepare() {
+       # init script for Debian, not useful on Gentoo
+       sed -i "/DESTINATION \/etc\/init.d/,+2d" interface/vmcs_host/linux/vcfiled/CMakeLists.txt || die
+
+       # wayland egl support
+       epatch "${FILESDIR}"/next-resource-handle.patch \
+               "${FILESDIR}"/wayland-wsys.patch
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       # provide OpenGL ES v1 according to https://github.com/raspberrypi/firmware/issues/78
+       dosym libGLESv2.so /opt/vc/lib/libGLESv1_CM.so
+
+       doenvd "${FILESDIR}"/04${PN}
+
+       insinto /lib/udev/rules.d
+       doins "${FILESDIR}"/92-local-vchiq-permissions.rules
+
+       # enable dynamic switching of the GL implementation
+       dodir /usr/lib/opengl
+       dosym ../../../opt/vc /usr/lib/opengl/${PN}
+
+       # tell eselect opengl that we do not have libGL
+       touch "${ED}"/opt/vc/.gles-only
+
+       insinto /opt/vc/lib/pkgconfig
+       doins "${FILESDIR}"/bcm_host.pc
+       doins "${FILESDIR}"/egl.pc
+       doins "${FILESDIR}"/glesv2.pc
+       if use wayland; then
+       # Missing wayland-egl version from the patch; claim 9.0 (a mesa version) for now, so gst-plugins-bad wayland-egl check is happy
+               sed -i -e 's/Version:  /Version: 9.0/' "${ED}"/opt/vc/lib/pkgconfig/wayland-egl.pc
+               doins "${ED}"/opt/vc/lib/pkgconfig/wayland-egl.pc # Maybe move?
+       fi
+
+       # some #include instructions are wrong so we need to fix them
+       einfo "Fixing #include \"vcos_platform_types.h\""
+       for file in $(grep -l "#include \"vcos_platform_types.h\"" "${D}"/opt/vc/include/* -r); do
+               einfo "  Fixing file ${file}"
+               sed -i "s%#include \"vcos_platform_types.h\"%#include \"interface/vcos/pthreads/vcos_platform_types.h\"%g" ${file}
+       done
+       einfo "Fixing #include \"vcos_platform.h\""
+       for file in $(grep -l "#include \"vcos_platform.h\"" "${D}"/opt/vc/include/* -r); do
+               einfo "  Fixing file ${file}"
+       sed -i "s%#include \"vcos_platform.h\"%#include \"interface/vcos/pthreads/vcos_platform.h\"%g" ${file}
+       done
+       einfo "Fixing #include \"vchost_config.h\""
+       for file in $(grep -l "#include \"vchost_config.h\"" "${D}"/opt/vc/include/* -r); do
+               einfo "  Fixing file ${file}"
+               sed -i "s%#include \"vchost_config.h\"%#include \"interface/vmcs_host/linux/vchost_config.h\"%g" ${file}
+       done
+
+       if use examples ; then
+               dodir /usr/share/doc/${PF}/examples
+               mv "${D}"/opt/vc/src/hello_pi "${D}"/usr/share/doc/${PF}/examples/ || die
+               rm -fr "${D}"/opt/vc/src
+       else
+               rm -fr "${D}/opt/vc/src"
+       fi
+}