# Makefile for constructing keyboard
#
# Andrew Christian
# 6 March 2002
# Copyright (c) 2002, Compaq Computer Corporation

LINUX_KERNEL_SRC = /rock/home/andyc/backpaq/linux/kernel

RAW_KEYBOARDS     = compaq.raw snapntype.raw
KEYBOARDS         = $(RAW_KEYBOARDS:.raw=.dk) $(RAW_KEYBOARDS:.raw=.map)
BUILD_FILES       = $(RAW_KEYBOARDS:.raw=-build)

CONSOLE_VERSION   = 1.0

compaq-version    = 1.1
compaq-name       = Compaq Microkeyboard
compaq-dev        = compaq

snapntype-version = 1.1
snapntype-name    = SnapNType
snapntype-dev     = snapntype


.SUFFIXES: .raw .dk .map

.raw.dk :
	./makekernelmap.py -p $(LINUX_KERNEL_SRC) -x $< > $@

.raw.map :
	./makekernelmap.py -p $(LINUX_KERNEL_SRC) -l $< > $@

all:	$(KEYBOARDS) $(BUILD_FILES) console-tools

.PHONY : console-tools

console-tools:
	mkdir -p ipkg/usr/lib ipkg/usr/bin ipkg/CONTROL
	cp -a usr/lib/libconsole.so.0.0.0 ipkg/usr/lib
	cp -a usr/lib/libctutils.so.0.0.0 ipkg/usr/lib
	cp -a usr/lib/libcfont.so.0.0.0 ipkg/usr/lib
	cp -a usr/bin/dumpkeys ipkg/usr/bin
	cp -a usr/bin/showkey  ipkg/usr/bin
	cp -a usr/bin/loadkeys ipkg/usr/bin
	echo "Package: console-tools" > control
	echo "Priority: required" >> control
	echo "Version: " ${CONSOLE_VERSION} >> control
	echo "Architecture: arm" >> control
	echo "Maintainer: Andrew Christian <andrew.christian@compaq.com>" >> control
	echo "Depends: " >> control
	echo "Description: Linux console tools: showkey, loadkeys, dumpkeys" >> control
	echo "Section: base" >> control
	mv control ipkg/CONTROL
	echo "#!/bin/sh" > postinst
	echo "ldconfig" >> postinst
	chmod a+x postinst
	mv postinst ipkg/CONTROL
	chown -R root ipkg
	ipkg-build ipkg
	rm -fr ipkg

$(BUILD_FILES) : %-build : %.dk %.map
	mkdir -p ipkg/etc/microkbd ipkg/CONTROL
	cp -a $*.dk $*.map ipkg/etc/microkbd
	echo "Package: $*-microkeybd" > control
	echo "Priority: required" >> control
	echo "Version: " ${$*-version} >> control
	echo "Architecture: arm" >> control
	echo "Maintainer: Andrew Christian <andrew.christian@compaq.com>" >> control
	echo "Depends: console-tools" >> control
	echo "Description: Keyboard mappings for the ${$*-name}" >> control
	echo "   Use 'loadkeys /etc/microkbd/$*.map' to load" >> control
	echo "    the Linux console character set." >> control
	echo "   Use 'xmodmap /etc/microkbd/$*.dk' to load" >> control
	echo "    the X keyboard mapping." >> control
	echo "   Use 'cat /dev/microkbd/${$*-dev}' to activate the keyboard.  You" >> control
	echo "   must turn off default getty from /etc/inittab and not" >> control
	echo "   use console=ttySA0 from the bootloader." >> control
	echo "Section: base" >> control
	mv control ipkg/CONTROL
	chown -R root ipkg
	ipkg-build ipkg
	rm -fr ipkg

clean:
	rm -rf ipkg *~ $(KEYBOARDS)

