diff options
author | WANG Xuerui <xen0n@gentoo.org> | 2022-05-18 13:50:26 +0800 |
---|---|---|
committer | WANG Xuerui <xen0n@gentoo.org> | 2022-05-18 13:50:44 +0800 |
commit | 3a9e9e241e735eb9cd1a8bfe1340e8665ccd3680 (patch) | |
tree | 3efbffbca46a049380ddb7cd7c2e01824da3d1d1 /media-libs | |
parent | net-misc/yt-dlp: add 2022.5.18 (diff) | |
download | gentoo-3a9e9e241e735eb9cd1a8bfe1340e8665ccd3680.tar.gz gentoo-3a9e9e241e735eb9cd1a8bfe1340e8665ccd3680.tar.bz2 gentoo-3a9e9e241e735eb9cd1a8bfe1340e8665ccd3680.zip |
media-libs/gstreamer: fix build on loong
Signed-off-by: WANG Xuerui <xen0n@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r-- | media-libs/gstreamer/files/gstreamer-1.20-loong.patch | 28 | ||||
-rw-r--r-- | media-libs/gstreamer/gstreamer-1.20.2.ebuild | 4 |
2 files changed, 32 insertions, 0 deletions
diff --git a/media-libs/gstreamer/files/gstreamer-1.20-loong.patch b/media-libs/gstreamer/files/gstreamer-1.20-loong.patch new file mode 100644 index 000000000000..833c217ca829 --- /dev/null +++ b/media-libs/gstreamer/files/gstreamer-1.20-loong.patch @@ -0,0 +1,28 @@ +https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2443, +with file path tweaked to suit dist tarball layout. + +From: WANG Xuerui <xen0n@gentoo.org> +Date: Wed, 18 May 2022 10:04:08 +0800 +Subject: [PATCH] gstreamer/gst/gstconfig.h.in: Add support for LoongArch + +While current and future LoongArch machines that are supposed to run +GStreamer all support unaligned accesses, there might be future +lower-end cores (e.g. the embedded product line) without such support, +and we may not want to penalize these use cases. + +So, mark LoongArch as not supporting unaligned accesses for now, and +hope the compilers do a good job optimizing them. We can always flip +switch later. + +Suggested-by: CHEN Tao <redeast_cn@outlook.com> +--- a/gst/gstconfig.h.in ++++ b/gst/gstconfig.h.in +@@ -124,7 +124,7 @@ + * http://docs.oracle.com/cd/E19205-01/820-4155/c++_faq.html#Vers6 + * https://software.intel.com/en-us/node/583402 + */ +-#if defined(__alpha__) || defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__bfin) || defined(__hppa__) || defined(__nios2__) || defined(__MICROBLAZE__) || defined(__mips__) || defined(__or1k__) || defined(__sh__) || defined(__SH4__) || defined(__sparc__) || defined(__sparc) || defined(__ia64__) || defined(_M_ALPHA) || defined(_M_ARM) || defined(_M_ARM64) || defined(_M_IA64) || defined(__xtensa__) || defined(__e2k__) || defined(__riscv) || defined(__ARC64__) ++#if defined(__alpha__) || defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__bfin) || defined(__hppa__) || defined(__nios2__) || defined(__MICROBLAZE__) || defined(__mips__) || defined(__or1k__) || defined(__sh__) || defined(__SH4__) || defined(__sparc__) || defined(__sparc) || defined(__ia64__) || defined(_M_ALPHA) || defined(_M_ARM) || defined(_M_ARM64) || defined(_M_IA64) || defined(__xtensa__) || defined(__e2k__) || defined(__riscv) || defined(__ARC64__) || defined(__loongarch__) + # define GST_HAVE_UNALIGNED_ACCESS 0 + #elif defined(__i386__) || defined(__i386) || defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__ppc__) || defined(__ppc64__) || defined(__powerpc__) || defined(__powerpc64__) || defined(__m68k__) || defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64) || defined(__s390__) || defined(__s390x__) || defined(__zarch__) + # define GST_HAVE_UNALIGNED_ACCESS 1 diff --git a/media-libs/gstreamer/gstreamer-1.20.2.ebuild b/media-libs/gstreamer/gstreamer-1.20.2.ebuild index ef777a56fe5a..9372a822f7e7 100644 --- a/media-libs/gstreamer/gstreamer-1.20.2.ebuild +++ b/media-libs/gstreamer/gstreamer-1.20.2.ebuild @@ -33,6 +33,10 @@ BDEPEND=" DOCS=( AUTHORS ChangeLog NEWS MAINTAINERS README.md RELEASE ) +PATCHES=( + "${FILESDIR}/${PN}-1.20-loong.patch" +) + multilib_src_configure() { local emesonargs=( -Dbenchmarks=disabled |