All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2 0/2] Split out libx11-locale from libx11
@ 2019-05-05 20:14 liu.ming50
  2019-05-05 20:14 ` [PATCH V2 1/2] libx11: split out libx11-locale liu.ming50
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: liu.ming50 @ 2019-05-05 20:14 UTC (permalink / raw)
  To: openembedded-core; +Cc: gerard.salvatella, Ming Liu, luka.pivk, stefan.agner

From: Ming Liu <liu.ming50@gmail.com>

Changes in V2:
1 As suggested by Ross Burton, split out libx11-locale from libx11
as a standalone recipe.

Ming Liu (2):
  libx11: split out libx11-locale
  libxkbcommon: RDEPENDS on libx11-locale

 .../recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb |  1 -
 .../libx11-locale/0001-Drop-x11-dependencies.patch | 86 ++++++++++++++++++++++
 .../xorg-lib/libx11-locale_1.6.7.bb                | 32 ++++++++
 meta/recipes-graphics/xorg-lib/libx11.inc          |  8 +-
 .../xorg-lib/libxkbcommon_0.8.4.bb                 |  4 +
 5 files changed, 129 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch
 create mode 100644 meta/recipes-graphics/xorg-lib/libx11-locale_1.6.7.bb

-- 
2.7.4



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

* [PATCH V2 1/2] libx11: split out libx11-locale
  2019-05-05 20:14 [PATCH V2 0/2] Split out libx11-locale from libx11 liu.ming50
@ 2019-05-05 20:14 ` liu.ming50
  2019-05-05 20:14 ` [PATCH V2 2/2] libxkbcommon: RDEPENDS on libx11-locale liu.ming50
  2019-06-12 15:46 ` [PATCH V2 0/2] Split out libx11-locale from libx11 Burton, Ross
  2 siblings, 0 replies; 5+ messages in thread
From: liu.ming50 @ 2019-05-05 20:14 UTC (permalink / raw)
  To: openembedded-core; +Cc: gerard.salvatella, Ming Liu, luka.pivk, stefan.agner

From: Ming Liu <liu.ming50@gmail.com>

So far libx11-locale is also being required by some non-X11 recipes,
like weston -> libxkbcommon -> libx11-locale. But the libx11-locale
could not build without x11 distro feature enabled. This is not
reasonable.

To fix it, we split out libx11-locale from libx11 to be a standalone
recipe, and drop the X11 dependencies, this makes it to be able to
build without x11 distro feature.

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
---
 .../recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb |  1 -
 .../libx11-locale/0001-Drop-x11-dependencies.patch | 86 ++++++++++++++++++++++
 .../xorg-lib/libx11-locale_1.6.7.bb                | 32 ++++++++
 meta/recipes-graphics/xorg-lib/libx11.inc          |  8 +-
 4 files changed, 125 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch
 create mode 100644 meta/recipes-graphics/xorg-lib/libx11-locale_1.6.7.bb

diff --git a/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb b/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb
index 9c773a0..5f99d40 100644
--- a/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb
+++ b/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb
@@ -9,7 +9,6 @@ SRC_URI += "file://X18NCMSstubs.patch \
            "
 
 RPROVIDES_${PN}-dev = "libx11-dev"
-RPROVIDES_${PN}-locale = "libx11-locale"
 
 EXTRA_OECONF += "--disable-xlocale"
 
