diff options
author | Weixuan XIAO <veyx.shaw@gmail.com> | 2020-11-22 19:10:02 +0100 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2020-11-26 11:03:49 +0800 |
commit | ccf9c76a38c8a784535499d806843445e1ad385e (patch) | |
tree | 1799d7ee0e5ad2799609a2db0d1e6cb7c9932edc /src | |
parent | 76108f9b60e521af2d716b22dd5dd99d62609e72 (diff) | |
download | libpinyin-ccf9c76a38c8a784535499d806843445e1ad385e.tar.gz libpinyin-ccf9c76a38c8a784535499d806843445e1ad385e.tar.xz libpinyin-ccf9c76a38c8a784535499d806843445e1ad385e.zip |
Replace -version-script flag with -exported_symbols_list for LLVM
Detect whether $CXX is clang with gcc alias.
Use -exported_symbols_list under Clang/LLVM env
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 14 | ||||
-rw-r--r-- | src/libpinyin.exp | 74 | ||||
-rw-r--r-- | src/libzhuyin.exp | 52 |
3 files changed, 140 insertions, 0 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index f2b8f75..ef9a042 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -81,8 +81,15 @@ libpinyin_la_SOURCES = $(pinyin_SOURCES) pinyin.cpp libpinyin_la_LIBADD = @GLIB2_LIBS@ +if CLANG +## LLVM linker does not support --version-script, +## use -exported_symbols_list instead +libpinyin_la_LDFLAGS = -Wl -exported_symbols_list $(srcdir)/libpinyin.exp \ + -version-info @LT_VERSION_INFO@ +else libpinyin_la_LDFLAGS = -Wl,--version-script=$(srcdir)/libpinyin.ver \ -version-info @LT_VERSION_INFO@ +endif if ENABLE_LIBZHUYIN lib_LTLIBRARIES += libzhuyin.la @@ -91,9 +98,16 @@ libzhuyin_la_SOURCES = $(pinyin_SOURCES) zhuyin.cpp libzhuyin_la_LIBADD = @GLIB2_LIBS@ +if CLANG +## LLVM linker does not support --version-script, +## use -exported_symbols_list instead +libzhuyin_la_LDFLAGS = -Wl -exported_symbols_list $(srcdir)/libzhuyin.exp \ + -version-info @LT_VERSION_INFO@ +else libzhuyin_la_LDFLAGS = -Wl,--version-script=$(srcdir)/libzhuyin.ver \ -version-info @LT_VERSION_INFO@ endif +endif libpinyin_internal_a_SOURCES = pinyin_internal.cpp diff --git a/src/libpinyin.exp b/src/libpinyin.exp new file mode 100644 index 0000000..1e7257a --- /dev/null +++ b/src/libpinyin.exp @@ -0,0 +1,74 @@ +_pinyin_init +_pinyin_save +_pinyin_set_full_pinyin_scheme +_pinyin_set_double_pinyin_scheme +_pinyin_set_zhuyin_scheme +_pinyin_load_phrase_library +_pinyin_unload_phrase_library +_pinyin_load_addon_phrase_library +_pinyin_unload_addon_phrase_library +_pinyin_begin_add_phrases +_pinyin_iterator_add_phrase +_pinyin_end_add_phrases +_pinyin_begin_get_phrases +_pinyin_iterator_has_next_phrase +_pinyin_iterator_get_next_phrase +_pinyin_end_get_phrases +_pinyin_fini +_pinyin_mask_out +_pinyin_set_options +_pinyin_alloc_instance +_pinyin_free_instance +_pinyin_get_context +_pinyin_guess_sentence +_pinyin_guess_sentence_with_prefix +_pinyin_guess_predicted_candidates +_pinyin_phrase_segment +_pinyin_get_sentence +_pinyin_parse_full_pinyin +_pinyin_parse_more_full_pinyins +_pinyin_parse_double_pinyin +_pinyin_parse_more_double_pinyins +_pinyin_parse_chewing +_pinyin_parse_more_chewings +_pinyin_get_parsed_input_length +_pinyin_in_chewing_keyboard +_pinyin_guess_candidates +_pinyin_choose_candidate +_pinyin_choose_predicted_candidate +_pinyin_clear_constraint +_pinyin_lookup_tokens +_pinyin_train +_pinyin_reset +_pinyin_get_zhuyin_string +_pinyin_get_pinyin_string +_pinyin_get_luoma_pinyin_string +_pinyin_get_secondary_zhuyin_string +_pinyin_get_pinyin_strings +_pinyin_get_pinyin_is_incomplete +_pinyin_token_get_phrase +_pinyin_token_get_n_pronunciation +_pinyin_token_get_nth_pronunciation +_pinyin_token_get_unigram_frequency +_pinyin_token_add_unigram_frequency +_pinyin_get_n_candidate +_pinyin_get_candidate +_pinyin_get_candidate_type +_pinyin_get_candidate_string +_pinyin_get_candidate_nbest_index +_pinyin_get_pinyin_key +_pinyin_get_pinyin_key_rest +_pinyin_get_pinyin_key_rest_positions +_pinyin_get_pinyin_key_rest_length +_pinyin_get_pinyin_offset +_pinyin_get_left_pinyin_offset +_pinyin_get_right_pinyin_offset +_pinyin_get_character_offset +_pinyin_get_n_phrase +_pinyin_get_phrase_token +_pinyin_get_full_pinyin_auxiliary_text +_pinyin_get_double_pinyin_auxiliary_text +_pinyin_get_chewing_auxiliary_text +_pinyin_remember_user_input +_pinyin_is_user_candidate +_pinyin_remove_user_candidate
\ No newline at end of file diff --git a/src/libzhuyin.exp b/src/libzhuyin.exp new file mode 100644 index 0000000..94497e5 --- /dev/null +++ b/src/libzhuyin.exp @@ -0,0 +1,52 @@ +_zhuyin_init +_zhuyin_save +_zhuyin_set_chewing_scheme +_zhuyin_set_full_pinyin_scheme +_zhuyin_load_phrase_library +_zhuyin_unload_phrase_library +_zhuyin_begin_add_phrases +_zhuyin_iterator_add_phrase +_zhuyin_end_add_phrases +_zhuyin_fini +_zhuyin_mask_out +_zhuyin_set_options +_zhuyin_alloc_instance +_zhuyin_free_instance +_zhuyin_guess_sentence +_zhuyin_guess_sentence_with_prefix +_zhuyin_phrase_segment +_zhuyin_get_sentence +_zhuyin_parse_full_pinyin +_zhuyin_parse_more_full_pinyins +_zhuyin_parse_chewing +_zhuyin_parse_more_chewings +_zhuyin_get_parsed_input_length +_zhuyin_in_chewing_keyboard +_zhuyin_guess_candidates_after_cursor +_zhuyin_guess_candidates_before_cursor +_zhuyin_choose_candidate +_zhuyin_clear_constraint +_zhuyin_lookup_tokens +_zhuyin_train +_zhuyin_reset +_zhuyin_get__zhuyin_string +_zhuyin_get_pinyin_string +_zhuyin_token_get_phrase +_zhuyin_token_get_n_pronunciation +_zhuyin_token_get_nth_pronunciation +_zhuyin_token_get_unigram_frequency +_zhuyin_token_add_unigram_frequency +_zhuyin_get_n_candidate +_zhuyin_get_candidate +_zhuyin_get_candidate_type +_zhuyin_get_candidate_string +_zhuyin_get_zhuyin_key +_zhuyin_get_zhuyin_key_rest +_zhuyin_get_zhuyin_key_rest_positions +_zhuyin_get_zhuyin_key_rest_length +_zhuyin_get_zhuyin_offset +_zhuyin_get_left_zhuyin_offset +_zhuyin_get_right_zhuyin_offset +_zhuyin_get_character_offset +_zhuyin_get_n_phrase +_zhuyin_get_phrase_token
\ No newline at end of file |