From d6502d0e6746f4ccd092eddea46ab356514563d7 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Dec 15 2016 20:34:40 +0000 Subject: Backport more RPM macro fixes (FPC ticket #655) Signed-off-by: Igor Gnatenko --- diff --git a/0001-rpm-use-meson-s-syntax-to-specify-sourcedir-and-buil.patch b/0001-rpm-use-meson-s-syntax-to-specify-sourcedir-and-buil.patch index 4e8883a..b6441d5 100644 --- a/0001-rpm-use-meson-s-syntax-to-specify-sourcedir-and-buil.patch +++ b/0001-rpm-use-meson-s-syntax-to-specify-sourcedir-and-buil.patch @@ -1,7 +1,7 @@ -From dd2843cf8752d26575b15cd1ba73c43bd3501494 Mon Sep 17 00:00:00 2001 +From 99948536aefc6ed661cf50caca026f10ee3d4679 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 13 Dec 2016 11:59:52 +0100 -Subject: [PATCH 1/2] rpm: use meson's syntax to specify sourcedir and builddir +Subject: [PATCH 1/3] rpm: use meson's syntax to specify sourcedir and builddir When user uses %meson -Denable_cool_feature=true current macro fails because RPM adds flag after popd: diff --git a/0002-rpm-use-__global_-flags.patch b/0002-rpm-use-__global_-flags.patch index 663fcb0..8a533b2 100644 --- a/0002-rpm-use-__global_-flags.patch +++ b/0002-rpm-use-__global_-flags.patch @@ -1,7 +1,7 @@ -From d98711cde68faf2ab61584b3c81a3ab66c3833d8 Mon Sep 17 00:00:00 2001 +From 469fbaba002796975baf8d60f583c55d690e381a Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 13 Dec 2016 12:29:28 +0100 -Subject: [PATCH 2/2] rpm: use __global_*flags +Subject: [PATCH 2/3] rpm: use __global_*flags Using RPM's %{optflags} is definitely nice, but not enough. LDFLAGS are not there, and idea of optflags is too generic. It is supposed diff --git a/0003-rpm-use-VPATH-macro.patch b/0003-rpm-use-VPATH-macro.patch new file mode 100644 index 0000000..fec7b14 --- /dev/null +++ b/0003-rpm-use-VPATH-macro.patch @@ -0,0 +1,69 @@ +From be232228b77e9d91810efb62765f8bdf69584caa Mon Sep 17 00:00:00 2001 +From: Igor Gnatenko +Date: Tue, 13 Dec 2016 19:20:03 +0100 +Subject: [PATCH 3/3] rpm: use VPATH macro + +This is more or less standardized way to have one variable which +will work for all buildsystems defined in redhat-rpm-config. + +Signed-off-by: Igor Gnatenko +(cherry picked from commit b80f8b2dc2d1ca838c814ae1b8842860a39de175) +--- + data/macros.meson | 32 +++++++++++++++----------------- + 1 file changed, 15 insertions(+), 17 deletions(-) + +diff --git a/data/macros.meson b/data/macros.meson +index e8b15cdd..14d39da4 100644 +--- a/data/macros.meson ++++ b/data/macros.meson +@@ -1,6 +1,4 @@ + %__meson %{_bindir}/meson +-%__sourcedir . +-%__builddir %{_target_platform} + + %meson \ + export CFLAGS="${CFLAGS:-%__global_cflags}" \ +@@ -8,25 +6,25 @@ + export FFLAGS="${FFLAGS:-%__global_fflags}" \ + export FCFLAGS="${FCFLAGS:-%__global_fcflags}" \ + export LDFLAGS="${LDFLAGS:-%__global_ldflags}" \ +- %{__meson} \\\ +- --buildtype=plain \\\ +- --prefix=%{_prefix} \\\ +- --libdir=%{_libdir} \\\ +- --libexecdir=%{_libexecdir} \\\ +- --bindir=%{_bindir} \\\ +- --includedir=%{_includedir} \\\ +- --datadir=%{_datadir} \\\ +- --mandir=%{_mandir} \\\ +- --localedir=%{_datadir}/locale \\\ +- --sysconfdir=%{_sysconfdir} \\\ +- %{__sourcedir} %{__builddir} \\\ ++ %{__meson} \\\ ++ --buildtype=plain \\\ ++ --prefix=%{_prefix} \\\ ++ --libdir=%{_libdir} \\\ ++ --libexecdir=%{_libexecdir} \\\ ++ --bindir=%{_bindir} \\\ ++ --includedir=%{_includedir} \\\ ++ --datadir=%{_datadir} \\\ ++ --mandir=%{_mandir} \\\ ++ --localedir=%{_datadir}/locale \\\ ++ --sysconfdir=%{_sysconfdir} \\\ ++ %{_vpath_srcdir} %{_vpath_builddir} \\\ + %{nil} + + %meson_build \ +- %ninja_build -C %{__builddir} ++ %ninja_build -C %{_vpath_builddir} + + %meson_install \ +- %ninja_install -C %{__builddir} ++ %ninja_install -C %{_vpath_builddir} + + %meson_test \ +- %ninja_test -C %{__builddir} ++ %ninja_test -C %{_vpath_builddir} +-- +2.11.0 + diff --git a/meson.spec b/meson.spec index 4052b7f..af1fae5 100644 --- a/meson.spec +++ b/meson.spec @@ -2,7 +2,7 @@ Name: meson Version: 0.36.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: High productivity build system License: ASL 2.0 @@ -10,6 +10,7 @@ URL: http://mesonbuild.com/ Source0: https://github.com/mesonbuild/meson/archive/%{version}/%{name}-%{version}.tar.gz Patch0001: 0001-rpm-use-meson-s-syntax-to-specify-sourcedir-and-buil.patch Patch0002: 0002-rpm-use-__global_-flags.patch +Patch0003: 0003-rpm-use-VPATH-macro.patch BuildArch: noarch Obsoletes: %{name}-gui < 0.31.0-3 @@ -92,6 +93,9 @@ export MESON_PRINT_TEST_OUTPUT=1 %{rpmmacrodir}/macros.%{name} %changelog +* Thu Dec 15 2016 Igor Gnatenko - 0.36.0-4 +- Backport more RPM macro fixes (FPC ticket #655) + * Tue Dec 13 2016 Igor Gnatenko - 0.36.0-3 - Backport fixes to RPM macros