All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
@ 2018-10-14  7:58 Fabrice Fontaine
  2018-12-02 13:00 ` Thomas Petazzoni
  0 siblings, 1 reply; 7+ messages in thread
From: Fabrice Fontaine @ 2018-10-14  7:58 UTC (permalink / raw)
  To: buildroot

- Update second patch
- Remove third and fifth patches (already in version)
- Add a new patch to fix a missing header
- Add LIBGLIB2_GTK_DOC_HOOK so autoreconf do not fail on the following
  error:
  automake: error: cannot open < gtk-doc.make: No such file or directory

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/libglib2/0002-disable-tests.patch     |  8 +--
 ...code-python-path-into-various-tools.patch} |  0
 ...gobject-fix-compilation-with-gcc-4.7.patch | 50 ------------------
 ...0004-grefcount-add-missing-gatomic.h.patch | 38 ++++++++++++++
 ...compilation-without-F_-S-G-ETPIPE_SZ.patch | 52 -------------------
 package/libglib2/libglib2.hash                |  4 +-
 package/libglib2/libglib2.mk                  | 11 +++-
 7 files changed, 55 insertions(+), 108 deletions(-)
 rename package/libglib2/{0004-Do-not-hardcode-python-path-into-various-tools.patch => 0003-Do-not-hardcode-python-path-into-various-tools.patch} (100%)
 delete mode 100644 package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
 create mode 100644 package/libglib2/0004-grefcount-add-missing-gatomic.h.patch
 delete mode 100644 package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch

diff --git a/package/libglib2/0002-disable-tests.patch b/package/libglib2/0002-disable-tests.patch
index 523ebb35ac..e03dc2fee2 100644
--- a/package/libglib2/0002-disable-tests.patch
+++ b/package/libglib2/0002-disable-tests.patch
@@ -8,6 +8,8 @@ gets mixed with distro python leading to build failures.
 
 Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
 Signed-off-by: Adam Duskett <aduskett@codeblue.com>
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Update for version 2.58.1]
 ---
  Makefile.am      | 2 +-
  gio/Makefile.am  | 2 +-
@@ -22,9 +24,9 @@ index 008ad58..007332d 100644
  
  ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS}
  
--SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests
-+SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs
- DIST_SUBDIRS = $(SUBDIRS) build win32
+-SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests subprojects
++SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs subprojects
+ DIST_SUBDIRS = $(SUBDIRS) build
  
  bin_SCRIPTS = glib-gettextize
 diff --git a/gio/Makefile.am b/gio/Makefile.am
diff --git a/package/libglib2/0004-Do-not-hardcode-python-path-into-various-tools.patch b/package/libglib2/0003-Do-not-hardcode-python-path-into-various-tools.patch
similarity index 100%
rename from package/libglib2/0004-Do-not-hardcode-python-path-into-various-tools.patch
rename to package/libglib2/0003-Do-not-hardcode-python-path-into-various-tools.patch
diff --git a/package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch b/package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
deleted file mode 100644
index fc672513ee..0000000000
--- a/package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From a2b27c0d038ad76cc8016999f8788245da97e946 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Tue, 10 Apr 2018 19:18:57 +0200
-Subject: [PATCH] gobject: fix compilation with gcc <= 4.7
-
-On gcc 4.7, we got the following error:
-
-i686-nptl-linux-gnu-gcc --version
-> i686-nptl-linux-gnu-gcc (crosstool-NG 1.20.0) 4.7.4
-> $ echo '#include <glib-object.h>' | i686-nptl-linux-gnu-gcc -x c -I
-staging/usr/include/glib-2.0 -I staging/usr/lib/glib-2.0/include -Wall
--Werror -c - -o /tmp/foo.o
-> In file included from
-staging/usr/include/glib-2.0/gobject/gbinding.h:29:0,
->                  from staging/usr/include/glib-2.0/glib-object.h:23,
->                  from <stdin>:1:
-> staging/usr/include/glib-2.0/gobject/gobject.h: In function
-'g_set_object':
-> staging/usr/include/glib-2.0/gobject/gobject.h:725:5: error: value
-computed is not used [-Werror=unused-value]
-> cc1: all warnings being treated as errors
-
-This error has been added by commit 3fae39a5d742afe73741f5fd7aa24e3ae8182f06
-So enable the new g_set_object definition only if gcc >= 4.8
-
-Fixes:
- - http://autobuild.buildroot.net/results/b29a2f868438a2210873ea72f491db63175848be
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Upstream-status: https://bugzilla.gnome.org/show_bug.cgi?id=795138
----
- gobject/gobject.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gobject/gobject.h b/gobject/gobject.h
-index 9830663ce..838046fe0 100644
---- a/gobject/gobject.h
-+++ b/gobject/gobject.h
-@@ -507,7 +507,7 @@ GLIB_AVAILABLE_IN_ALL
- void        g_object_remove_weak_pointer      (GObject        *object, 
-                                                gpointer       *weak_pointer_location);
- 
--#if defined(__GNUC__) && !defined(__cplusplus) && GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_56
-+#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8)) && !defined(__cplusplus) && GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_56
- /* Make reference APIs type safe with macros */
- #define g_object_ref(Obj)      ((__typeof__(Obj)) (g_object_ref) (Obj))
- #define g_object_ref_sink(Obj) ((__typeof__(Obj)) (g_object_ref_sink) (Obj))
--- 
-2.14.1
-
diff --git a/package/libglib2/0004-grefcount-add-missing-gatomic.h.patch b/package/libglib2/0004-grefcount-add-missing-gatomic.h.patch
new file mode 100644
index 0000000000..165c0baf96
--- /dev/null
+++ b/package/libglib2/0004-grefcount-add-missing-gatomic.h.patch
@@ -0,0 +1,38 @@
+From 09c149453ac969dedb1cb2d15d489d1dd81412bf Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sat, 13 Oct 2018 23:10:33 +0200
+Subject: [PATCH] grefcount: add missing gatomic.h
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without gatomic.h, build fails on:
+In file included from garcbox.c:24:0:
+garcbox.c: In function ?g_atomic_rc_box_acquire?:
+grefcount.h:101:13: error: implicit declaration of function ?g_atomic_int_get?; did you mean ?__atomic_store?? [-Werror=implicit-function-declaration]
+     (void) (g_atomic_int_get (rc) == G_MAXINT ? 0 : g_atomic_int_inc ((rc))); \
+             ^
+garcbox.c:292:3: note: in expansion of macro ?g_atomic_ref_count_inc?
+   g_atomic_ref_count_inc (&real_box->ref_count);
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://gitlab.gnome.org/GNOME/glib/merge_requests/400]
+---
+ glib/grefcount.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/glib/grefcount.h b/glib/grefcount.h
+index dec9a5ffb..b6eced1b7 100644
+--- a/glib/grefcount.h
++++ b/glib/grefcount.h
+@@ -23,6 +23,7 @@
+ #error "Only <glib.h> can be included directly."
+ #endif
+ 
++#include <glib/gatomic.h>
+ #include <glib/gtypes.h>
+ 
+ G_BEGIN_DECLS
+-- 
+2.17.1
+
diff --git a/package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch b/package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch
deleted file mode 100644
index 032f4851c4..0000000000
--- a/package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 0beb62f564072f3585762c9c55fe894485993b62 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Tue, 10 Apr 2018 18:55:11 +0200
-Subject: [PATCH] gio: fix compilation without F_{S,G}ETPIPE_SZ
-
-Commit a5778ef7c51044147fe470ea1707dd297f44f880 broke compilation on
-architectures without F_SETPIPE_SZ and F_GETPIPE_SZ such as or1k.
-If those variables are undefined, put back previous behavior, buffer
-size set to 1024 * 64
-
-Fixes:
- - http://autobuild.buildroot.net/results/398490e07343a931b25ca6ab5c90a75d7a073e9f
-
-(Modified by Philip Withnall <withnall@endlessm.com> to add an
-explanatory comment.)
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-
-https://bugzilla.gnome.org/show_bug.cgi?id=795133
----
- gio/gfile.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/gio/gfile.c b/gio/gfile.c
-index 334ad8ec3..a67aad383 100644
---- a/gio/gfile.c
-+++ b/gio/gfile.c
-@@ -3012,6 +3012,7 @@ splice_stream_with_progress (GInputStream           *in,
-   if (!g_unix_open_pipe (buffer, FD_CLOEXEC, error))
-     return FALSE;
- 
-+#if defined(F_SETPIPE_SZ) && defined(F_GETPIPE_SZ)
-   /* Try a 1MiB buffer for improved throughput. If that fails, use the default
-    * pipe size. See: https://bugzilla.gnome.org/791457 */
-   buffer_size = fcntl (buffer[1], F_SETPIPE_SZ, 1024 * 1024);
-@@ -3029,6 +3030,13 @@ splice_stream_with_progress (GInputStream           *in,
-           goto out;
-         }
-     }
-+#else
-+  /* If #F_GETPIPE_SZ isn?t available, assume we?re on Linux < 2.6.35,
-+   * but ? 2.6.11, meaning the pipe capacity is 64KiB. Ignore the possibility of
-+   * running on Linux < 2.6.11 (where the capacity was the system page size,
-+   * typically 4KiB) because it?s ancient. See pipe(7). */
-+  buffer_size = 1024 * 64;
-+#endif
- 
-   g_assert (buffer_size > 0);
- 
--- 
-2.13.0
-
diff --git a/package/libglib2/libglib2.hash b/package/libglib2/libglib2.hash
index 7ce031aa89..ff325432a0 100644
--- a/package/libglib2/libglib2.hash
+++ b/package/libglib2/libglib2.hash
@@ -1,4 +1,4 @@
-# https://download.gnome.org/sources/glib/2.56/glib-2.56.1.sha256sum
-sha256  40ef3f44f2c651c7a31aedee44259809b6f03d3d20be44545cd7d177221c0b8d  glib-2.56.1.tar.xz
+# https://download.gnome.org/sources/glib/2.58/glib-2.58.1.sha256sum
+sha256  97d6a9d926b6aa3dfaadad3077cfb43eec74432ab455dff14250c769d526d7d6  glib-2.58.1.tar.xz
 # License files, locally calculated
 sha256	dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING
diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk
index 67db5ac359..8b2277bd2e 100644
--- a/package/libglib2/libglib2.mk
+++ b/package/libglib2/libglib2.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBGLIB2_VERSION_MAJOR = 2.56
+LIBGLIB2_VERSION_MAJOR = 2.58
 LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).1
 LIBGLIB2_SOURCE = glib-$(LIBGLIB2_VERSION).tar.xz
 LIBGLIB2_SITE = http://ftp.gnome.org/pub/gnome/sources/glib/$(LIBGLIB2_VERSION_MAJOR)
@@ -13,6 +13,15 @@ LIBGLIB2_LICENSE_FILES = COPYING
 # 0002-disable-tests.patch
 LIBGLIB2_AUTORECONF = YES
 
+# Copy what is done in autogen.sh when gtk-doc is not available
+define LIBGLIB2_GTK_DOC_HOOK
+	echo "EXTRA_DIST=" > $(@D)/gtk-doc.make
+	echo "CLEANFILES=" >> $(@D)/gtk-doc.make
+endef
+
+LIBGLIB2_PRE_CONFIGURE_HOOKS += LIBGLIB2_GTK_DOC_HOOK
+HOST_LIBGLIB2_PRE_CONFIGURE_HOOKS += LIBGLIB2_GTK_DOC_HOOK
+
 LIBGLIB2_INSTALL_STAGING = YES
 LIBGLIB2_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LDFLAGS=-L$(STAGING_DIR)/usr/lib install
 
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
  2018-10-14  7:58 [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1 Fabrice Fontaine
@ 2018-12-02 13:00 ` Thomas Petazzoni
  2018-12-02 17:23   ` Yann E. MORIN
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2018-12-02 13:00 UTC (permalink / raw)
  To: buildroot

Hello,

On Sun, 14 Oct 2018 09:58:52 +0200, Fabrice Fontaine wrote:
> - Update second patch
> - Remove third and fifth patches (already in version)
> - Add a new patch to fix a missing header
> - Add LIBGLIB2_GTK_DOC_HOOK so autoreconf do not fail on the following
>   error:
>   automake: error: cannot open < gtk-doc.make: No such file or directory
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
>  package/libglib2/0002-disable-tests.patch     |  8 +--
>  ...code-python-path-into-various-tools.patch} |  0
>  ...gobject-fix-compilation-with-gcc-4.7.patch | 50 ------------------
>  ...0004-grefcount-add-missing-gatomic.h.patch | 38 ++++++++++++++
>  ...compilation-without-F_-S-G-ETPIPE_SZ.patch | 52 -------------------
>  package/libglib2/libglib2.hash                |  4 +-
>  package/libglib2/libglib2.mk                  | 11 +++-
>  7 files changed, 55 insertions(+), 108 deletions(-)
>  rename package/libglib2/{0004-Do-not-hardcode-python-path-into-various-tools.patch => 0003-Do-not-hardcode-python-path-into-various-tools.patch} (100%)
>  delete mode 100644 package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
>  create mode 100644 package/libglib2/0004-grefcount-add-missing-gatomic.h.patch
>  delete mode 100644 package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
  2018-12-02 13:00 ` Thomas Petazzoni
