Hello familiar-dev,
Oh, this is more involved. So, there's a need to have
device-specific xmodmap config to get app keys working on a device. I
submitted this patch to xserver-common, but there's no release with it
yet.
So, I need following settings in h4000.conf and the machinery behind
it:
CVSDATE_xserver-common = "20060706"
PREFERRED_VERSION_xserver-common = "1.10+cvs${CVSDATE_xserver-common}"
I don't even try to argue for commiting two lines above ;-), but
please accept metadata which allows strugglers to get what they want.
Thanks,
--
Paul mailto:[EMAIL PROTECTED]From db7e4f3f31c7f1e0958ba060a864b21adec66d0c Mon Sep 17 00:00:00 2001
From: Paul Sokolovsky <[EMAIL PROTECTED]>
Date: Tue, 11 Jul 2006 00:38:22 +0000
Subject: [PATCH] xserver-common: Add xserver-common_cvs.
Add ability to build xserver-common by CVSDATE. Update files/100dpi.patch to
be from 1.8, assuming it will be used for cvs version. If 1.1 & 1.2 still need
to be built, they should define xserver-common-1.1, etc. and put old version of
patch there. Not doing this because likely they can be just removed by now.
Also, add files/build/ - makefiles in it are needed for build from CVS.
---
.../packages/xserver-common/files/100dpi.patch | 24 +----
.../xserver-common/files/build/Makefile.dpkg_ipkg | 114
+++++++++++++++++++++++
.../files/build/Makefile.translation | 107
++++++++++++++++++++++
.../packages/xserver-common/xserver-common_cvs.bb | 21 ++++
4 files changed, 248 insertions(+), 18 deletions(-)
diff --git a/org.handhelds.familiar/packages/xserver-common/files/100dpi.patch
b/org.handhelds.familiar/packages/xserver-common/files/100dpi.patch
index d7492ab..f9b481d 100644
--- a/org.handhelds.familiar/packages/xserver-common/files/100dpi.patch
+++ b/org.handhelds.familiar/packages/xserver-common/files/100dpi.patch
@@ -1,13 +1,6 @@
---- /tmp/Xserver 2006-01-15 15:13:24.000000000 +0100
-+++ xserver-common-1.2/X11/Xserver 2006-01-15 15:14:00.000000000 +0100
-@@ -44,12 +44,12 @@
- case `module_id` in
- "HP iPAQ H3100" | "HP iPAQ H3800")
- ARGS="$ARGS -dpi 100 -screen [EMAIL PROTECTED] -rgba vrgb" ;;
-- "HP iPAQ H3600" | "HP -dpi 100 iPAQ H3700" | "HP iPAQ H3900")
-- ARGS="$ARGS -screen [EMAIL PROTECTED] -rgba vbgr" ;;
-+ "HP iPAQ H3600" | "HP iPAQ H3700" | "HP iPAQ H3900")
-+ ARGS="$ARGS -dpi 100 -screen [EMAIL PROTECTED] -rgba vbgr" ;;
+--- xserver-common-1.7/X11/Xserver.orig 2006-02-16 12:11:22.316078680
-0800
++++ xserver-common-1.7/X11/Xserver 2006-02-16 12:11:53.681310440 -0800
+@@ -49,7 +49,7 @@ case `module_id` in
"HP iPAQ H5400" | "HP iPAQ H2200")
ARGS="$ARGS -dpi 100 -rgba rgb" ;;
"HP iPAQ HX4700")
@@ -15,9 +8,9 @@
+ ARGS="$ARGS -dpi 100" ;;
"Ramses")
# What is this "vt2" in aid of?
- ARGS="$ARGS -dpi 100 -screen [EMAIL PROTECTED] -rgba vrgb vt2"
;;
-@@ -63,13 +63,13 @@
- killall -9 apmd
+ ARGS="$ARGS -dpi 100 -rgba vrgb -screen [EMAIL PROTECTED] vt2"
;;
+@@ -60,9 +60,9 @@ case `module_id` in
+ ARGS="$ARGS -dpi 100 -rgba vrgb -screen [EMAIL PROTECTED]"
;;
"SHARP Shepherd" | "SHARP Husky" | "SHARP Corgi")
- ARGS="$ARGS -dpi 200 -rgba rgb" ;;
@@ -28,8 +21,3 @@
"Simpad")
ARGS="$ARGS -dpi 100 -rgba rgb" ;;
"Generic OMAP1510/1610/1710")
-- ARGS="$ARGS -dpi 220 -mouse /dev/input/event0" ;;
-+ ARGS="$ARGS -dpi 100 -mouse /dev/input/event0" ;;
- esac
-
- exec $XSERVER $ARGS $*
diff --git
a/org.handhelds.familiar/packages/xserver-common/files/build/Makefile.dpkg_ipkg
b/org.handhelds.familiar/packages/xserver-common/files/build/Makefile.dpkg_ipkg
new file mode 100644
index 0000000..978b08d
--- /dev/null
+++
b/org.handhelds.familiar/packages/xserver-common/files/build/Makefile.dpkg_ipkg
@@ -0,0 +1,114 @@
+## Please read the README in this directory to see how to use this
+## Makefile snippet
+
+# Let's use whatever clean target the specific app provides
+
+CONTROL = `if test -e familiar/control1; then echo control1; else echo
control; fi`
+
+# URL to source tarball
+SOURCE =
ftp://gpe.handhelds.org/projects/gpe/source/$(PACKAGE)-$(VERSION).tar.gz
+
+# can change this to e.g. /var/tmp/deb
+DEB_PATH = ../deb
+
+ifeq ($(CVSBUILD),yes)
+LIBGPEWIDGET_PC = libgpewidget-uninstalled
+PC_EXTRA=PKG_CONFIG_PATH=../../base/libgpewidget
+else
+LIBGPEWIDGET_PC = libgpewidget
+endif
+
+ifeq ($(IN_LIBGPEWIDGET),)
+GPECFLAGS = $(shell $(PC_EXTRA) pkg-config --cflags $(LIBGPEWIDGET_PC))
+GPELIBS = $(shell $(PC_EXTRA) pkg-config --libs $(LIBGPEWIDGET_PC))
+endif
+
+GTKCFLAGS = $(shell pkg-config --cflags gtk+-2.0)
+GTKLIBS = $(shell pkg-config --libs gtk+-2.0)
+
+STANDARD_CPPFLAGS = -D_GNU_SOURCE -DPACKAGE=\"$(PACKAGE)\"
-DPREFIX=\"$(PREFIX)\" -DPACKAGE_LOCALE_DIR=\"$(PREFIX)/share/locale\"
+STANDARD_CFLAGS = -MD -Wall
+
+ifeq ($(DEBUG),yes)
+CFLAGS += -O2 -g
+LDFLAGS = -g
+else
+CFLAGS += -Os -fomit-frame-pointer
+endif
+
+dist: check-source clean dist-prep
+ rm -rf ../$(PACKAGE)-$(VERSION)
+ mkdir ../$(PACKAGE)-$(VERSION)
+ ( tar cf - --exclude "*/CVS" --exclude CVS --exclude "*~" --exclude
"#*#" --exclude "debian" --exclude ".*" --exclude "*.ipk" --exclude "*.ipk.*"
--exclude "*.mo" --exclude "*.batch" --exclude "translation-ipkgs.txt" * ) |
(cd ../$(PACKAGE)-$(VERSION); tar xf -)
+ ( if [ -f linguas ]; then LINGUAS=`cat linguas`;
PATCH_LINGUAS="s:^LINGUAS =.*:LINGUAS = $${LINGUAS}:"; fi; cd
../$(PACKAGE)-$(VERSION) && mkdir build && cp $(BUILD)/Makefile.dpkg_ipkg
$(BUILD)/Makefile.translation build/ && sed "s:^CVSBUILD =.*:CVSBUILD =
no:;s:^DEBUG =.*:DEBUG =
no:;s:Makefile.translation-auto-linguas:Makefile.translation:;$${PATCH_LINGUAS}"
< Makefile > Makefile.new && mv Makefile.new Makefile )
+ ( cd .. ; tar cf - $(PACKAGE)-$(VERSION) | gzip -9
>$(PACKAGE)-$(VERSION).tar.gz )
+ rm -rf ../$(PACKAGE)-$(VERSION)
+ $(MAKE) printinfo
+
+dist-upload: dist
+ scp ../$(PACKAGE)-$(VERSION).tar.gz
$(USER)@handhelds.org:/home/ftp/projects/gpe/source/
+
+dist-prep:
+ipkg-prep:
+install-mo:
+# empty, can be filled in Makefile.translation
+
+install: install-program install-mo
+
+clean-dist:
+ rm -rf familiar/dist familiar/dist.list
+
+clean: clean-dist
+
+check-source:
+ @if [ -f familiar/$(CONTROL) ] && ! grep -q '^Source:'
familiar/$(CONTROL); then echo -e "\nNo Source: field in control file.
Aborting.\n"; exit 1; fi
+
+ipkg: check-source ipkg-prep clean
+ rm -rf familiar/dist
+ mkdir -p familiar/dist/CONTROL
+ sed 's:VERSION:$(VERSION):;s$$SOURCE$$$(SOURCE)$$' <
familiar/$(CONTROL) > familiar/dist/CONTROL/control
+ if test -e familiar/conffiles; then install -m 644 familiar/conffiles
familiar/dist/CONTROL; fi
+ if test -e familiar/preinst; then install familiar/preinst
familiar/dist/CONTROL; fi
+ if test -e familiar/postinst; then install familiar/postinst
familiar/dist/CONTROL; fi
+ if test -e familiar/prerm; then install familiar/prerm
familiar/dist/CONTROL; fi
+ if test -e familiar/postrm; then install familiar/postrm
familiar/dist/CONTROL; fi
+ $(MAKE) DESTDIR=`pwd`/familiar/dist PREFIX=/usr prefix=/usr DEBUG=no
install-program
+ rm -rf familiar/dist.list
+ ipkg-build -o 0 -g 0 familiar/dist | sed 's/^Packaged .*into //; t 1;
d; : 1; s:.*/::' >> familiar/dist.list
+ if [ "x$(LINGUAS)" != "x" ]; then make translation-ipkg; tr ' ' '\n' <
translation-ipkgs.txt >> familiar/dist.list; fi
+ md5sum `cat familiar/dist.list` > $(PACKAGE)_$(VERSION).batch
+ rm -rf familiar/dist familiar/dist.list
+ $(MAKE) printinfo
+
+dpkg: dist
+ mkdir -p $(DEB_PATH)
+ ( olddir=`pwd`; cd $(DEB_PATH); rm -rf $(PACKAGE)-$(VERSION); ln -s
$$olddir/../$(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)_$(VERSION).orig.tar.gz ;
tar xzf $(PACKAGE)_$(VERSION).orig.tar.gz )
+ mkdir -p $(DEB_PATH)/$(PACKAGE)-$(VERSION)/debian
+ for i in debian/*; do if test -f $$i; then cp $$i
$(DEB_PATH)/$(PACKAGE)-$(VERSION)/debian/; fi; done
+
+CVSTAG := $(shell echo $(PACKAGE)-$(VERSION) | tr [a-z.] [A-Z_])
+printinfo:
+ @printf
'-------------------------------------------------------------------------------\n'
+ @printf "If this becomes a package release, please add a CVS tag.\n"
+ @printf "You can use 'make tag' for that, it will execute\n"
+ @printf " cvs tag %s\n" $(CVSTAG)
+ @printf "Please upload a tarball (created with 'make dist') to\n"
+ @printf " ftp://ftp.handhelds.org/pub/projects/gpe/\n"
+ @printf " (handhelds.org:~ftp/pub/projects/gpe/source)\n"
+ @printf "You can use 'make dist-upload' to do that.\n"
+ @printf "You are currently known as USER %s.\n" $(USER)
+ @printf
'-------------------------------------------------------------------------------\n'
+
+tag: check-source
+ cvs tag $(CVSTAG)
+
+retag: check-source
+ cvs tag -F $(CVSTAG)
+
+source: tag dist-upload
+
+%.pc: %.pc.in
+ sed 's:PREFIX:$(PREFIX):;s:BUILDDIR:$(shell
pwd):;s:VERSION:$(VERSION):' < $< > $@
+
+.c.o:;
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(PACKAGE_CFLAGS) $(PACKAGE_CPPFLAGS) -c $<
-o $@
diff --git
a/org.handhelds.familiar/packages/xserver-common/files/build/Makefile.translation
b/org.handhelds.familiar/packages/xserver-common/files/build/Makefile.translation
new file mode 100644
index 0000000..1ca7d64
--- /dev/null
+++
b/org.handhelds.familiar/packages/xserver-common/files/build/Makefile.translation
@@ -0,0 +1,107 @@
+.SUFFIXES: .mo .po .pot .po8
+
+CONTROL = `if test -e familiar/control1; then echo control1; else echo
control; fi`
+
+# use ipkg-build or ipkg-deb-build
+IPKG_BUILD := ipkg-build
+
+TRANSLATION_SITE := http://www.iro.umontreal.ca/~gnutra/maint
+
+ifeq ($(DIR_PO),)
+DIR_PO := po
+endif
+
+ifeq ($(BINPACKAGE),)
+BINPACKAGE := $(PACKAGE)
+endif
+
+mo-files = $(patsubst %,$(DIR_PO)/%.mo,$(LINGUAS))
+po-files = $(patsubst %,$(DIR_PO)/%.po,$(LINGUAS))
+
+ifeq ($(shell if [ -f $(PACKAGE).desktop.in ]; then echo present; fi;),present)
+desktop-files += $(PACKAGE).desktop
+endif
+
+ifneq ($(EXTRA_DESKTOPS),)
+desktop-files += $(patsubst %.desktop.in,%.desktop,$(EXTRA_DESKTOPS))
+endif
+
+all-mo: $(mo-files)
+
+all-desktop: $(desktop-files)
+
+install-mo: all-mo
+ if [ "$(ENABLE_NLS)" != "no" ]; then \
+ if [ "x$(LINGUAS)" != "x" ]; then \
+ for i in $(LINGUAS); do mkdir -p
$(DESTDIR)$(PREFIX)/share/locale/$$i/LC_MESSAGES; install -m 644
$(DIR_PO)/$$i.mo
$(DESTDIR)$(PREFIX)/share/locale/$$i/LC_MESSAGES/$(PACKAGE).mo; done \
+ fi; \
+ fi;
+
+.po8.mo:;
+ if [ "$(ENABLE_NLS)" != "no" ]; then \
+ msgfmt -o $@ $<; \
+ fi;
+
+.po.po8:;
+ CTYPE=`grep "^\"Content-Type:" $< | sed 's/^.*charset=//;s/\\\\.*//'`;
sed "s/\(Content-Type: .*=\)$$CTYPE/\1UTF-8/" < $< | iconv -f $${CTYPE} -t
UTF-8 >$@
+
+update-po: $(po-files) extract-po
+
+dist-prep: update-po freshen-po
+# empty
+
+ifeq ($(CVSBUILD),yes)
+ipkg-prep: freshen-po
+# empty
+endif
+
+extract-po:
+ mkdir -p $(DIR_PO)
+ ( SOURCES="$(SOURCES)"; for DESK in $(PACKAGE).desktop.in
$(EXTRA_DESKTOPS); do if [ -f $$DESK ]; then intltool-extract
--type=gettext/ini $$DESK; SOURCES="$$SOURCES $${DESK}.h"; fi; done; if [
"x$$SOURCES" != "x" ]; then xgettext --add-comments=TRANSLATORS: -k_ -kN_ -o
$(DIR_PO)/$(PACKAGE).pot.new $$SOURCES; fi )
+ if [ -f $(DIR_PO)/$(PACKAGE).pot.new ]; then if cmp -s
$(DIR_PO)/$(PACKAGE).pot.new $(PACKAGE).pot; then rm
$(DIR_PO)/$(PACKAGE).pot.new; else mv $(DIR_PO)/$(PACKAGE).pot.new
$(DIR_PO)/$(PACKAGE).pot; fi; fi
+
+clean: clean-po clean-dist-translation
+
+clean-po:
+ rm -rf $(DIR_PO)/*.mo
+ for i in $(desktop-files); do if [ -f $$i.in ]; then rm -f $$i; rm -f
$$i.in.h; fi; done
+
+%.desktop: %.desktop.in $(patsubst %,$(DIR_PO)/%.po,$(LINGUAS))
+ intltool-merge -u -d $(DIR_PO) $< $@
+
+freshen-po:
+ rm -rf tmp-po
+ mkdir tmp-po
+ cd tmp-po; for LANG in $(LINGUAS); do wget
$(TRANSLATION_SITE)/$(PACKAGE)/$$LANG.po; done
+ for LANG in $(LINGUAS); do if [ ! -f $(DIR_PO)/$$LANG.po ] || ! cmp -s
$(DIR_PO)/$$LANG.po tmp-po/$$LANG.po ; then mv tmp-po/$$LANG.po
$(DIR_PO)/$$LANG.po; echo "Updated $$LANG translation"; fi; done
+ rm -rf tmp-po
+
+# ------------------------------------------------------------------------
+
+MAINTAINER = $(shell grep 'Maintainer: ' familiar/$(CONTROL) | cut -d ' ' -f
2-)
+
+ifndef BUILD
+BUILD = ../build
+endif
+
+transdist := familiar/dist-translation
+templates := $(BUILD)/familiar
+ipkglist := translation-ipkgs.txt
+
+clean-dist-translation:
+ rm -rf $(transdist) $(ipkglist)
+
+real-translation-package: all-mo
+ rm -rf $(transdist) $(ipkglist)
+ for LINGUA in $(LINGUAS); do \
+ i=$$(echo $$LINGUA | tr '[A-Z_]' '[a-z+]'); \
+ mkdir -p $(transdist)/$$i/CONTROL; \
+ mkdir -p
$(transdist)/$$i$(PREFIX)/share/locale/$$LINGUA/LC_MESSAGES; \
+ install -m 644 po/$$LINGUA.mo
$(transdist)/$$i$(PREFIX)/share/locale/$$LINGUA/LC_MESSAGES/$(PACKAGE).mo; \
+ sed -e
"s/<maintainer>/$(MAINTAINER)/;s/<package>/$(BINPACKAGE)/;s/<version>/$(VERSION)/;s/<language>/$$i/;s!<source>!$(SOURCE)!"
$(templates)/control.translation > $(transdist)/$$i/CONTROL/control; \
+ install $(templates)/postinst.translation
$(transdist)/$$i/CONTROL/postinst; \
+ $(IPKG_BUILD) -g 0 -o 0 $(transdist)/$$i | sed 's/^Packaged
.*into //; t 1; d; : 1; s:.*/::' >> $(ipkglist); \
+ done
+
+translation-ipkg:
+ make PREFIX=/usr real-translation-package
diff --git
a/org.handhelds.familiar/packages/xserver-common/xserver-common_cvs.bb
b/org.handhelds.familiar/packages/xserver-common/xserver-common_cvs.bb
new file mode 100644
index 0000000..2c5533f
--- /dev/null
+++ b/org.handhelds.familiar/packages/xserver-common/xserver-common_cvs.bb
@@ -0,0 +1,21 @@
+MAINTAINER = "Florian Boor <[EMAIL PROTECTED]>"
+DESCRIPTION = "Common X11 scripts and support files"
+LICENSE = "GPL"
+SECTION = "x11"
+PR = "r1"
+PV = "1.10+cvs${CVSDATE}"
+
+DEFAULT_PREFERENCE = "-1"
+
+DEPENDS = "xmodmap xrandr xdpyinfo xtscal"
+RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo xtscal"
+
+
+# we are using a gpe-style Makefile
+inherit gpe
+
+S = "${WORKDIR}/xserver-common"
+
+SRC_URI = "${HANDHELDS_CVS};module=gpe/base/xserver-common \
+ file://build/ \
+ file://100dpi.patch;patch=1"
--
1.4.0
_______________________________________________
Oe mailing list
[email protected]
https://www.handhelds.org/mailman/listinfo/oe