From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 132B215800F for ; Mon, 6 Feb 2023 12:16:47 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 4B8E4E0769; Mon, 6 Feb 2023 12:16:46 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 2D5D2E0769 for ; Mon, 6 Feb 2023 12:16:46 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 1DCE1335D43 for ; Mon, 6 Feb 2023 12:16:45 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 5AD98893 for ; Mon, 6 Feb 2023 12:16:43 +0000 (UTC) From: "David Seifert" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "David Seifert" Message-ID: <1675685795.fe9e488d1e9c38cbf45aad034e6eabd6d61b0583.soap@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: eclass/ X-VCS-Repository: repo/gentoo X-VCS-Files: eclass/gstreamer.eclass X-VCS-Directories: eclass/ X-VCS-Committer: soap X-VCS-Committer-Name: David Seifert X-VCS-Revision: fe9e488d1e9c38cbf45aad034e6eabd6d61b0583 X-VCS-Branch: master Date: Mon, 6 Feb 2023 12:16:43 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: dd3d9f4b-f359-4bb1-b93e-645ed7d89d85 X-Archives-Hash: 845ae957e0ed0c1a2f40d42103f4397f commit: fe9e488d1e9c38cbf45aad034e6eabd6d61b0583 Author: David Seifert gentoo org> AuthorDate: Mon Feb 6 12:16:35 2023 +0000 Commit: David Seifert gentoo org> CommitDate: Mon Feb 6 12:16:35 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe9e488d gstreamer.eclass: remove last-rited eclass Signed-off-by: David Seifert gentoo.org> eclass/gstreamer.eclass | 269 ------------------------------------------------ 1 file changed, 269 deletions(-) diff --git a/eclass/gstreamer.eclass b/eclass/gstreamer.eclass deleted file mode 100644 index 761ce7d5503b..000000000000 --- a/eclass/gstreamer.eclass +++ /dev/null @@ -1,269 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# @DEAD -# @ECLASS: gstreamer.eclass -# @MAINTAINER: -# gstreamer@gentoo.org -# @AUTHOR: -# Michał Górny -# Gilles Dartiguelongue -# Saleem Abdulrasool -# foser -# zaheerm -# @SUPPORTED_EAPIS: 5 6 -# @PROVIDES: multilib-minimal -# @BLURB: Helps building core & split gstreamer plugins. -# @DESCRIPTION: -# Eclass to make external gst-plugins emergable on a per-plugin basis -# and to solve the problem with gst-plugins generating far too much -# unneeded dependencies. -# -# GStreamer consuming applications should depend on the specific plugins -# they need as defined in their source code. Usually you can find that -# out by grepping the source tree for 'factory_make'. If it uses playbin -# plugin, consider adding media-plugins/gst-plugins-meta dependency, but -# also list any packages that provide explicitly requested plugins. - -inherit eutils ltprune multilib multilib-minimal toolchain-funcs versionator xdg-utils - -case "${EAPI:-0}" in - 5|6) - ;; - 0|1|2|3|4) - die "EAPI=\"${EAPI:-0}\" is not supported anymore" - ;; - *) - die "EAPI=\"${EAPI}\" is not supported yet" - ;; -esac - -# @ECLASS_VARIABLE: GST_PLUGINS_BUILD -# @DESCRIPTION: -# Defines the plugins to be built. -# May be set by an ebuild and contain more than one identifier, space -# separated (only src_configure can handle mutiple plugins at this time). -: ${GST_PLUGINS_BUILD:=${PN/gst-plugins-/}} - -# @ECLASS_VARIABLE: GST_PLUGINS_BUILD_DIR -# @DESCRIPTION: -# Actual build directory of the plugin. -# Most often the same as the configure switch name. -: ${GST_PLUGINS_BUILD_DIR:=${PN/gst-plugins-/}} - -# @ECLASS_VARIABLE: GST_TARBALL_SUFFIX -# @DESCRIPTION: -# Most projects hosted on gstreamer.freedesktop.org mirrors provide -# tarballs as tar.bz2 or tar.xz. This eclass defaults to xz. This is -# because the gstreamer mirrors are moving to only have xz tarballs for -# new releases. -: ${GST_TARBALL_SUFFIX:="xz"} - -# Even though xz-utils are in @system, they must still be added to DEPEND; see -# https://archives.gentoo.org/gentoo-dev/msg_a0d4833eb314d1be5d5802a3b710e0a4.xml -if [[ ${GST_TARBALL_SUFFIX} == "xz" ]]; then - DEPEND="${DEPEND} app-arch/xz-utils" -fi - -# @ECLASS_VARIABLE: GST_ORG_MODULE -# @DESCRIPTION: -# Name of the module as hosted on gstreamer.freedesktop.org mirrors. -# Leave unset if package name matches module name. -: ${GST_ORG_MODULE:=$PN} - -# @ECLASS_VARIABLE: GST_ORG_PVP -# @INTERNAL -# @DESCRIPTION: -# Major and minor numbers of the version number. -: ${GST_ORG_PVP:=$(get_version_component_range 1-2)} - - -DESCRIPTION="${BUILD_GST_PLUGINS} plugin for gstreamer" -HOMEPAGE="https://gstreamer.freedesktop.org/" -SRC_URI="https://gstreamer.freedesktop.org/src/${GST_ORG_MODULE}/${GST_ORG_MODULE}-${PV}.tar.${GST_TARBALL_SUFFIX}" - -LICENSE="GPL-2" -case ${GST_ORG_PVP} in - 0.10) SLOT="0.10"; GST_MIN_PV="0.10.36-r2" ;; - 1.*) SLOT="1.0"; GST_MIN_PV="1.2.4-r1" ;; - *) die "Unkown gstreamer release." -esac - -S="${WORKDIR}/${GST_ORG_MODULE}-${PV}" - -RDEPEND=" - >=dev-libs/glib-2.38.2-r1:2[${MULTILIB_USEDEP}] - >=media-libs/gstreamer-${GST_MIN_PV}:${SLOT}[${MULTILIB_USEDEP}] -" -DEPEND=" - virtual/pkgconfig -" - -# Export common multilib phases. -multilib_src_configure() { gstreamer_multilib_src_configure; } - -if [[ ${PN} != ${GST_ORG_MODULE} ]]; then - # Do not run test phase for individual plugin ebuilds. - RESTRICT="test" - RDEPEND="${RDEPEND} - >=media-libs/${GST_ORG_MODULE}-${PV}:${SLOT}[${MULTILIB_USEDEP}]" - - # Export multilib phases used for split builds. - multilib_src_compile() { gstreamer_multilib_src_compile; } - multilib_src_install() { gstreamer_multilib_src_install; } - multilib_src_install_all() { gstreamer_multilib_src_install_all; } -else - IUSE="nls" - DEPEND="${DEPEND} nls? ( >=sys-devel/gettext-0.17 )" -fi - -DEPEND="${DEPEND} ${RDEPEND}" - -# @FUNCTION: gstreamer_environment_reset -# @INTERNAL -# @DESCRIPTION: -# Clean up environment for clean builds. -# >=dev-lang/orc-0.4.23 rely on environment variables to find a place to -# allocate files to mmap. -gstreamer_environment_reset() { - xdg_environment_reset -} - -# @FUNCTION: gstreamer_get_plugins -# @INTERNAL -# @DESCRIPTION: -# Get the list of plugins requiring external dependencies. -gstreamer_get_plugins() { - # Must be called from src_prepare/src_configure - GST_PLUGINS_LIST=$(sed -rn 's/^AG_GST_CHECK_FEATURE\((\w+),.*/ \1 /p' \ - "${ECONF_SOURCE:-${S}}"/configure.* | LC_ALL='C' tr '[:upper:]' '[:lower:]') -} - -# @FUNCTION: gstreamer_get_plugin_dir -# @USAGE: [build_dir] -# @INTERNAL -# @DESCRIPTION: -# Finds plugin build directory and output it. -# Defaults to ${GST_PLUGINS_BUILD_DIR} if argument is not provided -gstreamer_get_plugin_dir() { - local build_dir=${1:-${GST_PLUGINS_BUILD_DIR}} - - if [[ ! -d ${S}/ext/${build_dir} ]]; then - if [[ ! -d ${S}/sys/${build_dir} ]]; then - ewarn "No such plugin directory" - die - fi - einfo "Building system plugin in ${build_dir}..." >&2 - echo sys/${build_dir} - else - einfo "Building external plugin in ${build_dir}..." >&2 - echo ext/${build_dir} - fi -} - -# @FUNCTION: gstreamer_system_link -# @USAGE: [...] -# @DESCRIPTION: -# Walks through makefiles in order to make sure build will link against system -# libraries. -# Takes a list of path fragments and corresponding pkgconfig libraries -# separated by colon (:). Will replace the path fragment by the output of -# pkgconfig. -gstreamer_system_link() { - local pdir directory libs pkgconfig pc tuple - pkgconfig=$(tc-getPKG_CONFIG) - - for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do - pdir=$(gstreamer_get_plugin_dir ${plugin_dir}) - - for tuple in $@ ; do - directory=${tuple%:*} - pc=${tuple#*:}-${SLOT} - libs="$(${pkgconfig} --libs-only-l ${pc} || die)" - sed -e "s:\$(top_builddir)/${directory}/.*\.la:${libs}:" \ - -i "${pdir}"/Makefile.{am,in} || die - done - done -} - -# @FUNCTION: gstreamer_multilib_src_configure -# @DESCRIPTION: -# Handles logic common to configuring gstreamer plugins -gstreamer_multilib_src_configure() { - local plugin gst_conf=() ECONF_SOURCE=${ECONF_SOURCE:-${S}} - - gstreamer_get_plugins - gstreamer_environment_reset - - for plugin in ${GST_PLUGINS_LIST} ; do - if has ${plugin} ${GST_PLUGINS_BUILD} ; then - gst_conf+=( --enable-${plugin} ) - else - gst_conf+=( --disable-${plugin} ) - fi - done - - if grep -q "ORC_CHECK" "${ECONF_SOURCE}"/configure.* ; then - if in_iuse orc ; then - gst_conf+=( $(use_enable orc) ) - else - gst_conf+=( --disable-orc ) - fi - fi - - if grep -q "AM_MAINTAINER_MODE" "${ECONF_SOURCE}"/configure.* ; then - gst_conf+=( --disable-maintainer-mode ) - fi - - if grep -q "disable-schemas-compile" "${ECONF_SOURCE}"/configure ; then - gst_conf+=( --disable-schemas-compile ) - fi - - if [[ ${PN} == ${GST_ORG_MODULE} ]]; then - gst_conf+=( $(use_enable nls) ) - fi - - einfo "Configuring to build ${GST_PLUGINS_BUILD} plugin(s) ..." - econf \ - --with-package-name="Gentoo GStreamer ebuild" \ - --with-package-origin="https://www.gentoo.org" \ - "${gst_conf[@]}" "${@}" -} - -# @FUNCTION: gstreamer_multilib_src_compile -# @DESCRIPTION: -# Compiles requested gstreamer plugin. -gstreamer_multilib_src_compile() { - local plugin_dir - - for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do - emake -C "$(gstreamer_get_plugin_dir ${plugin_dir})" - done -} - -# @FUNCTION: gstreamer_multilib_src_install -# @DESCRIPTION: -# Installs requested gstreamer plugin. -gstreamer_multilib_src_install() { - local plugin_dir - - for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do - emake -C "$(gstreamer_get_plugin_dir ${plugin_dir})" \ - DESTDIR="${D}" install - done -} - -# @FUNCTION: gstreamer_multilib_src_install_all -# @DESCRIPTION: -# Installs documentation for requested gstreamer plugin, and removes .la -# files. -gstreamer_multilib_src_install_all() { - local plugin_dir - - for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do - local dir=$(gstreamer_get_plugin_dir ${plugin_dir}) - [[ -e ${dir}/README ]] && dodoc "${dir}"/README - done - - prune_libtool_files --modules -}