@ 2018-12-02 17:23   ` Yann E. MORIN
  2018-12-03  7:23     ` Fabrice Fontaine
  2018-12-03  7:38     ` Thomas Petazzoni
  0 siblings, 2 replies; 7+ messages in thread
From: Yann E. MORIN @ 2018-12-02 17:23 UTC (permalink / raw)
  To: buildroot

Fabrice, Thomas, All,

On 2018-12-02 14:00 +0100, Thomas Petazzoni spake thusly:
> On Sun, 14 Oct 2018 09:58:52 +0200, Fabrice Fontaine wrote:
> > - Update second patch
> > - Remove third and fifth patches (already in version)
> > - Add a new patch to fix a missing header
> > - Add LIBGLIB2_GTK_DOC_HOOK so autoreconf do not fail on the following
> >   error:
> >   automake: error: cannot open < gtk-doc.make: No such file or directory
> > 
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > ---
> >  package/libglib2/0002-disable-tests.patch     |  8 +--
> >  ...code-python-path-into-various-tools.patch} |  0
> >  ...gobject-fix-compilation-with-gcc-4.7.patch | 50 ------------------
> >  ...0004-grefcount-add-missing-gatomic.h.patch | 38 ++++++++++++++
> >  ...compilation-without-F_-S-G-ETPIPE_SZ.patch | 52 -------------------
> >  package/libglib2/libglib2.hash                |  4 +-
> >  package/libglib2/libglib2.mk                  | 11 +++-
> >  7 files changed, 55 insertions(+), 108 deletions(-)
> >  rename package/libglib2/{0004-Do-not-hardcode-python-path-into-various-tools.patch => 0003-Do-not-hardcode-python-path-into-various-tools.patch} (100%)
> >  delete mode 100644 package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
> >  create mode 100644 package/libglib2/0004-grefcount-add-missing-gatomic.h.patch
> >  delete mode 100644 package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch
> 
> Applied to master, thanks.

As you can see on the autobuilders, thius breaks all glib-using packages:

libsoup-2.62.3
    http://autobuild.buildroot.org/results/e44/e449948077bc03cee57c567332c17f51371b6086//
    /bin/sh: /usr/bin/glib-mkenums: No such file or directory

atk-2.28.1
    http://autobuild.buildroot.org/results/e9e/e9ebc4f7d6ccf90a9a0800511472367312432137/
    /bin/bash: /usr/bin/glib-genmarshal: No such file or directory

dbus-glib-0.110
    http://autobuild.buildroot.org/results/2e4/2e4285d47f6295e1b9f9c05abe34df443cad7f9e/
    /bin/sh: /usr/bin/glib-genmarshal: No such file or directory

And so on...

I've investigated a bit, and glib-2.0.pc contains (excerpt):

    exec_prefix=/usr
    bindir=${exec_prefix}/bin
    glib_genmarshal=${bindir}/glib-genmarshal
    glib_mkenums=${bindir}/glib-mkenums

And, for example dbus-glib, use pkg-config to get the path to, e.g.,
glib_genmarshal:

    GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
    AC_SUBST(GLIB_GENMARSHAL)

And if one does exaectly that:

    $ /home/ymorin/dev/buildroot/O/host/bin/pkgconf --variable=glib_genmarshal glib-2.0
    /usr/bin/glib-genmarshal

Of course, on my mach8ine, that one did exist, so the build succeed. But
most autobuilders don't have it, and the build fails.

The situation is similar for the two other tools, gobject-query and
glib-mkenums.

So, the solutions I have for now are:

 1- fix each package and pass them GLIB_GENMARSHAL=$(STAGING_DIR)/bin/glib-genmarshal
    (similarly for the two other tools)

 2- teach pkgconf to replace even more variables. This is not very
    satisfying, and we won't be able to keep up in the long term. We
    hould at least teach pkgconf to look for that list in an environment
    variable, at least, to avoid tweaking the code over-and-over again.

However, (1) is not totally free: dbus-glib does not accept it from the
environment, because they borked the way to call glib-genmarshal (it's
basically hard-coded). I have fixed it and submitted upstream [0], so at
least we have that one fixed, but we still have the others, the numerous
croud of glib-dependent packages, to test and fix one by one...

[0] https://gitlab.freedesktop.org/dbus/dbus-glib/merge_requests/2

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
  2018-12-02 17:23   ` Yann E. MORIN
