Fix compilations 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 15:58:05 +03:00
parent 58db2dc123
commit 24b109d537
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

@ -14,7 +14,7 @@
Name: gstreamer1-plugins-bad-free
Version: 1.16.2
Release: 4%{?gitcommit:.git%{shortcommit}}%{?dist}
Release: 4%{?gitcommit:.git%{shortcommit}}.0.riscv64%{?dist}
Summary: GStreamer streaming media framework "bad" plugins
License: LGPLv2+ and LGPLv2
@ -39,6 +39,9 @@ Patch0: gstreamer1-plugins-bad-build-adapt-to-backwards-incompatible-cha
# https://bugzilla.redhat.com/show_bug.cgi?id=1799497
Patch1: gstreamer1-plugins-bad-lv2-make-it-build-with-fno-common.patch
# https://gitlab.freedesktop.org/gstreamer/common/-/merge_requests/4
Patch2: fix-for-make-4.3.patch
BuildRequires: gstreamer1-devel >= %{version}
BuildRequires: gstreamer1-plugins-base-devel >= %{version}
@ -203,6 +206,9 @@ aren't tested well enough, or the code is not of good enough quality.
%patch0 -p1
%patch1 -p1
pushd common
%patch2 -p1 -b .fix-make43
popd
%build
autoreconf --force --install
@ -499,6 +505,9 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -fv {} ';'
%changelog
* Fri Apr 03 2020 David Abdurachmanov <david.abdurachmanov@sifive.com> - 1.16.2-4.0.riscv64
- Fix compilation errors with GNU Make 4.3
* Fri Mar 20 2020 Debarshi Ray <rishi@fedoraproject.org> - 1.16.2-4
- Enable the spandsp plugin