mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-21 01:01:43 +00:00
Also make sure table listeners stop listening in their destructors. This might be better handled by moving the table itself into ITableListener and providing cleanup functionality there. A submodule is used to pull in ntcore. Change-Id: I3031c1a768595cf0f8754c47e15cd423e2dbcce5
61 lines
1.8 KiB
CMake
61 lines
1.8 KiB
CMake
cmake_minimum_required(VERSION 2.8)
|
|
project(WPILibSim)
|
|
|
|
if (WIN32)
|
|
#temporary until we build dlls
|
|
add_definitions(-DBUILDING_STATIC_LIBS)
|
|
|
|
# XXX: should be set via CMake variables in configure.bat
|
|
set(PTHREAD_INCLUDE_DIR "C:/Users/peter/gz-ws/pthread-w32/include")
|
|
set(PTHREAD_LIBRARY "C:/Users/peter/gz-ws/pthread-w32/libs/x64/pthreadVC2.lib")
|
|
endif()
|
|
|
|
get_filename_component(HAL_API_INCLUDES ../../hal/include REALPATH)
|
|
get_filename_component(NWT_API_INCLUDES ../../networktables/cpp/include REALPATH)
|
|
|
|
|
|
# also on windows use sprintf_s instead of snprintf
|
|
# TODO: find a more permenenant solution
|
|
if (WIN32)
|
|
add_definitions(-Dsnprintf=sprintf_s)
|
|
endif()
|
|
|
|
file(GLOB_RECURSE COM_SRC_FILES ../wpilibC++/src/*.cpp)
|
|
|
|
|
|
set (INCLUDE_FOLDERS include
|
|
../wpilibC++/include
|
|
../../networktables/ntcore/include
|
|
../../hal/include
|
|
${GZ_MSGS_INCLUDE_DIR}
|
|
${Boost_INCLUDE_DIR}
|
|
${GAZEBO_INCLUDE_DIRS})
|
|
|
|
if (WIN32)
|
|
#these paths will be fixed when a more permenant windows development solution is found
|
|
set(INCLUDE_FOLDERS ${INCLUDE_FOLDERS}
|
|
C:/Users/peter/gz-ws/protobuf-2.6.0-win64-vc12/src
|
|
C:/Users/peter/gz-ws/sdformat/src/win/tinyxml
|
|
C:/Users/peter/gz-ws/FreeImage-vc12-x64-release-debug/Source
|
|
C:/Users/peter/gz-ws/tbb43_20141023oss/include
|
|
${PTHREAD_INCLUDE_DIR})
|
|
endif()
|
|
|
|
include_directories(${INCLUDE_FOLDERS})
|
|
|
|
link_directories(${GAZEBO_LIBRARY_DIRS})
|
|
|
|
if (WIN32)
|
|
add_library(WPILibSim ${SRC_FILES} ${COM_SRC_FILES})
|
|
else()
|
|
add_library(WPILibSim SHARED ${SRC_FILES} ${COM_SRC_FILES})
|
|
endif()
|
|
|
|
target_link_libraries(WPILibSim gz_msgs ntcore ${PTHREAD_LIBRARY} ${Boost_LIBRARIES} ${GAZEBO_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} -fPIC) # NetworkTables
|
|
|
|
if (WIN32)
|
|
set_target_properties(${project} PROPERTIES LINK_FLAGS "/DEBUG")
|
|
endif()
|
|
|
|
#copy to eclipse plugin
|