summaryrefslogtreecommitdiff
path: root/pkg/xkeyboard-config
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2017-09-17 00:03:34 -0700
committerMichael Forney <mforney@mforney.org>2017-09-25 19:23:06 -0700
commitba94a8513d9a0aadb3f2c834c74b64aa644c61e8 (patch)
tree48ac6c85baa7b9d960b9e1e726a906e61ca60967 /pkg/xkeyboard-config
parentcb362b531d79708a259bbf070dee5104fd63df08 (diff)
Rewrite ninja generation scripts in Lua
Diffstat (limited to 'pkg/xkeyboard-config')
-rw-r--r--pkg/xkeyboard-config/gen.lua205
-rw-r--r--pkg/xkeyboard-config/gen.rc201
2 files changed, 205 insertions, 201 deletions
diff --git a/pkg/xkeyboard-config/gen.lua b/pkg/xkeyboard-config/gen.lua
new file mode 100644
index 00000000..a481a503
--- /dev/null
+++ b/pkg/xkeyboard-config/gen.lua
@@ -0,0 +1,205 @@
+local data = [[
+ compat/(
+ accessx basic caps complete
+ iso9995
+ japan ledcaps
+ lednum ledscroll level5
+ misc mousekeys
+ olpc pc pc98 xfree86
+ xtest README
+ )
+ geometry/(
+ digital_vndr/(lk pc unix)
+ sgi_vndr/(indigo indy O2)
+ amiga ataritt chicony
+ dell everex fujitsu
+ hhk hp keytronic kinesis
+ macintosh microsoft nec nokia
+ northgate pc sanwa sony thinkpad
+ sun teck steelseries typematrix winbook README
+ )
+ keycodes/(
+ digital_vndr/(lk pc)
+ sgi_vndr/(indigo indy iris)
+ aliases
+ amiga
+ ataritt
+ empty
+ evdev
+ fujitsu
+ hp
+ ibm
+ jolla
+ macintosh
+ olpc
+ sony
+ sun
+ xfree86
+ xfree98
+ README
+ )
+ rules/(
+ xfree98
+ xkb.dtd
+ README
+ )
+ symbols/(
+ digital_vndr/(lk pc us vt)
+ fujitsu_vndr/(jp us)
+ hp_vndr/(us)
+ jolla_vndr/(sbj)
+ macintosh_vndr/(
+ apple ch de dk
+ fi fr
+ gb is it jp
+ latam nl no pt
+ se us
+ )
+ nec_vndr/(jp)
+ nokia_vndr/(rx-44 rx-51 su-8w)
+ sgi_vndr/(jp)
+ sharp_vndr/(sl-c3x00 ws003sh ws007sh ws011sh ws020sh)
+ sony_vndr/(us)
+ sun_vndr/(
+ ara be br ca ch
+ cz de dk ee es
+ fi fr gb gr it
+ jp kr lt lv nl
+ no pl pt ro ru
+ se sk solaris tr
+ tw ua us
+ )
+ xfree68_vndr/(amiga ataritt)
+ af al am apl
+ ara at au az
+ ba bd be
+ bg br brai
+ bt bw by
+ ca cd ch
+ cm cn cz
+ de dk dz
+ ee es et epo eu
+ fi fo fr
+ gb ge gh gn
+ gr hr hu
+ id ie il
+ in iq
+ ir is it
+ jp
+ ke kg kh
+ kr kz
+ la latam latin
+ lk lt lv
+ ma mao md me
+ mk ml mm
+ mn mt mv my
+ ng nl no np
+ parens pc ph pk pl pt
+ ro rs ru
+ se si sk sn
+ sy th
+ terminate tg
+ tj tm tr tw tz
+ ua us uz vn
+ za
+ altwin capslock compose ctrl empty eurosign rupeesign group inet
+ keypad kpdl level3 level5 nbsp olpc shift srvr_ctrl typo
+ )
+ types/(
+ basic cancel caps
+ complete default extra
+ iso9995 level5 mousekeys nokia numpad
+ pc README
+ )
+]]
+for f in iterpaths(data) do
+ file('share/xkb/'..f, '644', '$srcdir/'..f)
+end
+
+rule('merge', 'HDR=$srcdir/rules/HDR ./$srcdir/rules/merge.sh $out.tmp $in && mv $out.tmp $out')
+function merge(out, srcs)
+ build('merge', '$outdir/'..out, {
+ expand{'$srcdir/rules/', paths(srcs)},
+ '|', '$srcdir/rules/HDR', '$srcdir/rules/merge.sh',
+ })
+ file('share/xkb/rules/'..out, '644', '$outdir/'..out)
+end
+
+merge('base', [[
+ base.hdr.part base.lists.part
+ base.lists.base.part
+ HDR base.m_k.part
+ HDR base.l1_k.part
+ HDR base.l_k.part
+ HDR
+ HDR base.ml_g.part
+ HDR base.m_g.part
+ HDR base.mlv_s.part
+ HDR base.ml_s.part
+ HDR base.ml1_s.part
+ HDR
+ HDR base.ml2_s.part
+ HDR base.ml3_s.part
+ HDR base.ml4_s.part
+ HDR
+ HDR
+ HDR
+ HDR base.m_s.part
+ HDR base.ml_s1.part
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR base.ml_c.part
+ HDR base.ml1_c.part
+ HDR base.m_t.part
+ HDR
+ HDR base.l1o_s.part
+ HDR base.l2o_s.part
+ HDR base.l3o_s.part
+ HDR base.l4o_s.part
+ HDR base.o_s.part
+ HDR base.o_c.part
+ HDR base.o_t.part
+]])
+merge('evdev', [[
+ base.hdr.part base.lists.part
+ evdev.lists.part
+ HDR evdev.m_k.part
+ HDR base.l1_k.part
+ HDR base.l_k.part
+ HDR
+ HDR base.ml_g.part
+ HDR base.m_g.part
+ HDR base.mlv_s.part
+ HDR base.ml_s.part
+ HDR base.ml1_s.part
+ HDR
+ HDR base.ml2_s.part
+ HDR base.ml3_s.part
+ HDR base.ml4_s.part
+ HDR
+ HDR
+ HDR
+ HDR evdev.m_s.part
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR base.ml_c.part
+ HDR base.ml1_c.part
+ HDR base.m_t.part
+ HDR
+ HDR base.l1o_s.part
+ HDR base.l2o_s.part
+ HDR base.l3o_s.part
+ HDR base.l4o_s.part
+ HDR base.o_s.part
+ HDR base.o_c.part
+ HDR base.o_t.part
+]])
+
+fetch 'git'
diff --git a/pkg/xkeyboard-config/gen.rc b/pkg/xkeyboard-config/gen.rc
deleted file mode 100644
index 8d87e901..00000000
--- a/pkg/xkeyboard-config/gen.rc
+++ /dev/null
@@ -1,201 +0,0 @@
-data=(\
- compat/^(\
- accessx basic caps complete\
- iso9995\
- japan ledcaps\
- lednum ledscroll level5\
- misc mousekeys\
- olpc pc pc98 xfree86\
- xtest README\
- )\
- geometry/^(\
- digital_vndr/^(lk pc unix)\
- sgi_vndr/^(indigo indy O2)\
- amiga ataritt chicony\
- dell everex fujitsu\
- hhk hp keytronic kinesis\
- macintosh microsoft nec nokia\
- northgate pc sanwa sony thinkpad\
- sun teck steelseries typematrix winbook README\
- )\
- keycodes/^(\
- digital_vndr/^(lk pc)\
- sgi_vndr/^(indigo indy iris)\
- aliases\
- amiga\
- ataritt\
- empty\
- evdev\
- fujitsu\
- hp\
- ibm\
- jolla\
- macintosh\
- olpc\
- sony\
- sun\
- xfree86\
- xfree98\
- README\
- )\
- rules/^(\
- xfree98\
- xkb.dtd\
- README\
- )\
- symbols/^(\
- digital_vndr/^(lk pc us vt)\
- fujitsu_vndr/^(jp us)\
- hp_vndr/^(us)\
- jolla_vndr/^(sbj)\
- macintosh_vndr/^(\
- apple ch de dk\
- fi fr\
- gb is it jp\
- latam nl no pt\
- se us\
- )\
- nec_vndr/^(jp)\
- nokia_vndr/^(rx-44 rx-51 su-8w)\
- sgi_vndr/^(jp)\
- sharp_vndr/^(sl-c3x00 ws003sh ws007sh ws011sh ws020sh)\
- sony_vndr/^(us)\
- sun_vndr/^(\
- ara be br ca ch\
- cz de dk ee es\
- fi fr gb gr it\
- jp kr lt lv nl\
- no pl pt ro ru\
- se sk solaris tr\
- tw ua us\
- )\
- xfree68_vndr/^(amiga ataritt)\
- af al am apl\
- ara at au az\
- ba bd be\
- bg br brai\
- bt bw by\
- ca cd ch\
- cm cn cz\
- de dk dz\
- ee es et epo eu\
- fi fo fr\
- gb ge gh gn\
- gr hr hu\
- id ie il\
- in iq\
- ir is it\
- jp\
- ke kg kh\
- kr kz\
- la latam latin\
- lk lt lv\
- ma mao md me\
- mk ml mm\
- mn mt mv my\
- ng nl no np\
- parens pc ph pk pl pt\
- ro rs ru\
- se si sk sn\
- sy th\
- terminate tg\
- tj tm tr tw tz\
- ua us uz vn\
- za\
- altwin capslock compose ctrl empty eurosign rupeesign group inet\
- keypad kpdl level3 level5 nbsp olpc shift srvr_ctrl typo\
- )\
- types/^(\
- basic cancel caps\
- complete default extra\
- iso9995 level5 mousekeys nokia numpad\
- pc README\
- )\
-)
-for(f in $data) file share/xkb/$f '$srcdir'/$f 644
-
-rule merge 'HDR=$srcdir/rules/HDR ./$srcdir/rules/merge.sh $out.tmp $in && mv $out.tmp $out'
-fn merge {
- out='$outdir'/$1
- shift
- build $out merge '$srcdir'/rules/$* '|' '$srcdir'/rules/^(HDR merge.sh)
-}
-
-merge base\
- base.hdr.part base.lists.part\
- base.lists.base.part\
- HDR base.m_k.part\
- HDR base.l1_k.part\
- HDR base.l_k.part\
- HDR\
- HDR base.ml_g.part\
- HDR base.m_g.part\
- HDR base.mlv_s.part\
- HDR base.ml_s.part\
- HDR base.ml1_s.part\
- HDR\
- HDR base.ml2_s.part\
- HDR base.ml3_s.part\
- HDR base.ml4_s.part\
- HDR\
- HDR\
- HDR\
- HDR base.m_s.part\
- HDR base.ml_s1.part\
- HDR\
- HDR\
- HDR\
- HDR\
- HDR\
- HDR base.ml_c.part\
- HDR base.ml1_c.part\
- HDR base.m_t.part\
- HDR\
- HDR base.l1o_s.part\
- HDR base.l2o_s.part\
- HDR base.l3o_s.part\
- HDR base.l4o_s.part\
- HDR base.o_s.part\
- HDR base.o_c.part\
- HDR base.o_t.part
-merge evdev\
- base.hdr.part base.lists.part\
- evdev.lists.part\
- HDR evdev.m_k.part\
- HDR base.l1_k.part\
- HDR base.l_k.part\
- HDR\
- HDR base.ml_g.part\
- HDR base.m_g.part\
- HDR base.mlv_s.part\
- HDR base.ml_s.part\
- HDR base.ml1_s.part\
- HDR\
- HDR base.ml2_s.part\
- HDR base.ml3_s.part\
- HDR base.ml4_s.part\
- HDR\
- HDR\
- HDR\
- HDR evdev.m_s.part\
- HDR\
- HDR\
- HDR\
- HDR\
- HDR\
- HDR\
- HDR base.ml_c.part\
- HDR base.ml1_c.part\
- HDR base.m_t.part\
- HDR\
- HDR base.l1o_s.part\
- HDR base.l2o_s.part\
- HDR base.l3o_s.part\
- HDR base.l4o_s.part\
- HDR base.o_s.part\
- HDR base.o_c.part\
- HDR base.o_t.part
-
-for(f in base evdev) file share/xkb/rules/$f '$outdir'/$f 644
-
-fetch git