Skip to contentSkip to conversation

Pull request for branch xorg-improvements

GIT PULL New Thomas Petazzoni 3 participants 62 messages Jan 6, 2013 – Jan 12, 2013

lore
Share & tools
lore
#0 lore raw

Hello,

Here is a series of improvements to the X.org support. Initially, my intention was to:

(1) Fix the X.org modular vs. Kdrive selection as we discussed on the list recently (the selection was in the main X.org menu, while it should really be in the X.org server section of the configuration).

(2) Fix all the incorrect dependencies on xserver-xorg_server: many X client applications or libraries where depending on the server, which is technically not correct.

In the end, I ended up doing a bit more cleanup in places, so this series has grown to do a bit more. Here is a quick presentation of the changes.

* Patches 1 to 7 are fixes around the X.org modular vs. Kdrive selection (moving at the right place, renaming options), add support to build some Kdrive input drivers (evdev, mouse, kbd), etc.

* Patch 8 remove the global X.org dependencies, that did not make sense.

* Patch 9 remove useless dependencies of libX11, and patch 10 changes its list of dependencies to be on multiple lines.

* Patch 11 changes cairo to depend on the appropriate X.org libraries and not the X server, and patch 12 updates Cairo to allows enable the XCB support (since all needed dependencies are always here).

* Patch 13 and 14 remove the mandatory dependency of X.org server on openssl. X.org only needs an implementation of SHA1, and it can use one from either libsha1, libgcrypt, or openssl. So, in patch 23, we add a package for libsha1. And in patch 24, we modify the X.org server package to use libsha1 if neither libgcrypt nor openssl are available, or to use either libgcrypt or openssl if one of them is available.

* Patch 15 changes docker to depend on the appropriate X.org libraries and not the X server.

* Patch 16 changes fltk to depend on the appropriate X.org libraries and not the X server.

* Patch 17 changes libgtk2 to depend on the appropriate X.org libraries and not the X server.

* Patch 18 adds in libgtk2 the support for some optional X.org libraries.

* Patch 19 cleans up atk, which does not need any X.org related option, and patch 20 removes the host variant of atk, which isn't used anywhere.

* Patch 21 changes pango to depend on the appropriate X.org libraries and not the X server.

* Patch 22 changes metacity to depend on the appropriate X.org libraries and not the X server.

* Patch 23 changes rubix to depend on the appropriate X.org libraries and not the X server.

* Patch 24 changes torsmo to depend on the appropriate X.org libraries and not the X server.

* Patch 25 changes xvkbd to depend on the appropriate X.org libraries and not the X server, patch 26 cleans up the xvkbd package, and patch 27 removes the version from the patch file name of the xvkbd package.

* Patch 28 fixes Webkit to not depend on X.org server, but on the X.org libraries.

I have done a fairly big number of builds to check all those changes, but I'm pretty sure there will remain some corner cases: only the autobuilders can find all those corner cases!

Best regards,

Thomas

The following changes since commit d3210cbac3cce63ae74fd2936849937b90c35cfb:

gstreamer: provide necessary config value for AArch64 (2013-01-06 17:43:51 +0100)

are available in the git repository at:

git://git.free-electrons.com/users/thomas-petazzoni/buildroot.git xorg-improvements

for you to fetch changes up to eeaa9cf0f64ff3eeee4360332b54c188d6c4d50f:

webkit: remove X.org server dependency (2013-01-06 22:26:31 +0100)

----------------------------------------------------------------
Thomas Petazzoni (28):
x11r7: move X.org server style option
x11r7: remove useless depends on of X.org drivers
x11r7: fix indentation
xserver-xorg_server: Mention that TinyX is also known as Kdrive
xserver_xorg-server: rename server-style configuration options
xserver_xorg-server: option to build KDrive input drivers
xserver_xorg-server: add more explanations about the two variants
x11r7: do not globally select libraries
xlib_libX11: do not depend on bigreqsproto nor xcmiscproto
xlib_libX11: split the DEPENDENCIES variable on multiple lines
libsha1: new package
xserver_xorg-server: provide more options for SHA1 library
cairo: do not depend on xserver-xorg_server, but on the right library
cairo: always enable XCB support when X backend is enabled
docker: depend on xlib_libX11 and not the X.org server
fltk: replace dependency on X.org server with dependency on libraries
libgtk2: replace dependency on X.org server by dependency on libraries
libgtk2: add support for some optional X dependencies
atk: remove useless configuration options
atk: remove unused host variant
pango: fix X.org dependencies
metacity: fix X.org dependencies
rubix: fix X.org dependency
torsmo: fix X.org dependency
xvkbd: fix X.org dependencies
xvkbd: turn into a generic-package
xvkbd: remove version from the patch file name
webkit: remove X.org server dependency

 Config.in.legacy                                   |   16 +++++
 package/Config.in                                  |    1 +
 package/atk/atk.mk                                 |   12 ----
 package/cairo/Config.in                            |    1 +
 package/cairo/cairo.mk                             |    6 +-
 package/docker/Config.in                           |    1 +
 package/docker/docker.mk                           |    2 +-
 package/efl/libevas/Config.in                      |    8 +--
 package/fltk/Config.in                             |    2 +
 package/fltk/fltk.mk                               |    2 +-
 package/libgtk2/Config.in                          |    5 ++
 package/libgtk2/libgtk2.mk                         |   38 ++++++++++-
 package/libsha1/Config.in                          |    9 +++
 package/libsha1/libsha1.mk                         |   15 +++++
 package/metacity/Config.in                         |   10 +++
 package/metacity/metacity.mk                       |   12 +++-
 package/pango/Config.in                            |    3 +
 package/pango/pango.mk                             |   13 +++-
 package/rubix/Config.in                            |    1 +
 package/rubix/rubix.mk                             |    2 +-
 package/torsmo/Config.in                           |    2 +
 package/torsmo/torsmo.mk                           |    2 +-
 package/webkit/webkit.mk                           |    2 +-
 package/x11r7/Config.in                            |   31 ++-------
 package/x11r7/mesa3d/Config.in                     |    2 +-
 package/x11r7/xdriver_xf86-input-evdev/Config.in   |    1 -
 .../x11r7/xdriver_xf86-input-joystick/Config.in    |    1 -
 .../x11r7/xdriver_xf86-input-keyboard/Config.in    |    1 -
 package/x11r7/xdriver_xf86-input-mouse/Config.in   |    1 -
 .../x11r7/xdriver_xf86-input-synaptics/Config.in   |    1 -
 package/x11r7/xdriver_xf86-input-tslib/Config.in   |    1 -
 package/x11r7/xdriver_xf86-input-vmmouse/Config.in |    1 -
 package/x11r7/xdriver_xf86-input-void/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-ark/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-ati/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-cirrus/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-dummy/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-fbdev/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-geode/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-glide/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-glint/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-i128/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-intel/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-mach64/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-mga/Config.in     |    1 -
 .../x11r7/xdriver_xf86-video-neomagic/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-newport/Config.in |    1 -
 package/x11r7/xdriver_xf86-video-nv/Config.in      |    1 -
 .../x11r7/xdriver_xf86-video-openchrome/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-r128/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-savage/Config.in  |    1 -
 .../xdriver_xf86-video-siliconmotion/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-sis/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-tdfx/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-tga/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-trident/Config.in |    1 -
 package/x11r7/xdriver_xf86-video-v4l/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-vesa/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-vmware/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-voodoo/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-wsfb/Config.in    |    1 -
 package/x11r7/xlib_libX11/Config.in                |    2 -
 package/x11r7/xlib_libX11/xlib_libX11.mk           |   14 ++++-
 package/x11r7/xserver_xorg-server/Config.in        |   66 +++++++++++++++++++-
 .../xserver_xorg-server/xserver_xorg-server.mk     |   37 +++++++++--
 package/xvkbd/Config.in                            |    7 +++
 ...kbd-2.8-makefile.patch => xvkbd-makefile.patch} |    5 --
 package/xvkbd/xvkbd.mk                             |   25 ++++++--
 68 files changed, 279 insertions(+), 111 deletions(-)
 create mode 100644 package/libsha1/Config.in
 create mode 100644 package/libsha1/libsha1.mk
 rename package/xvkbd/{xvkbd-2.8-makefile.patch => xvkbd-makefile.patch} (99%)

Thanks,

Signature · 1 line
Thomas Petazzoni
#1 lore raw

PATCH 1/28 x11r7: move X.org server style option

The selection between "modular" server and "Kdrive" server really belongs as a sub-option of the X.org server itself, rather than as a global x11r7 option. So we move it under the X.org server option.

---
 package/x11r7/Config.in                     |   18 ------------------
 package/x11r7/xserver_xorg-server/Config.in |   18 ++++++++++++++++++
 2 files changed, 18 insertions(+), 18 deletions(-)
package/x11r7/Config.in +0 -18
index 2aac5a2..dc84798 100644
@@ -13,24 +13,6 @@ menuconfig BR2_PACKAGE_XORG7
 
 if BR2_PACKAGE_XORG7
 
-choice
-	prompt "X Window System server type"
-	default BR2_PACKAGE_XSERVER_tinyx
-	help
-	  Select the X Window System server to use
-
-config BR2_PACKAGE_XSERVER_xorg
-	bool "Modular X.org"
-	depends on BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP
-
-comment 'X.org requires largefile and C++ support'
-	depends on !(BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP)
-
-config BR2_PACKAGE_XSERVER_tinyx
-	bool "TinyX"
-
-endchoice
-
 menu "X11R7 Servers"
 	source package/x11r7/xserver_xorg-server/Config.in
 endmenu
package/x11r7/xserver_xorg-server/Config.in +18 -0
index 02c2828..bea0ffa 100644
@@ -59,6 +59,24 @@ comment "xorg-xserver is BROKEN on AVR32"
 
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
+choice
+	prompt "X Window System server type"
+	default BR2_PACKAGE_XSERVER_tinyx
+	help
+	  Select the X Window System server to use
+
+config BR2_PACKAGE_XSERVER_xorg
+	bool "Modular X.org"
+	depends on BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP
+
+comment "X.org requires largefile and C++ support"
+	depends on !(BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP)
+
+config BR2_PACKAGE_XSERVER_tinyx
+	bool "TinyX"
+
+endchoice
+
 config BR2_PACKAGE_XSERVER_XORG_SERVER_NULL_CURSOR
     bool "Null root cursor"
     help
Signature · 1 line
1.7.9.5
#2 lore raw

PATCH 1/28 x11r7: move X.org server style option

Quoted 5 lines · Thomas Petazzoni

The selection between "modular" server and "Kdrive" server really belongs as a sub-option of the X.org server itself, rather than as a global x11r7 option. So we move it under the X.org server option.

