summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuergen Beisert <j.beisert@pengutronix.de>2006-09-28 14:32:49 +0000
committerJuergen Beisert <j.beisert@pengutronix.de>2006-09-28 14:32:49 +0000
commit779f0b3e20575d03400d412b2a35b8a28afb3076 (patch)
tree5732a001d96d72326dbdbdaa595fd88b2788bae4
parent61065820bdbf5273f15264ab07ad425c10a4f1eb (diff)
downloadptxdist-779f0b3e20575d03400d412b2a35b8a28afb3076.tar.gz
ptxdist-779f0b3e20575d03400d412b2a35b8a28afb3076.tar.xz
* adding new packets for X keyboard setup
- xkbdata: key definitions for xkbcomp - xkbcomp: key definitions compiler for keyboard setup at X' runtime - setxkbdata: configure keyboard setup at X' runtime git-svn-id: https://svn.pengutronix.de/svn/ptxdist/trunks/ptxdist-trunk@6073 33e552b5-05e3-0310-8538-816dae2090ed
-rw-r--r--rules/xorg-app-setxkbmap.in16
-rw-r--r--rules/xorg-app-setxkbmap.make136
-rw-r--r--rules/xorg-app-xkbcomp.in12
-rw-r--r--rules/xorg-app-xkbcomp.make136
-rw-r--r--rules/xorg-app.in2
-rw-r--r--rules/xorg-data-xkbdata.in15
-rw-r--r--rules/xorg-data-xkbdata.make283
-rw-r--r--rules/xorg-data.in1
8 files changed, 601 insertions, 0 deletions
diff --git a/rules/xorg-app-setxkbmap.in b/rules/xorg-app-setxkbmap.in
new file mode 100644
index 000000000..819758098
--- /dev/null
+++ b/rules/xorg-app-setxkbmap.in
@@ -0,0 +1,16 @@
+config XORG_APP_SETXKBMAP
+ bool
+ depends on XORG_APP
+ depends on XORG_KEYBOARD_MAPPING_SUPPORT
+ prompt "xorg setxkbmap"
+ select XORG_APP_XKBCOMP
+ default n
+ help
+ This tool is needed to load new keyboard mappings into a running
+ X server. It can be run locally or remotly. If you are going to build
+ a tiny terminal X server only, there is *no* need for this tool on the
+ target. In this case only xkbcomp is required if you have trouble to
+ configure a special keyboard mapping.
+ For a full blown X server setxkbmap can be usefull, but is not
+ required for keyboard setup. It can be done by xorg.conf configuration
+ and xkbcomp only at X server's startup. \ No newline at end of file
diff --git a/rules/xorg-app-setxkbmap.make b/rules/xorg-app-setxkbmap.make
new file mode 100644
index 000000000..32fdf5a2e
--- /dev/null
+++ b/rules/xorg-app-setxkbmap.make
@@ -0,0 +1,136 @@
+# -*-makefile-*-
+# $Id: template 4565 2006-02-10 14:23:10Z mkl $
+#
+# Copyright (C) 2006 by Erwin Rol
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_XORG_APP_SETXKBMAP) += xorg-app-setxkbmap
+
+#
+# Paths and names
+#
+XORG_APP_SETXKBMAP_VERSION := 1.0.2
+XORG_APP_SETXKBMAP := setxkbmap-X11R7.1-$(XORG_APP_SETXKBMAP_VERSION)
+XORG_APP_SETXKBMAP_SUFFIX := tar.bz2
+XORG_APP_SETXKBMAP_URL := $(PTXCONF_SETUP_XORGMIRROR)/X11R7.1/src/app//$(XORG_APP_SETXKBMAP).$(XORG_APP_SETXKBMAP_SUFFIX)
+XORG_APP_SETXKBMAP_SOURCE := $(SRCDIR)/$(XORG_APP_SETXKBMAP).$(XORG_APP_SETXKBMAP_SUFFIX)
+XORG_APP_SETXKBMAP_DIR := $(BUILDDIR)/$(XORG_APP_SETXKBMAP)
+
+
+# ----------------------------------------------------------------------------
+# Get
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_get: $(STATEDIR)/xorg-app-setxkbmap.get
+
+$(STATEDIR)/xorg-app-setxkbmap.get: $(xorg-app-setxkbmap_get_deps_default)
+ @$(call targetinfo, $@)
+ @$(call touch, $@)
+
+$(XORG_APP_SETXKBMAP_SOURCE):
+ @$(call targetinfo, $@)
+ @$(call get, XORG_APP_SETXKBMAP)
+
+# ----------------------------------------------------------------------------
+# Extract
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_extract: $(STATEDIR)/xorg-app-setxkbmap.extract
+
+$(STATEDIR)/xorg-app-setxkbmap.extract: $(xorg-app-setxkbmap_extract_deps_default)
+ @$(call targetinfo, $@)
+ @$(call clean, $(XORG_APP_SETXKBMAP_DIR))
+ @$(call extract, XORG_APP_SETXKBMAP)
+ @$(call patchin, XORG_APP_SETXKBMAP)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_prepare: $(STATEDIR)/xorg-app-setxkbmap.prepare
+
+XORG_APP_SETXKBMAP_PATH := PATH=$(CROSS_PATH)
+XORG_APP_SETXKBMAP_ENV := $(CROSS_ENV)
+
+#
+# autoconf
+#
+
+XORG_APP_SETXKBMAP_AUTOCONF := $(CROSS_AUTOCONF_USR)
+XORG_APP_SETXKBMAP_AUTOCONF := --datadir=$(PTXCONF_XORG_DEFAULT_DATA_DIR)
+
+$(STATEDIR)/xorg-app-setxkbmap.prepare: $(xorg-app-setxkbmap_prepare_deps_default)
+ @$(call targetinfo, $@)
+ @$(call clean, $(XORG_APP_SETXKBMAP_DIR)/config.cache)
+ @echo "selecting the correct search path in X-Server and setxkbmap is still missing"
+ cd $(XORG_APP_SETXKBMAP_DIR) && \
+ $(XORG_APP_SETXKBMAP_PATH) $(XORG_APP_SETXKBMAP_ENV) \
+ ./configure $(XORG_APP_SETXKBMAP_AUTOCONF)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_compile: $(STATEDIR)/xorg-app-setxkbmap.compile
+
+$(STATEDIR)/xorg-app-setxkbmap.compile: $(xorg-app-setxkbmap_compile_deps_default)
+ @$(call targetinfo, $@)
+ cd $(XORG_APP_SETXKBMAP_DIR) && $(XORG_APP_SETXKBMAP_PATH) make
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_install: $(STATEDIR)/xorg-app-setxkbmap.install
+
+$(STATEDIR)/xorg-app-setxkbmap.install: $(xorg-app-setxkbmap_install_deps_default)
+ @$(call targetinfo, $@)
+ @$(call install, XORG_APP_SETXKBMAP)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_targetinstall: $(STATEDIR)/xorg-app-setxkbmap.targetinstall
+
+$(STATEDIR)/xorg-app-setxkbmap.targetinstall: $(xorg-app-setxkbmap_targetinstall_deps_default)
+ @$(call targetinfo, $@)
+
+ @$(call install_init, xorg-app-setxkbmap)
+ @$(call install_fixup, xorg-app-setxkbmap,PACKAGE,xorg-app-setxkbmap)
+ @$(call install_fixup, xorg-app-setxkbmap,PRIORITY,optional)
+ @$(call install_fixup, xorg-app-setxkbmap,VERSION,$(XORG_APP_SETXKBMAP_VERSION))
+ @$(call install_fixup, xorg-app-setxkbmap,SECTION,base)
+ @$(call install_fixup, xorg-app-setxkbmap,AUTHOR,"Juergen Beisert")
+ @$(call install_fixup, xorg-app-setxkbmap,DEPENDS,)
+ @$(call install_fixup, xorg-app-setxkbmap,DESCRIPTION,missing)
+
+ @$(call install_copy, xorg-app-setxkbmap, 0, 0, 0755, \
+ $(XORG_APP_SETXKBMAP_DIR)/setxkbmap, /usr/bin/setxkbmap)
+
+ @$(call install_finish, xorg-app-setxkbmap)
+
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+xorg-app-setxkbmap_clean:
+ rm -rf $(STATEDIR)/xorg-app-setxkbmap.*
+ rm -rf $(IMAGEDIR)/xorg-app-setxkbmap_*
+ rm -rf $(XORG_APP_SETXKBMAP_DIR)
+
+# vim: syntax=make
diff --git a/rules/xorg-app-xkbcomp.in b/rules/xorg-app-xkbcomp.in
new file mode 100644
index 000000000..2a5a422ae
--- /dev/null
+++ b/rules/xorg-app-xkbcomp.in
@@ -0,0 +1,12 @@
+config XORG_APP_XKBCOMP
+ bool
+ depends on XORG_APP
+ depends on XORG_KEYBOARD_MAPPING_SUPPORT
+ prompt "xorg xkbcomp"
+ select XORG_DATA_XKBDATA
+ default n
+ help
+ Compiles XKB keyboard descriptions. This tool is needed
+ to load new keyboard mappings into a running X server.
+ If you have trouble to configure a special keyboard mapping, enable
+ this tool for your target. \ No newline at end of file
diff --git a/rules/xorg-app-xkbcomp.make b/rules/xorg-app-xkbcomp.make
new file mode 100644
index 000000000..2104d8e85
--- /dev/null
+++ b/rules/xorg-app-xkbcomp.make
@@ -0,0 +1,136 @@
+# -*-makefile-*-
+# $Id: template 4565 2006-02-10 14:23:10Z mkl $
+#
+# Copyright (C) 2006 by Erwin Rol
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_XORG_APP_XKBCOMP) += xorg-app-xkbcomp
+
+#
+# Paths and names
+#
+XORG_APP_XKBCOMP_VERSION := 1.0.2
+XORG_APP_XKBCOMP := xkbcomp-X11R7.1-$(XORG_APP_XKBCOMP_VERSION)
+XORG_APP_XKBCOMP_SUFFIX := tar.bz2
+XORG_APP_XKBCOMP_URL := $(PTXCONF_SETUP_XORGMIRROR)/X11R7.1/src/app//$(XORG_APP_XKBCOMP).$(XORG_APP_XKBCOMP_SUFFIX)
+XORG_APP_XKBCOMP_SOURCE := $(SRCDIR)/$(XORG_APP_XKBCOMP).$(XORG_APP_XKBCOMP_SUFFIX)
+XORG_APP_XKBCOMP_DIR := $(BUILDDIR)/$(XORG_APP_XKBCOMP)
+
+
+# ----------------------------------------------------------------------------
+# Get
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_get: $(STATEDIR)/xorg-app-xkbcomp.get
+
+$(STATEDIR)/xorg-app-xkbcomp.get: $(xorg-app-xkbcomp_get_deps_default)
+ @$(call targetinfo, $@)
+ @$(call touch, $@)
+
+$(XORG_APP_XKBCOMP_SOURCE):
+ @$(call targetinfo, $@)
+ @$(call get, XORG_APP_XKBCOMP)
+
+# ----------------------------------------------------------------------------
+# Extract
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_extract: $(STATEDIR)/xorg-app-xkbcomp.extract
+
+$(STATEDIR)/xorg-app-xkbcomp.extract: $(xorg-app-xkbcomp_extract_deps_default)
+ @$(call targetinfo, $@)
+ @$(call clean, $(XORG_APP_XKBCOMP_DIR))
+ @$(call extract, XORG_APP_XKBCOMP)
+ @$(call patchin, XORG_APP_XKBCOMP)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_prepare: $(STATEDIR)/xorg-app-xkbcomp.prepare
+
+XORG_APP_XKBCOMP_PATH := PATH=$(CROSS_PATH)
+XORG_APP_XKBCOMP_ENV := $(CROSS_ENV)
+
+#
+# autoconf
+#
+
+XORG_APP_XKBCOMP_AUTOCONF := $(CROSS_AUTOCONF_USR)
+XORG_APP_XKBCOMP_AUTOCONF := --datadir=$(PTXCONF_XORG_DEFAULT_DATA_DIR)
+
+$(STATEDIR)/xorg-app-xkbcomp.prepare: $(xorg-app-xkbcomp_prepare_deps_default)
+ @$(call targetinfo, $@)
+ @$(call clean, $(XORG_APP_XKBCOMP_DIR)/config.cache)
+ @echo "selecting the correct search path in X-Server and xkbcomp is still missing"
+ cd $(XORG_APP_XKBCOMP_DIR) && \
+ $(XORG_APP_XKBCOMP_PATH) $(XORG_APP_XKBCOMP_ENV) \
+ ./configure $(XORG_APP_XKBCOMP_AUTOCONF)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_compile: $(STATEDIR)/xorg-app-xkbcomp.compile
+
+$(STATEDIR)/xorg-app-xkbcomp.compile: $(xorg-app-xkbcomp_compile_deps_default)
+ @$(call targetinfo, $@)
+ cd $(XORG_APP_XKBCOMP_DIR) && $(XORG_APP_XKBCOMP_PATH) make
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_install: $(STATEDIR)/xorg-app-xkbcomp.install
+
+$(STATEDIR)/xorg-app-xkbcomp.install: $(xorg-app-xkbcomp_install_deps_default)
+ @$(call targetinfo, $@)
+ @$(call install, XORG_APP_XKBCOMP)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_targetinstall: $(STATEDIR)/xorg-app-xkbcomp.targetinstall
+
+$(STATEDIR)/xorg-app-xkbcomp.targetinstall: $(xorg-app-xkbcomp_targetinstall_deps_default)
+ @$(call targetinfo, $@)
+
+ @$(call install_init, xorg-app-xkbcomp)
+ @$(call install_fixup, xorg-app-xkbcomp,PACKAGE,xorg-app-xkbcomp)
+ @$(call install_fixup, xorg-app-xkbcomp,PRIORITY,optional)
+ @$(call install_fixup, xorg-app-xkbcomp,VERSION,$(XORG_APP_XKBCOMP_VERSION))
+ @$(call install_fixup, xorg-app-xkbcomp,SECTION,base)
+ @$(call install_fixup, xorg-app-xkbcomp,AUTHOR,"Juergen Beisert")
+ @$(call install_fixup, xorg-app-xkbcomp,DEPENDS,)
+ @$(call install_fixup, xorg-app-xkbcomp,DESCRIPTION,missing)
+
+ @$(call install_copy, xorg-app-xkbcomp, 0, 0, 0755, \
+ $(XORG_APP_XKBCOMP_DIR)/xkbcomp, /usr/bin/xkbcomp)
+
+ @$(call install_finish, xorg-app-xkbcomp)
+
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+xorg-app-xkbcomp_clean:
+ rm -rf $(STATEDIR)/xorg-app-xkbcomp.*
+ rm -rf $(IMAGEDIR)/xorg-app-xkbcomp_*
+ rm -rf $(XORG_APP_XKBCOMP_DIR)
+
+# vim: syntax=make
diff --git a/rules/xorg-app.in b/rules/xorg-app.in
index d3ac82ae9..2704a67df 100644
--- a/rules/xorg-app.in
+++ b/rules/xorg-app.in
@@ -11,3 +11,5 @@ source "rules/xorg-app-xinit.in"
source "rules/xorg-app-xsetroot.in"
source "rules/xorg-app-rgb.in"
source "rules/xorg-app-xvinfo.in"
+source "rules/xorg-app-xkbcomp.in"
+source "rules/xorg-app-setxkbmap.in"
diff --git a/rules/xorg-data-xkbdata.in b/rules/xorg-data-xkbdata.in
new file mode 100644
index 000000000..946b3839e
--- /dev/null
+++ b/rules/xorg-data-xkbdata.in
@@ -0,0 +1,15 @@
+config XORG_DATA_XKBDATA
+ bool
+ depends on XORG_APP
+ depends on XORG_LIB_X11
+ prompt "xkbdata"
+ depends on XORG_KEYBOARD_MAPPING_SUPPORT
+ default n
+ help
+ These files are required to setup various keyboard mappings.
+ The tool xkbcomp on the target needs these files, to configure
+ the keyboard.
+ Note: This package needs xkbcomp also on your host to build some of
+ these files!
+ Use --datadir= to configure the target directory. Everything gets
+ installed into $(datadir)/X11/xkb
diff --git a/rules/xorg-data-xkbdata.make b/rules/xorg-data-xkbdata.make
new file mode 100644
index 000000000..121ca0804
--- /dev/null
+++ b/rules/xorg-data-xkbdata.make
@@ -0,0 +1,283 @@
+# -*-makefile-*-
+# $Id: template 4761 2006-02-24 17:35:57Z sha $
+#
+# Copyright (C) 2006 by Sascha Hauer
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_XORG_DATA_XKBDATA) += xorg-data-xkbdata
+
+#
+# Paths and names
+#
+# Currently we are falling back to X11R7.0, due to the fact, X11R7.1 does
+# not have this file
+#
+XORG_DATA_XKBDATA_VERSION := 1.0.1
+XORG_DATA_XKBDATA := xkbdata-X11R7.0-$(XORG_DATA_XKBDATA_VERSION)
+XORG_DATA_XKBDATA_SUFFIX := tar.bz2
+XORG_DATA_XKBDATA_URL := $(PTXCONF_SETUP_XORGMIRROR)/X11R7.0/src/data/$(XORG_DATA_XKBDATA).$(XORG_DATA_XKBDATA_SUFFIX)
+XORG_DATA_XKBDATA_SOURCE := $(SRCDIR)/$(XORG_DATA_XKBDATA).$(XORG_DATA_XKBDATA_SUFFIX)
+XORG_DATA_XKBDATA_DIR := $(BUILDDIR)/$(XORG_DATA_XKBDATA)
+
+
+# ----------------------------------------------------------------------------
+# Get
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_get: $(STATEDIR)/xorg-data-xkbdata.get
+
+$(STATEDIR)/xorg-data-xkbdata.get: $(xorg-data-xkbdata_get_deps_default)
+ @$(call targetinfo, $@)
+ @$(call touch, $@)
+
+$(XORG_DATA_XKBDATA_SOURCE):
+ @$(call targetinfo, $@)
+ @$(call get, XORG_DATA_XKBDATA)
+
+# ----------------------------------------------------------------------------
+# Extract
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_extract: $(STATEDIR)/xorg-data-xkbdata.extract
+
+$(STATEDIR)/xorg-data-xkbdata.extract: $(xorg-data-xkbdata_extract_deps_default)
+ @$(call targetinfo, $@)
+ @$(call clean, $(XORG_DATA_XKBDATA_DIR))
+ @$(call extract, XORG_DATA_XKBDATA)
+ @$(call patchin, XORG_DATA_XKBDATA)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_prepare: $(STATEDIR)/xorg-data-xkbdata.prepare
+
+XORG_DATA_XKBDATA_PATH := PATH=$(CROSS_PATH)
+XORG_DATA_XKBDATA_ENV := $(CROSS_ENV)
+
+#
+# define where to install all data files
+#
+XORG_DATA_XKBDATA_AUTOCONF := --datadir=$(PTXCONF_XORG_DEFAULT_DATA_DIR)
+
+#
+# autoconf
+#
+XORG_DATA_XKBDATA_AUTOCONF := $(CROSS_AUTOCONF_USR)
+
+$(STATEDIR)/xorg-data-xkbdata.prepare: $(xorg-data-xkbdata_prepare_deps_default)
+ @$(call targetinfo, $@)
+ @$(call clean, $(XORG_DATA_XKBDATA_DIR)/config.cache)
+ cd $(XORG_DATA_XKBDATA_DIR) && \
+ $(XORG_DATA_XKBDATA_PATH) $(XORG_DATA_XKBDATA_ENV) \
+ ./configure $(XORG_DATA_XKBDATA_AUTOCONF)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Compile
+# Note: This step needs an installed xkbcomp on the host
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_compile: $(STATEDIR)/xorg-data-xkbdata.compile
+
+$(STATEDIR)/xorg-data-xkbdata.compile: $(xorg-data-xkbdata_compile_deps_default)
+ @$(call targetinfo, $@)
+ cd $(XORG_DATA_XKBDATA_DIR) && $(XORG_DATA_XKBDATA_PATH) make
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_install: $(STATEDIR)/xorg-data-xkbdata.install
+
+$(STATEDIR)/xorg-data-xkbdata.install: $(xorg-data-xkbdata_install_deps_default)
+ @$(call targetinfo, $@)
+ @$(call install, XORG_DATA_XKBDATA)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_targetinstall: $(STATEDIR)/xorg-data-xkbdata.targetinstall
+
+$(STATEDIR)/xorg-data-xkbdata.targetinstall: $(xorg-data-xkbdata_targetinstall_deps_default)
+ @$(call targetinfo, $@)
+
+ @$(call install_init, xorg-data-xkbdata)
+ @$(call install_fixup, xorg-data-xkbdata,PACKAGE,xorg-data-xkbdata)
+ @$(call install_fixup, xorg-data-xkbdata,PRIORITY,optional)
+ @$(call install_fixup, xorg-data-xkbdata,VERSION,$(XORG_APP_XKBCOMP_VERSION))
+ @$(call install_fixup, xorg-data-xkbdata,SECTION,base)
+ @$(call install_fixup, xorg-data-xkbdata,AUTHOR,"Sascha Hauer")
+ @$(call install_fixup, xorg-data-xkbdata,DEPENDS,)
+ @$(call install_fixup, xorg-data-xkbdata,DESCRIPTION,missing)
+#
+# create all the required directories
+#
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0755, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11)
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0755, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb)
+ @for dir in compat compiled geometry keycodes keymap rules semantics \
+ symbols torture types; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0755, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/$$dir); \
+ done
+#
+# Install the required files for "compat"
+#
+ @for file in accessx complete iso9995 keypad lednum misc norepeat pc98 \
+ xfree86 basic default japan ledcaps ledscroll mousekeys pc \
+ xtest; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/compat/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/compat/$$file,n); \
+ done
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/compat/compat.dir, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/compat.dir,n)
+#
+# Install the required files for "geometry"
+#
+ @for file in amiga chicony fujitsu kinesis microsoft northgate sony \
+ winbook ataritt dell everex hp keytronic macintosh nec pc sun; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/geometry/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/geometry/$$file,n); \
+ done
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/geometry/geometry.dir, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/geometry.dir,n)
+#
+# Install the required files for "keycodes"
+#
+ @for file in aliases ataritt fujitsu ibm powerpcps2 sun xfree98 amiga \
+ hp macintosh sony xfree86; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/keycodes/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/keycodes/$$file,n); \
+ done
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/keycodes/keycodes.dir, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/keycodes.dir,n)
+#
+# Install the required files for "keymap"
+#
+ @for file in amiga ataritt macintosh sony xfree86 xfree98; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/keymap/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/keymap/$$file,n); \
+ done
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/keymap/keymap.dir, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/keymap.dir,n)
+#
+# Install the required files for "rules"
+#
+ @for file in sgi.lst sun.lst xfree98.lst xml2lst.pl xorg-it.lst \
+ xorg.xml sgi sun xfree98 xkb.dtd xorg xorg.lst; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/rules/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/rules/$$file,n); \
+ done
+#
+# Install the required files for "semantics"
+#
+ @for file in basic complete default xtest; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/semantics/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/semantics/$$file,n); \
+ done
+#
+# Install the required files for "symbols"
+# FIXME: Some subdirs are omitted! Add them, if really required
+#
+ @for file in al ca_enhanced ee group ir lt_a no sapmi syr us_group3 \
+ altwin capslock el guj is lt_p ogham se syr_phonetic us_intl \
+ am compose en_US gur iso9995-3 lt_std ori se_FI tel uz apple \
+ ctrl es it lv se_NO th vn ar cz eurosign hr iu pc104 se_SE \
+ th_pat az cz_qwerty fi hr_US jp mk pl th_tis yu be czsk fo \
+ hu kan ml pl2 si tj ben de fr hu_qwerty keypad mm pt sk tml bg \
+ de_CH fr_CH hu_US la mn ralt sk_qwerty tr br dev ie level3 mt \
+ tr_f bs gb il lo mt_us ro sr ua by dk ge_la il_phonetic lock \
+ ro2 srvr_ctrl us ca dvorak ge_ru inet lt nl ru us_group2; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/symbols/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/symbols/$$file,n); \
+ done
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/symbols/symbols.dir, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/symbols.dir,n)
+#
+# Install the required files for "symbols/pc"
+#
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0755, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/symbols/pc)
+ @for file in al az be bt ch dk fi gb hr il is kg latin lv mm nl pk ro \
+ si sy tr uz am ba bg by cz ee fo ge hu in it la lk mao mn no pl \
+ ru sk th ua vn ara bd br ca de es fr gr ie ir jp latam lt mkd \
+ mt pc pt se srp tj us; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/symbols/pc/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/symbols/pc/$$file,n); \
+ done
+#
+# Install the required files for "torture"
+#
+ @for file in indicator indicator2 mod_compat mod_compat2 mod_compat4 \
+ sym_interp1 sym_interp3 types indicator1 indicator3 mod_compat1 \
+ mod_compat3 sym_interp sym_interp2 sym_interp4; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/torture/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/torture/$$file,n); \
+ done
+#
+# Install the required files for "types"
+#
+ @for file in basic cancel caps complete default extra iso9995 mousekeys \
+ numpad pc; do \
+ $(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/types/$$file, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/types/$$file,n); \
+ done
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_DATA_XKBDATA_DIR)/types/types.dir, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/xkb/types.dir,n)
+#
+# The files above are used by xkbcomp at runtime. It is called whenever you
+# configure your keyboard in the xorg.conf. So to make keyboard configuring work
+# also xkbcomp is required on the target.
+# To make xkbcomp happy with these files an additional symbol definition file
+# is required (don't ask my why it is located in a different X package!):
+# -> XKeysymDB from the X11 lib package
+#
+ @$(call install_copy, xorg-data-xkbdata, 0, 0, 0644, \
+ $(XORG_LIB_X11_DIR)/src/XKeysymDB, \
+ $(PTXCONF_XORG_DEFAULT_DATA_DIR)/X11/XKeysymDB,n)
+#
+# Ready for now
+#
+ @$(call install_finish, xorg-data-xkbdata)
+ @$(call touch, $@)
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+xorg-data-xkbdata_clean:
+ rm -rf $(STATEDIR)/xorg-data-xkbdata.*
+ rm -rf $(IMAGEDIR)/xorg-data-xkbdata_*
+ rm -rf $(XORG_DATA_XKBDATA_DIR)
+
+# vim: syntax=make
diff --git a/rules/xorg-data.in b/rules/xorg-data.in
index 0d59ba16a..0e258b4bc 100644
--- a/rules/xorg-data.in
+++ b/rules/xorg-data.in
@@ -3,5 +3,6 @@
menu "xorg data "
source "rules/xorg-data-xbitmaps.in"
+source "rules/xorg-data-xkbdata.in"
endmenu