summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-12-26 21:32:53 +0000
committerSam James <sam@gentoo.org>2023-12-26 21:32:53 +0000
commitb587936743bfa53e48390e51c1dac049cd2b2b66 (patch)
tree06bedb7b1be6c070bfc9cc39c7aa7c000d503398 /media-video
parentmetadata/stabilization-groups/media-video: add x264.group (diff)
downloadgentoo-b587936743bfa53e48390e51c1dac049cd2b2b66.tar.gz
gentoo-b587936743bfa53e48390e51c1dac049cd2b2b66.tar.bz2
gentoo-b587936743bfa53e48390e51c1dac049cd2b2b66.zip
media-video/x264-encoder: add 0.0.20231114
Bug: https://bugs.gentoo.org/920559 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-video')
-rw-r--r--media-video/x264-encoder/Manifest1
-rw-r--r--media-video/x264-encoder/x264-encoder-0.0.20231114.ebuild77
-rw-r--r--media-video/x264-encoder/x264-encoder-9999.ebuild25
3 files changed, 92 insertions, 11 deletions
diff --git a/media-video/x264-encoder/Manifest b/media-video/x264-encoder/Manifest
index 4b11d2ba0042..b95b528c7338 100644
--- a/media-video/x264-encoder/Manifest
+++ b/media-video/x264-encoder/Manifest
@@ -1 +1,2 @@
DIST x264-0.0.20220222.tar.bz2 777236 BLAKE2B 45e57c48b4b889f5c7b4ce87d1442d26d907aac47fb7c586b34239317a8b74bb93eac3058eed766728fbca6370656d9a6f070e8992643984a89560e28edf206d SHA512 1cf864059f83731ac47008c1af1d9ac06d06283439cf883a020f8a76e0c7efc3b525791d11efe8784d0e39ded68dd03794f0502fa64cc07df2f2de064a55e1d9
+DIST x264-0.0.20231114.tar.bz2 833229 BLAKE2B e8e60767d16ea11e55f9dd56f1c74535a06b07a498b91d4372872925915563b67fb917c5856e2e40e1f58acbab3142509d036cae8d56820bef0e16ee7bc35196 SHA512 7705c2827c6b280afc7403bce206f82ee94c1ba76c582d3e6ae017b9c4f08c4475ac70373f8a0bcda73046221456efc3f338c57aaf03c11f4d8e63f69bb94db5
diff --git a/media-video/x264-encoder/x264-encoder-0.0.20231114.ebuild b/media-video/x264-encoder/x264-encoder-0.0.20231114.ebuild
new file mode 100644
index 000000000000..f688e3cb2d4e
--- /dev/null
+++ b/media-video/x264-encoder/x264-encoder-0.0.20231114.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Bump with media-libs/x264
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A free commandline encoder for X264/AVC streams"
+HOMEPAGE="https://www.videolan.org/developers/x264.html"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://code.videolan.org/videolan/x264.git"
+else
+ X264_COMMIT="c196240409e4d7c01b47448d93b1f9683aaa7cf7"
+ SRC_URI="https://code.videolan.org/videolan/x264/-/archive/${X264_COMMIT}/x264-${X264_COMMIT}.tar.bz2 -> ${P/-encoder}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+ S="${WORKDIR}/${PN/-encoder}-${X264_COMMIT}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="avs custom-cflags ffmpeg ffmpegsource +interlaced mp4 +threads"
+REQUIRED_USE="ffmpegsource? ( ffmpeg )"
+
+RDEPEND="
+ ~media-libs/x264-${PV}[interlaced=,threads=]
+ ffmpeg? ( media-video/ffmpeg:= )
+ ffmpegsource? ( media-libs/ffmpegsource )
+ mp4? ( >=media-video/gpac-0.5.2:= )
+"
+ASM_DEP=">=dev-lang/nasm-2.13"
+DEPEND="
+ ${RDEPEND}
+ amd64? ( ${ASM_DEP} )
+ x86? ( ${ASM_DEP} )
+"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ tc-export CC
+
+ if [[ ${ABI} == x86 || ${ABI} == amd64 ]]; then
+ export AS="nasm"
+ else
+ export AS="${CC}"
+ fi
+
+ # let upstream pick the optimization level by default
+ use custom-cflags || filter-flags -O?
+
+ ./configure \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --system-libx264 \
+ --host="${CHOST}" \
+ --disable-lsmash \
+ $(usex avs "" "--disable-avs") \
+ $(usex ffmpeg "" "--disable-lavf --disable-swscale") \
+ $(usex ffmpegsource "" "--disable-ffms") \
+ $(usex interlaced "" "--disable-interlaced") \
+ $(usex mp4 "" "--disable-gpac") \
+ $(usex threads "" "--disable-thread") || die
+
+ # this is a nasty workaround for bug #376925 for x264 that also applies
+ # here, needed because as upstream doesn't like us fiddling with their CFLAGS
+ if use custom-cflags; then
+ local cflags
+ cflags="$(grep "^CFLAGS=" config.mak | sed 's/CFLAGS=//')"
+ cflags="${cflags//$(get-flag O)/}"
+ cflags="${cflags//-O? /$(get-flag O) }"
+ cflags="${cflags//-g /}"
+ sed -i "s:^CFLAGS=.*:CFLAGS=${cflags//:/\\:}:" config.mak
+ fi
+}
diff --git a/media-video/x264-encoder/x264-encoder-9999.ebuild b/media-video/x264-encoder/x264-encoder-9999.ebuild
index f9d72081e46e..f688e3cb2d4e 100644
--- a/media-video/x264-encoder/x264-encoder-9999.ebuild
+++ b/media-video/x264-encoder/x264-encoder-9999.ebuild
@@ -1,39 +1,42 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+# Bump with media-libs/x264
inherit flag-o-matic toolchain-funcs
DESCRIPTION="A free commandline encoder for X264/AVC streams"
HOMEPAGE="https://www.videolan.org/developers/x264.html"
+
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://code.videolan.org/videolan/x264.git"
- SRC_URI=""
else
- # Download https://code.videolan.org/videolan/x264/-/archive/master/x264-master.tar.bz2
- SRC_URI="https://dev.gentoo.org/~aballier/distfiles/x264-${PV}.tar.bz2"
+ X264_COMMIT="c196240409e4d7c01b47448d93b1f9683aaa7cf7"
+ SRC_URI="https://code.videolan.org/videolan/x264/-/archive/${X264_COMMIT}/x264-${X264_COMMIT}.tar.bz2 -> ${P/-encoder}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
- S="${WORKDIR}/x264-master"
+ S="${WORKDIR}/${PN/-encoder}-${X264_COMMIT}"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="avs custom-cflags ffmpeg ffmpegsource +interlaced mp4 +threads"
-
REQUIRED_USE="ffmpegsource? ( ffmpeg )"
RDEPEND="
~media-libs/x264-${PV}[interlaced=,threads=]
ffmpeg? ( media-video/ffmpeg:= )
ffmpegsource? ( media-libs/ffmpegsource )
- mp4? ( >=media-video/gpac-0.5.2:= )"
-
+ mp4? ( >=media-video/gpac-0.5.2:= )
+"
ASM_DEP=">=dev-lang/nasm-2.13"
-DEPEND="${RDEPEND}
+DEPEND="
+ ${RDEPEND}
amd64? ( ${ASM_DEP} )
- x86? ( ${ASM_DEP} )"
+ x86? ( ${ASM_DEP} )
+"
BDEPEND="virtual/pkgconfig"
src_configure() {