(untested)

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#3 lore raw

PATCH 2/28 x11r7: remove useless depends on of X.org drivers

In reply to Thomas Petazzoni

All X.org server drivers are already enclosed in a if BR2_PACKAGE_XSERVER_xorg .. endif block. Now that this option is only set if a X.org server is enabled, there is no need for each individual driver to depend on BR2_PACKAGE_XSERVER_XORG.

---
 package/x11r7/xdriver_xf86-input-evdev/Config.in   |    1 -
 .../x11r7/xdriver_xf86-input-joystick/Config.in    |    1 -
 .../x11r7/xdriver_xf86-input-keyboard/Config.in    |    1 -
 package/x11r7/xdriver_xf86-input-mouse/Config.in   |    1 -
 .../x11r7/xdriver_xf86-input-synaptics/Config.in   |    1 -
 package/x11r7/xdriver_xf86-input-tslib/Config.in   |    1 -
 package/x11r7/xdriver_xf86-input-vmmouse/Config.in |    1 -
 package/x11r7/xdriver_xf86-input-void/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-ark/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-ati/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-cirrus/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-dummy/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-fbdev/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-geode/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-glide/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-glint/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-i128/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-intel/Config.in   |    1 -
 package/x11r7/xdriver_xf86-video-mach64/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-mga/Config.in     |    1 -
 .../x11r7/xdriver_xf86-video-neomagic/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-newport/Config.in |    1 -
 package/x11r7/xdriver_xf86-video-nv/Config.in      |    1 -
 .../x11r7/xdriver_xf86-video-openchrome/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-r128/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-savage/Config.in  |    1 -
 .../xdriver_xf86-video-siliconmotion/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-sis/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-tdfx/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-tga/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-trident/Config.in |    1 -
 package/x11r7/xdriver_xf86-video-v4l/Config.in     |    1 -
 package/x11r7/xdriver_xf86-video-vesa/Config.in    |    1 -
 package/x11r7/xdriver_xf86-video-vmware/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-voodoo/Config.in  |    1 -
 package/x11r7/xdriver_xf86-video-wsfb/Config.in    |    1 -
 36 files changed, 36 deletions(-)
package/x11r7/xdriver_xf86-input-evdev/Config.in +0 -1
index 248be7e..798fffc 100644
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_EVDEV
 	bool "xf86-input-evdev"
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
 	help
package/x11r7/xdriver_xf86-input-joystick/Config.in +0 -1
index 4a7439a..ff9f25f 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_JOYSTICK
 	bool "xf86-input-joystick"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
package/x11r7/xdriver_xf86-input-keyboard/Config.in +0 -1
index 481c763..0a03524 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_KEYBOARD
 	bool "xf86-input-keyboard"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_KBPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
package/x11r7/xdriver_xf86-input-mouse/Config.in +0 -1
index c8e39b0..20e1803 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_MOUSE
 	bool "xf86-input-mouse"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
package/x11r7/xdriver_xf86-input-synaptics/Config.in +0 -1
index 258dee2..9c214b7 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_SYNAPTICS
 	bool "xf86-input-synaptics"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
package/x11r7/xdriver_xf86-input-tslib/Config.in +0 -1
index 5185273..f0ea132 100644
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_TSLIB
 	bool "xf86-input-tslib"
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
 	select BR2_PACKAGE_TSLIB
package/x11r7/xdriver_xf86-input-vmmouse/Config.in +0 -1
index b2284cd..de989eb 100644
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_VMMOUSE
 	bool "xf86-input-vmmouse"
 	depends on BR2_i386 || BR2_x86_64
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
package/x11r7/xdriver_xf86-input-void/Config.in +0 -1
index ab4230b..d6fdef2 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_INPUT_VOID
 	bool "xf86-input-void"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
package/x11r7/xdriver_xf86-video-ark/Config.in +0 -1
index d9703de..cecedde 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_ARK
 	bool "xf86-video-ark"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-ati/Config.in +0 -1
index 107a57b..19bed3c 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_ATI
 	bool "xf86-video-ati"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
package/x11r7/xdriver_xf86-video-cirrus/Config.in +0 -1
index 31ed634..11c9df8 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_CIRRUS
 	bool "xf86-video-cirrus"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-dummy/Config.in +0 -1
index 2a172cc..00f7e1d 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_DUMMY
 	bool "xf86-video-dummy"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-fbdev/Config.in +0 -1
index 8907fe1..9f7c540 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_FBDEV
 	bool "xf86-video-fbdev"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-geode/Config.in +0 -1
index c60b62c..2d2e5bc 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_GEODE
 	bool "xf86-video-geode"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-glide/Config.in +0 -1
index ea9abd7..413acce 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_GLIDE
 	bool "xf86-video-glide"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-glint/Config.in +0 -1
index 782b6da..bd92788 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_GLINT
 	bool "xf86-video-glint"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
package/x11r7/xdriver_xf86-video-i128/Config.in +0 -1
index a66fda6..30b240c 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_I128
 	bool "xf86-video-i128"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-intel/Config.in +0 -1
index 9a1d6cf..595eae5 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL
 	bool "xf86-video-intel"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-mach64/Config.in +0 -1
index f2464e7..31f4c58 100644
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_MACH64
 	bool "xf86-video-mach64"
 	select BR2_PACKAGE_MESA3D
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-mga/Config.in +0 -1
index 40c6f3a..2fc3837 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_MGA
 	bool "xf86-video-mga"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
package/x11r7/xdriver_xf86-video-neomagic/Config.in +0 -1
index 2e028a7..f8c8c47 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NEOMAGIC
 	bool "xf86-video-neomagic"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-newport/Config.in +0 -1
index e2effe8..d9c89b1 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NEWPORT
 	bool "xf86-video-newport"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-nv/Config.in +0 -1
index 943bc14..8898f56 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NV
 	bool "xf86-video-nv"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-openchrome/Config.in +0 -1
index 4a69246..24b74bc 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_OPENCHROME
 	bool "xf86-video-openchrome"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XLIB_LIBX11
package/x11r7/xdriver_xf86-video-r128/Config.in +0 -1
index 96bd8d7..07e3142 100644
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_R128
 	bool "xf86-video-r128"
 	select BR2_PACKAGE_MESA3D
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-savage/Config.in +0 -1
index a9c8f6c..93a731e 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_SAVAGE
 	bool "xf86-video-savage"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
package/x11r7/xdriver_xf86-video-siliconmotion/Config.in +0 -1
index db15116..727004a 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_SILICONMOTION
 	bool "xf86-video-siliconmotion"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-sis/Config.in +0 -1
index ac2b632..e184505 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_SIS
 	bool "xf86-video-sis"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
package/x11r7/xdriver_xf86-video-tdfx/Config.in +0 -1
index 57bb411..811eba2 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_TDFX
 	bool "xf86-video-tdfx"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
package/x11r7/xdriver_xf86-video-tga/Config.in +0 -1
index 800a8f6..9d03db3 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_TGA
 	bool "xf86-video-tga"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-trident/Config.in +0 -1
index 4a7a477..15ac3ea 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_TRIDENT
 	bool "xf86-video-trident"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-v4l/Config.in +0 -1
index 3bb41fc5..6d85c17 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_V4L
 	bool "xf86-video-v4l"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_VIDEOPROTO
 	select BR2_PACKAGE_XPROTO_XPROTO
package/x11r7/xdriver_xf86-video-vesa/Config.in +0 -1
index 865f52c..98f4347 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_VESA
 	bool "xf86-video-vesa"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-vmware/Config.in +0 -1
index 9093b38..2ab70e3 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_VMWARE
 	bool "xf86-video-vmware"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-voodoo/Config.in +0 -1
index 9b770be..f531676 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_VOODOO
 	bool "xf86-video-voodoo"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
package/x11r7/xdriver_xf86-video-wsfb/Config.in +0 -1
index 3b3d406..968ee10 100644
@@ -1,6 +1,5 @@
 config BR2_PACKAGE_XDRIVER_XF86_VIDEO_WSFB
 	bool "xf86-video-wsfb"
-	select BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_FONTSPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
Signature · 1 line
1.7.9.5
#4 lore raw

PATCH 2/28 x11r7: remove useless depends on of X.org drivers

Quoted 6 lines · Thomas Petazzoni

All X.org server drivers are already enclosed in a if BR2_PACKAGE_XSERVER_xorg .. endif block. Now that this option is only set if a X.org server is enabled, there is no need for each individual driver to depend on BR2_PACKAGE_XSERVER_XORG.

(untested)

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#5 lore raw

PATCH 3/28 x11r7: fix indentation

In reply to Thomas Petazzoni

Fixup the indentation when including the X.org server Config.in to match all the other inclusions in x11r7/Config.in.

---
 package/x11r7/Config.in |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
package/x11r7/Config.in +3 -4
index dc84798..60c022f 100644
@@ -12,10 +12,9 @@ menuconfig BR2_PACKAGE_XORG7
 	  http://xorg.freedesktop.org
 
 if BR2_PACKAGE_XORG7
-
-menu "X11R7 Servers"
-	source package/x11r7/xserver_xorg-server/Config.in
-endmenu
+	menu "X11R7 Servers"
+		source package/x11r7/xserver_xorg-server/Config.in
+	endmenu
 	menu "X11R7 Libraries"
 		source package/x11r7/libxcb/Config.in
 		source package/x11r7/mesa3d/Config.in
Signature · 1 line
1.7.9.5
#6 lore raw

PATCH 3/28 x11r7: fix indentation

Quoted 4 lines · Thomas Petazzoni

Fixup the indentation when including the X.org server Config.in to match all the other inclusions in x11r7/Config.in.

(untested)

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#7 lore raw

PATCH 4/28 xserver-xorg_server: Mention that TinyX is also known as Kdrive

In reply to Thomas Petazzoni

Since several years, the TinyX name has been somewhat deprecated in favor of Kdrive, so mention the "Kdrive" wording in our configuration interface.

---
 package/x11r7/xserver_xorg-server/Config.in |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/x11r7/xserver_xorg-server/Config.in +1 -1
index bea0ffa..e19d356 100644
@@ -73,7 +73,7 @@ comment "X.org requires largefile and C++ support"
 	depends on !(BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP)
 
 config BR2_PACKAGE_XSERVER_tinyx
-	bool "TinyX"
+	bool "KDrive / TinyX"
 
 endchoice
 
Signature · 1 line
1.7.9.5
#8 lore raw

PATCH 4/28 xserver-xorg_server: Mention that TinyX is also known as Kdrive

Quoted 5 lines · Thomas Petazzoni

Since several years, the TinyX name has been somewhat deprecated in favor of Kdrive, so mention the "Kdrive" wording in our configuration interface.

