Author: emaste
Date: Mon Mar 28 19:51:45 2016
New Revision: 297363
URL: https://svnweb.freebsd.org/changeset/base/297363

Log:
  simplify compile-time default keyboard map generation
  
  In r296926 the -P <path> option was added to kbdcontrol, which enables
  this change for a simplified compile-time default keymap build process.
  
  PR:           193865
  Reviewed by:  Oliver Pinter
  Tested by:    Oliver Pinter
  MFC After:    1 month
  Sponsored by: The FreeBSD Foundation
  Differential Revision:        https://reviews.freebsd.org/D5708

Modified:
  head/Makefile.inc1
  head/sys/conf/files.amd64
  head/sys/conf/files.i386
  head/sys/conf/files.pc98
  head/sys/conf/files.sparc64

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1  Mon Mar 28 19:32:13 2016        (r297362)
+++ head/Makefile.inc1  Mon Mar 28 19:51:45 2016        (r297363)
@@ -1361,6 +1361,11 @@ _crunch= usr.sbin/crunch
 _awk=          usr.bin/awk
 .endif
 
+# r296926 -P keymap search path
+.if ${BOOTSTRAPPING} < 1100103
+_kbdcontrol=   usr.sbin/kbdcontrol
+.endif
+
 _yacc=         lib/liby \
                usr.bin/yacc
 
@@ -1425,6 +1430,7 @@ bootstrap-tools: .PHONY
     ${_awk} \
     ${_cat} \
     ${_dd} \
+    ${_kbdcontrol} \
     usr.bin/lorder \
     ${_libopenbsd} \
     ${_makewhatis} \

Modified: head/sys/conf/files.amd64
==============================================================================
--- head/sys/conf/files.amd64   Mon Mar 28 19:32:13 2016        (r297362)
+++ head/sys/conf/files.amd64   Mon Mar 28 19:51:45 2016        (r297363)
@@ -50,12 +50,12 @@ font.h                              optional        
sc_dflt_font            \
        clean           "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 
${SC_DFLT_FONT}-8x8"
 #
 atkbdmap.h                     optional        atkbd_dflt_keymap       \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${ATKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h; else echo 
Error: atkbd_dflt_keymap not found; exit 1; fi"                        \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > atkbdmap.h"                       \
        no-obj no-implicit-rule before-depend                           \
        clean           "atkbdmap.h"
 #
 ukbdmap.h                      optional        ukbd_dflt_keymap        \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${UKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${UKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > ukbdmap.h; else echo 
Error:    ukbd_dflt_keymap not found; exit 1; fi"                 \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${UKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > ukbdmap.h"                 \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #

Modified: head/sys/conf/files.i386
==============================================================================
--- head/sys/conf/files.i386    Mon Mar 28 19:32:13 2016        (r297362)
+++ head/sys/conf/files.i386    Mon Mar 28 19:51:45 2016        (r297363)
@@ -49,12 +49,12 @@ font.h                              optional        
sc_dflt_font            \
        clean           "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 
${SC_DFLT_FONT}-8x8"
 #
 atkbdmap.h                     optional        atkbd_dflt_keymap       \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${ATKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h; else echo 
Error: atkbd_dflt_keymap not found; exit 1; fi"                        \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > atkbdmap.h"                       \
        no-obj no-implicit-rule before-depend                           \
        clean           "atkbdmap.h"
 #
 ukbdmap.h                      optional        ukbd_dflt_keymap        \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${UKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${UKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > ukbdmap.h; else echo 
Error:    ukbd_dflt_keymap not found; exit 1; fi"                 \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${UKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > ukbdmap.h"                 \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #

Modified: head/sys/conf/files.pc98
==============================================================================
--- head/sys/conf/files.pc98    Mon Mar 28 19:32:13 2016        (r297362)
+++ head/sys/conf/files.pc98    Mon Mar 28 19:51:45 2016        (r297363)
@@ -46,7 +46,7 @@ svr4_assym.h                  optional        compat_svr4     
        \
        clean           "svr4_assym.h"
 #
 ukbdmap.h                      optional        ukbd_dflt_keymap        \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${UKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${UKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > ukbdmap.h; else echo 
Error:    ukbd_dflt_keymap not found; exit 1; fi"                 \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${UKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > ukbdmap.h"                 \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #

Modified: head/sys/conf/files.sparc64
==============================================================================
--- head/sys/conf/files.sparc64 Mon Mar 28 19:32:13 2016        (r297362)
+++ head/sys/conf/files.sparc64 Mon Mar 28 19:51:45 2016        (r297363)
@@ -8,17 +8,17 @@
 # dependency lines other than the first are silently ignored.
 #
 atkbdmap.h                     optional        atkbd_dflt_keymap       \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${ATKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h; else echo 
Error: atkbd_dflt_keymap not found; exit 1; fi"                        \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > atkbdmap.h"                       \
        no-obj no-implicit-rule before-depend                           \
        clean           "atkbdmap.h"
 #
 sunkbdmap.h                    optional        sunkbd_dflt_keymap      \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${SUNKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${SUNKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > sunkbdmap.h; else echo 
Error:      sunkbd_dflt_keymap not found; exit 1; fi"                       \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${SUNKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > sunkbdmap.h"                     \
        no-obj no-implicit-rule before-depend                           \
        clean           "sunkbdmap.h"
 #
 ukbdmap.h                      optional        ukbd_dflt_keymap        \
-       compile-with    "unset KEYMAP_PATH; for kmpath in 
${S:S/sys$/share/}/vt/keymaps ${S:S/sys$/share/}/syscons/keymaps; do 
kmapfile=$${kmpath}/${UKBD_DFLT_KEYMAP:C/\.kbd$$//}.kbd; if [ -r $${kmapfile} 
]; then KEYMAP_PATH=$${kmpath}; fi; done; if [ X$${KEYMAP_PATH} != X ]; then 
env KEYMAP_PATH=$${KEYMAP_PATH} /usr/sbin/kbdcontrol -L ${UKBD_DFLT_KEYMAP} | 
sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static 
accentmap_t.* = /static accentmap_t accent_map = /' > ukbdmap.h; else echo 
Error:    ukbd_dflt_keymap not found; exit 1; fi"                 \
+       compile-with    "kbdcontrol -P ${S:S/sys$/share/}/vt/keymaps -P 
${S:S/sys$/share/}/syscons/keymaps -L ${UKBD_DFLT_KEYMAP} | sed -e 's/^static 
keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = 
/static accentmap_t accent_map = /' > ukbdmap.h"                 \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to