media-libs/raspberrypi-userland: version bump
authorMiroslav Šulc <fordfrog@gentoo.org>
Wed, 30 Mar 2016 13:35:53 +0000 (15:35 +0200)
committerMiroslav Šulc <fordfrog@gentoo.org>
Wed, 30 Mar 2016 13:37:09 +0000 (15:37 +0200)
Package-Manager: portage-2.2.28

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

index b4e59eac6b33bedceb89f1f729be02f10f91e2b6..4a34270200124fab6fe6c4e71083b909d743455c 100644 (file)
@@ -3,3 +3,4 @@ DIST raspberrypi-userland-0_pre20140117.tar.xz 31998784 SHA256 2999d711465ddbc6b
 DIST raspberrypi-userland-0_pre20140830.tar.xz 32066536 SHA256 f9a06d2ca7d41cdc700b83eeb7c3e06d3ea6bd3fd187880a563144a6bf6ee901 SHA512 775005177e760fff611d7ce7e4beb466ea111dfc4652b97593d1061b97b1ded32979f8666a0aada6338791abab988883bbfd902f267eba5734e8aa932ebcf487 WHIRLPOOL 3066272a88b868ef20f27614f6f680aa6eb8a43cd2e281a7a930b99be341b037fa843a1c36bfdc6be619544e5b4b8751e5ab58c853b1baff44894b39284bfa55
 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
diff --git a/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160330.ebuild b/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160330.ebuild
new file mode 100644 (file)
index 0000000..076d8de
--- /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="703a2c4"
+       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
+}