@cpp.js/package-zlib
Version:
This package provides the precompiled zlib library, built using cpp.js, for easy integration into JavaScript, WebAssembly and React Native projects. It offers compression and decompression functionalities through the zlib API, ensuring high performance an
45 lines (40 loc) • 1.45 kB
Plain Text
cmake_minimum_required(VERSION 3.28)
set(CMAKE_CXX_STANDARD 11)
set(PROJECT_NAME "z")
set(PROJECT_LIBS "z")
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()