summaryrefslogtreecommitdiff
path: root/src/make_unicode_property.sh
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff-webhosting.net>2017-12-28 16:46:11 +0100
committerJörg Frings-Fürst <debian@jff-webhosting.net>2017-12-28 16:46:11 +0100
commit5587db012cd0e8f69f811e8959a861112904136a (patch)
tree19472bb8b64980a43e99340ba899cd442a824445 /src/make_unicode_property.sh
parentfa131e9ad996d099bb48a3b1302e4a3b3c0f03bd (diff)
parent4bf99bd2fb7b6bde65a11dfce43ed399ecb10ccd (diff)
Merge branch 'release/6.7.0-1'6.7.0-1
Diffstat (limited to 'src/make_unicode_property.sh')
-rwxr-xr-xsrc/make_unicode_property.sh7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/make_unicode_property.sh b/src/make_unicode_property.sh
index 5ee2990..1e57674 100755
--- a/src/make_unicode_property.sh
+++ b/src/make_unicode_property.sh
@@ -3,15 +3,16 @@
NAME=unicode_property_data
TMP=gperf.tmp
#GPERF_OPT='-P -Q prop_name_pool -C -c -t -j1 -L ANSI-C --ignore-case'
-GPERF_OPT='-T -C -c -t -j1 -L ANSI-C --ignore-case'
+GPERF_OPT='-T -C -c -t -j1 -L ANSI-C --ignore-case --pic -Q unicode_prop_name_pool'
+POOL_CAST='s/\(int *\)\(long *\)&\(\(struct +unicode_prop_name_pool_t *\* *\) *0\)->unicode_prop_name_pool_str([^,]+)/pool_offset(\1)/g'
./make_unicode_property_data.py > ${NAME}.gperf
./make_unicode_property_data.py -posix > ${NAME}_posix.gperf
gperf ${GPERF_OPT} -N unicode_lookup_property_name --output-file ${TMP} ${NAME}.gperf
-sed -e 's/^#line.*$//g' ${TMP} > ${NAME}.c
+sed -e 's/^#line.*$//g' ${TMP} | sed -r "${POOL_CAST}" > ${NAME}.c
gperf ${GPERF_OPT} -N unicode_lookup_property_name --output-file ${TMP} ${NAME}_posix.gperf
-sed -e 's/^#line.*$//g' ${TMP} > ${NAME}_posix.c
+sed -e 's/^#line.*$//g' ${TMP} | sed -r "${POOL_CAST}" > ${NAME}_posix.c
rm -f ${NAME}.gperf ${NAME}_posix.gperf ${TMP}