191 lines
5.5 KiB
CMake
191 lines
5.5 KiB
CMake
cmake_minimum_required(VERSION 2.8.4)
|
|
project(libvncxx CXX)
|
|
|
|
set(CMAKE_SUPPRESS_REGENERATION TRUE)
|
|
#add_definitions(-DPL150)
|
|
#
|
|
#set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
#option(BUILD_TESTS "Build tests." OFF)
|
|
#option(BUILD_BENCHMARKS "Build benchmarks." OFF)
|
|
#option(PYTHON "Build for Python library." OFF)
|
|
#option(BUILD_GRAPHICS "Build in the graphics library." OFF)
|
|
|
|
#set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
|
|
|
set(SOURCE
|
|
src/attitude.cpp
|
|
src/compositedata.cpp
|
|
src/conversions.cpp
|
|
src/criticalsection.cpp
|
|
src/dllvalidator.cpp
|
|
src/error_detection.cpp
|
|
src/event.cpp
|
|
src/ezasyncdata.cpp
|
|
src/memoryport.cpp
|
|
src/packet.cpp
|
|
src/packetfinder.cpp
|
|
src/port.cpp
|
|
src/position.cpp
|
|
src/rtcmlistener.cpp
|
|
src/rtcmmessage.cpp
|
|
src/searcher.cpp
|
|
src/sensors.cpp
|
|
src/serialport.cpp
|
|
src/thread.cpp
|
|
src/types.cpp
|
|
src/util.cpp
|
|
src/utilities.cpp
|
|
src/vntime.cpp
|
|
include/vn/exceptions.h
|
|
include/vn/matrix.h
|
|
include/vn/attitude.h
|
|
include/vn/boostpython.h
|
|
include/vn/dllvalidator.h
|
|
include/vn/signal.h
|
|
include/vn/error_detection.h
|
|
include/vn/position.h
|
|
include/vn/registers.h
|
|
include/vn/rtcmlistener.h
|
|
include/vn/rtcmmessage.h
|
|
include/vn/utilities.h
|
|
include/vn/memoryport.h
|
|
include/vn/nocopy.h
|
|
include/vn/compositedata.h
|
|
include/vn/criticalsection.h
|
|
include/vn/compiler.h
|
|
include/vn/sensors.h
|
|
include/vn/searcher.h
|
|
include/vn/event.h
|
|
include/vn/ezasyncdata.h
|
|
include/vn/serialport.h
|
|
include/vn/export.h
|
|
include/vn/vector.h
|
|
include/vn/vntime.h
|
|
include/vn/packetfinder.h
|
|
include/vn/conversions.h
|
|
include/vn/types.h
|
|
include/vn/int.h
|
|
include/vn/thread.h
|
|
include/vn/mock.h
|
|
include/vn/port.h
|
|
include/vn/util.h
|
|
include/vn/consts.h
|
|
include/vn/packet.h)
|
|
|
|
include_directories(
|
|
include)
|
|
|
|
add_library(libvncxx ${SOURCE})
|
|
|
|
#add_subdirectory(examples/ez_async_data)
|
|
#add_subdirectory(examples/getting_started)
|
|
#add_subdirectory(examples/math)
|
|
#add_subdirectory(examples/uart_protocol)
|
|
|
|
#
|
|
#if (BUILD_GRAPHICS)
|
|
#
|
|
# include_directories(
|
|
# ../libs/glew/include
|
|
# ../libs/glm)
|
|
#
|
|
#
|
|
# #target_link_libraries(proglib-cpp-graphics PRIVATE GLEW_shared)
|
|
#
|
|
## set(CMAKE_PREFIX_PATH "../libs/glew")
|
|
## set(CMAKE_LIBRARY_PATH "../libs/glew/lib/Release/Win32/")
|
|
#
|
|
# #message("DIR: ${GLEW_INCLUDE_DIR}")
|
|
## find_package(GLEW REQUIRED)
|
|
# #add_library(GLEW_shared INTERFACE IMPORTED)
|
|
# #message("DIR: ${GLEW_INCLUDE_DIR}")
|
|
#
|
|
# #message("${GLEW_FOUND}")
|
|
#
|
|
## include_directories(${GLEW_INCLUDE_DIRS})
|
|
## link_libraries(${GLEW_LIBRARIES})
|
|
#
|
|
#
|
|
## add_subdirectory(../libs/glew GLEW_shared)
|
|
#
|
|
#
|
|
# add_library(proglib-cpp-graphics SHARED
|
|
# ${graphics_sources}
|
|
# ${graphics_math_sources})
|
|
# target_compile_definitions(proglib-cpp-graphics PUBLIC -D_BUILD_DLL)
|
|
# target_compile_definitions(proglib-cpp-graphics PUBLIC -Dproglib_cpp_graphics_EXPORTS)
|
|
# target_link_libraries(proglib-cpp-graphics PRIVATE OpenGL32)
|
|
# target_link_libraries(proglib-cpp-graphics PRIVATE GLEW_shared)
|
|
#
|
|
#
|
|
#
|
|
#
|
|
#
|
|
#endif()
|
|
#
|
|
##if (WIN32)
|
|
## target_link_libraries(proglib-cpp PRIVATE Setupapi)
|
|
#
|
|
## if (PYTHON)
|
|
## include_directories(../libs/PeLib/include)
|
|
## target_link_libraries(proglib-cpp LINK_PUBLIC PeLib)
|
|
## add_subdirectory(../libs/PeLib PeLib)
|
|
## endif()
|
|
##endif()
|
|
#
|
|
#
|
|
## The properties below are mainly for the Python library.
|
|
##if (WIN32)
|
|
##set_target_properties(
|
|
## proglib-cpp PROPERTIES
|
|
## RUNTIME_OUTPUT_DIRECTORY "../../../vnpy"
|
|
## RUNTIME_OUTPUT_DIRECTORY_RELEASE "../../../vnpy"
|
|
## RUNTIME_OUTPUT_DIRECTORY_DEBUG "../../../vnpy"
|
|
## LIBRARY_OUTPUT_DIRECTORY "../../../vnpy")
|
|
##elseif(UNIX)
|
|
##set_target_properties(
|
|
## proglib-cpp PROPERTIES
|
|
## RUNTIME_OUTPUT_DIRECTORY "../vnpy"
|
|
## RUNTIME_OUTPUT_DIRECTORY_RELEASE "../vnpy"
|
|
## RUNTIME_OUTPUT_DIRECTORY_DEBUG "../vnpy"
|
|
## LIBRARY_OUTPUT_DIRECTORY "../vnpy")
|
|
##endif()
|
|
#
|
|
#if (BUILD_TESTS)
|
|
#
|
|
# file(GLOB_RECURSE TEST_SOURCE_FILES src/vn/**/*.test.cpp)
|
|
# set(TEST_SOURCE_FILES ${TEST_SOURCE_FILES} src/vn/main.cpp)
|
|
#
|
|
# set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries (DLLs).")
|
|
# add_subdirectory(../libs/googletest gtest)
|
|
#
|
|
# include_directories(../libs/googletest/include)
|
|
#
|
|
# add_executable(proglib-cpp-test ${TEST_SOURCE_FILES})
|
|
#
|
|
# target_link_libraries(proglib-cpp-test LINK_PUBLIC gtest)
|
|
# target_link_libraries(proglib-cpp-test LINK_PUBLIC proglib-cpp)
|
|
#
|
|
#endif()
|
|
#
|
|
#if (BUILD_BENCHMARKS)
|
|
#
|
|
# file(GLOB_RECURSE BENCHMARK_SOURCE_FILES src/vn/**/*.benchmark.cpp)
|
|
# set(BENCHMARK_SOURCE_FILES ${BENCHMARK_SOURCE_FILES} src/vn/benchmark.cpp)
|
|
#
|
|
# add_subdirectory(../libs/hayai hayai)
|
|
# add_subdirectory(../libs/glew GLEW_shared)
|
|
#
|
|
# include_directories(../libs/hayai/src)
|
|
#
|
|
# add_executable(proglib-cpp-benchmark ${BENCHMARK_SOURCE_FILES})
|
|
#
|
|
# #target_link_libraries(proglib-cpp-benchmark LINK_PUBLIC hayai)
|
|
# target_link_libraries(proglib-cpp-benchmark LINK_PUBLIC proglib-cpp)
|
|
# target_link_libraries(proglib-cpp-benchmark LINK_PUBLIC proglib-cpp-graphics)
|
|
# target_link_libraries(proglib-cpp-graphics PRIVATE OpenGL32)
|
|
# target_link_libraries(proglib-cpp-graphics PRIVATE GLEW_shared)
|
|
#
|
|
#endif()
|
|
# |