-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
133 lines (123 loc) · 2.77 KB
/
Copy pathCMakeLists.txt
File metadata and controls
133 lines (123 loc) · 2.77 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
cmake_minimum_required(VERSION 3.15)
project(jv2 LANGUAGES CXX)
# Metadata
set(DESCRIPTION
"Journal data browsing, searching, and plotting for the ISIS Facility")
set(AUTHOR "Team JV2")
set(VERSION_MAJOR "1")
set(VERSION_MINOR "99")
set(VERSION_PATCH "3")
# Global CMake settings
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
# Custom CMake modules & prefix
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/Modules")
list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR})
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_BINARY_DIR})
# Build output locations
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY bin)
# Dependencies
include(conan-jv2)
find_package(
Qt6
COMPONENTS Core Gui Widgets Network Charts Xml
REQUIRED)
add_subdirectory(plot/)
# Build main binary
qt6_add_executable(
jv2
MACOSX_BUNDLE
# Base Classes
journalSource.cpp
journalSource.h
instrument.cpp
instrument.h
journal.cpp
journal.h
lock.cpp
lock.h
logValue.cpp
logValue.h
logValueData.cpp
logValueData.h
logValueGroup.cpp
logValueGroup.h
optionalRef.h
# Backend
backend.cpp
# Main Window
args.cpp
args.h
data.cpp
errorHandling.cpp
export.cpp
filtering.cpp
finding.cpp
generation.cpp
httpRequestWorker.cpp
httpRequestWorker.h
instruments.cpp
journalSources.cpp
mainWindow.cpp
mainWindow.cpp
mainWindow.h
mainWindow.ui
nexusInteraction.cpp
searching.cpp
settings.cpp
version.h
# Models
genericTreeModel.cpp
genericTreeModel.h
instrumentModel.cpp
instrumentModel.h
journalModel.cpp
journalModel.h
journalSourceFilterProxy.cpp
journalSourceFilterProxy.h
journalSourceModel.cpp
journalSourceModel.h
logValueFilterProxy.cpp
logValueFilterProxy.h
logValueGroupModel.cpp
logValueGroupModel.h
logValueModel.cpp
logValueModel.h
runDataModel.cpp
runDataModel.h
runDataFilterProxy.cpp
runDataFilterProxy.h
# Widgets
chartView.cpp
chartView.h
graphWidget.cpp
graphWidget.h
graphWidget.ui
journalSourcesDialog.cpp
journalSourcesDialog.h
journalSourcesDialog.ui
plotLogDataWidget.cpp
plotLogDataWidget.h
plotLogDataWidget.ui
searchDialog.cpp
searchDialog.h
searchDialog.ui
seLogChooserDialog.cpp
seLogChooserDialog.h
seLogChooserDialog.ui
# Resources
resources.qrc
# Main
main.cpp)
set_target_properties(jv2 PROPERTIES WIN32_EXECUTABLE ON)
target_link_libraries(jv2 PRIVATE Qt6::Core Qt6::Widgets Qt6::Network
Qt6::Charts Qt6::Xml mildred)
target_include_directories(
jv2
PRIVATE ${PROJECT_SOURCE_DIR} ${Qt6Widgets_INCLUDE_DIRS}
${Qt6Xml_INCLUDE_DIRS} ${Qt6Network_INCLUDE_DIRS}
${Qt6Charts_INCLUDE_DIRS} ${PROJECT_SOURCE_DIR}/plot/src)