diff --git a/examples/models/llama/CMakeLists.txt b/examples/models/llama/CMakeLists.txt index b850e4e6c0b..5f56e111e3d 100644 --- a/examples/models/llama/CMakeLists.txt +++ b/examples/models/llama/CMakeLists.txt @@ -77,9 +77,11 @@ find_package(gflags REQUIRED) # llama_main: test binary to run llama, with tokenizer and sampler integrated # -# find `executorch` libraries Same as for gflags -set(executorch_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../../lib/cmake/ExecuTorch) -find_package(executorch CONFIG REQUIRED) +# find `executorch` libraries. CMAKE_PREFIX_PATH would work for host +# compilation, but CMAKE_FIND_ROOT_PATH appears to be necessary for +# cross-compiling (e.g., to Android) to work as well. +list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_CURRENT_BINARY_DIR}/../../..) +find_package(executorch CONFIG REQUIRED FIND_ROOT_PATH_BOTH) target_link_options_shared_lib(executorch) # llama_runner library diff --git a/examples/models/llava/CMakeLists.txt b/examples/models/llava/CMakeLists.txt index 5edb4e0b386..c988be028d0 100644 --- a/examples/models/llava/CMakeLists.txt +++ b/examples/models/llava/CMakeLists.txt @@ -76,8 +76,8 @@ find_package(gflags REQUIRED) # # find `executorch` libraries Same as for gflags -set(executorch_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../../lib/cmake/ExecuTorch) -find_package(executorch CONFIG REQUIRED) +list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_CURRENT_BINARY_DIR}/../../..) +find_package(executorch CONFIG REQUIRED FIND_ROOT_PATH_BOTH) target_link_options_shared_lib(executorch) # llava_runner library diff --git a/examples/models/phi-3-mini/CMakeLists.txt b/examples/models/phi-3-mini/CMakeLists.txt index 53aecffa5c3..0814476f6f9 100644 --- a/examples/models/phi-3-mini/CMakeLists.txt +++ b/examples/models/phi-3-mini/CMakeLists.txt @@ -24,8 +24,8 @@ set(EXECUTORCH_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/../../..") set(_common_include_directories ${EXECUTORCH_ROOT}/.. ${EXECUTORCH_ROOT}/runtime/core/portable_type/c10 ) -set(executorch_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../../lib/cmake/ExecuTorch) -find_package(executorch CONFIG REQUIRED) +list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_CURRENT_BINARY_DIR}/../../..) +find_package(executorch CONFIG REQUIRED FIND_ROOT_PATH_BOTH) target_link_options_shared_lib(executorch) diff --git a/extension/android/CMakeLists.txt b/extension/android/CMakeLists.txt index e890bd653da..d9d2c982d39 100644 --- a/extension/android/CMakeLists.txt +++ b/extension/android/CMakeLists.txt @@ -60,7 +60,6 @@ set_target_properties(fbjni PROPERTIES IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/third-party/fbjni/prefab/modules/fbjni/libs/android.${ANDROID_ABI}/libfbjni.so" ) -set(executorch_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../lib/cmake/ExecuTorch) target_link_options_shared_lib(executorch) add_library(executorch_jni SHARED jni/jni_layer.cpp jni/log.cpp jni/jni_layer_runtime.cpp)