@ 2018-12-03  7:23     ` Fabrice Fontaine
  2018-12-03  8:11       ` Yann E. MORIN
  2018-12-03  7:38     ` Thomas Petazzoni
  1 sibling, 1 reply; 7+ messages in thread
From: Fabrice Fontaine @ 2018-12-03  7:23 UTC (permalink / raw)
  To: buildroot

Dear Yann,
Le dim. 2 d?c. 2018 ? 18:23, Yann E. MORIN <yann.morin.1998@free.fr> a ?crit :
>
> Fabrice, Thomas, All,
>
> On 2018-12-02 14:00 +0100, Thomas Petazzoni spake thusly:
> > On Sun, 14 Oct 2018 09:58:52 +0200, Fabrice Fontaine wrote:
> > > - Update second patch
> > > - Remove third and fifth patches (already in version)
> > > - Add a new patch to fix a missing header
> > > - Add LIBGLIB2_GTK_DOC_HOOK so autoreconf do not fail on the following
> > >   error:
> > >   automake: error: cannot open < gtk-doc.make: No such file or directory
> > >
> > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > > ---
> > >  package/libglib2/0002-disable-tests.patch     |  8 +--
> > >  ...code-python-path-into-various-tools.patch} |  0
> > >  ...gobject-fix-compilation-with-gcc-4.7.patch | 50 ------------------
> > >  ...0004-grefcount-add-missing-gatomic.h.patch | 38 ++++++++++++++
> > >  ...compilation-without-F_-S-G-ETPIPE_SZ.patch | 52 -------------------
> > >  package/libglib2/libglib2.hash                |  4 +-
> > >  package/libglib2/libglib2.mk                  | 11 +++-
> > >  7 files changed, 55 insertions(+), 108 deletions(-)
> > >  rename package/libglib2/{0004-Do-not-hardcode-python-path-into-various-tools.patch => 0003-Do-not-hardcode-python-path-into-various-tools.patch} (100%)
> > >  delete mode 100644 package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
> > >  create mode 100644 package/libglib2/0004-grefcount-add-missing-gatomic.h.patch
> > >  delete mode 100644 package/libglib2/0005-gio-fix-compilation-without-F_-S-G-ETPIPE_SZ.patch
> >
> > Applied to master, thanks.
>
> As you can see on the autobuilders, thius breaks all glib-using packages:
>
> libsoup-2.62.3
>     http://autobuild.buildroot.org/results/e44/e449948077bc03cee57c567332c17f51371b6086//
>     /bin/sh: /usr/bin/glib-mkenums: No such file or directory
>
> atk-2.28.1
>     http://autobuild.buildroot.org/results/e9e/e9ebc4f7d6ccf90a9a0800511472367312432137/
>     /bin/bash: /usr/bin/glib-genmarshal: No such file or directory
>
> dbus-glib-0.110
>     http://autobuild.buildroot.org/results/2e4/2e4285d47f6295e1b9f9c05abe34df443cad7f9e/
>     /bin/sh: /usr/bin/glib-genmarshal: No such file or directory
>
> And so on...
>
> I've investigated a bit, and glib-2.0.pc contains (excerpt):
>
>     exec_prefix=/usr
>     bindir=${exec_prefix}/bin
>     glib_genmarshal=${bindir}/glib-genmarshal
>     glib_mkenums=${bindir}/glib-mkenums
>
> And, for example dbus-glib, use pkg-config to get the path to, e.g.,
> glib_genmarshal:
>
>     GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
>     AC_SUBST(GLIB_GENMARSHAL)
>
> And if one does exaectly that:
>
>     $ /home/ymorin/dev/buildroot/O/host/bin/pkgconf --variable=glib_genmarshal glib-2.0
>     /usr/bin/glib-genmarshal
>
> Of course, on my mach8ine, that one did exist, so the build succeed. But
> most autobuilders don't have it, and the build fails.
>
> The situation is similar for the two other tools, gobject-query and
> glib-mkenums.
>
> So, the solutions I have for now are:
>
>  1- fix each package and pass them GLIB_GENMARSHAL=$(STAGING_DIR)/bin/glib-genmarshal
>     (similarly for the two other tools)
>
>  2- teach pkgconf to replace even more variables. This is not very
>     satisfying, and we won't be able to keep up in the long term. We
>     hould at least teach pkgconf to look for that list in an environment
>     variable, at least, to avoid tweaking the code over-and-over again.
>
> However, (1) is not totally free: dbus-glib does not accept it from the
> environment, because they borked the way to call glib-genmarshal (it's
> basically hard-coded). I have fixed it and submitted upstream [0], so at
> least we have that one fixed, but we still have the others, the numerous
> croud of glib-dependent packages, to test and fix one by one...
>
> [0] https://gitlab.freedesktop.org/dbus/dbus-glib/merge_requests/2
Thanks a lot for investigating, I'm more in favor of (2) because most
of the glib packages don't have any environment variables.
However, it should be noted that a lot of glib packages (libsoup,
gdk-pixpuf, atk, pango) have switched to meson in their latest
upstream versions.
Meson has a gnome module to find and call genmarshal, mkenums, etc ...
and this module does not use the pkgconfig file to find the path of
these binaries.
I'll start with atk.
>
> Regards,
> Yann E. MORIN.
>
> --
> .-----------------.--------------------.------------------.--------------------.
> |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
> | +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
> '------------------------------^-------^------------------^--------------------'
Best Regards,

Fabrice

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
  2018-12-02 17:23   ` Yann E. MORIN
  2018-12-03  7:23     ` Fabrice Fontaine
@ 2018-12-03  7:38     ` Thomas Petazzoni
  2018-12-03  8:06       ` Yann E. MORIN
  1 sibling, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2018-12-03  7:38 UTC (permalink / raw)
  To: buildroot

Hello,

On Sun, 2 Dec 2018 18:23:24 +0100, Yann E. MORIN wrote:

>  2- teach pkgconf to replace even more variables. This is not very
>     satisfying, and we won't be able to keep up in the long term. We
>     hould at least teach pkgconf to look for that list in an environment
>     variable, at least, to avoid tweaking the code over-and-over again.

Note that we have a pkg-config bump in the pending patches:
http://patchwork.ozlabs.org/patch/967653/. The bump is quite major, and
potentially affects how pkg-config behaves with variables. It might be
worth testing what happens, and in any case, if a solution is designed,
it should be based on this newer version of pkg-config.

For now, I will revert this libglib2 bump. I'll wait a bit for the dust
to settle, and then I will apply this pkg-config bump, which is another
risky change. The kind of stuff that is good to do early in the
development cycle :-)

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
  2018-12-03  7:38     ` Thomas Petazzoni