diff --git a/meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch b/meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch
new file mode 100644
index 0000000..e6e179e
--- /dev/null
+++ b/meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch
@@ -0,0 +1,86 @@
+From a60f5058136aeadceebfccadf606d8210f8d3ca6 Mon Sep 17 00:00:00 2001
+From: Ming Liu <liu.ming50@gmail.com>
+Date: Sun, 5 May 2019 11:55:14 +0200
+Subject: [PATCH] Drop x11 dependencies
+
+Upstream-Status: Inappropriate [OE-Specific]
+
+Signed-off-by: Ming Liu <liu.ming50@gmail.com>
+---
+ configure.ac | 44 --------------------------------------------
+ 1 file changed, 44 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 3090845..d14063f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -66,27 +66,8 @@ fi
+ AC_SUBST(LDFLAGS_FOR_BUILD)
+ 
+ # Checks for pkg-config packages
+-
+-# Always required
+-X11_REQUIRES='xproto >= 7.0.17 xextproto xtrans xcb >= 1.11.1'
+-X11_EXTRA_DEPS="xcb >= 1.11.1"
+-
+ PKG_PROG_PKG_CONFIG()
+ 
+-AC_SUBST(X11_EXTRA_DEPS)
+-
+-# Issue an error if xtrans.m4 was not found and XTRANS_CONNECTION_FLAGS macro
+-# was not expanded, since libX11 with no transport types is rather useless.
+-#
+-# If you're seeing an error here, be sure you installed the lib/xtrans module
+-# first and if it's not in the default location, that you set the ACLOCAL
+-# environment variable to find it, such as:
+-#	ACLOCAL="aclocal -I ${PREFIX}/share/aclocal"
+-m4_pattern_forbid([^XTRANS_CONNECTION_FLAGS$])
+-
+-# Transport selection macro from xtrans.m4
+-XTRANS_CONNECTION_FLAGS
+-
+ # Check for dlopen
+ AC_MSG_CHECKING([if run-time linking is supported])
+ AC_SEARCH_LIBS(dlopen,[dl svld])
+@@ -226,30 +207,6 @@ AC_SUBST(XTHREAD_CFLAGS)
+ 
+ AC_CHECK_FUNC(poll, [AC_DEFINE(USE_POLL, 1, [poll() function is available])], )
+ 
+-#
+-# Find keysymdef.h
+-#
+-AC_MSG_CHECKING([keysym definitions])
+-AC_ARG_WITH([keysymdefdir],
+-        [AC_HELP_STRING([--with-keysymdefdir=DIR], [The location of keysymdef.h (defaults to xproto include dir)])],
+-        [KEYSYMDEFDIR=$withval],
+-        [KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11])
+-
+-if test ! -d "$KEYSYMDEFDIR"; then
+-	AC_MSG_ERROR([$KEYSYMDEFDIR doesn't exist or isn't a directory])
+-fi
+-
+-FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h"
+-for i in $FILES; do
+-    if test -f "$KEYSYMDEFDIR/$i"; then
+-            KEYSYMDEFS="$KEYSYMDEFS $KEYSYMDEFDIR/$i"
+-    elif test "x$i" = "xkeysymdef.h"; then
+-	    AC_MSG_ERROR([Cannot find keysymdef.h])
+-    fi
+-done
+-AC_MSG_RESULT([$KEYSYMDEFS])
+-AC_SUBST(KEYSYMDEFS)
+-
+ AC_ARG_ENABLE(xcms,
+               AS_HELP_STRING([--disable-xcms],
+                 [Disable Xlib support for CMS *EXPERIMENTAL*]),
+@@ -329,7 +286,6 @@ X11_LIBDIR="${libdir}/X11"
+ AX_DEFINE_DIR(X11_LIBDIR, X11_LIBDIR, [Location of libX11 library data])
+ AC_SUBST(X11_LIBDIR)
+ 
+-PKG_CHECK_MODULES(X11, [$X11_REQUIRES])
+ X11_CFLAGS="$X11_CFLAGS $XTHREAD_CFLAGS"
+ 
+ #
+-- 
+2.7.4
+
diff --git a/meta/recipes-graphics/xorg-lib/libx11-locale_1.6.7.bb b/meta/recipes-graphics/xorg-lib/libx11-locale_1.6.7.bb
new file mode 100644
index 0000000..5bf1ca6
--- /dev/null
+++ b/meta/recipes-graphics/xorg-lib/libx11-locale_1.6.7.bb
@@ -0,0 +1,32 @@
+SUMMARY = "Xlib: locale data files for libx11"
+DESCRIPTION = "This package provides the locale data files for libx11."
+
+require xorg-lib-common.inc
+
+LICENSE = "MIT & MIT-style & BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=172255dee66bb0151435b2d5d709fcf7"
+
+SRC_URI[md5sum] = "034fdd6cc5393974d88aec6f5bc96162"
+SRC_URI[sha256sum] = "910e9e30efba4ad3672ca277741c2728aebffa7bc526f04dcfa74df2e52a1348"
+
+SRC_URI += "file://0001-Drop-x11-dependencies.patch"
+
+XORG_PN = "libX11"
+
+EXTRA_OECONF += "--disable-xkb"
+
+PACKAGES = "${PN}"
+
+FILES_${PN} = "${datadir}/X11/locale ${libdir}/X11/locale"
+
+do_compile() {
+    oe_runmake -C nls
+}
+
+do_install() {
+    oe_runmake DESTDIR=${D} -C nls install
+}
+
+REQUIRED_DISTRO_FEATURES = ""
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-graphics/xorg-lib/libx11.inc b/meta/recipes-graphics/xorg-lib/libx11.inc
index ea2ebfb..8ad0523 100644
--- a/meta/recipes-graphics/xorg-lib/libx11.inc
+++ b/meta/recipes-graphics/xorg-lib/libx11.inc
@@ -32,7 +32,13 @@ PACKAGECONFIG[xcms] = "--enable-xcms,--disable-xcms"
 CPPFLAGS_FOR_BUILD += "-D_GNU_SOURCE"
 
 PACKAGES =+ "${PN}-xcb"
+PACKAGES_remove = "${PN}-locale"
 
 FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${datadir}/X11/Xcms.txt"
 FILES_${PN}-xcb += "${libdir}/libX11-xcb.so.*"
-FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"
+
+# locale data files would be provided by libx11-locale recipe
+do_install_append() {
+	rm -rf ${D}${datadir}/X11/locale
+	rm -rf ${D}${libdir}/X11/locale
+}
-- 
2.7.4



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

* [PATCH V2 2/2] libxkbcommon: RDEPENDS on libx11-locale
  2019-05-05 20:14 [PATCH V2 0/2] Split out libx11-locale from libx11 liu.ming50
  2019-05-05 20:14 ` [PATCH V2 1/2] libx11: split out libx11-locale liu.ming50
@ 2019-05-05 20:14 ` liu.ming50
  2019-06-12 15:46 ` [PATCH V2 0/2] Split out libx11-locale from libx11 Burton, Ross
  2 siblings, 0 replies; 5+ messages in thread
From: liu.ming50 @ 2019-05-05 20:14 UTC (permalink / raw)
  To: openembedded-core; +Cc: gerard.salvatella, Ming Liu, luka.pivk, stefan.agner

From: Ming Liu <liu.ming50@gmail.com>

This fixes a following runtime error:
| xkbcommon: ERROR: couldn't find a Compose file for locale "C"

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
---
 meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb b/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb
index 8fcae12..4d31638 100644
--- a/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb
+++ b/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb
@@ -7,6 +7,10 @@ LICENSE = "MIT & MIT-style"
 
 DEPENDS = "util-macros flex-native bison-native"
 
+# Fix a following runtime error:
+# xkbcommon: ERROR: couldn't find a Compose file for locale "C"
+RDEPENDS_${PN} = "libx11-locale"
+
 SRC_URI = "http://xkbcommon.org/download/${BPN}-${PV}.tar.xz"
 
 SRC_URI[md5sum] = "3c4409058dfd203f641a563358e0187d"
-- 
2.7.4



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

* Re: [PATCH V2 0/2] Split out libx11-locale from libx11
  2019-05-05 20:14 [PATCH V2 0/2] Split out libx11-locale from libx11 liu.ming50
  2019-05-05 20:14 ` [PATCH V2 1/2] libx11: split out libx11-locale liu.ming50
  2019-05-05 20:14 ` [PATCH V2 2/2] libxkbcommon: RDEPENDS on libx11-locale liu.ming50
@ 2019-06-12 15:46 ` Burton, Ross
  2019-06-13  8:37   ` Ming Liu
  2 siblings, 1 reply; 5+ messages in thread
From: Burton, Ross @ 2019-06-12 15:46 UTC (permalink / raw)
  To: Ming Liu; +Cc: gerard.salvatella, luka.pivk, Stefan Agner, OE-core

I didn't make myself clear.  To reduce the amount of moving parts and
changes I propose:

1) libx11 and libx11-diet are untouched
2) New recipe libx11-compose-data which just ships the compose data,
assuming that is all that is needed by xkeyboard-config's Compose
handling.  Refuses to build if x11 is in DISTRO_FEATURES
3) xkeyboard-config depends on either libx11 or libx11-compose-data,
depending whether x11 is in DISTRO_FEATURES

Ross

On Sun, 5 May 2019 at 21:15, <liu.ming50@gmail.com> wrote:
>
> From: Ming Liu <liu.ming50@gmail.com>
>
> Changes in V2:
> 1 As suggested by Ross Burton, split out libx11-locale from libx11
> as a standalone recipe.
>
> Ming Liu (2):
>   libx11: split out libx11-locale
>   libxkbcommon: RDEPENDS on libx11-locale
>
>  .../recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb |  1 -
>  .../libx11-locale/0001-Drop-x11-dependencies.patch | 86 ++++++++++++++++++++++
>  .../xorg-lib/libx11-locale_1.6.7.bb                | 32 ++++++++
>  meta/recipes-graphics/xorg-lib/libx11.inc          |  8 +-
>  .../xorg-lib/libxkbcommon_0.8.4.bb                 |  4 +
>  5 files changed, 129 insertions(+), 2 deletions(-)
>  create mode 100644 meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch
>  create mode 100644 meta/recipes-graphics/xorg-lib/libx11-locale_1.6.7.bb
>
> --
> 2.7.4
>


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

* Re: [PATCH V2 0/2] Split out libx11-locale from libx11
  2019-06-12 15:46 ` [PATCH V2 0/2] Split out libx11-locale from libx11 Burton, Ross
@ 2019-06-13  8:37   ` Ming Liu
  0 siblings, 0 replies; 5+ messages in thread
From: Ming Liu @ 2019-06-13  8:37 UTC (permalink / raw)
  To: Burton, Ross; +Cc: gerard.salvatella, Luka Pivk, Stefan Agner, OE-core

[-- Attachment #1: Type: text/plain, Size: 1625 bytes --]

HI, Burton:

Thanks for the comments, will do a V3.

the best,
thank you

Burton, Ross <ross.burton@intel.com> 於 2019年6月12日 週三 下午5:47寫道:

> I didn't make myself clear.  To reduce the amount of moving parts and
> changes I propose:
>
> 1) libx11 and libx11-diet are untouched
> 2) New recipe libx11-compose-data which just ships the compose data,
> assuming that is all that is needed by xkeyboard-config's Compose
> handling.  Refuses to build if x11 is in DISTRO_FEATURES
> 3) xkeyboard-config depends on either libx11 or libx11-compose-data,
> depending whether x11 is in DISTRO_FEATURES
>
> Ross
>
> On Sun, 5 May 2019 at 21:15, <liu.ming50@gmail.com> wrote:
> >
> > From: Ming Liu <liu.ming50@gmail.com>
> >
> > Changes in V2:
> > 1 As suggested by Ross Burton, split out libx11-locale from libx11
> > as a standalone recipe.
> >
> > Ming Liu (2):
> >   libx11: split out libx11-locale
> >   libxkbcommon: RDEPENDS on libx11-locale
> >
> >  .../recipes-graphics/xorg-lib/libx11-diet_1.6.7.bb |  1 -
> >  .../libx11-locale/0001-Drop-x11-dependencies.patch | 86
> ++++++++++++++++++++++
> >  .../xorg-lib/libx11-locale_1.6.7.bb                | 32 ++++++++
> >  meta/recipes-graphics/xorg-lib/libx11.inc          |  8 +-
> >  .../xorg-lib/libxkbcommon_0.8.4.bb                 |  4 +
> >  5 files changed, 129 insertions(+), 2 deletions(-)
> >  create mode 100644
> meta/recipes-graphics/xorg-lib/libx11-locale/0001-Drop-x11-dependencies.patch
> >  create mode 100644 meta/recipes-graphics/xorg-lib/
> libx11-locale_1.6.7.bb
> >
> > --
> > 2.7.4
> >
>

[-- Attachment #2: Type: text/html, Size: 2566 bytes --]

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

end of thread, other threads:[~2019-06-13  8:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-05 20:14 [PATCH V2 0/2] Split out libx11-locale from libx11 liu.ming50
2019-05-05 20:14 ` [PATCH V2 1/2] libx11: split out libx11-locale liu.ming50
2019-05-05 20:14 ` [PATCH V2 2/2] libxkbcommon: RDEPENDS on libx11-locale liu.ming50
2019-06-12 15:46 ` [PATCH V2 0/2] Split out libx11-locale from libx11 Burton, Ross
2019-06-13  8:37   ` Ming Liu

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.