31 lines
No EOL
913 B
CMake
31 lines
No EOL
913 B
CMake
cmake_minimum_required(VERSION 3.6.0)
|
|
project(libhoymiles VERSION 0.1.0 LANGUAGES C CXX)
|
|
|
|
include_directories(
|
|
inc
|
|
inc/portParameters
|
|
inc/sunspecParameters
|
|
|
|
src/libmodbus/inc
|
|
)
|
|
|
|
file(GLOB SOURCES
|
|
src/*.cpp
|
|
src/portParameters/*.cpp
|
|
src/sunspecParameters/*.cpp
|
|
)
|
|
|
|
add_library(libhoymiles STATIC ${SOURCES})
|
|
|
|
add_subdirectory(src/libmodbus)
|
|
target_link_libraries(libhoymiles libmodbus)
|
|
|
|
add_executable(libhoymiles_example src/main.cpp)
|
|
target_link_libraries(libhoymiles_example libhoymiles)
|
|
|
|
|
|
if(WIN32)
|
|
set(CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES} -static -static-libgcc -static-libstdc++")
|
|
set(CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES} -static-libgcc -static-libstdc++ -lwsock32 -lws2_32")
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-Bstatic,--whole-archive -lwinpthread -Wl,--no-whole-archive")
|
|
endif(WIN32) |