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 gstmpegts-enumtypes.c file.

Spotted by Ernestas Kulik.

https://gitlab.freedesktop.org/gstreamer/common/-/merge_requests/4
https://bugzilla.redhat.com/show_bug.cgi?id=1799497
This commit is contained in:
Debarshi Ray 2020-03-20 15:11:15 +01:00
parent 1ae87cea36
commit b6cd9ea30c
2 changed files with 21 additions and 0 deletions

View File

@ -0,0 +1,13 @@
diff -urNp gst-plugins-bad-1.16.2.orig/common/gst-glib-gen.mak gst-plugins-bad-1.16.2/common/gst-glib-gen.mak
--- gst-plugins-bad-1.16.2.orig/common/gst-glib-gen.mak 2020-03-20 14:57:08.587740695 +0100
+++ gst-plugins-bad-1.16.2/common/gst-glib-gen.mak 2020-03-20 15:00:42.584798988 +0100
@@ -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

View File

@ -31,9 +31,15 @@ URL: http://gstreamer.freedesktop.org/
Source0: gst-plugins-bad-free-%{version}.tar.xz
Source1: gst-p-bad-cleanup.sh
# https://gitlab.freedesktop.org/gstreamer/common/-/merge_requests/4
# https://bugzilla.redhat.com/show_bug.cgi?id=1799497
Patch0: gstreamer1-plugins-bad-build-adapt-to-backwards-incompatible-change.patch
BuildRequires: gstreamer1-devel >= %{version}
BuildRequires: gstreamer1-plugins-base-devel >= %{version}
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: check
BuildRequires: gettext-devel
BuildRequires: libXt-devel
@ -189,9 +195,11 @@ aren't tested well enough, or the code is not of good enough quality.
%prep
%setup -q -n gst-plugins-bad-%{version}
%patch0 -p1
%build
autoreconf --force --install
%configure --disable-silent-rules --disable-fatal-warnings \
--with-package-name="Fedora GStreamer-plugins-bad package" \
--with-package-origin="http://download.fedoraproject.org" \