forked from OpenDDS/OpenDDS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
58 lines (53 loc) · 1.34 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
cmake_minimum_required(VERSION 3.3...3.27)
include("${CMAKE_CURRENT_LIST_DIR}/../../../cmake/opendds_version.cmake")
project(ishapes VERSION ${OpenDDS_VERSION} LANGUAGES CXX)
find_package(OpenDDS REQUIRED)
# Make sure the MPC-generated headers are gone so the CMake build will use the
# right ones. This is not needed in a real project.
file(GLOB headers "*.h")
list(LENGTH headers header_count)
if(header_count GREATER 0)
file(REMOVE ${headers})
endif()
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
if(WIN32)
set(CMAKE_WIN32_EXECUTABLE ON)
endif()
find_package(Qt5 REQUIRED COMPONENTS Widgets)
add_executable(ishapes
# Normal C++ Files
BouncingShapeDynamics.cpp
Circle.cpp
DDSShapeDynamics.cpp
FilterDialog.cpp
main.cpp
ReaderQosDialog.cpp
Shape.cpp
ShapeDynamics.cpp
ShapesDialog.cpp
ShapesWidget.cpp
Square.cpp
Triangle.cpp
WriterQosDialog.cpp
# qrc files
ishape.qrc
# MOC Files
FilterDialog.hpp
ReaderQosDialog.hpp
ShapesDialog.hpp
ShapesWidget.hpp
WriterQosDialog.hpp
)
target_include_directories(ishapes PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
opendds_target_sources(ishapes ShapeType.idl OPENDDS_IDL_OPTIONS -Gxtypes-complete)
target_link_libraries(ishapes
Qt5::Widgets
OpenDDS::Dcps
OpenDDS::Tcp
OpenDDS::Udp
OpenDDS::Multicast
OpenDDS::Rtps_Udp
OpenDDS::InfoRepoDiscovery
)