@ 2018-12-03  8:06       ` Yann E. MORIN
  0 siblings, 0 replies; 7+ messages in thread
From: Yann E. MORIN @ 2018-12-03  8:06 UTC (permalink / raw)
  To: buildroot

Thomas, Fabrice, All,

On 2018-12-03 08:38 +0100, Thomas Petazzoni spake thusly:
> On Sun, 2 Dec 2018 18:23:24 +0100, Yann E. MORIN wrote:
> 
> >  2- teach pkgconf to replace even more variables. This is not very
> >     satisfying, and we won't be able to keep up in the long term. We
> >     hould at least teach pkgconf to look for that list in an environment
> >     variable, at least, to avoid tweaking the code over-and-over again.
> 
> Note that we have a pkg-config bump in the pending patches:
> http://patchwork.ozlabs.org/patch/967653/. The bump is quite major, and
> potentially affects how pkg-config behaves with variables. It might be
> worth testing what happens, and in any case, if a solution is designed,
> it should be based on this newer version of pkg-config.
> 
> For now, I will revert this libglib2 bump. I'll wait a bit for the dust
> to settle, and then I will apply this pkg-config bump, which is another
> risky change. The kind of stuff that is good to do early in the
> development cycle :-)

So, I tested your pkgconf bump, and indeed it solves this particular
glib-genmarshal et al. issues, by now returning the sysrooted path:

    $ /home/ymorin/dev/buildroot/O/host/bin/pkg-config --variable=glib_genmarshal glib-2.0
    /home/ymorin/dev/buildroot/O/host/bin/../m68k-buildroot-linux-uclibc/sysroot/usr/bin/glib-genmarshal

Wee! :-)

Of course, do not take that as a tested-by tag for the bump, it is too
limited to be so.

I'll kick-start two biggish build this morning, with just the new pkgconf
and see how it behaves across the tree, once without the libglib2,
andother with.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1
  2018-12-03  7:23     ` Fabrice Fontaine
@ 2018-12-03  8:11       ` Yann E. MORIN
  0 siblings, 0 replies; 7+ messages in thread
From: Yann E. MORIN @ 2018-12-03  8:11 UTC (permalink / raw)
  To: buildroot

Fabrice, All,

On 2018-12-03 08:23 +0100, Fabrice Fontaine spake thusly:
> Le dim. 2 d?c. 2018 ? 18:23, Yann E. MORIN <yann.morin.1998@free.fr> a ?crit :
> > On 2018-12-02 14:00 +0100, Thomas Petazzoni spake thusly:
> > > On Sun, 14 Oct 2018 09:58:52 +0200, Fabrice Fontaine wrote:
> > As you can see on the autobuilders, thius breaks all glib-using packages:
[--SNIP--]
> > So, the solutions I have for now are:
> >
> >  1- fix each package and pass them GLIB_GENMARSHAL=$(STAGING_DIR)/bin/glib-genmarshal
> >     (similarly for the two other tools)
> >
> >  2- teach pkgconf to replace even more variables. This is not very
> >     satisfying, and we won't be able to keep up in the long term. We
> >     hould at least teach pkgconf to look for that list in an environment
> >     variable, at least, to avoid tweaking the code over-and-over again.
[--SNIP--]
> Thanks a lot for investigating, I'm more in favor of (2) because most
> of the glib packages don't have any environment variables.
> However, it should be noted that a lot of glib packages (libsoup,
> gdk-pixpuf, atk, pango) have switched to meson in their latest
> upstream versions.
> Meson has a gnome module to find and call genmarshal, mkenums, etc ...
> and this module does not use the pkgconfig file to find the path of
> these binaries.

Well, dbus-glib is in maintenance-mode only, so it's not going to be
updated to meson I am afraid (or should I say, relieved?). So we still
have some fixing to do.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-12-03  8:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-14  7:58 [Buildroot] [PATCH 1/1] libglib2: bump to version 2.58.1 Fabrice Fontaine
2018-12-02 13:00 ` Thomas Petazzoni
2018-12-02 17:23   ` Yann E. MORIN
2018-12-03  7:23     ` Fabrice Fontaine
2018-12-03  8:11       ` Yann E. MORIN
2018-12-03  7:38     ` Thomas Petazzoni
2018-12-03  8:06       ` Yann E. MORIN

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.