(untested)

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#9 lore raw

PATCH 5/28 xserver_xorg-server: rename server-style configuration options

In reply to Thomas Petazzoni

The BR2_PACKAGE_XSERVER_xorg and BR2_PACKAGE_XSERVER_tinyx options used to select the style of X.org server to use are not named consistently with the rest of the Buildroot options (in capital letters and prefixed with the package name).

Therefore, we rename those options, and we take care to add the old option names in the BR2_LEGACY infrastructure.

---
 Config.in.legacy                                   |   16 ++++++++++++++++
 package/efl/libevas/Config.in                      |    8 ++++----
 package/x11r7/Config.in                            |    2 +-
 package/x11r7/mesa3d/Config.in                     |    2 +-
 package/x11r7/xserver_xorg-server/Config.in        |   10 +++++-----
 .../xserver_xorg-server/xserver_xorg-server.mk     |    6 +++---
 6 files changed, 30 insertions(+), 14 deletions(-)
Config.in.legacy +16 -0
index 4770c94..906c038 100644
@@ -78,4 +78,20 @@ config BR2_PACKAGE_PTHREAD_STUBS
 	  For consistency reason, the pthread-stubs package has been
 	  renamed to xlib_libpthread-stubs.
 
+config BR2_PACKAGE_XSERVER_xorg
+	bool "X.org modular server"
+	select BR2_LEGACY
+	select BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
+	help
+	  The option has been renamed
+	  BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR.
+
+config BR2_PACKAGE_XSERVER_tinyx
+	bool "KDrive / TinyX server"
+	select BR2_LEGACY
+	select BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
+	help
+	  The option has been renamed
+	  BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE.
+
 endif
package/efl/libevas/Config.in +4 -4
index bd845c1..f73376b 100644
@@ -79,13 +79,13 @@ config BR2_PACKAGE_LIBEVAS_SDL
 config BR2_PACKAGE_LIBEVAS_SDL_GL
 	bool "libevas SDL OpenGL backend"
 	depends on BR2_PACKAGE_SDL_X11
-	depends on BR2_PACKAGE_XSERVER_xorg # mesa needs big X
+	depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR # mesa needs big X
 	help
 	  This is the SDL OpenGL engine that uses SDL library
 	  and OpenGL to render. This may be hardware accelerated.
 
 comment "SDL OpenGL backend needs modular X.org and X11 support in SDL"
-	depends on !(BR2_PACKAGE_SDL_X11 && BR2_PACKAGE_XSERVER_xorg)
+	depends on !(BR2_PACKAGE_SDL_X11 && BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR)
 
 config BR2_PACKAGE_LIBEVAS_X11
 	bool "libevas X11 backend"
@@ -99,7 +99,7 @@ config BR2_PACKAGE_LIBEVAS_X11
 
 config BR2_PACKAGE_LIBEVAS_X11_GLX
 	bool "libevas X11 GLX backend"
-	depends on BR2_PACKAGE_XSERVER_xorg # mesa needs big X
+	depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR # mesa needs big X
 	select BR2_PACKAGE_XLIB_LIBX11
 	select BR2_PACKAGE_XLIB_LIBXRENDER
 	select BR2_PACKAGE_XLIB_LIBXEXT
@@ -121,7 +121,7 @@ config BR2_PACKAGE_LIBEVAS_XCB
 
 config BR2_PACKAGE_LIBEVAS_XCB_GLX
 	bool "libevas XCB GLX backend"
-	depends on BR2_PACKAGE_XSERVER_xorg # mesa needs big X
+	depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR # mesa needs big X
 	select BR2_PACKAGE_LIBXCB
 	select BR2_PACKAGE_XCB_UTIL
 	select BR2_PACKAGE_XCB_PROTO
package/x11r7/Config.in +1 -1
index 60c022f..6940725 100644
@@ -149,7 +149,7 @@ if BR2_PACKAGE_XORG7
 		source package/x11r7/xapp_xwininfo/Config.in
 		source package/x11r7/xapp_xwud/Config.in
 	endmenu
-	if BR2_PACKAGE_XSERVER_xorg
+	if BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	menu "X11R7 Drivers"
 		source package/x11r7/xdriver_xf86-input-evdev/Config.in
 		source package/x11r7/xdriver_xf86-input-joystick/Config.in
package/x11r7/mesa3d/Config.in +1 -1
index e5b426e..080f56a 100644
@@ -8,7 +8,7 @@ config BR2_PACKAGE_MESA3D
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_EXPAT
 	select BR2_PACKAGE_HOST_LIBXML2_PYTHON
-	depends on BR2_PACKAGE_XSERVER_xorg
+	depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	depends on BR2_INSTALL_LIBSTDCPP
 	help
 	  Mesa 3D, an open-source implementation of the OpenGL specification.
package/x11r7/xserver_xorg-server/Config.in +5 -5
index e19d356..4ac0ec7 100644
@@ -1,13 +1,13 @@
 config BR2_PACKAGE_XSERVER_XORG_SERVER
 	bool "xorg-server"
-	select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_XSERVER_xorg
+	select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	select BR2_PACKAGE_MCOOKIE
 	select BR2_PACKAGE_OPENSSL
 	select BR2_PACKAGE_PIXMAN
 	select BR2_PACKAGE_XFONT_FONT_ALIAS if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS
 	select BR2_PACKAGE_XFONT_FONT_MISC_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS
 	select BR2_PACKAGE_XFONT_FONT_CURSOR_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS
-	select BR2_PACKAGE_XLIB_LIBPCIACCESS if BR2_PACKAGE_XSERVER_xorg
+	select BR2_PACKAGE_XLIB_LIBPCIACCESS if BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	select BR2_PACKAGE_XLIB_LIBX11
 	select BR2_PACKAGE_XLIB_LIBXAU
 	select BR2_PACKAGE_XLIB_LIBXCURSOR
@@ -61,18 +61,18 @@ if BR2_PACKAGE_XSERVER_XORG_SERVER
 
 choice
 	prompt "X Window System server type"
-	default BR2_PACKAGE_XSERVER_tinyx
+	default BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
 	help
 	  Select the X Window System server to use
 
-config BR2_PACKAGE_XSERVER_xorg
+config BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	bool "Modular X.org"
 	depends on BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP
 
 comment "X.org requires largefile and C++ support"
 	depends on !(BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP)
 
-config BR2_PACKAGE_XSERVER_tinyx
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
 	bool "KDrive / TinyX"
 
 endchoice
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +3 -3
index ed5b904..623b25d 100644
@@ -62,14 +62,14 @@ XSERVER_XORG_SERVER_CONF_OPT = --disable-config-hal \
 		--with-fontdir=/usr/share/fonts/X11/ --localstatedir=/var \
 		--$(if $(BR2_PACKAGE_XSERVER_XORG_SERVER_XVFB),en,dis)able-xvfb
 
-ifeq ($(BR2_PACKAGE_XSERVER_xorg),y)
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y)
 XSERVER_XORG_SERVER_CONF_OPT += --enable-xorg
 XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libpciaccess libdrm
 else
 XSERVER_XORG_SERVER_CONF_OPT += --disable-xorg
 endif
 
-ifeq ($(BR2_PACKAGE_XSERVER_tinyx),y)
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE),y)
 XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive --enable-xfbdev \
 		--disable-glx --disable-dri --disable-xsdl
 define XSERVER_CREATE_X_SYMLINK
@@ -133,7 +133,7 @@ ifneq ($(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),y)
 XSERVER_XORG_SERVER_CONF_OPT += --disable-composite
 endif
 
-ifeq ($(BR2_PACKAGE_XSERVER_xorg),y)
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y)
 ifeq ($(BR2_PACKAGE_XPROTO_DRI2PROTO),y)
 XSERVER_XORG_SERVER_DEPENDENCIES += xproto_dri2proto
 XSERVER_XORG_SERVER_CONF_OPT += --enable-dri2
Signature · 1 line
1.7.9.5
#10 lore raw

PATCH 5/28 xserver_xorg-server: rename server-style configuration options

Quoted 9 lines · Thomas Petazzoni

The BR2_PACKAGE_XSERVER_xorg and BR2_PACKAGE_XSERVER_tinyx options used to select the style of X.org server to use are not named consistently with the rest of the Buildroot options (in capital letters and prefixed with the package name).

Therefore, we rename those options, and we take care to add the old option names in the BR2_LEGACY infrastructure.

(untested)

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#11 lore raw

PATCH 6/28 xserver_xorg-server: option to build KDrive input drivers

In reply to Thomas Petazzoni

When the Kdrive variant of the X server is selected, the drivers are directly built into the X server. The X server therefore provides options to enable or disable certain drivers, especially input drivers.

This patch adds options to be able to enable or disable the evdev, kbd and mouse drivers of Kdrive.

---
 package/x11r7/xserver_xorg-server/Config.in        |   29 ++++++++++++++++++++
 .../xserver_xorg-server/xserver_xorg-server.mk     |   19 +++++++++++++
 2 files changed, 48 insertions(+)
package/x11r7/xserver_xorg-server/Config.in +29 -0
index 4ac0ec7..2382786 100644
@@ -87,6 +87,35 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX
     help
         Enable/Use AIGLX extension.
 
+if BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_EVDEV
+       bool "Enable KDrive/TinyX evdev input driver"
+       help
+         Enable evdev input driver in KDrive. This allows KDrive to
+         use input devices that are integrated in the Linux input
+         subsystem, i.e have a /dev/input/eventX device file. This is
+         most likely the input driver you want to use.
+
+	 This driver can then be enabled by running the X server
+         using:
+
+           Xfbdev -keybd evdev,,device=/dev/input/eventX -mouse evdev,,device=/dev/input/eventY.
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_KBD
+       bool "Enable KDrive/TinyX kbd input driver"
+       help
+         Enable kbd input driver in KDrive. It uses the console
+         keyboard as input device.
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_MOUSE
+       bool "Enable KDrive/TinyX mouse input driver"
+       help
+         Enable mouse input driver in KDrive. It supports PS/2 mice
+         and serial port mice.
+
+endif
+
 comment "Optional Servers"
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_XVFB
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +19 -0
index 623b25d..552d8e8 100644
@@ -76,6 +76,25 @@ define XSERVER_CREATE_X_SYMLINK
  ln -f -s Xfbdev $(TARGET_DIR)/usr/bin/X
 endef
 XSERVER_XORG_SERVER_POST_INSTALL_TARGET_HOOKS += XSERVER_CREATE_X_SYMLINK
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_EVDEV),y)
+XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive-evdev
+else
+XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive-evdev
+endif
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_KBD),y)
+XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive-kbd
+else
+XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive-kbd
+endif
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_MOUSE),y)
+XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive-mouse
+else
+XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive-mouse
+endif
+
 else
 XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive --disable-xfbdev
 endif
Signature · 1 line
1.7.9.5
#12 lore raw

PATCH 6/28 xserver_xorg-server: option to build KDrive input drivers

Quoted 24 lines · Thomas Petazzoni

When the Kdrive variant of the X server is selected, the drivers are directly built into the X server. The X server therefore provides options to enable or disable certain drivers, especially input drivers.

This patch adds options to be able to enable or disable the evdev, kbd and mouse drivers of Kdrive.

---
  package/x11r7/xserver_xorg-server/Config.in        |   29 ++++++++++++++++++++
  .../xserver_xorg-server/xserver_xorg-server.mk     |   19 +++++++++++++
  2 files changed, 48 insertions(+)
package/x11r7/xserver_xorg-server/Config.in +2 -0
index 4ac0ec7..2382786 100644
@@ -87,6 +87,35 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX
      help
          Enable/Use AIGLX extension.
 
+if BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
+

package/x11r7/xserver_xorg-server/Config.in config BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX · line 101

Quoted 10 lines
package/x11r7/xserver_xorg-server/Config.in +10 -0
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_EVDEV
+       bool "Enable KDrive/TinyX evdev input driver"
+       help
+         Enable evdev input driver in KDrive. This allows KDrive to
+         use input devices that are integrated in the Linux input
+         subsystem, i.e have a /dev/input/eventX device file. This is
+         most likely the input driver you want to use.
+
+	 This driver can then be enabled by running the X server
+         using:

Indentation seems to be screwed up a bit here... Actually, there are
not tabs at all!

Quoted 38 lines
package/x11r7/xserver_xorg-server/Config.in +17 -0
+
+           Xfbdev -keybd evdev,,device=/dev/input/eventX -mouse evdev,,device=/dev/input/eventY.
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_KBD
+       bool "Enable KDrive/TinyX kbd input driver"
+       help
+         Enable kbd input driver in KDrive. It uses the console
+         keyboard as input device.
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_MOUSE
+       bool "Enable KDrive/TinyX mouse input driver"
+       help
+         Enable mouse input driver in KDrive. It supports PS/2 mice
+         and serial port mice.
+
+endif
+
  comment "Optional Servers"
 
  config BR2_PACKAGE_XSERVER_XORG_SERVER_XVFB
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +10 -0
index 623b25d..552d8e8 100644
@@ -76,6 +76,25 @@ define XSERVER_CREATE_X_SYMLINK
   ln -f -s Xfbdev $(TARGET_DIR)/usr/bin/X
  endef
  XSERVER_XORG_SERVER_POST_INSTALL_TARGET_HOOKS += XSERVER_CREATE_X_SYMLINK
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_EVDEV),y)
+XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive-evdev
+else
+XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive-evdev
+endif
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_KBD),y)
+XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive-kbd
+else

package/x11r7/xserver_xorg-server/xserver_xorg-server.mk define XSERVER_CREATE_X_SYMLINK · line 98

Quoted 10 lines
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +9 -0
+XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive-kbd
+endif
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_MOUSE),y)
+XSERVER_XORG_SERVER_CONF_OPT += --enable-kdrive-mouse
+else
+XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive-mouse
+endif
+
  else

With your addition this else is moving very far from the if, so a
comment would be useful.

Regards,
Arnout

Quoted 2 lines
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +0 -0
  XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive --disable-xfbdev
  endif
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#13 lore raw

PATCH 7/28 xserver_xorg-server: add more explanations about the two variants

In reply to Thomas Petazzoni
---
 package/x11r7/xserver_xorg-server/Config.in |   10 ++++++++++
 1 file changed, 10 insertions(+)
package/x11r7/xserver_xorg-server/Config.in +10 -0
index 2382786..6c70196 100644
@@ -68,12 +68,22 @@ choice
 config BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	bool "Modular X.org"
 	depends on BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP
+	help
+	  This variant of the X.org server is the full-blown variant,
+	  as used by desktop GNU/Linux distributions. The drivers (for
+	  input and graphics) are built separately from the X.org
+	  server (see the xdriver* packages).
 
 comment "X.org requires largefile and C++ support"
 	depends on !(BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP)
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
 	bool "KDrive / TinyX"
+	help
+	  This variant of the X.org server is a lightweight version
+	  intended for embedded systems. The drivers (for input and
+	  graphics) are built into the server. It is generally used
+	  directly on top of the Linux framebuffer.
 
 endchoice
 
Signature · 1 line
1.7.9.5
#14 lore raw

PATCH 7/28 xserver_xorg-server: add more explanations about the two variants

Quoted 1 line · Thomas Petazzoni

(untested)

Quoted 9 lines
---
  package/x11r7/xserver_xorg-server/Config.in |   10 ++++++++++
  1 file changed, 10 insertions(+)
package/x11r7/xserver_xorg-server/Config.in +0 -0
index 2382786..6c70196 100644

package/x11r7/xserver_xorg-server/Config.in choice · line 75

Quoted 8 lines
package/x11r7/xserver_xorg-server/Config.in +5 -0
@@ -68,12 +68,22 @@ choice
  config BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
  	bool "Modular X.org"
  	depends on BR2_LARGEFILE&&  BR2_INSTALL_LIBSTDCPP
+	help
+	  This variant of the X.org server is the full-blown variant,
+	  as used by desktop GNU/Linux distributions. The drivers (for
+	  input and graphics) are built separately from the X.org
+	  server (see the xdriver* packages).

Come to think of it, it would be more logical to move these packages
directly below the xorg-server config option.

package/x11r7/xserver_xorg-server/Config.in choice · line 77

Quoted 1 line
package/x11r7/xserver_xorg-server/Config.in +0 -0
  comment "X.org requires largefile and C++ support"
              ^
              Modular X.org

would also be an improvement.

package/x11r7/xserver_xorg-server/Config.in choice · line 86

Quoted 9 lines
package/x11r7/xserver_xorg-server/Config.in +5 -0
  	depends on !(BR2_LARGEFILE&&  BR2_INSTALL_LIBSTDCPP)
 
  config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
  	bool "KDrive / TinyX"
+	help
+	  This variant of the X.org server is a lightweight version
+	  intended for embedded systems. The drivers (for input and
+	  graphics) are built into the server. It is generally used
+	  directly on top of the Linux framebuffer.

without DRM or video card specific drivers.

Right?

Regards,
Arnout

Quoted 3 lines
package/x11r7/xserver_xorg-server/Config.in +0 -0
  endchoice
 
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#15 lore raw

PATCH 7/28 xserver_xorg-server: add more explanations about the two variants

In reply to Thomas Petazzoni
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>

Committed with a few changes to the help text as pointed out by Arnout, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#16 lore raw

PATCH 8/28 x11r7: do not globally select libraries

In reply to Thomas Petazzoni

It doesn't make sense for BR2_PACKAGE_XORG7 to globally select libraries such as libpng, zlib, expat or fontconfig. For example, if you do a build with just xlib_libX11, then libpng gets built as the last package, without anybody actually depending on it, even if it was selected by BR2_PACKAGE_XORG7.

The individual x11r7 packages should select the libraries they need, and add them in their DEPENDENCIES variable.

---
 package/x11r7/Config.in |    4 ----
 1 file changed, 4 deletions(-)
package/x11r7/Config.in +0 -4
index 6940725..706574c 100644
@@ -1,9 +1,5 @@
 menuconfig BR2_PACKAGE_XORG7
 	bool "X.org X Window System"
-	select BR2_PACKAGE_ZLIB
-	select BR2_PACKAGE_LIBPNG
-	select BR2_PACKAGE_EXPAT
-	select BR2_PACKAGE_FONTCONFIG
 	depends on BR2_USE_WCHAR
 	help
 	  Support for X11R7 libraries, servers, drivers, and/or
Signature · 1 line
1.7.9.5
#17 lore raw

PATCH 8/28 x11r7: do not globally select libraries

Quoted 10 lines · Thomas Petazzoni

It doesn't make sense for BR2_PACKAGE_XORG7 to globally select libraries such as libpng, zlib, expat or fontconfig. For example, if you do a build with just xlib_libX11, then libpng gets built as the last package, without anybody actually depending on it, even if it was selected by BR2_PACKAGE_XORG7.

The individual x11r7 packages should select the libraries they need, and add them in their DEPENDENCIES variable.

Although this is of course a very good idea, it's also risky. Possibly
there are some X packages that rely on this implicit select. But I guess the autobuilders will expose those.

Regards,
Arnout

Quoted 18 lines
---
  package/x11r7/Config.in |    4 ----
  1 file changed, 4 deletions(-)
package/x11r7/Config.in +0 -4
index 6940725..706574c 100644
@@ -1,9 +1,5 @@
  menuconfig BR2_PACKAGE_XORG7
  	bool "X.org X Window System"
-	select BR2_PACKAGE_ZLIB
-	select BR2_PACKAGE_LIBPNG
-	select BR2_PACKAGE_EXPAT
-	select BR2_PACKAGE_FONTCONFIG
  	depends on BR2_USE_WCHAR
  	help
  	  Support for X11R7 libraries, servers, drivers, and/or
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#18 lore raw

PATCH 8/28 x11r7: do not globally select libraries

Dear Arnout Vandecappelle,

Quoted 3 lines · Arnout Vandecappelle

Although this is of course a very good idea, it's also risky. Possibly
there are some X packages that rely on this implicit select. But I guess the autobuilders will expose those.

Yes, it is risky, but it was clearly incorrect and needs to be fixed. I've built a number of X.org libraries and applications to uncover missing dependencies while doing the rest of the patch series, and it went fine. We'll see what the autobuilders have to say, though :-)

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#19 lore raw

PATCH 8/28 x11r7: do not globally select libraries

In reply to Thomas Petazzoni
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> It doesn't make sense for BR2_PACKAGE_XORG7 to globally select Thomas> libraries such as libpng, zlib, expat or fontconfig. For example, if Thomas> you do a build with just xlib_libX11, then libpng gets built as the Thomas> last package, without anybody actually depending on it, even if it was Thomas> selected by BR2_PACKAGE_XORG7.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#20 lore raw

PATCH 9/28 xlib_libX11: do not depend on bigreqsproto nor xcmiscproto

In reply to Thomas Petazzoni

The BR2_PACKAGE_XPROTO_BIGREQSPROTO option was selected by xlib_libX11, but xlib_libX11 does not have this protocol package in its DEPENDENCIES. In some builds, it leads to xproto_bigreqsproto to be built as the last package, with no other package depending on it, which doesn't make sense.

