Fix compilation errors with GNU Make 4.3

Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
This commit is contained in:
David Abdurachmanov 2020-04-03 14:28:12 +03:00
parent 1d7d4ef1e2
commit a52f5b0a68
Signed by: davidlt
GPG Key ID: 8B7F1DA0E2C9FDBB
2 changed files with 48 additions and 1 deletions

38
fix-for-make-4.3.patch Normal file
View File

@ -0,0 +1,38 @@
From 52adcdb89a9eb527df38c569539d95c1c7aeda6e Mon Sep 17 00:00:00 2001
From: Debarshi Ray <rishi@gnu.org>
Date: Thu, 12 Mar 2020 18:11:47 +0100
Subject: [PATCH] build: Adapt to backwards incompatible change in GNU Make 4.3
GNU Make 4.3 has a backwards incompatible change affecting the use of
number signs or hashes (ie., #) inside function invocations. See:
https://lists.gnu.org/archive/html/info-gnu/2020-01/msg00004.html
In this case, it would expand the '\#' in the '\n\#include \"$(h)\"'
argument to the foreach call to '\#', not '#'. This would lead to
spurious backslashes in front of the '#include' directives in the
generated fs-enumtypes.c file.
Spotted by Ernestas Kulik.
https://gitlab.freedesktop.org/gstreamer/common/-/merge_requests/4
---
gst-glib-gen.mak | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gst-glib-gen.mak b/gst-glib-gen.mak
index 76b2233..bcb4240 100644
--- a/gst-glib-gen.mak
+++ b/gst-glib-gen.mak
@@ -8,7 +8,8 @@
#glib_gen_decl_banner=GST_EXPORT
#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+hash:=\#
+enum_headers=$(foreach h,$(glib_enum_headers),\n$(hash)include \"$(h)\")
# these are all the rules generating the relevant files
$(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list
--
2.24.1

View File

@ -6,7 +6,7 @@
Name: gstreamer1-plugins-base
Version: 1.16.2
Release: 2%{?gitcommit:.git%{shortcommit}}%{?dist}
Release: 2%{?gitcommit:.git%{shortcommit}}.0.riscv64%{?dist}
Summary: GStreamer streaming media framework base plugins
License: LGPLv2+
@ -19,6 +19,8 @@ Source0: gst-plugins-base-%{version}.tar.xz
Source0: http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-%{version}.tar.xz
%endif
Patch0: 0001-missing-plugins-Remove-the-mpegaudioversion-field.patch
# https://gitlab.freedesktop.org/gstreamer/common/-/merge_requests/4
Patch1: fix-for-make-4.3.patch
BuildRequires: gcc-c++
BuildRequires: gstreamer1-devel >= %{version}
@ -112,6 +114,10 @@ for the GStreamer Base Plugins library.
%setup -q -n gst-plugins-base-%{version}
%patch0 -p1
pushd common
%patch1 -p1 -b .fix-make43
popd
%build
# die rpath (method of modifying libtool fails here)
NOCONFIGURE=1 \
@ -474,6 +480,9 @@ chrpath --delete $RPM_BUILD_ROOT%{_bindir}/gst-play-1.0
%changelog
* Fri Apr 03 2020 David Abdurachmanov <david.abdurachmanov@sifive.com> - 1.16.2-2.0.riscv64
- Fix compilation errors with GNU Make 4.3
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild