On 27/11/2019 11:49, Petr Štetiar wrote:
Rosen Penev <ros...@gmail.com> [2019-11-25 14:44:18]:
Hi,
you're trying to do a lot of things in one patch, making it hard to review,
please split it up.
1. switch to pkgconf
2. shell check fix
3. meson fix
-ifeq ($(HOST_OS),Darwin)
-HOST_LDFLAGS += -framework CoreFoundation -framework Carbon
-endif
So it compiles and works on macOS just fine? You can ask Kevin (ldir) on IRC
to build test this for you.
diff --git a/tools/pkgconf/files/pkg-config b/tools/pkgconf/files/pkg-config
new file mode 100755
index 0000000000..6579a14f86
--- /dev/null
+++ b/tools/pkgconf/files/pkg-config
What has happened with the old pkg-config? Have you forget to `git mv/git add`?
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+"$(dirname "$0")/pkg-config.real" \
This change was suggested by shellcheck? Why is this change needed? This needs
to go into separate commit with a proper description.
diff --git a/tools/pkgconf/patches/0001-f-pkgconf-meson.patch
b/tools/pkgconf/patches/0001-f-pkgconf-meson.patch
new file mode 100644
index 0000000000..3ed47adc95
--- /dev/null
+++ b/tools/pkgconf/patches/0001-f-pkgconf-meson.patch
@@ -0,0 +1,31 @@
+From 05ef58532b75c36fc19eb9d2d1fe4c46195706bf Mon Sep 17 00:00:00 2001
+From: Andre Heider <a.hei...@gmail.com>
+Date: Mon, 25 Nov 2019 09:36:47 +0100
+Subject: [PATCH] f pkgconf/meson
This patch needs a better name and better explanation, description. This is
some upstream backport or whats the origin of this patch?
That was just a quick & dirty patch from me to get it working, that's
why it lacks any sort of explanation ;)
If I read that right Rosen accidentally added my openwrt patch to the
patches/ folder, and not the pkgconf patch within ;) The "f" at the
start tried to imply that it should be "fixup"'ed on rebase, but that
obviously didn't work out :D
+---
+ tools/pkgconf/patches/meson.patch | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+ create mode 100644 tools/pkgconf/patches/meson.patch
+
+diff --git a/tools/pkgconf/patches/meson.patch
b/tools/pkgconf/patches/meson.patch
+new file mode 100644
+index 0000000000..e0a2946f32
+--- /dev/null
++++ b/tools/pkgconf/patches/meson.patch
+@@ -0,0 +1,12 @@
++diff -ur pkgconf-1.6.3-orig/cli/main.c pkgconf-1.6.3/cli/main.c
++--- pkgconf-1.6.3-orig/cli/main.c 2019-07-12 13:53:12.000000000 +0200
+++++ pkgconf-1.6.3/cli/main.c 2019-11-25 09:32:53.512784479 +0100
++@@ -1002,7 +1002,7 @@
++
++ if ((want_flags & PKG_VERSION) == PKG_VERSION)
++ {
++- if (argc > 2)
+++ if (0 && argc > 2)
Uh?
It's just me or this seems like a hack, something which should be fixed in
meson instead? I would prefer to have a patch which is accepted upstream.
pkgconf is maintained, right?
What openwrt does it wrap pkg-config/pkgconf in a shell script to add
additional arguments for cross compiling (those --define-variable
above). That wrapper is then passed to build systems as pkg-config.
Now meson probes pkg-config with the --version argument to see if it's a
working binary or whatever. pkgconf then sees --version with additional
arguments and decides to be "smart" and does something completely
different than just printing its version. That in return errors out,
meson thinks pkg-config is unusable and the whole build fails.
The patch gets rid of that "smart" part, which makes meson and the
wrapped pkgconf play together.
The original pkg-config doesn't have this issue.
There's a bug report here:
https://todo.sr.ht/~kaniini/pkgconf/6
I didn't pursue upstreaming it because it looks like merge request at
github are ignored and I didn't feel like signing up at upstreams own page.
Hope that helps,
Andre
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel