xserver-common 1.30: another set of updates
authorMarcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Mon, 31 Aug 2009 11:04:33 +0000 (13:04 +0200)
committerMarcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Mon, 31 Aug 2009 11:04:33 +0000 (13:04 +0200)
0024 moves functionality of /etc/X11/Xserver to separate file (except
     running X11 server) - this allows to use xserver-common package in
     systems where xinit is used to run X11 session as root (look at
     xserver-nodm-init package)

0025 moves xmodmap files to /etc/X11/xmodmap/ and installs
     xserver-common file created in previous patch.

0026 fixes path to default.xmodmap file

recipes/xserver-common/xserver-common-1.30/0024-Xserver-move-nearly-whole-functionality-to-xserver-c.patch [new file with mode: 0644]
recipes/xserver-common/xserver-common-1.30/0025-Makefile-move-modmaps-install-xserver-common.patch [new file with mode: 0644]
recipes/xserver-common/xserver-common-1.30/0026-98keymap-fixup-fixed-path-to-xmodmap-file.patch [new file with mode: 0644]
recipes/xserver-common/xserver-common_1.30.bb

diff --git a/recipes/xserver-common/xserver-common-1.30/0024-Xserver-move-nearly-whole-functionality-to-xserver-c.patch b/recipes/xserver-common/xserver-common-1.30/0024-Xserver-move-nearly-whole-functionality-to-xserver-c.patch
new file mode 100644 (file)
index 0000000..d00e1a7
--- /dev/null
@@ -0,0 +1,415 @@
+From dc0efcbc35a7e0c5b5f908fb4d27a76c4ee304ac Mon Sep 17 00:00:00 2001
+From: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
+Date: Mon, 31 Aug 2009 12:05:17 +0200
+Subject: [PATCH 1/1] Xserver: move nearly whole functionality to xserver-common
+
+/etc/X11/Xserver script now use /etc/X11/xserver-common one to get
+values for XSERVER, ARGS, DPI variables.
+
+This split allows to use xserver-common for other X11 startup systems.
+---
+ X11/Xserver        |  188 +--------------------------------------------------
+ X11/xserver-common |  191 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 192 insertions(+), 187 deletions(-)
+ create mode 100644 X11/xserver-common
+
+diff --git a/X11/Xserver b/X11/Xserver
+index 583cd0d..d53e1c9 100755
+--- a/X11/Xserver
++++ b/X11/Xserver
+@@ -1,194 +1,8 @@
+ #!/bin/sh
+ #
+-XSERVER=Xfbdev
+-BINDIR=/usr/bin
++. /etc/X11/xserver-common
+-if [ -f $BINDIR/Xepson ]; then
+-  XSERVER=Xepson
+-fi
+-if [ -f $BINDIR/Xorg ]; then
+-  XSERVER=Xorg
+-fi
+-if [ -f $BINDIR/Xomap ]; then
+-  XSERVER=Xomap
+-fi
+-if [ -f $BINDIR/Xw100 ]; then
+-  XSERVER=Xw100
+-fi
+-if [ -f $BINDIR/Xvesa ]; then
+-  XSERVER=Xvesa
+-fi
+-if [ -f $BINDIR/Ximageon ]; then
+-  XSERVER=Ximageon
+-fi
+-if [ -f $BINDIR/Xglamo ]; then
+-  XSERVER=Xglamo
+-fi
+-
+-if [ -f /etc/profile ]; then
+-  . /etc/profile
+-fi
+-
+-. /etc/init.d/functions
+-
+-fallback_screen_arg() {
+-    geom=`fbset | grep geometry`
+-    w=`echo $geom | awk '{ print $2 }'`
+-    h=`echo $geom | awk '{ print $3 }'`
+-    b=`echo $geom | awk '{ print $6 }'`
+-    echo -n "${w}x${h}x${b}"
+-}
+-
+-SCREEN_SIZE=`fallback_screen_arg`
+-export USER=root
+-export XSERVER_DEFAULT_ORIENTATION=normal
+-
+-ARGS="-br -pn $INPUT_EXTRA_ARGS"
+-DPI="100"
+-MOUSE=""
+-
+-# use ucb 1x00 touchscreen if present
+-if [ -z "$TSLIB_TSDEVICE" ] && [ -e /dev/touchscreen/ucb1x00 ]; then
+-  MOUSE="-mouse /dev/touchscreen/ucb1x00"
+-fi
+-
+-# kdrive 1.4 onwards needs -mouse args
+-# Xorg doesn't support "-mouse" option, and uses /dev/input/mice automatically
+-if [ -e "$TSLIB_TSDEVICE" ] ; then
+-  MOUSE="-mouse tslib"
+-else
+-  if  [ -e /dev/input/mice ] && [ "$XSERVER" != "Xorg" ] ; then
+-    MOUSE="-mouse mouse"
+-  fi
+-fi
+-
+-if [ -e /etc/default/xserver ] ; then
+-    . /etc/default/xserver
+-else
+-    # start off server in conventional location.
+-    case `machine_id` in
+-          "aml_m8050")
+-                  ARGS="$ARGS  -screen 320x240@270"
+-                  DPI="100" ;;
+-          "hp_ipaq_h3100" | "hp_ipaq_h3800")
+-                  ARGS="$ARGS -rgba vrgb -screen 320x240@90"
+-                  DPI="100" ;;
+-          "hp_ipaq_h3600" | "hp_ipaq_h3700" | "hp_ipaq_h3900")
+-                  ARGS="$ARGS -rgba vbgr -screen 320x240@270"
+-                  DPI="100" ;;
+-          "hp_ipaq_h5400" | "hp_ipaq_h2200")
+-                  ARGS="$ARGS -rgba rgb"
+-                  DPI="100" ;;
+-          "hp_ipaq_hx4700")
+-                  DPI="200" ;;
+-          "ramses")
+-                  # What is this "vt2" in aid of?
+-                  ARGS="$ARGS -rgba vrgb -screen 320x240@90 vt2"
+-                  DPI="100" ;;
+-          *poodle)
+-                  ARGS="$ARGS -rgba vrgb -screen 320x240@270"
+-                  DPI="100" ;;
+-          # both 'Sharp-Collie' and just 'Collie' have been reported
+-          *collie)
+-                  ARGS="$ARGS -rgba vrgb -screen 320x240@270"
+-                  DPI="100" ;;
+-          "sharp_shepherd" | "sharp_husky" | "sharp_corgi")
+-                  ARGS="$ARGS -rgba rgb"
+-                  DPI="200" ;;
+-          "sharp_spitz" | "sharp_akita" | "sharp_borzoi")
+-                  export XSERVER_DEFAULT_ORIENTATION="normal"
+-                  ARGS="$ARGS -rgba rgb -screen 480x640"
+-                  DPI="200" ;;
+-          "simpad")
+-                  ARGS="$ARGS -rgba rgb"
+-                  DPI="100" ;;
+-          "generic_omap1510/1610/1710")
+-                  MOUSE="-mouse /dev/input/event0"
+-                  DPI="220" ;;
+-          "ti-osk")
+-                  DPI="100" ;;
+-          "cellon_c8000_board")
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE},10,1"
+-                  DPI="100" ;;
+-          "htc_magician")
+-                  DPI="142" ;;
+-          "htc_universal")
+-                  ARGS="$ARGS -screen 480x640@270"
+-                  DPI="100" ;;
+-          "htc_tornado")
+-                  ARGS="$ARGS -hide-cursor"
+-                  DPI="100" ;;
+-          "generic_omap1510/1610/1710")
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                  DPI="225" ;;
+-          "nokia_n800" | "nokia_rx-44" | "nokia_n770")
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                  DPI="225" ;;
+-          "gta01" )
+-                  DPI="285"
+-                  if [ "$XSERVER" != "Xorg" ] ; then
+-                          ARGS="$ARGS -screen 480x640"
+-                  fi
+-                  ;;
+-          "gta02")
+-                  DPI="285"
+-                  if [ "$XSERVER" != "Xorg" ] ; then
+-                          ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                  fi
+-                  ;;
+-          "motorola_ezx_platform")
+-                  ARGS="$ARGS -screen 240x320"
+-                  DPI="170" ;;
+-          "arm-integratorcp" | "arm-versatile_pb")
+-                  ARGS="$ARGS -rgba vrgb" ;;
+-          "compulab_cm-x270")
+-                  modprobe mbxfb
+-                  ARGS="$ARGS -fb /dev/fb1" ;;
+-          "boundary_devices_neon_board")
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                  DPI="100" ;;
+-          "hoeft&wessel_hw90350")
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                  DPI="100" ;;
+-          "hoeft&wessel_hw90250")
+-                  ARGS="$ARGS -screen 240x320@90"
+-                  DPI="100" ;;
+-          "mini2440")
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                  DPI="100" ;;
+-          "palm_treo_650")
+-                  DPI="181"
+-                  ARGS="$ARGS -screen 320x320 -hide-cursor" ;;
+-          "glofiish_m800")
+-                  DPI="285"
+-                  ARGS="$ARGS -screen ${SCREEN_SIZE} -hide-cursor vt1" ;;
+-          "freescale_mx21ads")
+-          # That's what /proc/cpuinfo shows as hardware on the chumby
+-                  DPI="121"
+-                  ARGS="$ARGS -screen 320x240 -hide-cursor" ;;
+-
+-            # this is to rotate X display properly, tested with display TX09D71VM1CCA
+-            ronetix*pm9261*  | ronetix*pm9263*)
+-                  ARGS="$ARGS -screen 240/54x320/81@90x16" ;;
+-          # This is a fallback for PCs
+-          "")
+-                  if [ -f $BINDIR/Xvesa ]; then
+-                          ARGS="$ARGS -mode 0x0114"
+-                  else
+-                      # It is a device we do not know about, in which case we force
+-                      # kdrive to use the current framebuffer geometry -- otherwise
+-                      # it will default to trying to achieve 1024x768
+-                      if [ "$XSERVER" != "Xorg" ] ; then
+-                          ARGS="$ARGS -screen ${SCREEN_SIZE}"
+-                      fi
+-                  fi
+-    esac
+-fi
+-
+-if [ "$XSERVER" != "Xorg" ] ; then
+-    ARGS="$ARGS $MOUSE"
+-fi
+ echo "tslib: $TSLIB_TSDEVICE"
+ echo "exec $XSERVER $ARGS -dpi $DPI $*"
+diff --git a/X11/xserver-common b/X11/xserver-common
+new file mode 100644
+index 0000000..29d152f
+--- /dev/null
++++ b/X11/xserver-common
+@@ -0,0 +1,191 @@
++#!/bin/sh
++#
++
++XSERVER=Xfbdev
++BINDIR=/usr/bin
++
++if [ -f $BINDIR/Xepson ]; then
++  XSERVER=Xepson
++fi
++if [ -f $BINDIR/Xorg ]; then
++  XSERVER=Xorg
++fi
++if [ -f $BINDIR/Xomap ]; then
++  XSERVER=Xomap
++fi
++if [ -f $BINDIR/Xw100 ]; then
++  XSERVER=Xw100
++fi
++if [ -f $BINDIR/Xvesa ]; then
++  XSERVER=Xvesa
++fi
++if [ -f $BINDIR/Ximageon ]; then
++  XSERVER=Ximageon
++fi
++if [ -f $BINDIR/Xglamo ]; then
++  XSERVER=Xglamo
++fi
++
++if [ -f /etc/profile ]; then
++  . /etc/profile
++fi
++
++. /etc/init.d/functions
++
++fallback_screen_arg() {
++    geom=`fbset | grep geometry`
++    w=`echo $geom | awk '{ print $2 }'`
++    h=`echo $geom | awk '{ print $3 }'`
++    b=`echo $geom | awk '{ print $6 }'`
++    echo -n "${w}x${h}x${b}"
++}
++
++SCREEN_SIZE=`fallback_screen_arg`
++export USER=root
++export XSERVER_DEFAULT_ORIENTATION=normal
++
++ARGS="-br -pn $INPUT_EXTRA_ARGS"
++DPI="100"
++MOUSE=""
++
++# use ucb 1x00 touchscreen if present
++if [ -z "$TSLIB_TSDEVICE" ] && [ -e /dev/touchscreen/ucb1x00 ]; then
++  MOUSE="-mouse /dev/touchscreen/ucb1x00"
++fi
++
++# kdrive 1.4 onwards needs -mouse args
++# Xorg doesn't support "-mouse" option, and uses /dev/input/mice automatically
++if [ -e "$TSLIB_TSDEVICE" ] ; then
++  MOUSE="-mouse tslib"
++else
++  if  [ -e /dev/input/mice ] && [ "$XSERVER" != "Xorg" ] ; then
++    MOUSE="-mouse mouse"
++  fi
++fi
++
++if [ -e /etc/default/xserver ] ; then
++    . /etc/default/xserver
++else
++    # start off server in conventional location.
++    case `machine_id` in
++          "aml_m8050")
++                  ARGS="$ARGS  -screen 320x240@270"
++                  DPI="100" ;;
++          "hp_ipaq_h3100" | "hp_ipaq_h3800")
++                  ARGS="$ARGS -rgba vrgb -screen 320x240@90"
++                  DPI="100" ;;
++          "hp_ipaq_h3600" | "hp_ipaq_h3700" | "hp_ipaq_h3900")
++                  ARGS="$ARGS -rgba vbgr -screen 320x240@270"
++                  DPI="100" ;;
++          "hp_ipaq_h5400" | "hp_ipaq_h2200")
++                  ARGS="$ARGS -rgba rgb"
++                  DPI="100" ;;
++          "hp_ipaq_hx4700")
++                  DPI="200" ;;
++          "ramses")
++                  # What is this "vt2" in aid of?
++                  ARGS="$ARGS -rgba vrgb -screen 320x240@90 vt2"
++                  DPI="100" ;;
++          *poodle)
++                  ARGS="$ARGS -rgba vrgb -screen 320x240@270"
++                  DPI="100" ;;
++          # both 'Sharp-Collie' and just 'Collie' have been reported
++          *collie)
++                  ARGS="$ARGS -rgba vrgb -screen 320x240@270"
++                  DPI="100" ;;
++          "sharp_shepherd" | "sharp_husky" | "sharp_corgi")
++                  ARGS="$ARGS -rgba rgb"
++                  DPI="200" ;;
++          "sharp_spitz" | "sharp_akita" | "sharp_borzoi")
++                  export XSERVER_DEFAULT_ORIENTATION="normal"
++                  ARGS="$ARGS -rgba rgb -screen 480x640"
++                  DPI="200" ;;
++          "simpad")
++                  ARGS="$ARGS -rgba rgb"
++                  DPI="100" ;;
++          "generic_omap1510/1610/1710")
++                  MOUSE="-mouse /dev/input/event0"
++                  DPI="220" ;;
++          "ti-osk")
++                  DPI="100" ;;
++          "cellon_c8000_board")
++                  ARGS="$ARGS -screen ${SCREEN_SIZE},10,1"
++                  DPI="100" ;;
++          "htc_magician")
++                  DPI="142" ;;
++          "htc_universal")
++                  ARGS="$ARGS -screen 480x640@270"
++                  DPI="100" ;;
++          "htc_tornado")
++                  ARGS="$ARGS -hide-cursor"
++                  DPI="100" ;;
++          "generic_omap1510/1610/1710")
++                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                  DPI="225" ;;
++          "nokia_n800" | "nokia_rx-44" | "nokia_n770")
++                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                  DPI="225" ;;
++          "gta01" )
++                  DPI="285"
++                  if [ "$XSERVER" != "Xorg" ] ; then
++                          ARGS="$ARGS -screen 480x640"
++                  fi
++                  ;;
++          "gta02")
++                  DPI="285"
++                  if [ "$XSERVER" != "Xorg" ] ; then
++                          ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                  fi
++                  ;;
++          "motorola_ezx_platform")
++                  ARGS="$ARGS -screen 240x320"
++                  DPI="170" ;;
++          "arm-integratorcp" | "arm-versatile_pb")
++                  ARGS="$ARGS -rgba vrgb" ;;
++          "compulab_cm-x270")
++                  modprobe mbxfb
++                  ARGS="$ARGS -fb /dev/fb1" ;;
++          "boundary_devices_neon_board")
++                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                  DPI="100" ;;
++          "hoeft&wessel_hw90350")
++                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                  DPI="100" ;;
++          "hoeft&wessel_hw90250")
++                  ARGS="$ARGS -screen 240x320@90"
++                  DPI="100" ;;
++          "mini2440")
++                  ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                  DPI="100" ;;
++          "palm_treo_650")
++                  DPI="181"
++                  ARGS="$ARGS -screen 320x320 -hide-cursor" ;;
++          "glofiish_m800")
++                  DPI="285"
++                  ARGS="$ARGS -screen ${SCREEN_SIZE} -hide-cursor vt1" ;;
++          "freescale_mx21ads")
++          # That's what /proc/cpuinfo shows as hardware on the chumby
++                  DPI="121"
++                  ARGS="$ARGS -screen 320x240 -hide-cursor" ;;
++
++            # this is to rotate X display properly, tested with display TX09D71VM1CCA
++            ronetix*pm9261*  | ronetix*pm9263*)
++                  ARGS="$ARGS -screen 240/54x320/81@90x16" ;;
++          # This is a fallback for PCs
++          "")
++                  if [ -f $BINDIR/Xvesa ]; then
++                          ARGS="$ARGS -mode 0x0114"
++                  else
++                      # It is a device we do not know about, in which case we force
++                      # kdrive to use the current framebuffer geometry -- otherwise
++                      # it will default to trying to achieve 1024x768
++                      if [ "$XSERVER" != "Xorg" ] ; then
++                          ARGS="$ARGS -screen ${SCREEN_SIZE}"
++                      fi
++                  fi
++    esac
++fi
++
++if [ "$XSERVER" != "Xorg" ] ; then
++    ARGS="$ARGS $MOUSE"
++fi
+-- 
+1.6.3.3
+
diff --git a/recipes/xserver-common/xserver-common-1.30/0025-Makefile-move-modmaps-install-xserver-common.patch b/recipes/xserver-common/xserver-common-1.30/0025-Makefile-move-modmaps-install-xserver-common.patch
new file mode 100644 (file)
index 0000000..1389867
--- /dev/null
@@ -0,0 +1,32 @@
+From 309ba3de37f0374c72c4569186e381a3272c24bc Mon Sep 17 00:00:00 2001
+From: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
+Date: Mon, 31 Aug 2009 12:47:05 +0200
+Subject: [PATCH 1/1] Makefile: move modmaps, install xserver-common
+
+---
+ Makefile |    6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+--- xserver-common-1.30.orig/Makefile
++++ xserver-common-1.30/Makefile
+@@ -15,16 +15,18 @@ endif
+ all:
+ install-program: 
+       for i in X11/Xsession.d X11/Xinit.d; do install -d $(DESTDIR)/etc/$$i; FILES=`echo $$i/* | sed "s:$$i/CVS::"`; install -m 755 $$FILES $(DESTDIR)/etc/$$i/; done
+       install -d $(DESTDIR)$(PREFIX)/bin
++      install -d $(DESTDIR)/etc/X11/xmodmap
+       install -m 755 run-calibrate.sh $(DESTDIR)$(PREFIX)/bin/run-calibrate.sh
+       install -m 644 X11/Xdefaults $(DESTDIR)/etc/X11/Xdefaults
+       install -m 755 X11/Xinit $(DESTDIR)/etc/X11/Xinit
+       install -m 755 X11/Xserver $(DESTDIR)/etc/X11/Xserver
++      install -m 644 X11/xserver-common $(DESTDIR)/etc/X11/xserver-common
+       install -m 755 X11/Xsession $(DESTDIR)/etc/X11/Xsession
+-      install -m 644 X11/xmodmap/*.xmodmap $(DESTDIR)/etc/X11/
+-      install -m 644 X11/xmodmap-* $(DESTDIR)/etc/X11/
++      install -m 644 X11/xmodmap/* $(DESTDIR)/etc/X11/xmodmap/
++      install -m 644 X11/xmodmap-* $(DESTDIR)/etc/X11/xmodmap/
+ clean:
+ include $(BUILD)/Makefile.dpkg_ipkg
diff --git a/recipes/xserver-common/xserver-common-1.30/0026-98keymap-fixup-fixed-path-to-xmodmap-file.patch b/recipes/xserver-common/xserver-common-1.30/0026-98keymap-fixup-fixed-path-to-xmodmap-file.patch
new file mode 100644 (file)
index 0000000..a667c5f
--- /dev/null
@@ -0,0 +1,25 @@
+From 884521a985831e9f6eb231bc8dd96613ca90c636 Mon Sep 17 00:00:00 2001
+From: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
+Date: Mon, 31 Aug 2009 12:53:29 +0200
+Subject: [PATCH 1/1] 98keymap-fixup: fixed path to xmodmap file
+
+---
+ X11/Xinit.d/98keymap-fixup |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/X11/Xinit.d/98keymap-fixup b/X11/Xinit.d/98keymap-fixup
+index fcc84d9..6895e24 100755
+--- a/X11/Xinit.d/98keymap-fixup
++++ b/X11/Xinit.d/98keymap-fixup
+@@ -3,7 +3,7 @@
+ # kdrive 1.4 and up have a heisenbug where it may take multiple tries to apply a modmap
+ iter=0
+ while [ $(xmodmap -pke | awk '{if ($2 == 36) { if ($4 == "Return") { print "good" } else {print "bad" }}}') = "bad" ] ; do
+-      xmodmap - </etc/X11/default.xmodmap
++      xmodmap - </etc/X11/xmodmap/default.xmodmap
+       let iter=iter+1
+ done
+-- 
+1.6.3.3
+
index edb3464..54a5018 100644 (file)
@@ -2,7 +2,7 @@ DESCRIPTION = "Common X11 scripts and support files"
 LICENSE = "GPL"
 SECTION = "x11"
 RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo"
-PR = "r3"
+PR = "r4"
 
 PACKAGE_ARCH = "all"
 DEFAULT_PREFERENCE = "-1"
@@ -18,6 +18,9 @@ file://0020-keymap-fixed-machine-names-again.patch;patch=1 \
 file://0021-xserver-introduced-MOUSE-variable-for-mouse-argument.patch;patch=1 \
 file://0022-xserver-fix-syntax-error.patch;patch=1 \
 file://0023-Xserver-provide-screen-argument-only-for-non-X.org-s.patch;patch=1 \
+file://0024-Xserver-move-nearly-whole-functionality-to-xserver-c.patch;patch=1 \
+file://0025-Makefile-move-modmaps-install-xserver-common.patch;patch=1 \
+file://0026-98keymap-fixup-fixed-path-to-xmodmap-file.patch;patch=1 \
 "
 
 do_install_append() {