mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2025-12-09 00:07:57 +03:00
C++11 requires a space between literal and identifier Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr> Part-of: https://github.com/gentoo/gentoo/pull/44589 Closes: https://github.com/gentoo/gentoo/pull/44589 Signed-off-by: Sam James <sam@gentoo.org>
184 lines
4.5 KiB
Bash
184 lines
4.5 KiB
Bash
# Copyright 1999-2025 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
CMAKE_MAKEFILE_GENERATOR="emake"
|
|
# skip warning for ADM_demuxers/NativeAvisynth/CMakeLists.txt, unused (win)
|
|
CMAKE_QA_COMPAT_SKIP=1
|
|
|
|
inherit cmake flag-o-matic
|
|
|
|
MY_COMMIT="376c1469eebedcc724dbbcc0d45030f32c9d13f5"
|
|
DESCRIPTION="Plugins for Avidemux video editor"
|
|
HOMEPAGE="http://fixounet.free.fr/avidemux/"
|
|
SRC_URI="https://github.com/mean00/avidemux2/archive/${MY_COMMIT}.tar.gz -> avidemux-${PV}.tar.gz"
|
|
S="${WORKDIR}/avidemux2-${MY_COMMIT}"
|
|
CMAKE_USE_DIR="${S}/avidemux_plugins"
|
|
|
|
# Multiple licenses because of all the bundled stuff.
|
|
# See License.txt.
|
|
LICENSE="GPL-2 MIT PSF-2 LGPL-2 OFL-1.1"
|
|
SLOT="2.7"
|
|
KEYWORDS="~amd64 ~x86"
|
|
IUSE="aac aften alsa amr dcaenc dts fdk gui jack lame libaom libsamplerate nvenc opengl opus oss pulseaudio twolame vaapi vdpau vorbis vpx x264 x265 xvid"
|
|
|
|
COMMON_DEPEND="
|
|
~media-libs/avidemux-core-${PV}:${SLOT}[nvenc=,vaapi=,vdpau=]
|
|
~media-video/avidemux-${PV}:${SLOT}[opengl?,gui?]
|
|
dev-libs/fribidi
|
|
media-libs/a52dec
|
|
media-libs/fontconfig:1.0
|
|
media-libs/freetype:2
|
|
media-libs/libass:=
|
|
media-libs/libmad
|
|
virtual/libiconv
|
|
aac? (
|
|
media-libs/faac
|
|
media-libs/faad2
|
|
)
|
|
aften? ( media-libs/aften )
|
|
alsa? ( media-libs/alsa-lib )
|
|
amr? ( media-libs/opencore-amr )
|
|
dcaenc? ( media-sound/dcaenc )
|
|
dts? ( media-libs/libdca )
|
|
fdk? ( media-libs/fdk-aac:0= )
|
|
jack? (
|
|
virtual/jack
|
|
libsamplerate? ( media-libs/libsamplerate )
|
|
)
|
|
lame? ( media-sound/lame )
|
|
libaom? ( media-libs/libaom:= )
|
|
nvenc? ( media-libs/nv-codec-headers )
|
|
opengl? ( media-libs/libglvnd )
|
|
opus? ( media-libs/opus )
|
|
pulseaudio? ( media-libs/libpulse )
|
|
gui? ( dev-qt/qtbase:6[gui,opengl,widgets] )
|
|
twolame? ( media-sound/twolame )
|
|
vaapi? ( media-libs/libva:= )
|
|
vorbis? ( media-libs/libvorbis )
|
|
vpx? ( media-libs/libvpx:0= )
|
|
x264? ( media-libs/x264:0= )
|
|
x265? ( media-libs/x265:0= )
|
|
xvid? ( media-libs/xvid )
|
|
"
|
|
DEPEND="
|
|
${COMMON_DEPEND}
|
|
oss? ( virtual/os-headers )
|
|
"
|
|
RDEPEND="
|
|
${COMMON_DEPEND}
|
|
!<media-libs/avidemux-plugins-${PV}
|
|
"
|
|
|
|
PATCHES=(
|
|
"${FILESDIR}/${PN}-2.8.1_p20251019-optional-pulse.patch"
|
|
"${FILESDIR}/${PN}-2.8.1_p20251019-optional-libsamplerate.patch"
|
|
"${FILESDIR}/${PN}-2.8.1_p20251019-include.patch"
|
|
# https://github.com/mean00/avidemux2/pull/548.patch
|
|
"${FILESDIR}/${PN}-2.8.1_p20251019-fix_clang.patch"
|
|
)
|
|
|
|
src_configure() {
|
|
# -Werror=odr
|
|
# https://bugs.gentoo.org/859829
|
|
#
|
|
# Upstream has abandoned sourceforge for github. And doesn't enable github issues.
|
|
# Message received, no bug reported.
|
|
filter-lto
|
|
|
|
# See bug 432322.
|
|
use x86 && replace-flags -O0 -O1
|
|
|
|
PLUGINDIRS=(
|
|
buildPluginsCommon
|
|
buildPluginsCli
|
|
$(usev gui buildPluginsQt4)
|
|
)
|
|
|
|
# checked by Common/Cli/Qt4
|
|
local all_mycmakeargs=(
|
|
-DVERBOSE=ON
|
|
-DX264="$(usex x264)"
|
|
-DX265="$(usex x265)"
|
|
)
|
|
|
|
# buildPluginsCommon
|
|
local common_mycmakeargs=(
|
|
-DPLUGIN_UI=COMMON
|
|
"${all_mycmakeargs[@]}"
|
|
-DAVIDEMUX_SOURCE_DIR='${S}'
|
|
-DFAAC="$(usex aac)"
|
|
-DFAAD="$(usex aac)"
|
|
-DAFTEN="$(usex aften)"
|
|
-DALSA="$(usex alsa)"
|
|
-DOPENCORE_AMRNB="$(usex amr)"
|
|
-DOPENCORE_AMRWB="$(usex amr)"
|
|
-DDCAENC="$(usex dcaenc)"
|
|
-DLIBDCA="$(usex dts)"
|
|
-DFDK_AAC="$(usex fdk)"
|
|
-DJACK="$(usex jack)"
|
|
$(usev jack -DSRC=$(usex libsamplerate))
|
|
-DLAME="$(usex lame)"
|
|
-DAOM="$(usex libaom)"
|
|
-DOPUS="$(usex opus)"
|
|
-DOPUS_ENCODER="$(usex opus)"
|
|
-DOSS="$(usex oss)"
|
|
-DPULSEAUDIO="$(usex pulseaudio)"
|
|
-DTWOLAME="$(usex twolame)"
|
|
-DLIBVORBIS="$(usex vorbis)"
|
|
-DVORBIS="$(usex vorbis)"
|
|
-DVPXENC="$(usex vpx)"
|
|
-DXVID="$(usex xvid)"
|
|
-DUSE_EXTERNAL_LIBA52=yes
|
|
-DUSE_EXTERNAL_LIBMAD=yes
|
|
)
|
|
|
|
# buildPluginsCli
|
|
local cli_mycmakeargs=(
|
|
-DPLUGIN_UI=CLI
|
|
"${all_mycmakeargs[@]}"
|
|
)
|
|
|
|
# buildPluginsQt4
|
|
local gui_mycmakeargs=(
|
|
-DPLUGIN_UI=QT4
|
|
"${all_mycmakeargs[@]}"
|
|
-DENABLE_QT4=OFF
|
|
-DENABLE_QT5=OFF
|
|
-DENABLE_QT6=ON
|
|
-DOPENGL="$(usex opengl)"
|
|
)
|
|
|
|
local plugin
|
|
local mycmakeargs
|
|
for plugin in "${PLUGINDIRS[@]}" ; do
|
|
case "${plugin}" in
|
|
"buildPluginsCommon")
|
|
mycmakeargs=( "${common_mycmakeargs[@]}" ) ;;
|
|
"buildPluginsCli")
|
|
mycmakeargs=( "${cli_mycmakeargs[@]}" ) ;;
|
|
"buildPluginsQt4")
|
|
mycmakeargs=( "${gui_mycmakeargs[@]}" ) ;;
|
|
*)
|
|
die "plugin not available" ;;
|
|
esac
|
|
BUILD_DIR="${WORKDIR}/${P}_build/${plugin}" cmake_src_configure
|
|
done
|
|
}
|
|
|
|
multi_plugins() {
|
|
local plugin
|
|
for plugin in "${PLUGINDIRS[@]}" ; do
|
|
BUILD_DIR="${WORKDIR}/${P}_build/${plugin}" "${@}"
|
|
done
|
|
}
|
|
|
|
src_compile() {
|
|
multi_plugins cmake_src_compile
|
|
}
|
|
|
|
src_install() {
|
|
multi_plugins cmake_src_install
|
|
}
|