xproto_xcmiscproto was selected and part of DEPENDENCIES, but an inspection of libX11 configure.ac and libX11 source code shows that it does not depend on xcmiscproto at all.

---
 package/x11r7/xlib_libX11/Config.in      |    2 --
 package/x11r7/xlib_libX11/xlib_libX11.mk |    2 +-
 2 files changed, 1 insertion(+), 3 deletions(-)
package/x11r7/xlib_libX11/Config.in +0 -2
index e1189ff..3ad8d00 100644
@@ -10,7 +10,5 @@ config BR2_PACKAGE_XLIB_LIBX11
 	select BR2_PACKAGE_XPROTO_XEXTPROTO
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_XF86BIGFONTPROTO
-	select BR2_PACKAGE_XPROTO_BIGREQSPROTO
-	select BR2_PACKAGE_XPROTO_XCMISCPROTO
 	help
 	  X.Org X11 library
package/x11r7/xlib_libX11/xlib_libX11.mk +1 -1
index 75d172c..94107b2 100644
@@ -8,7 +8,7 @@ XLIB_LIBX11_VERSION = 1.4.2
 XLIB_LIBX11_SOURCE = libX11-$(XLIB_LIBX11_VERSION).tar.bz2
 XLIB_LIBX11_SITE = http://xorg.freedesktop.org/releases/individual/lib
 XLIB_LIBX11_INSTALL_STAGING = YES
-XLIB_LIBX11_DEPENDENCIES = libxcb xutil_util-macros xlib_xtrans xlib_libXau xlib_libXdmcp xproto_kbproto xproto_xproto xproto_xextproto xproto_inputproto xproto_xf86bigfontproto xproto_xcmiscproto host-xproto_xproto
+XLIB_LIBX11_DEPENDENCIES = libxcb xutil_util-macros xlib_xtrans xlib_libXau xlib_libXdmcp xproto_kbproto xproto_xproto xproto_xextproto xproto_inputproto xproto_xf86bigfontproto host-xproto_xproto
 XLIB_LIBX11_CONF_OPT = \
 	--disable-malloc0returnsnull \
 	--with-xcb \
Signature · 1 line
1.7.9.5
#21 lore raw

PATCH 9/28 xlib_libX11: do not depend on bigreqsproto nor xcmiscproto

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> The BR2_PACKAGE_XPROTO_BIGREQSPROTO option was selected by Thomas> xlib_libX11, but xlib_libX11 does not have this protocol package in Thomas> its DEPENDENCIES. In some builds, it leads to xproto_bigreqsproto to Thomas> be built as the last package, with no other package depending on it, Thomas> which doesn't make sense.

Thomas> xproto_xcmiscproto was selected and part of DEPENDENCIES, but an Thomas> inspection of libX11 configure.ac and libX11 source code shows that it Thomas> does not depend on xcmiscproto at all.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#22 lore raw

PATCH 10/28 xlib_libX11: split the DEPENDENCIES variable on multiple lines

In reply to Thomas Petazzoni
---
 package/x11r7/xlib_libX11/xlib_libX11.mk |   14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)
package/x11r7/xlib_libX11/xlib_libX11.mk +13 -1
index 94107b2..ca4f06e 100644
@@ -8,7 +8,19 @@ XLIB_LIBX11_VERSION = 1.4.2
 XLIB_LIBX11_SOURCE = libX11-$(XLIB_LIBX11_VERSION).tar.bz2
 XLIB_LIBX11_SITE = http://xorg.freedesktop.org/releases/individual/lib
 XLIB_LIBX11_INSTALL_STAGING = YES
-XLIB_LIBX11_DEPENDENCIES = libxcb xutil_util-macros xlib_xtrans xlib_libXau xlib_libXdmcp xproto_kbproto xproto_xproto xproto_xextproto xproto_inputproto xproto_xf86bigfontproto host-xproto_xproto
+XLIB_LIBX11_DEPENDENCIES = \
+	libxcb \
+	xutil_util-macros \
+	xlib_xtrans \
+	xlib_libXau \
+	xlib_libXdmcp \
+	xproto_kbproto \
+	xproto_xproto \
+	xproto_xextproto \
+	xproto_inputproto \
+	xproto_xf86bigfontproto \
+	host-xproto_xproto
+
 XLIB_LIBX11_CONF_OPT = \
 	--disable-malloc0returnsnull \
 	--with-xcb \
Signature · 1 line
1.7.9.5
#23 lore raw

PATCH 10/28 xlib_libX11: split the DEPENDENCIES variable on multiple lines

Quoted 1 line · Thomas Petazzoni

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#25 lore raw

PATCH 11/28 libsha1: new package

In reply to Thomas Petazzoni
---
 package/Config.in          |    1 +
 package/libsha1/Config.in  |    9 +++++++++
 package/libsha1/libsha1.mk |   15 +++++++++++++++
 3 files changed, 25 insertions(+)
 create mode 100644 package/libsha1/Config.in
 create mode 100644 package/libsha1/libsha1.mk
package/Config.in +1 -0
index 047af8d..5c2182c 100644
@@ -367,6 +367,7 @@ source "package/gnutls/Config.in"
 source "package/libgcrypt/Config.in"
 source "package/libgpg-error/Config.in"
 source "package/libnss/Config.in"
+source "package/libsha1/Config.in"
 source "package/nettle/Config.in"
 source "package/ocf-linux/Config.in"
 source "package/openssl/Config.in"
package/libsha1/Config.in new file +9 -0
new file mode 100644
index 0000000..5467a6c
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_LIBSHA1
+	bool "libsha1"
+	help
+	  libsha1 is a tiny library providing SHA1 implementation,
+	  created for facilitating X server compilation on devices
+	  when larger libraries containing SHA1 implementations
+	  (OpenSSL, Mozilla NSS) are not needed.
+
+	  https://github.com/dottedmag/libsha1
package/libsha1/libsha1.mk new file +15 -0
new file mode 100644
index 0000000..e9658af
@@ -0,0 +1,15 @@
+#############################################################
+#
+# libsha1
+#
+#############################################################
+
+LIBSHA1_VERSION = 0.3
+LIBSHA1_SITE = http://github.com/dottedmag/libsha1/tarball/$(LIBSHA1_VERSION)
+LIBSHA1_INSTALL_STAGING = YES
+
+# We're getting the source code from Github, so there is no generated
+# configure script in the tarball.
+LIBSHA1_AUTORECONF = YES
+
+$(eval $(autotools-package))
Signature · 1 line
1.7.9.5
#26 lore raw

PATCH 11/28 libsha1: new package

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#27 lore raw

PATCH 12/28 xserver_xorg-server: provide more options for SHA1 library

In reply to Thomas Petazzoni

Until now, the X.org server was forcefully selecting OpenSSL, just to have a SHA1 implementation. However, in fact, the X.org server is capable of using a SHA1 implementation from multiple libraries:
OpenSSL, libgcrypt and libsha1 amongst others.

So, this patch changes the X.org server package so that we use the SHA1 functions from OpenSSL is OpenSSL is already available, or the SHA1 functions from libgcrypt is libgcrypt is already available, or if neither OpenSSL nor libgcrypt are enabled in the configuration, we select the much smaller libsha1, that has been specifically written to fulfill the X.org server requirements.

---
 package/x11r7/xserver_xorg-server/Config.in        |    5 ++++-
 .../xserver_xorg-server/xserver_xorg-server.mk     |   12 +++++++++++-
 2 files changed, 15 insertions(+), 2 deletions(-)
package/x11r7/xserver_xorg-server/Config.in +4 -1
index 6c70196..de601e9 100644
@@ -2,7 +2,10 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 	bool "xorg-server"
 	select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
 	select BR2_PACKAGE_MCOOKIE
-	select BR2_PACKAGE_OPENSSL
+	# We need a SHA1 implementation. If either openssl or
+	# libgcrypt are already part of the build, we'll use one of
+	# them, otherwise, use the small libsha1 library.
+	select BR2_PACKAGE_LIBSHA1 if (!BR2_PACKAGE_OPENSSL && !BR2_PACKAGE_LIBGCRYPT)
 	select BR2_PACKAGE_PIXMAN
 	select BR2_PACKAGE_XFONT_FONT_ALIAS if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS
 	select BR2_PACKAGE_XFONT_FONT_MISC_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +11 -1
index 552d8e8..f6c6cab 100644
@@ -51,7 +51,6 @@ XSERVER_XORG_SERVER_DEPENDENCIES = 	\
 	xproto_xproto 			\
 	xkeyboard-config		\
 	pixman 				\
-	openssl 			\
 	mcookie 			\
 	host-pkgconf
 
@@ -178,4 +177,15 @@ else
 XSERVER_XORG_SERVER_CONF_OPT += --disable-glx
 endif
 
+ifeq ($(BR2_PACKAGE_OPENSSL),y)
+XSERVER_XORG_SERVER_CONF_OPT += --with-sha1=libcrypto
+XSERVER_XORG_SERVER_DEPENDENCIES += openssl
+else ifeq ($(BR2_PACKAGE_LIBGCRYPT),y)
+XSERVER_XORG_SERVER_CONF_OPT += --with-sha1=libgcrypt
+XSERVER_XORG_SERVER_DEPENDENCIES += libgcrypt
+else
+XSERVER_XORG_SERVER_CONF_OPT += --with-sha1=libsha1
+XSERVER_XORG_SERVER_DEPENDENCIES += libsha1
+endif
+
 $(eval $(autotools-package))
Signature · 1 line
1.7.9.5
#28 lore raw

PATCH 12/28 xserver_xorg-server: provide more options for SHA1 library

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Until now, the X.org server was forcefully selecting OpenSSL, just to Thomas> have a SHA1 implementation. However, in fact, the X.org server is Thomas> capable of using a SHA1 implementation from multiple libraries:
Thomas> OpenSSL, libgcrypt and libsha1 amongst others.

Thomas> So, this patch changes the X.org server package so that we use the Thomas> SHA1 functions from OpenSSL is OpenSSL is already available, or the Thomas> SHA1 functions from libgcrypt is libgcrypt is already available, or if Thomas> neither OpenSSL nor libgcrypt are enabled in the configuration, we Thomas> select the much smaller libsha1, that has been specifically written to Thomas> fulfill the X.org server requirements.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#29 lore raw

PATCH 13/28 cairo: do not depend on xserver-xorg_server, but on the right library

In reply to Thomas Petazzoni

cairo is a X client library, so there is no reason for it to build depend on the X.org server. What Cairo needs is the xlib_libX11 library.

---
 package/cairo/Config.in |    1 +
 package/cairo/cairo.mk  |    2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
