Newer
Older
# -*- mode: conf -*-
project('pinyin_parser', ['cpp', 'c'],
version: '1.0.0',
license: 'EPL-2.0',
default_options: [
'warning_level=2',
'werror=true',
'buildtype=release'])
add_project_arguments(
'-Wno-unused-parameter',
'-Wno-missing-field-initializers',
'-DHAVE_LIBUUID',
'-std=c++11',
language: 'cpp')
# generate pinyin_parser_wrap.c using swig.
# but swig has a bug, the PyInit function name has an extra _ in it. so I use
# sed to do a simple replace.
swig = find_program('swig')
pinyin_parser_wrap_swig = custom_target('pinyin_parser_swig.c',
input: 'pinyin_parser.i',
output: 'pinyin_parser_swig.c',
command: [swig, '-python', '-o', '@OUTPUT@', '@INPUT@'])
sed = find_program('sed')
pinyin_parser_wrap = custom_target('pinyin_parser_wrap.c',
input: pinyin_parser_wrap_swig,
output: 'pinyin_parser_wrap.c',
capture: true,
command: [sed, 's/PyInit__libpinyin_parser/PyInit_libpinyin_parser/', '@INPUT@'])
glib = dependency('glib-2.0')
uuid = dependency('uuid')
shared_dep = [glib, uuid]
lib_src = [
'../PinyinParser.cc',
'pinyin_parser.cpp',
shared_library('pinyin_parser',
lib_src,
dependencies: [shared_dep, dependency('python3')],
install: true, install_dir: '/home/sylecn/c/gtk-im-module/sogou/scelexport/')
main_src = [
'../PinyinParser.cc',
'pinyin_parser_main.cpp']
executable('main', main_src, dependencies: shared_dep)
test_src = [
'../PinyinParser.cc',
'pinyin_parser.cpp',
'pinyin_parser_test.cpp']
test('libpinyin_parser-test',
executable('libtest', test_src, dependencies: shared_dep))