Files
ConanPackages/flatbuffers/all/cmake/FlatcTargets.cmake
2026-01-23 22:15:36 +01:00

32 lines
1.2 KiB
CMake

if(NOT TARGET flatbuffers::flatc)
if(CMAKE_CROSSCOMPILING)
find_program(FLATBUFFERS_FLATC_EXECUTABLE
NAMES flatc
PATHS ENV PATH
NO_DEFAULT_PATH
)
else()
find_program(FLATBUFFERS_FLATC_EXECUTABLE
NAMES flatc
PATHS "${CMAKE_CURRENT_LIST_DIR}/../../bin/"
NO_DEFAULT_PATH
)
endif()
# TODO: In conan v2 with CMakeToolchain, can be replaced by:
# find_program(FLATBUFFERS_FLATC_EXECUTABLE NAMES flatc)
# # Nice enough to handle flatbuffers not in build_requires for native build
# if(NOT FLATBUFFERS_FLATC_EXECUTABLE AND NOT CMAKE_CROSSCOMPILING)
# find_program(FLATBUFFERS_FLATC_EXECUTABLE
# NAMES flatc
# PATHS "${CMAKE_CURRENT_LIST_DIR}/../../bin/"
# NO_DEFAULT_PATH
# )
# endif()
if(FLATBUFFERS_FLATC_EXECUTABLE)
get_filename_component(FLATBUFFERS_FLATC_EXECUTABLE "${FLATBUFFERS_FLATC_EXECUTABLE}" ABSOLUTE)
add_executable(flatbuffers::flatc IMPORTED)
set_property(TARGET flatbuffers::flatc PROPERTY IMPORTED_LOCATION ${FLATBUFFERS_FLATC_EXECUTABLE})
endif()
endif()