package/cairo/Config.in +1 -0
index 398e47f..4a2078e 100644
@@ -2,6 +2,7 @@ config BR2_PACKAGE_CAIRO
 	bool "cairo"
 	select BR2_PACKAGE_PIXMAN
 	select BR2_PACKAGE_FONTCONFIG
+	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
 	help
 	  Cairo is a 2D graphics library with support for multiple
 	  output devices. Currently supported output targets include
package/cairo/cairo.mk +1 -1
index 59a032a..41e876a 100644
@@ -49,7 +49,7 @@ endif
 
 ifeq ($(BR2_PACKAGE_XORG7),y)
 	CAIRO_CONF_OPT += --enable-xlib --with-x
-	CAIRO_DEPENDENCIES += xserver_xorg-server
+	CAIRO_DEPENDENCIES += xlib_libX11
 else
 	CAIRO_CONF_OPT += --disable-xlib --without-x
 endif
Signature · 1 line
1.7.9.5
#30 lore raw

PATCH 13/28 cairo: do not depend on xserver-xorg_server, but on the right library

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> cairo is a X client library, so there is no reason for it to build Thomas> depend on the X.org server. What Cairo needs is the xlib_libX11 Thomas> library.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#31 lore raw

PATCH 14/28 cairo: always enable XCB support when X backend is enabled

In reply to Thomas Petazzoni

cairo depends on xlib_libX11 for its Xlib backend. But xlib_libX11 depends on XCB, so the XCB support can always be built into Cairo.

---
 package/cairo/cairo.mk |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
package/cairo/cairo.mk +2 -2
index 41e876a..6cf910a 100644
@@ -48,10 +48,10 @@ else
 endif
 
 ifeq ($(BR2_PACKAGE_XORG7),y)
-	CAIRO_CONF_OPT += --enable-xlib --with-x
+	CAIRO_CONF_OPT += --enable-xlib --enable-xcb --with-x
 	CAIRO_DEPENDENCIES += xlib_libX11
 else
-	CAIRO_CONF_OPT += --disable-xlib --without-x
+	CAIRO_CONF_OPT += --disable-xlib --disable-xcb --without-x
 endif
 
 ifeq ($(BR2_PACKAGE_CAIRO_PS),y)
Signature · 1 line
1.7.9.5
#32 lore raw

PATCH 14/28 cairo: always enable XCB support when X backend is enabled

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> cairo depends on xlib_libX11 for its Xlib backend. But xlib_libX11 Thomas> depends on XCB, so the XCB support can always be built into Cairo.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#33 lore raw

PATCH 15/28 docker: depend on xlib_libX11 and not the X.org server

In reply to Thomas Petazzoni

docker is a X client application, so it doesn't make sense to depend on the X.org server. An inspection of docker Makefile and source code shows that it only needs the libX11 library, so we replace the X.org server dependency by a libX11 dependency.

---
 package/docker/Config.in |    1 +
 package/docker/docker.mk |    2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
package/docker/Config.in +1 -0
index 75bf5be..f07739a 100644
@@ -3,6 +3,7 @@ config BR2_PACKAGE_DOCKER
 	depends on BR2_PACKAGE_XORG7
 	depends on BR2_USE_WCHAR # glib2
 	select BR2_PACKAGE_LIBGLIB2
+	select BR2_PACKAGE_XLIB_LIBX11
 	help
 	  a system tray dock for X
 
package/docker/docker.mk +1 -1
index 95799e8..b452386 100644
@@ -16,6 +16,6 @@ DOCKER_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" LD="$(TARGET_LD)" \
 
 DOCKER_INSTALL_TARGET_OPT = PREFIX=$(TARGET_DIR)/usr install
 
-DOCKER_DEPENDENCIES = host-pkgconf libglib2 xserver_xorg-server
+DOCKER_DEPENDENCIES = host-pkgconf libglib2 xlib_libX11
 
 $(eval $(autotools-package))
Signature · 1 line
1.7.9.5
#34 lore raw

PATCH 15/28 docker: depend on xlib_libX11 and not the X.org server

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> docker is a X client application, so it doesn't make sense to depend Thomas> on the X.org server. An inspection of docker Makefile and source code Thomas> shows that it only needs the libX11 library, so we replace the X.org Thomas> server dependency by a libX11 dependency.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#35 lore raw

PATCH 16/28 fltk: replace dependency on X.org server with dependency on libraries

In reply to Thomas Petazzoni

fltk is a X client library, so it doesn't make sense for it to depend on the X.org server. Instead, it depends on libX11, libXext and libXt, so we use those libraries as fltk dependencies.

---
 package/fltk/Config.in |    2 ++
 package/fltk/fltk.mk   |    2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)
package/fltk/Config.in +2 -0
index eff72b5..2085192 100644
@@ -3,6 +3,8 @@ config BR2_PACKAGE_FLTK
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_PACKAGE_XORG7
 	select BR2_PACKAGE_XLIB_LIBXT
+	select BR2_PACKAGE_XLIB_LIBX11
+	select BR2_PACKAGE_XLIB_LIBXEXT
 	help
 	  A cross-platform C++ GUI toolkit for UNIX/Linux (X11),
 	  Microsoft Windows, and MacOS X.
package/fltk/fltk.mk +1 -1
index a5dac37..3f192cd 100644
@@ -11,6 +11,6 @@ FLTK_INSTALL_STAGING = YES
 FLTK_INSTALL_STAGING_OPT = DESTDIR=$(STAGING_DIR) STRIP=$(TARGET_STRIP) install
 FLTK_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) STRIP=$(TARGET_STRIP) install
 FLTK_CONF_OPT = --enable-threads --with-x
-FLTK_DEPENDENCIES = xserver_xorg-server xlib_libXt
+FLTK_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXt
 
 $(eval $(autotools-package))
Signature · 1 line
1.7.9.5
#36 lore raw

PATCH 16/28 fltk: replace dependency on X.org server with dependency on libraries

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> fltk is a X client library, so it doesn't make sense for it to depend Thomas> on the X.org server. Instead, it depends on libX11, libXext and libXt, Thomas> so we use those libraries as fltk dependencies.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#37 lore raw

PATCH 17/28 libgtk2: replace dependency on X.org server by dependency on libraries

In reply to Thomas Petazzoni

libgtk2 is a X client library, so it doesn't make sense for it to depend on the X.org server. Instead, it should depend on the X client libraries.

This patch therefore replaces the dependency on the X server by a dependency on libX11, libXext, libXrender and fontconfig, that are the mandatory requirements to build the X backend of Gtk.

---
 package/libgtk2/Config.in  |    5 +++++
 package/libgtk2/libgtk2.mk |    3 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)
package/libgtk2/Config.in +5 -0
index efaf12f..42aef4b 100644
@@ -8,6 +8,10 @@ config BR2_PACKAGE_LIBGTK2
 	select BR2_PACKAGE_LIBGLIB2
 	select BR2_PACKAGE_PANGO
 	select BR2_PACKAGE_GDK_PIXBUF
+	select BR2_PACKAGE_FONTCONFIG if BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_XORG7
 	depends on BR2_PACKAGE_XORG7||BR2_PACKAGE_DIRECTFB
 	depends on BR2_USE_WCHAR # glib2
 	depends on BR2_INSTALL_LIBSTDCPP # pango
@@ -19,6 +23,7 @@ config BR2_PACKAGE_LIBGTK2
 config BR2_PACKAGE_LIBGTK2_DEMO
 	bool "Install libgtk2 demo program"
 	depends on BR2_PACKAGE_LIBGTK2
+
 	help
 	  The GTK+ source base contains a gtk-demo program. This
 	  option allows to install this program to the target.
package/libgtk2/libgtk2.mk +2 -1
index 9adb6b9..3dcecbf 100644
@@ -82,7 +82,8 @@ ifeq ($(BR2_PACKAGE_XORG7),y)
 		--x-includes=$(STAGING_DIR)/usr/include/X11 \
 		--x-libraries=$(STAGING_DIR)/usr/lib \
 		--with-gdktarget=x11
-	LIBGTK2_DEPENDENCIES += xlib_libXcomposite xserver_xorg-server
+	LIBGTK2_DEPENDENCIES += xlib_libXcomposite fontconfig xlib_libX11 \
+		xlib_libXext xlib_libXrender
 else
 	LIBGTK2_CONF_OPT += --without-x
 endif
Signature · 1 line
1.7.9.5
#38 lore raw

PATCH 17/28 libgtk2: replace dependency on X.org server by dependency on libraries

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> libgtk2 is a X client library, so it doesn't make sense for it to Thomas> depend on the X.org server. Instead, it should depend on the X client Thomas> libraries.

Thomas> This patch therefore replaces the dependency on the X server by a Thomas> dependency on libX11, libXext, libXrender and fontconfig, that are the Thomas> mandatory requirements to build the X backend of Gtk.

Thomas> Signed-off-by: Thomas Petazzoni <[email protected]> Thomas> ---

 Thomas>  package/libgtk2/Config.in  |    5 +++++
 Thomas>  package/libgtk2/libgtk2.mk |    3 ++-

Thomas> 2 files changed, 7 insertions(+), 1 deletion(-)

Thomas> diff --git a/package/libgtk2/Config.in b/package/libgtk2/Config.in Thomas> index efaf12f..42aef4b 100644
Thomas> --- a/package/libgtk2/Config.in
Thomas> +++ b/package/libgtk2/Config.in
Thomas> @@ -8,6 +8,10 @@ config BR2_PACKAGE_LIBGTK2

 Thomas>  	select BR2_PACKAGE_LIBGLIB2
 Thomas>  	select BR2_PACKAGE_PANGO
 Thomas>  	select BR2_PACKAGE_GDK_PIXBUF
 Thomas> +	select BR2_PACKAGE_FONTCONFIG if BR2_PACKAGE_XORG7
 Thomas> +	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
 Thomas> +	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
 Thomas> +	select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_XORG7
 Thomas>  	depends on BR2_PACKAGE_XORG7||BR2_PACKAGE_DIRECTFB
 Thomas>  	depends on BR2_USE_WCHAR # glib2
 Thomas>  	depends on BR2_INSTALL_LIBSTDCPP # pango
 Thomas> @@ -19,6 +23,7 @@ config BR2_PACKAGE_LIBGTK2
 Thomas>  config BR2_PACKAGE_LIBGTK2_DEMO
 Thomas>  	bool "Install libgtk2 demo program"
 Thomas>  	depends on BR2_PACKAGE_LIBGTK2

Thomas> +
Thomas> help

This empty line shouldn't be there. Committed without this change, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#39 lore raw

PATCH 18/28 libgtk2: add support for some optional X dependencies

In reply to Thomas Petazzoni

