1+ Pod ::Spec . new do |spec |
2+ spec . name = "KiwiSwift"
3+ spec . version = "0.21.0"
4+ spec . summary = "Korean Intelligent Word Identifier for iOS"
5+ spec . description = <<-DESC
6+ KiwiSwift is the iOS binding for Kiwi, a Korean morphological analyzer.
7+ This framework provides native Swift API for Korean text processing,
8+ including tokenization, morphological analysis, and sentence splitting.
9+ DESC
10+
11+ spec . homepage = "https://github.com/bab2min/Kiwi"
12+ spec . license = { :type => "LGPL-3.0" , :file => "../../LICENSE" }
13+ spec . author = { "bab2min" => "bab2min@gmail.com" }
14+
15+ spec . ios . deployment_target = "12.0"
16+ spec . osx . deployment_target = "10.15"
17+
18+ spec . source = { :git => "https://github.com/bab2min/Kiwi.git" , :tag => "v#{ spec . version } " }
19+
20+ spec . source_files = [
21+ "swift/*.swift" ,
22+ "csrc/*.cpp" ,
23+ "include/*.h" ,
24+ "../../src/**/*.{cpp,h}" ,
25+ "../../include/kiwi/*.h" ,
26+ "../../third_party/streamvbyte/include/*.h" ,
27+ "../../third_party/streamvbyte/src/*.c"
28+ ]
29+
30+ spec . public_header_files = "include/*.h"
31+ spec . private_header_files = "../../include/kiwi/*.h"
32+
33+ spec . header_search_paths = [
34+ "../../include" ,
35+ "../../third_party/streamvbyte/include" ,
36+ "../../third_party/eigen" ,
37+ "../../third_party/cpp-btree" ,
38+ "../../third_party/json/include"
39+ ]
40+
41+ spec . compiler_flags = [
42+ "-DIOS=1" ,
43+ "-DKIWI_IOS_BINDING=1" ,
44+ "-std=c++17" ,
45+ "-O3" ,
46+ "-fvisibility=hidden"
47+ ]
48+
49+ spec . xcconfig = {
50+ "CLANG_CXX_LANGUAGE_STANDARD" => "c++17" ,
51+ "CLANG_CXX_LIBRARY" => "libc++" ,
52+ "OTHER_CPLUSPLUSFLAGS" => "-DIOS=1 -DKIWI_IOS_BINDING=1"
53+ }
54+
55+ spec . frameworks = "Foundation"
56+ spec . libraries = "c++"
57+
58+ spec . requires_arc = true
59+
60+ # Exclude files that are not needed for iOS
61+ spec . exclude_files = [
62+ "../../src/**/test*" ,
63+ "../../tools/**/*" ,
64+ "../../test/**/*"
65+ ]
66+
67+ spec . prepare_command = <<-CMD
68+ # This would typically download or prepare model files
69+ echo "Preparing KiwiSwift for iOS..."
70+ CMD
71+
72+ end
0 commit comments