diff options
| author | Michael Forney <mforney@mforney.org> | 2017-09-17 00:03:34 -0700 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2017-09-25 19:23:06 -0700 |
| commit | ba94a8513d9a0aadb3f2c834c74b64aa644c61e8 (patch) | |
| tree | 48ac6c85baa7b9d960b9e1e726a906e61ca60967 /pkg/xkeyboard-config | |
| parent | cb362b531d79708a259bbf070dee5104fd63df08 (diff) | |
Rewrite ninja generation scripts in Lua
Diffstat (limited to 'pkg/xkeyboard-config')
| -rw-r--r-- | pkg/xkeyboard-config/gen.lua | 205 | ||||
| -rw-r--r-- | pkg/xkeyboard-config/gen.rc | 201 |
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 |