libgtk2 can optionally use a number of features from additional X extensions, so we add support for those, to ensure that Gtk gets built after those extensions if they have been enabled in the Buildroot configuration.

The extensions are Xinerama, Xinput, Xrandr, Xcursor, Xfixes, Xcomposite and Xdamage.

---
 package/libgtk2/libgtk2.mk |   35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)
package/libgtk2/libgtk2.mk +35 -0
index 3dcecbf..e6a9d84 100644
@@ -84,6 +84,41 @@ ifeq ($(BR2_PACKAGE_XORG7),y)
 		--with-gdktarget=x11
 	LIBGTK2_DEPENDENCIES += xlib_libXcomposite fontconfig xlib_libX11 \
 		xlib_libXext xlib_libXrender
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y)
+	LIBGTK2_CONF_OPT += --enable-xinerama
+	LIBGTK2_DEPENDENCIES += xlib_libXinerama
+else
+	LIBGTK2_CONF_OPT += --disable-xinerama
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y)
+	LIBGTK2_CONF_OPT += --with-xinput=yes
+	LIBGTK2_DEPENDENCIES += xlib_libXi
+else
+	LIBGTK2_CONF_OPT += --with-xinput=no
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y)
+	LIBGTK2_DEPENDENCIES += xlib_libXrandr
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y)
+	LIBGTK2_DEPENDENCIES += xlib_libXcursor
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXFIXES),y)
+	LIBGTK2_DEPENDENCIES += xlib_libXfixes
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),y)
+	LIBGTK2_DEPENDENCIES += xlib_libXcomposite
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXDAMAGE),y)
+	LIBGTK2_DEPENDENCIES += xlib_libXdamage
+endif
+
 else
 	LIBGTK2_CONF_OPT += --without-x
 endif
Signature · 1 line
1.7.9.5
#40 lore raw

PATCH 18/28 libgtk2: add support for some optional X dependencies

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> libgtk2 can optionally use a number of features from additional X Thomas> extensions, so we add support for those, to ensure that Gtk gets built Thomas> after those extensions if they have been enabled in the Buildroot Thomas> configuration.

Thomas> The extensions are Xinerama, Xinput, Xrandr, Xcursor, Xfixes, Thomas> Xcomposite and Xdamage.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#41 lore raw

PATCH 19/28 atk: remove useless configuration options

In reply to Thomas Petazzoni

ATK is not directly related to X11, and the --with-x, --x-includes, --x-libraries and --without-x options do not exist.

The --disable-glibtest was duplicated, and is therefore still passed to the configuration options.

---
 package/atk/atk.mk |    8 --------
 1 file changed, 8 deletions(-)
package/atk/atk.mk +0 -8
index 987a1cb..0453acb 100644
@@ -41,14 +41,6 @@ ATK_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes \
 ATK_CONF_OPT =  --disable-glibtest --enable-explicit-deps=no \
 		--disable-debug
 
-ifeq ($(BR2_PACKAGE_XORG7),y)
-ATK_CONF_OPT += --with-x \
-		--x-includes=$(STAGING_DIR)/usr/include/X11 \
-		--x-libraries=$(STAGING_DIR)/usr/lib --disable-glibtest
-else
-ATK_CONF_OPT += --without-x
-endif
-
 ATK_DEPENDENCIES = libglib2 host-pkgconf
 
 HOST_ATK_CONF_OPT = \
Signature · 1 line
1.7.9.5
#42 lore raw

PATCH 19/28 atk: remove useless configuration options

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> ATK is not directly related to X11, and the --with-x, --x-includes, Thomas> --x-libraries and --without-x options do not exist.

Thomas> The --disable-glibtest was duplicated, and is therefore still passed Thomas> to the configuration options.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#43 lore raw

PATCH 20/28 atk: remove unused host variant

In reply to Thomas Petazzoni

The atk package is used as a dependency in the libglade and libgtk2 packages.

The libglade package has no host variant, and does not depend on host-atk.

The libgtk2 package depends on atk, and has a host variant, but the host variant of libgtk2 overrides HOST_LIBGTK2_DEPENDENCIES to limit the number of dependencies, and host-atk is not amongst those dependencies.

Therefore, host-atk is useless and can be removed.

---
 package/atk/atk.mk |    4 ----
 1 file changed, 4 deletions(-)
package/atk/atk.mk +0 -4
index 0453acb..2a85edd 100644
@@ -43,8 +43,4 @@ ATK_CONF_OPT =  --disable-glibtest --enable-explicit-deps=no \
 
 ATK_DEPENDENCIES = libglib2 host-pkgconf
 
-HOST_ATK_CONF_OPT = \
-		--disable-glibtest
-
 $(eval $(autotools-package))
-$(eval $(host-autotools-package))
Signature · 1 line
1.7.9.5
#44 lore raw

PATCH 20/28 atk: remove unused host variant

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> The atk package is used as a dependency in the libglade and libgtk2 Thomas> packages.

Thomas> The libglade package has no host variant, and does not depend on Thomas> host-atk.

Thomas> The libgtk2 package depends on atk, and has a host variant, but the Thomas> host variant of libgtk2 overrides HOST_LIBGTK2_DEPENDENCIES to limit Thomas> the number of dependencies, and host-atk is not amongst those Thomas> dependencies.

Thomas> Therefore, host-atk is useless and can be removed.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#45 lore raw

PATCH 21/28 pango: fix X.org dependencies

In reply to Thomas Petazzoni

pango is a X client library, so it does not need to depend on the X.org server. So, we replace the server dependency by dependencies on the appropriate libraries.

---
 package/pango/Config.in |    3 +++
 package/pango/pango.mk  |   13 +++++++++++--
 2 files changed, 14 insertions(+), 2 deletions(-)
package/pango/Config.in +3 -0
index 60e9931..6c8a160 100644
@@ -5,7 +5,10 @@ config BR2_PACKAGE_PANGO
 	select BR2_PACKAGE_LIBGLIB2
 	select BR2_PACKAGE_EXPAT
 	select BR2_PACKAGE_CAIRO
+	select BR2_PACKAGE_FONTCONFIG
+	select BR2_PACKAGE_FREETYPE
 	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
+	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
 	help
 	  Pango is a library for laying out and rendering of text, with an
 	  emphasis on internationalization. Pango can be used anywhere that
package/pango/pango.mk +11 -2
index 7ba53ee..8e0444e 100644
@@ -41,17 +41,26 @@ PANGO_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes glib_cv_stack_grows=no \
 
 PANGO_CONF_OPT = --enable-explicit-deps=no --disable-debug
 
-PANGO_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) host-pkgconf libglib2 cairo
+PANGO_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) \
+	host-pkgconf \
+	libglib2 \
+	cairo \
+	fontconfig \
+	freetype
 
 ifeq ($(BR2_PACKAGE_XORG7),y)
         PANGO_CONF_OPT += --with-x \
 		--x-includes=$(STAGING_DIR)/usr/include/X11 \
 		--x-libraries=$(STAGING_DIR)/usr/lib --disable-glibtest
-	PANGO_DEPENDENCIES += xserver_xorg-server
+	PANGO_DEPENDENCIES += xlib_libX11
 else
         PANGO_CONF_OPT += --without-x
 endif
 
+ifeq ($(BR2_PACKAGE_XLIB_LIBXFT)$(BR2_PACKAGE_XLIB_LIBXRENDER),yy)
+	PANGO_DEPENDENCIES += xlib_libXft xlib_libXrender
+endif
+
 define PANGO_INSTALL_INITSCRIPT
 	$(INSTALL) -m 755 -D package/pango/S25pango \
 		$(TARGET_DIR)/etc/init.d/S25pango
Signature · 1 line
1.7.9.5
#46 lore raw

PATCH 21/28 pango: fix X.org dependencies

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> pango is a X client library, so it does not need to depend on the Thomas> X.org server. So, we replace the server dependency by dependencies on Thomas> the appropriate libraries.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#47 lore raw

PATCH 22/28 metacity: fix X.org dependencies

In reply to Thomas Petazzoni

Metacity is a X client application, so there is no reason to depend on the X.org server. Instead, depend on the appropriate X libraries.

In addition to the X.org related dependencies, we also add the host-libxml-parser-perl dependency, otherwise:

checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool make[1]: *** [/home/test/outputs/xorg/build/metacity-2.25.1/.stamp_configured] Error 1
make: *** [all] Error 2

---
 package/metacity/Config.in   |   10 ++++++++++
 package/metacity/metacity.mk |   12 +++++++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)
package/metacity/Config.in +10 -0
index c483c44..833a091 100644
@@ -2,5 +2,15 @@ config BR2_PACKAGE_METACITY
 	bool "metacity"
 	depends on BR2_PACKAGE_LIBGTK2
 	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBX11
+	# Metacity configure.ac pretends it can be built without
+	# Composite, but in reality, it doesn't build.
+	select BR2_PACKAGE_XLIB_LIBXCOMPOSITE
+	select BR2_PACKAGE_XLIB_LIBXFIXES
+	select BR2_PACKAGE_XLIB_LIBXRENDER
+	select BR2_PACKAGE_XLIB_LIBXDAMAGE
+	# We do not directly depend on Xft, but they are needed to get
+	# Xft support in Pango, which we require.
+	select BR2_PACKAGE_XLIB_LIBXFT
 	help
 	  Metacity is a window manager for the X Window System.
package/metacity/metacity.mk +11 -1
index 990ec9f..aa78a7a 100644
@@ -17,7 +17,17 @@ METACITY_CONF_OPT = --x-includes=$(STAGING_DIR)/usr/include/X11 \
 		--disable-dependency-tracking \
 		--disable-sm --disable-startup-notification
 
-METACITY_DEPENDENCIES = libgtk2 xserver_xorg-server
+METACITY_DEPENDENCIES = libgtk2 \
+	xlib_libX11 \
+	host-libxml-parser-perl \
+	xlib_libXcomposite \
+	xlib_libXfixes \
+	xlib_libXrender \
+	xlib_libXdamage
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y)
+METACITY_DEPENDENCIES += xlib_libXcursor
+endif
 
 define METACITY_INSTALL_XSESSION
 	install -D package/metacity/Xsession $(TARGET_DIR)/etc/X11/Xsession
Signature · 1 line
1.7.9.5
#48 lore raw

PATCH 22/28 metacity: fix X.org dependencies

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Metacity is a X client application, so there is no reason to depend on Thomas> the X.org server. Instead, depend on the appropriate X libraries.

Thomas> In addition to the X.org related dependencies, we also add the Thomas> host-libxml-parser-perl dependency, otherwise:

 Thomas>   checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
 Thomas>   make[1]: *** [/home/test/outputs/xorg/build/metacity-2.25.1/.stamp_configured] Error 1
 Thomas>   make: *** [all] Error 2

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#49 lore raw

