diff options
author | Sam James <sam@gentoo.org> | 2021-02-16 19:25:32 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-02-16 19:26:37 +0000 |
commit | 3685f662853bf6e75118834a769ab487bea92176 (patch) | |
tree | 389b4dfdbd8c274b56e52772e3989306de23479c /media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160424.ebuild | |
parent | dev-db/pgpool2: Stabilize 4.2.1 x86, #762952 (diff) | |
download | gentoo-3685f662853bf6e75118834a769ab487bea92176.tar.gz gentoo-3685f662853bf6e75118834a769ab487bea92176.tar.bz2 gentoo-3685f662853bf6e75118834a769ab487bea92176.zip |
Revert "media-libs/raspberrypi-userland: cleanup old"
This reverts commit 8021512569b236c2ceb62156c206c133b8f17bf0.
Newer version breaks some dependent packages because
we don't install GL includes due to collisions.
Also reverts 9cbaffb767a7eb275d54f9666584e235d9d0566e.
Bug: https://bugs.gentoo.org/770802
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160424.ebuild')
-rw-r--r-- | media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160424.ebuild | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160424.ebuild b/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160424.ebuild new file mode 100644 index 000000000000..ddbbd294d3a3 --- /dev/null +++ b/media-libs/raspberrypi-userland/raspberrypi-userland-0_pre20160424.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +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="https://github.com/${PN/-//}.git" + SRC_URI="" +else + GIT_COMMIT="dff5760" + 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 +} + +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 || die + + 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" || die + 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} || die + 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} || die + 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} || die + 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 + fi + + rm -rfv "${D}"/opt/vc/src || die +} |