File tree Expand file tree Collapse file tree 7 files changed +21
-41
lines changed Expand file tree Collapse file tree 7 files changed +21
-41
lines changed Original file line number Diff line number Diff line change @@ -11,17 +11,12 @@ set -o xtrace
1111
1212build_qnn_backend () {
1313 echo " Start building qnn backend."
14- export ANDROID_NDK_ROOT=/opt/ndk
15- export QNN_SDK_ROOT=/tmp/qnn/2.28.0.241029
14+ export ANDROID_NDK_ROOT=${ANDROID_NDK_ROOT :- / opt/ ndk}
15+ export QNN_SDK_ROOT=${QNN_SDK_ROOT :- / tmp/ qnn/ 2.28.0.241029}
1616 export EXECUTORCH_ROOT=" $( cd -- " $( dirname -- " ${BASH_SOURCE[0]} " ) /../.." && pwd) "
1717
18- # Workaround to avoid issues around missing flatccrt library (depending on the
19- # number of jobs used), see issue #7300:
20- # Build twice (second time with `--no_clean`) to make sure libflatccrt.a is
21- # available.
22- # TODO: Remove this workaround once the underlying issue is fixed.
23- bash backends/qualcomm/scripts/build.sh --skip_aarch64 --job_number 2 --release || \
24- bash backends/qualcomm/scripts/build.sh --skip_aarch64 --job_number 2 --release --no_clean
18+ parallelism=$(( $(nproc) - 1 ))
19+ bash backends/qualcomm/scripts/build.sh --skip_aarch64 --job_number ${parallelism} --release
2520}
2621
2722set_up_aot () {
Original file line number Diff line number Diff line change @@ -582,6 +582,7 @@ if(EXECUTORCH_BUILD_PYBIND)
582582 ${TORCH_PYTHON_LIBRARY}
583583 bundled_program
584584 etdump
585+ flatccrt
585586 executorch
586587 extension_data_loader
587588 util
Original file line number Diff line number Diff line change @@ -97,12 +97,6 @@ if(NOT CMAKE_TOOLCHAIN_FILE MATCHES ".*(iOS|ios\.toolchain)\.cmake$")
9797 list (TRANSFORM _mps_executor_runner__srcs PREPEND "${EXECUTORCH_ROOT} /" )
9898 add_executable (mps_executor_runner ${_mps_executor_runner__srcs} )
9999
100- if (CMAKE_BUILD_TYPE MATCHES "Debug" )
101- set (FLATCC_LIB flatccrt_d)
102- else ()
103- set (FLATCC_LIB flatccrt)
104- endif ()
105-
106100 if (CMAKE_BUILD_TYPE MATCHES "Debug" )
107101 target_link_options (mps_executor_runner PUBLIC -fsanitize=undefined)
108102 endif ()
@@ -113,7 +107,7 @@ if(NOT CMAKE_TOOLCHAIN_FILE MATCHES ".*(iOS|ios\.toolchain)\.cmake$")
113107 executorch
114108 gflags
115109 etdump
116- ${FLATCC_LIB}
110+ flatccrt
117111 mpsdelegate
118112 mps_portable_ops_lib
119113 ${mps_executor_runner_libs}
Original file line number Diff line number Diff line change @@ -583,23 +583,7 @@ if(EXECUTORCH_ENABLE_EVENT_TRACER)
583583 "${ET_BUILD_DIR_PATH} /lib/libetdump.a"
584584 )
585585
586- if (CMAKE_BUILD_TYPE MATCHES "Debug" )
587- set (FLATCCRT_LIB flatccrt_d)
588- else ()
589- set (FLATCCRT_LIB flatccrt)
590- endif ()
591-
592- add_library (${FLATCCRT_LIB} STATIC IMPORTED )
593- set_property (
594- TARGET ${FLATCCRT_LIB}
595- PROPERTY IMPORTED_LOCATION
596- "${ET_BUILD_DIR_PATH} /lib/lib${FLATCCRT_LIB} .a"
597- )
598-
599- list (APPEND arm_executor_runner_link
600- etdump
601- ${FLATCCRT_LIB}
602- )
586+ list (APPEND arm_executor_runner_link etdump flatccrt)
603587endif ()
604588
605589if (ET_BUNDLE_IO)
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ target_include_directories(
2020)
2121target_link_libraries (
2222 qnn_executor_runner qnn_executorch_backend full_portable_ops_lib etdump
23- ${FLATCCRT_LIB} gflags
23+ flatccrt gflags
2424)
2525set_target_properties (
2626 qnn_executor_runner PROPERTIES LINK_FLAGS "-Wl,-rpath='$ORIGIN'"
Original file line number Diff line number Diff line change @@ -76,6 +76,11 @@ if(WIN32)
7676else ()
7777 set_target_properties (flatcc_cli PROPERTIES IMPORTED_LOCATION ${INSTALL_DIR} /bin/flatcc)
7878endif ()
79+ # Unfortunately flatcc writes libs directly in to the source tree:
80+ # https://github.com/dvidelabs/flatcc/blob/896db54787e8b730a6be482c69324751f3f5f117/CMakeLists.txt#L168
81+ # So delete the artifacts.
82+ file (REMOVE_RECURSE ${PROJECT_SOURCE_DIR} /third-party/flatcc/lib)
83+ file (REMOVE_RECURSE ${PROJECT_SOURCE_DIR} /third-party/flatcc/bin)
7984
8085set (FLATCC_RTONLY ON CACHE BOOL "" )
8186set (FLATCC_TEST OFF CACHE BOOL "" )
@@ -89,6 +94,9 @@ add_subdirectory(flatcc)
8994#
9095# Learn more: https://github.com/pytorch/executorch/pull/2467
9196set_property (TARGET flatccrt PROPERTY POSITION_INDEPENDENT_CODE ON )
97+ # flatcc appends a "_d" suffix (flatccrt_d) to debug builds. To simplify our
98+ # reference to the lib, remove the suffix.
99+ set_property (TARGET flatccrt PROPERTY DEBUG_POSTFIX "" )
92100install (
93101 TARGETS flatccrt
94102 DESTINATION ${CMAKE_BINARY_DIR} /lib
Original file line number Diff line number Diff line change @@ -56,18 +56,12 @@ set(EXECUTORCH_FOUND ON)
5656
5757target_link_libraries (executorch INTERFACE executorch_core)
5858
59- if (CMAKE_BUILD_TYPE MATCHES "Debug" )
60- set (FLATCCRT_LIB flatccrt_d)
61- else ()
62- set (FLATCCRT_LIB flatccrt)
63- endif ()
64-
6559set (lib_list
60+ flatccrt
6661 etdump
6762 bundled_program
6863 extension_data_loader
6964 extension_flat_tensor
70- ${FLATCCRT_LIB}
7165 coreml_util
7266 coreml_inmemoryfs
7367 coremldelegate
@@ -154,6 +148,10 @@ if(TARGET coremldelegate)
154148 )
155149endif ()
156150
151+ if (TARGET etdump)
152+ set_target_properties (etdump PROPERTIES INTERFACE_LINK_LIBRARIES "flatccrt;executorch" )
153+ endif ()
154+
157155if (TARGET optimized_native_cpu_ops_lib)
158156 if (TARGET optimized_portable_kernels)
159157 set (_maybe_optimized_portable_kernels_lib optimized_portable_kernels)
You can’t perform that action at this time.
0 commit comments