PATCH 23/28 rubix: fix X.org dependency

In reply to Thomas Petazzoni
---
 package/rubix/Config.in |    1 +
 package/rubix/rubix.mk  |    2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
package/rubix/Config.in +1 -0
index 9cf5b46..7afc0ae 100644
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_RUBIX
 	bool "rubix"
 	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBX11
 	help
 	  A 3D rubiks cube game for X
 
package/rubix/rubix.mk +1 -1
index d39d353..9270367 100644
@@ -10,7 +10,7 @@ RUBIX_INSTALL_TARGET_OPT = GAMESDIR=$(TARGET_DIR)/usr/games install
 
 RUBIX_MAKE_OPT = CC="$(TARGET_CC)" XINC="-I$(STAGING_DIR)/usr/include/X11" XLIB="-L$(STAGING_DIR)/usr/lib -lX11"
 
-RUBIX_DEPENDENCIES = xserver_xorg-server
+RUBIX_DEPENDENCIES = xlib_libX11
 
 $(eval $(autotools-package))
 
Signature · 1 line
1.7.9.5
#50 lore raw

PATCH 23/28 rubix: fix X.org dependency

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#51 lore raw

PATCH 24/28 torsmo: fix X.org dependency

In reply to Thomas Petazzoni
---
 package/torsmo/Config.in |    2 ++
 package/torsmo/torsmo.mk |    2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)
package/torsmo/Config.in +2 -0
index b3aba39..7d309da 100644
@@ -1,6 +1,8 @@
 config BR2_PACKAGE_TORSMO
 	bool "torsmo"
 	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBX11
+	select BR2_PACKAGE_XLIB_LIBXEXT
 	help
 	  Torsmo is a system monitor that sits in the corner of your desktop.
 
package/torsmo/torsmo.mk +1 -1
index c42ce11..eedb6f7 100644
@@ -11,7 +11,7 @@ TORSMO_SITE = http://mirror.egtvedt.no/avr32linux.org/twiki/pub/Main/Torsmo
 TORSMO_CONF_ENV = ac_cv_path_HELP2MAN=''
 TORSMO_CONF_OPT = --x-includes="-I$(STAGING_DIR)/usr/include/X11" --x-libraries="-I$(STAGING_DIR)/usr/lib" --with-x
 
-TORSMO_DEPENDENCIES = xserver_xorg-server
+TORSMO_DEPENDENCIES = xlib_libX11 xlib_libXext
 
 $(eval $(autotools-package))
 
Signature · 1 line
1.7.9.5
#52 lore raw

PATCH 24/28 torsmo: fix X.org dependency

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#53 lore raw

PATCH 25/28 xvkbd: fix X.org dependencies

In reply to Thomas Petazzoni

xvkbd is a X.org client application, so there is no reason to depend on the X.org server. Instead, depend on the X.org client libraries that xvkbd actually links against.

---
 package/xvkbd/Config.in |    7 +++++++
 package/xvkbd/xvkbd.mk  |   11 ++++++++++-
 2 files changed, 17 insertions(+), 1 deletion(-)
package/xvkbd/Config.in +7 -0
index a75687d..bd3f2aa 100644
@@ -1,7 +1,14 @@
 config BR2_PACKAGE_XVKBD
 	bool "xvkbd"
 	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBICE
+	select BR2_PACKAGE_XLIB_LIBSM
+	select BR2_PACKAGE_XLIB_LIBX11
 	select BR2_PACKAGE_XLIB_LIBXAW
+	select BR2_PACKAGE_XLIB_LIBXEXT
+	select BR2_PACKAGE_XLIB_LIBXMU
+	select BR2_PACKAGE_XLIB_LIBXPM
+	select BR2_PACKAGE_XLIB_LIBXT
 	select BR2_PACKAGE_XLIB_LIBXTST
 	help
 	  on-screen keyboard for X
package/xvkbd/xvkbd.mk +10 -1
index ec63027..ae81f84 100644
@@ -10,7 +10,16 @@ XVKBD_SITE = http://homepage3.nifty.com/tsato/xvkbd
 XVKBD_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" LD="$(TARGET_CC)" \
 				CFLAGS="-O2 -I$(STAGING_DIR)/usr/include" USRLIBDIR="$(STAGING_DIR)/usr/lib"
 
-XVKBD_DEPENDENCIES = xserver_xorg-server xlib_libXaw xlib_libXtst
+XVKBD_DEPENDENCIES = \
+	xlib_libICE \
+	xlib_libSM \
+	xlib_libX11 \
+	xlib_libXaw \
+	xlib_libXext \
+	xlib_libXmu \
+	xlib_libXpm \
+	xlib_libXt \
+	xlib_libXtst
 
 $(eval $(autotools-package))
 
Signature · 1 line
1.7.9.5
#54 lore raw

PATCH 25/28 xvkbd: fix X.org dependencies

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> xvkbd is a X.org client application, so there is no reason to depend Thomas> on the X.org server. Instead, depend on the X.org client libraries Thomas> that xvkbd actually links against.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#55 lore raw

PATCH 26/28 xvkbd: turn into a generic-package

In reply to Thomas Petazzoni

xvkbd was integrated has an autotools package, but it does not have a ./configure script. And to avoid executing the ./configure, the xvkbd-2.8-makefile.patch was creating a dummy .stamp_configured stamp file... Ugly.

So, make xvkbd a normal generic package, with BUILD_CMDS and INSTALL_TARGET_CMDS, and get rid of the crappy part of the patch.

---
 package/xvkbd/xvkbd-2.8-makefile.patch |    5 -----
 package/xvkbd/xvkbd.mk                 |   14 +++++++++++---
 2 files changed, 11 insertions(+), 8 deletions(-)
package/xvkbd/xvkbd-2.8-makefile.patch +0 -5
index e0ac21a..a8f6577 100644
@@ -1,8 +1,3 @@
---- a/.stamp_configured	2008-03-04 06:14:55.425005441 -0500
-+++ b/.stamp_configured	2008-03-05 08:42:53.000000000 -0500
-@@ -0,0 +1 @@
-+dummy
-\ No newline at end of file
 --- a/Makefile	2008-03-04 06:14:55.425005441 -0500
 +++ b/Makefile	2008-03-05 08:40:50.000000000 -0500
 @@ -0,0 +1,2397 @@
package/xvkbd/xvkbd.mk +11 -3
index ae81f84..59085bf 100644
@@ -7,8 +7,16 @@ XVKBD_VERSION = 3.2
 XVKBD_SOURCE = xvkbd-$(XVKBD_VERSION).tar.gz
 XVKBD_SITE = http://homepage3.nifty.com/tsato/xvkbd
 
-XVKBD_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" LD="$(TARGET_CC)" \
-				CFLAGS="-O2 -I$(STAGING_DIR)/usr/include" USRLIBDIR="$(STAGING_DIR)/usr/lib"
+# Passing USRLIBDIR ensures that the stupid Makefile doesn't add
+# /usr/lib to the library search path.
+define XVKBD_BUILD_CMDS
+	$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \
+		USRLIBDIR="$(STAGING_DIR)/usr/lib"
+endef
+
+define XVKBD_INSTALL_TARGET_CMDS
+	$(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+endef
 
 XVKBD_DEPENDENCIES = \
 	xlib_libICE \
@@ -21,5 +29,5 @@ XVKBD_DEPENDENCIES = \
 	xlib_libXt \
 	xlib_libXtst
 
-$(eval $(autotools-package))
+$(eval $(generic-package))
 
Signature · 1 line
1.7.9.5
#56 lore raw

PATCH 26/28 xvkbd: turn into a generic-package

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> xvkbd was integrated has an autotools package, but it does not have a Thomas> ./configure script. And to avoid executing the ./configure, the Thomas> xvkbd-2.8-makefile.patch was creating a dummy .stamp_configured stamp Thomas> file... Ugly.

Thomas> So, make xvkbd a normal generic package, with BUILD_CMDS and Thomas> INSTALL_TARGET_CMDS, and get rid of the crappy part of the patch.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#57 lore raw

PATCH 27/28 xvkbd: remove version from the patch file name

In reply to Thomas Petazzoni

The version in xvkbd patch file name doesn't patch the version of the package, so use the new convention that consists in not having the package version in the patch file names.

---
 ...kbd-2.8-makefile.patch => xvkbd-makefile.patch} |    0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename package/xvkbd/{xvkbd-2.8-makefile.patch => xvkbd-makefile.patch} (100%)
package/xvkbd/xvkbd-makefile.patch renamed from package/xvkbd/xvkbd-2.8-makefile.patch +0 -0
similarity index 100%
rename from package/xvkbd/xvkbd-2.8-makefile.patch
rename to package/xvkbd/xvkbd-makefile.patch
Signature · 1 line
1.7.9.5
#58 lore raw

PATCH 27/28 xvkbd: remove version from the patch file name

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> The version in xvkbd patch file name doesn't patch the version of the Thomas> package, so use the new convention that consists in not having the Thomas> package version in the patch file names.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#59 lore raw

PATCH 28/28 webkit: remove X.org server dependency

In reply to Thomas Petazzoni
---
 package/webkit/webkit.mk |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/webkit/webkit.mk +1 -1
index a9701e4..d37601f 100644
@@ -19,7 +19,7 @@ WEBKIT_CONF_ENV = ac_cv_path_icu_config=$(STAGING_DIR)/usr/bin/icu-config \
 
 ifeq ($(BR2_PACKAGE_XORG7),y)
 	WEBKIT_CONF_OPT += --with-target=x11
-	WEBKIT_DEPENDENCIES += xserver_xorg-server xlib_libXt
+	WEBKIT_DEPENDENCIES += xlib_libXt
 else
 	WEBKIT_CONF_OPT += --with-target=directfb
 	WEBKIT_DEPENDENCIES += directfb
Signature · 1 line
1.7.9.5
#60 lore raw

PATCH 28/28 webkit: remove X.org server dependency

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#61 lore raw
In reply to Thomas Petazzoni
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Hello,
Thomas> Here is a series of improvements to the X.org support. Initially, my Thomas> intention was to:

Thomas> * Patches 1 to 7 are fixes around the X.org modular vs. Kdrive

 Thomas>    selection (moving at the right place, renaming options), add
 Thomas>    support to build some Kdrive input drivers (evdev, mouse, kbd),
 Thomas>    etc.

Committed the first 6 (with the Config.in indentation fix as noticed by Arnout). I'll try to find time to review and commit the rest tomorrow.

Signature · 1 line
Bye, Peter Korsgaard