blackmagic-media-express: GUI for BM capture cards

copied and bumped from megacoffee
This commit is contained in:
Brian S. Stephan 2021-11-16 08:34:40 -06:00
parent 5fcb94cdbb
commit 051c78f3fd
2 changed files with 113 additions and 0 deletions

View File

@ -0,0 +1 @@
DIST Blackmagic_Desktop_Video_Linux_12.2.tar.gz 1028551320 BLAKE2B a373e26eb63552c204978a74a66b172d6aa6fcbd520f2f50a3bfaa3c31e4a2dc824dd8f62e47f882343a545f5c8387ead25c79e1e71accfe19d9da37ba3bf8f9 SHA512 fc33fa7655fb2984832b4485fad55c54c958e2cc6b9dabdf39d71f3d9b87aeb0823956ba771cea25db03321d95b7e6e0f601d4aabfbe4438a925da5a8bd26652

View File

@ -0,0 +1,112 @@
# Copyright 1999-2020 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# TODOs:
# - fix QA notice about installing symlinks in /usr/lib
EAPI=6
DESKTOP_VIDEO_SHORT_VERSION="12.2"
DESKTOP_VIDEO_VERSION="12.2a12"
MEDIA_EXPRESS_VERSION="3.7a7"
DESCRIPTION="Media Express - Blackmagic Design's tool for media capture, organization and playback"
HOMEPAGE="http://www.blackmagicdesign.com/"
HOMEPAGE_DOWNLOAD_NAME="Desktop Video ${DESKTOP_VIDEO_SHORT_VERSION}"
SRC_URI="Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}.tar.gz"
UNPACKED_DIR="mediaexpress-${MEDIA_EXPRESS_VERSION}-x86_64"
LICENSE="BlackmagicDesktopVideo"
SLOT="0"
KEYWORDS="~amd64"
#IUSE="autostart"
RESTRICT="fetch splitdebug"
# dependencies for binaries found by commands: (ldd lists transitive dependencies as well which isn't what we want)
# for file in /usr/lib/blackmagic/me/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt|MXF|DNxHDCodec)'
# equery belongs $(for file in /usr/lib/blackmagic/me/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt|MXF|DNxHDCodec)')
DEPEND=""
RDEPEND="${DEPEND}
>=media-libs/blackmagic-desktop-video-11.6
dev-libs/glib:2
media-libs/alsa-lib
media-libs/fontconfig
media-libs/freetype
media-libs/mesa
sys-devel/gcc
sys-libs/glibc
virtual/glu
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libXi
x11-libs/libxcb
"
# supress QA warnings about stripping etc., i.e. stuff we cannot change since we install prebuilt binaries
QA_PREBUILT="opt/blackmagic-media-express/usr/lib/*"
pkg_nofetch() {
# 1 2 3 4 5 6 7
# 123456789012345678901234567890123456789012345678901234567890123456789012
einfo "Media Express is bundled with Desktop Video downloads."
einfo ""
einfo "Please visit ${HOMEPAGE} and download \"${HOMEPAGE_DOWNLOAD_NAME}\""
einfo "for your product from the support section and move it to your DISTDIR"
einfo "(/var/cache/distfiles or /usr/portage/distfiles unless you changed it)."
einfo ""
einfo " expected filename: ${SRC_URI}"
einfo ""
einfo "If your browser downloads a .tar file you will need to rename it to .tar.gz"
}
src_unpack() {
unpack ${A}
cd ${WORKDIR}
tar xfz Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}/other/x86_64/mediaexpress-${MEDIA_EXPRESS_VERSION}-x86_64.tar.gz
# symlink to what is supposed to have been prepared
ln -s ${UNPACKED_DIR} ${P}
}
src_install() {
# all pre-built binaries should go into /opt and be symlinked to usr/bin etc.
finalinstalldir="/opt/blackmagic-media-express"
installdir="${D}${finalinstalldir}"
mkdir -p ${installdir}
cp -a ${WORKDIR}/${UNPACKED_DIR}/* ${installdir}/
# NOTE: Not linking usr/lib/systemd as I don't use that and thus can't test it...
symlinks=(
'usr/bin/MediaExpress'
'usr/lib/blackmagic/MediaExpress'
'usr/share/applications/MediaExpress.desktop'
'usr/share/doc/mediaexpress'
'usr/share/icons/hicolor/32x32/apps/MediaExpress.png'
'usr/share/icons/hicolor/48x48/apps/MediaExpress.png'
'usr/share/icons/hicolor/256x256/apps/MediaExpress.png'
)
for path in "${symlinks[@]}"; do
dosym ${finalinstalldir}/${path} ${path}
done
# dneuge: no clue on how to use this...
## QA notice says we should generate a linker script if we don't place libraries in /usr/lib
## see: https://devmanual.gentoo.org/eclass-reference/toolchain-funcs.eclass/index.html
#gen_usr_ldscript usr/lib/libDeckLinkAPI.so usr/lib/libDeckLinkPreviewAPI.so
# don't symlink man-pages, install a copy instead
doman usr/share/man/man1/*.1
}
pkg_postinst() {
# 12345678901234567890123456789012345678901234567890123456789012345678901234567890
einfo "Please do *NOT* report any QA errors to Gentoo or Blackmagic!"
einfo ""
einfo "License can be found in: ${finalinstalldir}/usr/share/doc/mediaexpress/License.txt"
}