summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-libs/raspberrypi-userland/Manifest1
-rw-r--r--media-libs/raspberrypi-userland/files/92-local-vchiq-permissions.rules1
-rw-r--r--media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160305.ebuild87
3 files changed, 89 insertions, 0 deletions
diff --git a/media-libs/raspberrypi-userland/Manifest b/media-libs/raspberrypi-userland/Manifest
index 730152c7ce1d..b4e59eac6b33 100644
--- a/media-libs/raspberrypi-userland/Manifest
+++ b/media-libs/raspberrypi-userland/Manifest
@@ -2,3 +2,4 @@ DIST raspberrypi-userland-0_pre20130705.tar.xz 31966608 SHA256 6307cc9d6103cd8af
DIST raspberrypi-userland-0_pre20140117.tar.xz 31998784 SHA256 2999d711465ddbc6b70d429a0253b8a9c1f838351a96f2b25cc86109a879005f SHA512 5c3dfebdcb36a2a17da94cafcc92067b24b454d5694b0bd216dd0d6752c4f505840880094c22125ab5da60f7b53b9114e8d04359a223e9e00be967cb8585e42e WHIRLPOOL 5179758c2be4b45f640eb8759554e19ea4fc8c83e63b0d4396ae84e67ae82e97824bf12f0766df5a70e2ca5b80e90be80e5c9b2eaa968752829765463d3f6d0d
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
diff --git a/media-libs/raspberrypi-userland/files/92-local-vchiq-permissions.rules b/media-libs/raspberrypi-userland/files/92-local-vchiq-permissions.rules
new file mode 100644
index 000000000000..bacea0e0665e
--- /dev/null
+++ b/media-libs/raspberrypi-userland/files/92-local-vchiq-permissions.rules
@@ -0,0 +1 @@
+SUBSYSTEM=="vchiq",GROUP="video",MODE="0660"
diff --git a/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160305.ebuild b/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160305.ebuild
new file mode 100644
index 000000000000..5676f12be23b
--- /dev/null
+++ b/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160305.ebuild
@@ -0,0 +1,87 @@
+# 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="8369e39"
+ SRC_URI="https://github.com/raspberrypi/userland/tarball/${GIT_COMMIT} -> ${P}.tar.gz"
+ KEYWORDS="~arm"
+ S="${WORKDIR}/raspberrypi-userland-${GIT_COMMIT}"
+fi
+
+IUSE="examples"
+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
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ doenvd "${FILESDIR}"/04${PN}
+
+ dodir /etc/udev/rules.d
+ insinto /etc/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
+
+ # 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
+}