summaryrefslogtreecommitdiff
path: root/src/make_unicode_fold_data.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/make_unicode_fold_data.py')
-rwxr-xr-xsrc/make_unicode_fold_data.py47
1 files changed, 37 insertions, 10 deletions
diff --git a/src/make_unicode_fold_data.py b/src/make_unicode_fold_data.py
index 64aa3a2..5c87d4c 100755
--- a/src/make_unicode_fold_data.py
+++ b/src/make_unicode_fold_data.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
# make_unicode_fold_data.py
-# Copyright (c) 2016-2017 K.Kosako
+# Copyright (c) 2016-2018 K.Kosako
import sys
import re
@@ -234,20 +234,51 @@ def output_fold_source(f, out_comment):
print >> f, '#include "regenc.h"'
print >> f, ''
if VERSION_INFO is not None:
- print "#define CASEFOLD_VERSION %s" % re.sub(r'[\.-]', '_', VERSION_INFO)
+ print "#define UNICODE_CASEFOLD_VERSION %s" % re.sub(r'[\.-]', '_', VERSION_INFO)
print ''
#output_macros(f, DataName)
print >> f, ''
#output_typedef(f)
output_fold_data(f, DataName, out_comment)
-def output_gperf_unfold_key(f):
- head = """\
+
+HEAD = '''
%{
/* This gperf source file was generated by make_unicode_fold_data.py */
+
+/*-
+ * Copyright (c) 2017-2018 K.Kosako <sndgk393 AT ybb DOT ne DOT jp>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
#include <string.h>
#include "regenc.h"
%}
+'''.strip()
+
+def output_gperf_unfold_key(f):
+ head = HEAD + """\
+
struct ByUnfoldKey {
OnigCodePoint code;
short int index;
@@ -266,12 +297,8 @@ struct ByUnfoldKey {
print >> f, '%%'
def output_gperf_fold_key(f, key_len):
- head = """\
-%{
-/* This gperf source file was generated by make_unicode_fold_data.py */
-#include <string.h>
-#include "regenc.h"
-%}
+ head = HEAD + """\
+
short int
%%
"""