Change xkbcommon file path to include/ subdirectory
[platform/upstream/libxkbcommon.git] / make_tizen_keymap.sh
1 #!/bin/sh
2
3 if [ "$TZ_SYS_RO_SHARE" = "" ]; then
4         TZ_SYS_RO_SHARE="/usr/share"
5 fi
6
7 KEYMAP_FILE_PATH="${TZ_SYS_RO_SHARE}/X11/xkb/new_symbols.txt"
8 BASE_KEYSYM="0x10090000"
9 TARGET_HEADER_FILE="./include/xkbcommon/tizen_keymap.h"
10 TEMP_TEXT_FILE="./temp_file.txt"
11 NEW_DEFINE_SYM_FILE="./new_define_sym.txt"
12 KEYMAP_HEADER_FILE="./include/xkbcommon/xkbcommon-keysyms.h"
13 cout=1
14 BASE_KEYSYM_DEC=`python -c "print int('$BASE_KEYSYM', 16)"`
15
16 if [ -e ${KEYMAP_FILE_PATH} ]
17 then
18         echo "We have a new defined key symbols file: ${KEYMAP_FILE_PATH}"
19 else
20         echo "We don't have a new defined key symbols file: ${KEYMAP_FILE_PATH}"
21         exit
22 fi
23
24 echo "Generate a tizen keymap header file"
25 touch $NEW_DEFINE_SYM_FILE
26
27 while read KEYNAME
28 do
29         KEYSYM="XKB_KEY_${KEYNAME}"
30         grep -rn "${KEYSYM}" $KEYMAP_HEADER_FILE > $TEMP_TEXT_FILE
31         FINDED_DEFINE=`cat temp_file.txt | awk '{print $2}'`
32
33         BOOL_FOUND_SYM=false
34         for SEARCH_SYM in ${FINDED_DEFINE}
35         do
36                 if [ "$SEARCH_SYM" = "$KEYSYM" ]
37                 then
38                         BOOL_FOUND_SYM=true
39                 break
40                 fi
41         done
42         BOOL_DUPLICATED_SYM=false
43         if [ "$BOOL_FOUND_SYM" = false ]
44         then
45                 while read KEYSYM_NEW
46                 do
47                         if [ "$KEYSYM_NEW" = "$KEYSYM" ]
48                         then
49                                 BOOL_DUPLICATED_SYM=true
50                         break
51                         fi
52                 done < ${NEW_DEFINE_SYM_FILE}
53                 if [ "$BOOL_DUPLICATED_SYM" = false ]
54                 then
55                         echo "${KEYSYM}" >> $NEW_DEFINE_SYM_FILE
56                 fi
57         fi
58 done < ${KEYMAP_FILE_PATH}
59
60 sed -i '$s/#endif//g' ${KEYMAP_HEADER_FILE}
61 echo "/**************************************************************" >> ${KEYMAP_HEADER_FILE}
62 echo " * These keys defined for tizen platform." >> ${KEYMAP_HEADER_FILE}
63 echo " * Key symbols are defined by keymap builder." >> ${KEYMAP_HEADER_FILE}
64 echo " */" >> ${KEYMAP_HEADER_FILE}
65
66 while read KEYNAME
67 do
68         KEYSYM_DEC=$(echo $BASE_KEYSYM_DEC $cout | awk '{print $1 + $2}')
69         KEYSYM=$(printf "%x" $KEYSYM_DEC)
70         echo -en "#define ${KEYNAME}\t\t0x$KEYSYM\n" >> ${KEYMAP_HEADER_FILE}
71         cout=$(echo $cout 1 | awk '{print $1 + $2}')
72 done < ${NEW_DEFINE_SYM_FILE}
73
74 echo "" >> ${KEYMAP_HEADER_FILE}
75 echo "" >> ${KEYMAP_HEADER_FILE}
76 echo "#endif" >> ${KEYMAP_HEADER_FILE}
77
78 rm $NEW_DEFINE_SYM_FILE
79 rm $TEMP_TEXT_FILE