Skip to content

Commit 6d51bff

Browse files
committed
Update
[ghstack-poisoned]
1 parent 5814a3b commit 6d51bff

File tree

22 files changed

+64
-32
lines changed

22 files changed

+64
-32
lines changed

CMakeLists.txt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ if(NOT "${_repo_dir_name}" STREQUAL "executorch")
384384
"fix for this restriction."
385385
)
386386
endif()
387-
set(_common_include_directories ${CMAKE_CURRENT_SOURCE_DIR}/.. ${CMAKE_CURRENT_SOURCE_DIR}/runtime/core/portable_type/c10)
387+
set(_common_include_directories $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..,${CMAKE_CURRENT_SOURCE_DIR}/runtime/core/portable_type/c10> $<INSTALL_INTERFACE:include,include/executorch/runtime/core/portable_type/c10>)
388388

389389
#
390390
# The `_<target>_srcs` lists are defined by including ${EXECUTORCH_SRCS_FILE}.
@@ -653,6 +653,7 @@ install(DIRECTORY extension/tensor/ DESTINATION include/executorch/extension/te
653653
install(DIRECTORY extension/threadpool/ DESTINATION include/executorch/extension/threadpool FILES_MATCHING PATTERN "*.h")
654654
install(
655655
TARGETS executorch executorch_core
656+
EXPORT ExecuTorchTargets
656657
DESTINATION lib
657658
INCLUDES
658659
DESTINATION ${_common_include_directories}
@@ -835,6 +836,7 @@ if(EXECUTORCH_BUILD_PYBIND)
835836
target_link_libraries(portable_lib PRIVATE ${_dep_libs})
836837

837838
install(TARGETS portable_lib
839+
EXPORT ExecuTorchTargets
838840
LIBRARY DESTINATION executorch/extension/pybindings
839841
)
840842

@@ -863,6 +865,7 @@ if(EXECUTORCH_BUILD_PYBIND)
863865
target_link_libraries(_training_lib PRIVATE ${_pybind_training_dep_libs})
864866

865867
install(TARGETS _training_lib
868+
EXPORT ExecuTorchTargets
866869
LIBRARY DESTINATION executorch/extension/training/pybindings
867870
)
868871
endif()
@@ -921,5 +924,8 @@ endif()
921924

922925
include(Test.cmake)
923926

927+
install(EXPORT ExecuTorchTargets
928+
FILE ExecuTorchTargets.cmake
929+
DESTINATION lib/cmake/ExecuTorch)
924930
# Print all summary
925931
executorch_print_configuration_summary()

backends/apple/coreml/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ set(TARGET coremldelegate APPEND_STRING PROPERTY COMPILE_FLAGS
200200

201201
install(
202202
TARGETS coremldelegate
203+
EXPORT ExecuTorchTargets
203204
DESTINATION lib
204205
INCLUDES
205206
DESTINATION ${_common_include_directories}

backends/apple/mps/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ target_compile_options(mpsdelegate PRIVATE "-fno-objc-arc")
8888

8989
install(
9090
TARGETS mpsdelegate
91+
EXPORT ExecuTorchTargets
9192
DESTINATION lib
9293
INCLUDES
9394
DESTINATION ${_common_include_directories}

backends/mediatek/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,4 @@ target_sources(
4646
)
4747
target_link_options_shared_lib(neuron_backend)
4848

49-
install(TARGETS neuron_backend DESTINATION lib)
49+
install(TARGETS neuron_backend EXPORT ExecuTorchTargets DESTINATION lib)

backends/qualcomm/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ add_subdirectory(
220220
${QNN_EXECUTORCH_ROOT_DIR}/aot/ir
221221
${CMAKE_CURRENT_BINARY_DIR}/qnn_executorch/ir
222222
)
223-
install(TARGETS qnn_executorch_backend DESTINATION lib)
223+
install(TARGETS qnn_executorch_backend EXPORT ExecuTorchTargets DESTINATION lib)
224224

225225
# QNN pybind
226226
if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86_64")

backends/vulkan/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@ endif()
148148

149149
install(
150150
TARGETS vulkan_backend
151+
EXPORT ExecuTorchTargets
151152
DESTINATION lib
152153
INCLUDES
153154
DESTINATION ${COMMON_INCLUDES}

backends/xnnpack/CMakeLists.txt

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ if(EXECUTORCH_XNNPACK_ENABLE_KLEIDI)
4848
add_definitions(-DENABLE_XNNPACK_KLEIDI)
4949
endif()
5050

51-
set(_common_include_directories ${EXECUTORCH_ROOT}/..)
5251
set(_common_compile_options -Wno-deprecated-declarations -fPIC)
5352

5453
set(_xnnpack_schema__include_dir "${CMAKE_BINARY_DIR}/schema/include")
@@ -89,10 +88,9 @@ add_custom_command(
8988
add_library(xnnpack_schema INTERFACE ${_xnnpack_schema__outputs})
9089
set_target_properties(xnnpack_schema PROPERTIES LINKER_LANGUAGE CXX)
9190
target_include_directories(
92-
xnnpack_schema INTERFACE ${_xnnpack_schema__include_dir}
93-
${EXECUTORCH_ROOT}/third-party/flatbuffers/include
91+
xnnpack_schema INTERFACE $<BUILD_INTERFACE:${_xnnpack_schema__include_dir}>
9492
)
95-
93+
target_link_libraries(xnnpack_schema INTERFACE flatbuffers)
9694
set(xnnpack_third_party pthreadpool cpuinfo)
9795

9896
include(cmake/Dependencies.cmake)
@@ -106,14 +104,14 @@ target_link_libraries(
106104
target_include_directories(
107105
xnnpack_backend PUBLIC ${_common_include_directories}
108106
)
109-
target_include_directories(xnnpack_backend PUBLIC ${XNNPACK_INCLUDE_DIR})
107+
target_include_directories(xnnpack_backend PRIVATE ${XNNPACK_INCLUDE_DIR})
110108
target_include_directories(
111109
xnnpack_backend
112-
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/third-party/pthreadpool/include
110+
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/third-party/pthreadpool/include
113111
)
114112
target_include_directories(
115113
xnnpack_backend
116-
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/third-party/cpuinfo/include
114+
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/third-party/cpuinfo/include
117115
)
118116
target_compile_options(xnnpack_backend PUBLIC ${_common_compile_options})
119117
target_link_options_shared_lib(xnnpack_backend)
@@ -155,7 +153,10 @@ if(NOT CMAKE_TOOLCHAIN_FILE MATCHES ".*(iOS|ios\.toolchain)\.cmake$")
155153
endif()
156154

157155
install(
158-
TARGETS xnnpack_backend
156+
# XNNPACK doesn't export the XNNPACK and following targets,
157+
# so we need to export them ourselves.
158+
TARGETS xnnpack_backend xnnpack_schema XNNPACK fxdiv
159+
EXPORT ExecuTorchTargets
159160
DESTINATION lib
160161
INCLUDES
161162
DESTINATION ${_common_include_directories}

backends/xnnpack/cmake/Dependencies.cmake

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,15 @@ add_subdirectory("${XNNPACK_SOURCE_DIR}")
5858
include_directories(SYSTEM ${XNNPACK_INCLUDE_DIR})
5959
list(APPEND xnnpack_third_party XNNPACK)
6060
install(TARGETS microkernels-prod
61+
EXPORT ExecuTorchTargets
6162
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
6263
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
6364
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
6465

6566

6667
if(EXECUTORCH_XNNPACK_ENABLE_KLEIDI)
6768
install(TARGETS kleidiai
69+
EXPORT ExecuTorchTargets
6870
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
6971
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
7072
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})

configurations/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,5 +57,5 @@ if(EXECUTORCH_BUILD_KERNELS_OPTIMIZED)
5757
executorch
5858
)
5959

60-
install(TARGETS optimized_native_cpu_ops_lib DESTINATION lib)
60+
install(TARGETS optimized_native_cpu_ops_lib EXPORT ExecuTorchTargets DESTINATION lib)
6161
endif()

extension/data_loader/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,13 @@ endif()
1919
list(TRANSFORM _extension_data_loader__srcs PREPEND "${EXECUTORCH_ROOT}/")
2020
add_library(extension_data_loader ${_extension_data_loader__srcs})
2121
target_link_libraries(extension_data_loader executorch)
22-
target_include_directories(extension_data_loader PUBLIC ${EXECUTORCH_ROOT}/..)
22+
target_include_directories(extension_data_loader PUBLIC ${_common_include_directories})
2323
target_compile_options(extension_data_loader PUBLIC ${_common_compile_options})
2424

2525
# Install libraries
2626
install(
2727
TARGETS extension_data_loader
28+
EXPORT ExecuTorchTargets
2829
DESTINATION lib
2930
INCLUDES
3031
DESTINATION ${_common_include_directories}

0 commit comments

Comments
 (0)