commit 2f56f4c23ea840f9d15c43801368cf4a089efa84 Author: sophgo-forum-service <forum_service@sophgo.com> Date: Sun May 19 23:03:28 2024 +0800 [feat] cnpy opensource for cv18xx soc. - e9d84e
66 lines
1.9 KiB
CMake
66 lines
1.9 KiB
CMake
CMAKE_MINIMUM_REQUIRED(VERSION 3.0 FATAL_ERROR)
|
|
if(COMMAND cmake_policy)
|
|
cmake_policy(SET CMP0003 NEW)
|
|
endif(COMMAND cmake_policy)
|
|
|
|
if (NOT DEFINED LLVM_MAIN_SRC_DIR)
|
|
project(CNPY)
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
|
|
|
message(STATUS "CMAKE_SYSROOT ${CMAKE_SYSROOT}")
|
|
include_directories(${CMAKE_SYSROOT}/include)
|
|
|
|
include_directories(${CMAKE_INSTALL_PREFIX}/include)
|
|
link_directories(${CMAKE_INSTALL_PREFIX}/lib)
|
|
|
|
set(ENV{PKG_CONFIG_DIR} "")
|
|
set(ENV{PKG_CONFIG_LIBDIR} "${CMAKE_SYSROOT}/usr/lib/pkgconfig:${CMAKE_SYSROOT}/usr/share/pkgconfig")
|
|
set(ENV{PKG_CONFIG_SYSROOT_DIR} ${CMAKE_SYSROOT})
|
|
find_package(ZLIB)
|
|
|
|
option(ENABLE_STATIC "Build static (.a) library" ON)
|
|
add_library(cnpy SHARED "cnpy.cpp")
|
|
target_link_libraries(cnpy z)
|
|
install(TARGETS "cnpy" LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
|
|
|
if(ENABLE_STATIC)
|
|
add_library(cnpy-static STATIC "cnpy.cpp")
|
|
set_target_properties(cnpy-static PROPERTIES OUTPUT_NAME "cnpy")
|
|
install(TARGETS "cnpy-static" ARCHIVE DESTINATION lib)
|
|
endif(ENABLE_STATIC)
|
|
|
|
install(FILES "cnpy.h" DESTINATION include)
|
|
install(FILES "mat2npz" "npy2mat" "npz2mat" DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
|
|
|
add_executable(example1 example1.cpp)
|
|
target_link_libraries(example1 cnpy)
|
|
|
|
else()
|
|
message(STATUS "CNPY LLVM Tree Build")
|
|
|
|
add_custom_target(CNPY)
|
|
set_target_properties(CNPY PROPERTIES FOLDER Third_party)
|
|
add_dependencies(CNPY
|
|
cnpy
|
|
cnpy_example1
|
|
)
|
|
|
|
set(LLVM_OPTIONAL_SOURCES
|
|
cnpy.cpp
|
|
example1.cpp
|
|
)
|
|
|
|
find_package(ZLIB REQUIRED)
|
|
|
|
add_llvm_library(cnpy SHARED
|
|
cnpy.cpp)
|
|
target_link_libraries(cnpy ${ZLIB_LIBRARIES})
|
|
|
|
install(FILES "cnpy.h" DESTINATION include)
|
|
add_llvm_executable(cnpy_example1
|
|
example1.cpp)
|
|
target_link_libraries(cnpy_example1 PRIVATE
|
|
cnpy)
|
|
endif()
|