1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-31 22:04:40 +03:00

Add support for Daitch-Mokotoff Soundex in contrib/fuzzystrmatch.

This modernized version of Soundex works significantly better than
the original, particularly for non-English names.

Dag Lem, reviewed by quite a few people along the way

Discussion: https://postgr.es/m/yger1atbgfy.fsf@sid.nimrod.no
This commit is contained in:
Tom Lane
2023-04-07 17:31:51 -04:00
parent 728015a470
commit a290378a37
13 changed files with 1315 additions and 11 deletions

View File

@ -1,10 +1,19 @@
# Copyright (c) 2022-2023, PostgreSQL Global Development Group
fuzzystrmatch_sources = files(
'fuzzystrmatch.c',
'daitch_mokotoff.c',
'dmetaphone.c',
'fuzzystrmatch.c',
)
daitch_mokotoff_h = custom_target('daitch_mokotoff',
input: 'daitch_mokotoff_header.pl',
output: 'daitch_mokotoff.h',
command: [perl, '@INPUT@', '@OUTPUT@'],
)
generated_sources += daitch_mokotoff_h
fuzzystrmatch_sources += daitch_mokotoff_h
if host_system == 'windows'
fuzzystrmatch_sources += rc_lib_gen.process(win32ver_rc, extra_args: [
'--NAME', 'fuzzystrmatch',
@ -13,6 +22,7 @@ endif
fuzzystrmatch = shared_module('fuzzystrmatch',
fuzzystrmatch_sources,
include_directories: include_directories('.'),
kwargs: contrib_mod_args,
)
contrib_targets += fuzzystrmatch
@ -21,6 +31,7 @@ install_data(
'fuzzystrmatch.control',
'fuzzystrmatch--1.0--1.1.sql',
'fuzzystrmatch--1.1.sql',
'fuzzystrmatch--1.1--1.2.sql',
kwargs: contrib_data_args,
)
@ -31,6 +42,7 @@ tests += {
'regress': {
'sql': [
'fuzzystrmatch',
'fuzzystrmatch_utf8',
],
},
}