@@ -13,6 +13,8 @@ if(NOT CMAKE_CXX_STANDARD)
13
13
set (CMAKE_CXX_STANDARD 17 )
14
14
endif ()
15
15
16
+ enable_language (OBJCXX )
17
+
16
18
# Source root directory for executorch.
17
19
if (NOT EXECUTORCH_ROOT )
18
20
set (EXECUTORCH_ROOT ${CMAKE_CURRENT_SOURCE_DIR} /../../.. )
@@ -116,20 +118,31 @@ set(PROTOBUF_SOURCES
116
118
runtime/sdk/format/WordTagger.pb.cc
117
119
)
118
120
121
+ find_library (FOUNDATION_FRAMEWORK Foundation )
122
+
119
123
# CoreML util
120
- add_library (coreml_util )
121
- target_sources (coreml_util PRIVATE ${UTIL_SOURCES} )
122
- target_include_directories (coreml_util
123
- PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} /runtime/util
124
+ add_library (coreml_util ${UTIL_SOURCES} )
125
+ target_include_directories (coreml_util PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} /runtime/util )
126
+ target_link_libraries (coreml_util PRIVATE ${FOUNDATION_FRAMEWORK} )
127
+
128
+ install (
129
+ TARGETS coreml_util
130
+ DESTINATION lib
131
+ INCLUDES
132
+ DESTINATION ${_common_include_directories}
124
133
)
125
134
126
135
# CoreML inmemoryfs
127
- add_library (coreml_inmemoryfs )
128
- target_sources (coreml_inmemoryfs PRIVATE ${INMEMORYFS_SOURCES} )
129
- target_include_directories (coreml_inmemoryfs
130
- PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} /runtime/inmemoryfs
136
+ add_library (coreml_inmemoryfs ${INMEMORYFS_SOURCES} )
137
+ target_include_directories (coreml_inmemoryfs PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} /runtime/inmemoryfs )
138
+ target_link_libraries (coreml_inmemoryfs PRIVATE coreml_util ${FOUNDATION_FRAMEWORK} )
139
+
140
+ install (
141
+ TARGETS coreml_inmemoryfs
142
+ DESTINATION lib
143
+ INCLUDES
144
+ DESTINATION ${_common_include_directories}
131
145
)
132
- target_link_libraries (coreml_inmemoryfs PRIVATE coreml_util )
133
146
134
147
# Define the delegate library
135
148
add_library (coremldelegate )
@@ -147,9 +160,6 @@ target_include_directories(
147
160
target_include_directories (coremldelegate PRIVATE ${EXECUTORCH_ROOT} /.. )
148
161
target_include_directories (coremldelegate PRIVATE ${EXECUTORCH_ROOT} /runtime/core/portable_type/c10 )
149
162
target_compile_definitions (coremldelegate PRIVATE C10_USING_CUSTOM_GENERATED_MACROS )
150
- target_link_libraries (coremldelegate PRIVATE coreml_util )
151
- target_link_libraries (coremldelegate PRIVATE coreml_inmemoryfs )
152
- target_link_libraries (coremldelegate PRIVATE executorch_core )
153
163
154
164
if (EXECUTORCH_BUILD_DEVTOOLS )
155
165
target_sources (coremldelegate PRIVATE ${SDK_SOURCES} ${PROTOBUF_SOURCES} )
@@ -169,13 +179,17 @@ endif()
169
179
170
180
find_library (ACCELERATE_FRAMEWORK Accelerate )
171
181
find_library (COREML_FRAMEWORK CoreML )
172
- find_library (FOUNDATION_FRAMEWORK Foundation )
173
182
find_library (SQLITE_LIBRARY sqlite3 )
174
183
175
184
target_link_libraries (
176
185
coremldelegate
177
- PRIVATE executorch_core ${ACCELERATE_FRAMEWORK} ${COREML_FRAMEWORK}
178
- ${FOUNDATION_FRAMEWORK} ${SQLITE_LIBRARY}
186
+ PUBLIC coreml_util
187
+ coreml_inmemoryfs
188
+ PRIVATE executorch_core
189
+ ${ACCELERATE_FRAMEWORK}
190
+ ${COREML_FRAMEWORK}
191
+ ${FOUNDATION_FRAMEWORK}
192
+ ${SQLITE_LIBRARY}
179
193
)
180
194
181
195
target_link_options_shared_lib (coremldelegate )
0 commit comments