1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
include(FindPackageHandleStandardArgs)
# TODO laszip_api && laszip version from header
message(FATALL_ERROR "toolchain: ${CMAKE_TOOLCHAIN_FILE}")
if (DEFINED ENV{CONDA_PREFIX})
set(CONDA_INCLUDE_DIR $ENV{CONDA_PREFIX}/Library/include)
if (WIN32)
set(CONDA_LIBRARY_DIR $ENV{CONDA_PREFIX}/Library/lib)
else()
set(CONDA_LIBRARY_DIR $ENV{CONDA_PREFIX}/lib)
endif()
endif()
find_library(LASZIP_LIBRARY
NAMES laszip3 laszip
HINTS /usr/lib
/usr/local/lib
"${CONDA_LIBRARY_DIR}"
)
find_path(LASZIP_INCLUDE_DIR
NAMES laszip
HINTS /usr/include
/usr/local/include
"${CONDA_INCLUDE_DIR}"
)
if (WIN32)
find_file(LASZIP_DLL
NAMES laszip3.dll
HINTS "${LASZIP_INCLUDE_DIR}/../bin"
)
else ()
set(LASZIP_DLL "Dummy Value so that handle args does not fail")
endif ()
message(DEBUG "LASZIP_LIBRARY: ${LASZIP_LIBRARY}")
message(DEBUG "LASZIP_DLL: ${LASZIP_DLL}")
find_package_handle_standard_args(LASzip
REQUIRED_VARS LASZIP_LIBRARY LASZIP_INCLUDE_DIR LASZIP_DLL
HANDLE_COMPONENTS
)
if (LASzip_FOUND)
mark_as_advanced(LASZIP_LIBRARY LASZIP_INCLUDE_DIR)
endif ()
if (LASzip_FOUND AND NOT TARGET LASzip::LASzip)
add_library(LASzip::LASzip SHARED IMPORTED)
if (WIN32)
set_target_properties(LASzip::LASzip PROPERTIES
IMPORTED_LOCATION ${LASZIP_DLL}
IMPORTED_IMPLIB ${LASZIP_LIBRARY}
)
else ()
set_target_properties(LASzip::LASzip PROPERTIES
IMPORTED_LOCATION ${LASZIP_LIBRARY})
endif ()
target_include_directories(LASzip::LASzip INTERFACE ${LASZIP_INCLUDE_DIR})
endif ()
|