@cpp.js/package-geotiff
Version:
This package provides the precompiled geotiff library, built using cpp.js, for easy integration into JavaScript, WebAssembly and React Native projects. Designed for working with GeoTIFF files, offering robust support for geospatial metadata handling, ensu
45 lines (40 loc) • 1.46 kB
Plain Text
cmake_minimum_required(VERSION 3.28)
set(CMAKE_CXX_STANDARD 11)
set(PROJECT_NAME "geotiff")
set(PROJECT_LIBS "geotiff")
project("${PROJECT_NAME}")
if(ANDROID)
set(PACKAGE_HOST "${CMAKE_SYSTEM_NAME}-${CMAKE_ANDROID_ARCH_ABI}")
set(PACKAGE_DIR "${PROJECT_SOURCE_DIR}/${PACKAGE_HOST}/lib")
elseif(APPLE)
if (CMAKE_SYSTEM_NAME STREQUAL "iOS")
set(PACKAGE_DIR "${PROJECT_SOURCE_DIR}/../..")
else()
set(PACKAGE_HOST "${CMAKE_SYSTEM_NAME}-${CMAKE_HOST_SYSTEM_PROCESSOR}")
set(PACKAGE_DIR "${PROJECT_SOURCE_DIR}/${PACKAGE_HOST}/lib")
endif()
elseif(UNIX)
set(PACKAGE_HOST "${CMAKE_SYSTEM_NAME}-${CMAKE_HOST_SYSTEM_PROCESSOR}")
set(PACKAGE_DIR "${PROJECT_SOURCE_DIR}/${PACKAGE_HOST}/lib")
else()
set(PACKAGE_HOST "${CMAKE_SYSTEM_NAME}-${CMAKE_HOST_SYSTEM_PROCESSOR}")
set(PACKAGE_DIR "${PROJECT_SOURCE_DIR}/${PACKAGE_HOST}/lib")
endif()
set(PROJECT_LIBS_DIR)
foreach(L IN LISTS PROJECT_LIBS)
SET(FOUND_LIB "FOUND_LIB-NOTFOUND")
find_library(FOUND_LIB
NAMES "${L}"
PATHS "${PACKAGE_DIR}"
NO_CACHE
NO_DEFAULT_PATH
NO_CMAKE_FIND_ROOT_PATH
REQUIRED
)
LIST(APPEND PROJECT_LIBS_DIR ${FOUND_LIB})
endforeach()
add_library("${PROJECT_NAME}" INTERFACE)
target_link_libraries("${PROJECT_NAME}" INTERFACE "${PROJECT_LIBS_DIR}")
if(NOT APPLE)
target_include_directories("${PROJECT_NAME}" INTERFACE "${PROJECT_SOURCE_DIR}/${PACKAGE_HOST}/include")
endif()