cmake_minimum_required(VERSION 3.14) project(xlsx_reader VERSION 1.0.0 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_POSITION_INDEPENDENT_CODE ON) set(CMAKE_CXX_VISIBILITY_PRESET hidden) set(CMAKE_VISIBILITY_INLINES_HIDDEN ON) include(FetchContent) add_subdirectory(third_party/OpenXLSX) set(OPENXLSX_STATIC ON CACHE BOOL "Build OpenXLSX as static library") FetchContent_MakeAvailable(OpenXLSX) add_library(xlsx_reader SHARED src/xlsx_reader.cpp) target_include_directories(xlsx_reader PUBLIC include) target_link_libraries(xlsx_reader PRIVATE OpenXLSX::OpenXLSX) target_compile_definitions(xlsx_reader PRIVATE XLSX_BUILD_SHARED)