+33
-6
@@ -38,12 +38,39 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
pico_sdk_init()
|
||||
|
||||
set(VAMP_MODULUS_INCLUDE_DIR "" CACHE PATH "Path to the Modulus public include directory")
|
||||
if(NOT VAMP_MODULUS_INCLUDE_DIR)
|
||||
set(VAMP_MODULUS_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../modulus/include")
|
||||
set(VAMP_RESOLVED_MODULUS_INCLUDE_DIR "${VAMP_MODULUS_INCLUDE_DIR}")
|
||||
if(NOT VAMP_RESOLVED_MODULUS_INCLUDE_DIR)
|
||||
set(VAMP_MODULUS_CONAN_CACHE_DIRS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/build/build_common/conan_cache"
|
||||
)
|
||||
if(DEFINED ENV{CONAN_HOME} AND NOT "$ENV{CONAN_HOME}" STREQUAL "")
|
||||
get_filename_component(VAMP_MODULUS_CONAN_HOME "$ENV{CONAN_HOME}" ABSOLUTE BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
list(PREPEND VAMP_MODULUS_CONAN_CACHE_DIRS "${VAMP_MODULUS_CONAN_HOME}")
|
||||
endif()
|
||||
get_filename_component(VAMP_MODULUS_INCLUDE_DIR "${VAMP_MODULUS_INCLUDE_DIR}" ABSOLUTE BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
if(NOT EXISTS "${VAMP_MODULUS_INCLUDE_DIR}/modulus/types.hpp")
|
||||
message(FATAL_ERROR "VAMP_MODULUS_INCLUDE_DIR must contain modulus/types.hpp: ${VAMP_MODULUS_INCLUDE_DIR}")
|
||||
foreach(cache_dir IN LISTS VAMP_MODULUS_CONAN_CACHE_DIRS)
|
||||
file(GLOB VAMP_MODULUS_CONAN_INCLUDE_CANDIDATES CONFIGURE_DEPENDS
|
||||
"${cache_dir}/p/*/p/include"
|
||||
"${cache_dir}/p/*/es/include"
|
||||
)
|
||||
list(APPEND VAMP_MODULUS_INCLUDE_CANDIDATES ${VAMP_MODULUS_CONAN_INCLUDE_CANDIDATES})
|
||||
endforeach()
|
||||
set(VAMP_MODULUS_INCLUDE_CANDIDATES
|
||||
${VAMP_MODULUS_INCLUDE_CANDIDATES}
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/../modulus/include"
|
||||
)
|
||||
list(REMOVE_DUPLICATES VAMP_MODULUS_INCLUDE_CANDIDATES)
|
||||
foreach(candidate IN LISTS VAMP_MODULUS_INCLUDE_CANDIDATES)
|
||||
if(EXISTS "${candidate}/modulus/types.hpp")
|
||||
set(VAMP_RESOLVED_MODULUS_INCLUDE_DIR "${candidate}")
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
if(VAMP_RESOLVED_MODULUS_INCLUDE_DIR)
|
||||
get_filename_component(VAMP_RESOLVED_MODULUS_INCLUDE_DIR "${VAMP_RESOLVED_MODULUS_INCLUDE_DIR}" ABSOLUTE BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
endif()
|
||||
if(NOT EXISTS "${VAMP_RESOLVED_MODULUS_INCLUDE_DIR}/modulus/types.hpp")
|
||||
message(FATAL_ERROR "VAMP_MODULUS_INCLUDE_DIR must contain modulus/types.hpp: ${VAMP_RESOLVED_MODULUS_INCLUDE_DIR}")
|
||||
endif()
|
||||
|
||||
add_executable(product-vamp-pico2w
|
||||
@@ -57,7 +84,7 @@ add_executable(product-vamp-pico2w
|
||||
)
|
||||
target_include_directories(product-vamp-pico2w PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${VAMP_MODULUS_INCLUDE_DIR}
|
||||
${VAMP_RESOLVED_MODULUS_INCLUDE_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include/vamp_pico/capi
|
||||
)
|
||||
target_compile_definitions(product-vamp-pico2w PRIVATE
|
||||
|
||||
Reference in New Issue
Block a user