3 # Wireshark - Network traffic analyzer
4 # By Gerald Combs <gerald@wireshark.org>
5 # Copyright 1998 Gerald Combs
7 # SPDX-License-Identifier: GPL-2.0-or-later
16 ADD_CUSTOM_CMAKE_INCLUDE()
18 set(WIRESHARK_WIDGET_HEADERS
19 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/additional_toolbar.h
20 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/apply_line_edit.h
21 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/byte_view_text.h
22 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/capture_filter_combo.h
23 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/capture_filter_edit.h
24 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/clickable_label.h
25 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/copy_from_profile_button.h
26 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/detachable_tabwidget.h
27 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/display_filter_combo.h
28 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/display_filter_edit.h
29 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/dissector_syntax_line_edit.h
30 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/dissector_tables_view.h
31 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/drag_drop_toolbar.h
32 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/drag_label.h
33 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/editor_file_dialog.h
34 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/elided_label.h
35 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/expert_info_view.h
36 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/field_filter_edit.h
37 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/filter_expression_toolbar.h
38 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/find_line_edit.h
39 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/follow_stream_text.h
40 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/interface_toolbar_lineedit.h
41 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/label_stack.h
42 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/overlay_scroll_bar.h
43 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/packet_list_header.h
44 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/path_selection_edit.h
45 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/pref_module_view.h
46 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/profile_tree_view.h
47 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcp_axis_ticker_elided.h
48 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcp_axis_ticker_si.h
49 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcp_string_legend_item.h
50 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/range_syntax_lineedit.h
51 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/resize_header_view.h
52 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/resolved_addresses_view.h
53 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/rowmove_tree_view.h
54 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/splash_overlay.h
55 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/stock_icon_tool_button.h
56 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/syntax_line_edit.h
57 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/wireless_timeline.h # Required by PacketListModel
58 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/tabnav_tree_view.h
59 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/traffic_tab.h
60 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/traffic_tree.h
61 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/traffic_types_list.h
62 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/wireshark_file_dialog.h
65 set (LOGRAY_WIDGET_HEADERS ${WIRESHARK_WIDGET_HEADERS})
67 set(WIRESHARK_3RD_PARTY_WIDGET_HEADERS
68 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcustomplot.h
71 set (LOGRAY_3RD_PARTY_WIDGET_HEADERS ${WIRESHARK_3RD_PARTY_WIDGET_HEADERS})
73 set(WIRESHARK_MANAGER_HEADERS
74 ${CMAKE_SOURCE_DIR}/ui/qt/manager/preference_manager.h
75 ${CMAKE_SOURCE_DIR}/ui/qt/manager/wireshark_preference.h
78 set (LOGRAY_MANAGER_HEADERS ${WIRESHARK_MANAGER_HEADERS})
80 set(WIRESHARK_UTILS_HEADERS
81 ${CMAKE_SOURCE_DIR}/ui/qt/utils/color_utils.h
82 ${CMAKE_SOURCE_DIR}/ui/qt/utils/data_printer.h
83 ${CMAKE_SOURCE_DIR}/ui/qt/utils/field_information.h
84 ${CMAKE_SOURCE_DIR}/ui/qt/utils/frame_information.h
85 ${CMAKE_SOURCE_DIR}/ui/qt/utils/idata_printable.h
86 ${CMAKE_SOURCE_DIR}/ui/qt/utils/profile_switcher.h
87 ${CMAKE_SOURCE_DIR}/ui/qt/utils/proto_node.h
88 ${CMAKE_SOURCE_DIR}/ui/qt/utils/qt_ui_utils.h
89 ${CMAKE_SOURCE_DIR}/ui/qt/utils/stock_icon.h
90 ${CMAKE_SOURCE_DIR}/ui/qt/utils/tango_colors.h
91 ${CMAKE_SOURCE_DIR}/ui/qt/utils/variant_pointer.h
92 ${CMAKE_SOURCE_DIR}/ui/qt/utils/wireshark_mime_data.h
93 ${CMAKE_SOURCE_DIR}/ui/qt/utils/wireshark_zip_helper.h
96 set (LOGRAY_UTILS_HEADERS ${WIRESHARK_UTILS_HEADERS})
98 set(WIRESHARK_MODEL_HEADERS
99 ${CMAKE_SOURCE_DIR}/ui/qt/models/astringlist_list_model.h
100 ${CMAKE_SOURCE_DIR}/ui/qt/models/atap_data_model.h
101 ${CMAKE_SOURCE_DIR}/ui/qt/models/cache_proxy_model.h
102 ${CMAKE_SOURCE_DIR}/ui/qt/models/coloring_rules_delegate.h
103 ${CMAKE_SOURCE_DIR}/ui/qt/models/coloring_rules_model.h
104 ${CMAKE_SOURCE_DIR}/ui/qt/models/column_list_model.h
105 ${CMAKE_SOURCE_DIR}/ui/qt/models/decode_as_delegate.h
106 ${CMAKE_SOURCE_DIR}/ui/qt/models/decode_as_model.h
107 ${CMAKE_SOURCE_DIR}/ui/qt/models/dissector_tables_model.h
108 ${CMAKE_SOURCE_DIR}/ui/qt/models/enabled_protocols_model.h
109 ${CMAKE_SOURCE_DIR}/ui/qt/models/expert_info_model.h
110 ${CMAKE_SOURCE_DIR}/ui/qt/models/expert_info_proxy_model.h
111 ${CMAKE_SOURCE_DIR}/ui/qt/models/fileset_entry_model.h
112 ${CMAKE_SOURCE_DIR}/ui/qt/models/filter_list_model.h
113 ${CMAKE_SOURCE_DIR}/ui/qt/models/info_proxy_model.h
114 ${CMAKE_SOURCE_DIR}/ui/qt/models/interface_sort_filter_model.h
115 ${CMAKE_SOURCE_DIR}/ui/qt/models/interface_tree_cache_model.h
116 ${CMAKE_SOURCE_DIR}/ui/qt/models/interface_tree_model.h
117 ${CMAKE_SOURCE_DIR}/ui/qt/models/numeric_value_chooser_delegate.h
118 ${CMAKE_SOURCE_DIR}/ui/qt/models/packet_list_model.h
119 ${CMAKE_SOURCE_DIR}/ui/qt/models/packet_list_record.h
120 ${CMAKE_SOURCE_DIR}/ui/qt/models/path_selection_delegate.h
121 ${CMAKE_SOURCE_DIR}/ui/qt/models/percent_bar_delegate.h
122 ${CMAKE_SOURCE_DIR}/ui/qt/models/pref_delegate.h
123 ${CMAKE_SOURCE_DIR}/ui/qt/models/pref_models.h
124 ${CMAKE_SOURCE_DIR}/ui/qt/models/profile_model.h
125 ${CMAKE_SOURCE_DIR}/ui/qt/models/proto_tree_model.h
126 ${CMAKE_SOURCE_DIR}/ui/qt/models/related_packet_delegate.h
127 ${CMAKE_SOURCE_DIR}/ui/qt/models/resolved_addresses_models.h
128 ${CMAKE_SOURCE_DIR}/ui/qt/models/sparkline_delegate.h
129 ${CMAKE_SOURCE_DIR}/ui/qt/models/supported_protocols_model.h
130 ${CMAKE_SOURCE_DIR}/ui/qt/models/timeline_delegate.h
131 ${CMAKE_SOURCE_DIR}/ui/qt/models/tree_model_helpers.h
132 ${CMAKE_SOURCE_DIR}/ui/qt/models/uat_delegate.h
133 ${CMAKE_SOURCE_DIR}/ui/qt/models/uat_model.h
134 ${CMAKE_SOURCE_DIR}/ui/qt/models/url_link_delegate.h
137 set (LOGRAY_MODEL_HEADERS ${WIRESHARK_MODEL_HEADERS})
139 # All .h files which inherit from QObject aka which use the Q_OBJECT macro
141 set(WIRESHARK_QT_HEADERS
142 ${CMAKE_SOURCE_DIR}/ui/qt/about_dialog.h
143 ${CMAKE_SOURCE_DIR}/ui/qt/accordion_frame.h
144 ${CMAKE_SOURCE_DIR}/ui/qt/address_editor_frame.h
145 ${CMAKE_SOURCE_DIR}/ui/qt/byte_view_tab.h
146 ${CMAKE_SOURCE_DIR}/ui/qt/capture_comment_dialog.h
147 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file_dialog.h
148 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file_properties_dialog.h
149 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file.h
150 ${CMAKE_SOURCE_DIR}/ui/qt/capture_filter_syntax_worker.h
151 ${CMAKE_SOURCE_DIR}/ui/qt/capture_options_dialog.h
152 ${CMAKE_SOURCE_DIR}/ui/qt/capture_preferences_frame.h
153 ${CMAKE_SOURCE_DIR}/ui/qt/coloring_rules_dialog.h
154 ${CMAKE_SOURCE_DIR}/ui/qt/column_editor_frame.h
155 ${CMAKE_SOURCE_DIR}/ui/qt/column_preferences_frame.h
156 ${CMAKE_SOURCE_DIR}/ui/qt/compiled_filter_output.h
157 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_colorize_action.h
158 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_dialog.h
159 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_hash_tables_dialog.h
160 ${CMAKE_SOURCE_DIR}/ui/qt/decode_as_dialog.h
161 ${CMAKE_SOURCE_DIR}/ui/qt/display_filter_expression_dialog.h
162 ${CMAKE_SOURCE_DIR}/ui/qt/dissector_tables_dialog.h
163 ${CMAKE_SOURCE_DIR}/ui/qt/enabled_protocols_dialog.h
164 ${CMAKE_SOURCE_DIR}/ui/qt/endpoint_dialog.h
165 ${CMAKE_SOURCE_DIR}/ui/qt/expert_info_dialog.h
166 ${CMAKE_SOURCE_DIR}/ui/qt/export_dissection_dialog.h
167 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_argument_file.h
168 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_argument_multiselect.h
169 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_argument.h
170 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_options_dialog.h
171 ${CMAKE_SOURCE_DIR}/ui/qt/file_set_dialog.h
172 ${CMAKE_SOURCE_DIR}/ui/qt/filter_action.h
173 ${CMAKE_SOURCE_DIR}/ui/qt/filter_dialog.h
174 ${CMAKE_SOURCE_DIR}/ui/qt/filter_expression_frame.h
175 ${CMAKE_SOURCE_DIR}/ui/qt/follow_stream_action.h
176 ${CMAKE_SOURCE_DIR}/ui/qt/follow_stream_dialog.h
177 ${CMAKE_SOURCE_DIR}/ui/qt/font_color_preferences_frame.h
178 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_statistics.h
179 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_string_dialog.h
180 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_text_dialog.h
181 ${CMAKE_SOURCE_DIR}/ui/qt/geometry_state_dialog.h
182 ${CMAKE_SOURCE_DIR}/ui/qt/glib_mainloop_on_qeventloop.h
183 ${CMAKE_SOURCE_DIR}/ui/qt/import_text_dialog.h
184 ${CMAKE_SOURCE_DIR}/ui/qt/interface_frame.h
185 ${CMAKE_SOURCE_DIR}/ui/qt/interface_toolbar_reader.h
186 ${CMAKE_SOURCE_DIR}/ui/qt/interface_toolbar.h
187 ${CMAKE_SOURCE_DIR}/ui/qt/io_console_dialog.h
188 ${CMAKE_SOURCE_DIR}/ui/qt/io_graph_action.h
189 ${CMAKE_SOURCE_DIR}/ui/qt/io_graph_dialog.h
190 ${CMAKE_SOURCE_DIR}/ui/qt/layout_preferences_frame.h
191 ${CMAKE_SOURCE_DIR}/ui/qt/main_application.h
192 ${CMAKE_SOURCE_DIR}/ui/qt/main_status_bar.h
193 ${CMAKE_SOURCE_DIR}/ui/qt/main_window_preferences_frame.h
194 ${CMAKE_SOURCE_DIR}/ui/qt/main_window.h
195 ${CMAKE_SOURCE_DIR}/ui/qt/manage_interfaces_dialog.h
196 ${CMAKE_SOURCE_DIR}/ui/qt/module_preferences_scroll_area.h
197 ${CMAKE_SOURCE_DIR}/ui/qt/packet_comment_dialog.h
198 ${CMAKE_SOURCE_DIR}/ui/qt/packet_dialog.h
199 ${CMAKE_SOURCE_DIR}/ui/qt/packet_format_group_box.h
200 ${CMAKE_SOURCE_DIR}/ui/qt/packet_list.h
201 ${CMAKE_SOURCE_DIR}/ui/qt/packet_range_group_box.h
202 ${CMAKE_SOURCE_DIR}/ui/qt/preference_editor_frame.h
203 ${CMAKE_SOURCE_DIR}/ui/qt/preferences_dialog.h
204 ${CMAKE_SOURCE_DIR}/ui/qt/print_dialog.h
205 ${CMAKE_SOURCE_DIR}/ui/qt/profile_dialog.h
206 ${CMAKE_SOURCE_DIR}/ui/qt/progress_frame.h
207 ${CMAKE_SOURCE_DIR}/ui/qt/proto_tree.h
208 ${CMAKE_SOURCE_DIR}/ui/qt/protocol_hierarchy_dialog.h
209 ${CMAKE_SOURCE_DIR}/ui/qt/protocol_preferences_menu.h
210 ${CMAKE_SOURCE_DIR}/ui/qt/recent_file_status.h
211 ${CMAKE_SOURCE_DIR}/ui/qt/resolved_addresses_dialog.h
212 ${CMAKE_SOURCE_DIR}/ui/qt/response_time_delay_dialog.h
213 ${CMAKE_SOURCE_DIR}/ui/qt/rsa_keys_frame.h
214 ${CMAKE_SOURCE_DIR}/ui/qt/search_frame.h
215 # XXX Depends on RTP Stream Dialog
216 # ${CMAKE_SOURCE_DIR}/ui/qt/sequence_diagram.h
217 # ${CMAKE_SOURCE_DIR}/ui/qt/sequence_dialog.h
218 ${CMAKE_SOURCE_DIR}/ui/qt/show_packet_bytes_dialog.h
219 ${CMAKE_SOURCE_DIR}/ui/qt/simple_statistics_dialog.h
220 ${CMAKE_SOURCE_DIR}/ui/qt/stats_tree_dialog.h
221 ${CMAKE_SOURCE_DIR}/ui/qt/supported_protocols_dialog.h
222 ${CMAKE_SOURCE_DIR}/ui/qt/tabnav_tree_widget.h
223 ${CMAKE_SOURCE_DIR}/ui/qt/tap_parameter_dialog.h
224 ${CMAKE_SOURCE_DIR}/ui/qt/tcp_stream_dialog.h
225 ${CMAKE_SOURCE_DIR}/ui/qt/time_shift_dialog.h
226 ${CMAKE_SOURCE_DIR}/ui/qt/traffic_table_dialog.h
227 ${CMAKE_SOURCE_DIR}/ui/qt/uat_dialog.h
228 ${CMAKE_SOURCE_DIR}/ui/qt/uat_frame.h
229 ${CMAKE_SOURCE_DIR}/ui/qt/welcome_page.h
230 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_dialog.h
233 if(WIRESHARK_CUSTOM_QT_HEADERS)
234 list(APPEND WIRESHARK_QT_HEADERS
235 ${CMAKE_SOURCE_DIR}/ui/qt/${WIRESHARK_CUSTOM_QT_HEADERS}
240 list(APPEND WIRESHARK_QT_HEADERS
241 ${CMAKE_SOURCE_DIR}/ui/qt/capture_info_dialog.h
244 list(APPEND WIRESHARK_QT_HEADERS
245 ${CMAKE_SOURCE_DIR}/ui/qt/remote_capture_dialog.h
246 ${CMAKE_SOURCE_DIR}/ui/qt/remote_settings_dialog.h
251 set (LOGRAY_QT_HEADERS
254 ${WIRESHARK_QT_HEADERS}
257 set(WIRESHARK_WIDGET_SRCS
258 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/additional_toolbar.cpp
259 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/apply_line_edit.cpp
260 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/byte_view_text.cpp
261 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/capture_filter_combo.cpp
262 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/capture_filter_edit.cpp
263 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/clickable_label.cpp
264 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/copy_from_profile_button.cpp
265 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/detachable_tabwidget.cpp
266 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/display_filter_combo.cpp
267 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/display_filter_edit.cpp
268 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/dissector_syntax_line_edit.cpp
269 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/dissector_tables_view.cpp
270 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/drag_drop_toolbar.cpp
271 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/drag_label.cpp
272 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/editor_file_dialog.cpp
273 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/elided_label.cpp
274 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/expert_info_view.cpp
275 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/field_filter_edit.cpp
276 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/filter_expression_toolbar.cpp
277 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/find_line_edit.cpp
278 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/follow_stream_text.cpp
279 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/interface_toolbar_lineedit.cpp
280 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/label_stack.cpp
281 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/overlay_scroll_bar.cpp
282 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/packet_list_header.cpp
283 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/path_selection_edit.cpp
284 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/pref_module_view.cpp
285 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/profile_tree_view.cpp
286 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcp_axis_ticker_elided.cpp
287 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcp_axis_ticker_si.cpp
288 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcp_string_legend_item.cpp
289 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/range_syntax_lineedit.cpp
290 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/resize_header_view.cpp
291 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/resolved_addresses_view.cpp
292 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/rowmove_tree_view.cpp
293 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/splash_overlay.cpp
294 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/stock_icon_tool_button.cpp
295 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/syntax_line_edit.cpp
296 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/wireless_timeline.cpp # Required by PacketListModel
297 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/tabnav_tree_view.cpp
298 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/traffic_tab.cpp
299 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/traffic_tree.cpp
300 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/traffic_types_list.cpp
301 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/wireshark_file_dialog.cpp
304 set (LOGRAY_WIDGET_SRCS ${WIRESHARK_WIDGET_SRCS})
306 set(WIRESHARK_3RD_PARTY_WIDGET_SRCS
307 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/qcustomplot.cpp
310 set (LOGRAY_3RD_PARTY_WIDGET_SRCS ${WIRESHARK_3RD_PARTY_WIDGET_SRCS})
312 set(WIRESHARK_MANAGER_SRCS
313 ${CMAKE_SOURCE_DIR}/ui/qt/manager/preference_manager.cpp
314 ${CMAKE_SOURCE_DIR}/ui/qt/manager/wireshark_preference.cpp
317 set (LOGRAY_MANAGER_SRCS ${WIRESHARK_MANAGER_SRCS})
319 set(WIRESHARK_UTILS_SRCS
320 ${CMAKE_SOURCE_DIR}/ui/qt/utils/color_utils.cpp
321 ${CMAKE_SOURCE_DIR}/ui/qt/utils/data_printer.cpp
322 ${CMAKE_SOURCE_DIR}/ui/qt/utils/field_information.cpp
323 ${CMAKE_SOURCE_DIR}/ui/qt/utils/frame_information.cpp
324 ${CMAKE_SOURCE_DIR}/ui/qt/utils/profile_switcher.cpp
325 ${CMAKE_SOURCE_DIR}/ui/qt/utils/proto_node.cpp
326 ${CMAKE_SOURCE_DIR}/ui/qt/utils/qt_ui_utils.cpp
327 ${CMAKE_SOURCE_DIR}/ui/qt/utils/stock_icon.cpp
328 ${CMAKE_SOURCE_DIR}/ui/qt/utils/wireshark_mime_data.cpp
329 ${CMAKE_SOURCE_DIR}/ui/qt/utils/wireshark_zip_helper.cpp
332 set (LOGRAY_UTILS_SRCS ${WIRESHARK_UTILS_SRCS})
334 set(WIRESHARK_MODEL_SRCS
335 ${CMAKE_SOURCE_DIR}/ui/qt/models/astringlist_list_model.cpp
336 ${CMAKE_SOURCE_DIR}/ui/qt/models/atap_data_model.cpp
337 ${CMAKE_SOURCE_DIR}/ui/qt/models/cache_proxy_model.cpp
338 ${CMAKE_SOURCE_DIR}/ui/qt/models/coloring_rules_delegate.cpp
339 ${CMAKE_SOURCE_DIR}/ui/qt/models/coloring_rules_model.cpp
340 ${CMAKE_SOURCE_DIR}/ui/qt/models/column_list_model.cpp
341 ${CMAKE_SOURCE_DIR}/ui/qt/models/decode_as_delegate.cpp
342 ${CMAKE_SOURCE_DIR}/ui/qt/models/decode_as_model.cpp
343 ${CMAKE_SOURCE_DIR}/ui/qt/models/dissector_tables_model.cpp
344 ${CMAKE_SOURCE_DIR}/ui/qt/models/enabled_protocols_model.cpp
345 ${CMAKE_SOURCE_DIR}/ui/qt/models/expert_info_model.cpp
346 ${CMAKE_SOURCE_DIR}/ui/qt/models/expert_info_proxy_model.cpp
347 ${CMAKE_SOURCE_DIR}/ui/qt/models/fileset_entry_model.cpp
348 ${CMAKE_SOURCE_DIR}/ui/qt/models/filter_list_model.cpp
349 ${CMAKE_SOURCE_DIR}/ui/qt/models/info_proxy_model.cpp
350 ${CMAKE_SOURCE_DIR}/ui/qt/models/interface_sort_filter_model.cpp
351 ${CMAKE_SOURCE_DIR}/ui/qt/models/interface_tree_cache_model.cpp
352 ${CMAKE_SOURCE_DIR}/ui/qt/models/interface_tree_model.cpp
353 ${CMAKE_SOURCE_DIR}/ui/qt/models/numeric_value_chooser_delegate.cpp
354 ${CMAKE_SOURCE_DIR}/ui/qt/models/packet_list_model.cpp
355 ${CMAKE_SOURCE_DIR}/ui/qt/models/packet_list_record.cpp
356 ${CMAKE_SOURCE_DIR}/ui/qt/models/path_selection_delegate.cpp
357 ${CMAKE_SOURCE_DIR}/ui/qt/models/percent_bar_delegate.cpp
358 ${CMAKE_SOURCE_DIR}/ui/qt/models/pref_delegate.cpp
359 ${CMAKE_SOURCE_DIR}/ui/qt/models/pref_models.cpp
360 ${CMAKE_SOURCE_DIR}/ui/qt/models/profile_model.cpp
361 ${CMAKE_SOURCE_DIR}/ui/qt/models/proto_tree_model.cpp
362 ${CMAKE_SOURCE_DIR}/ui/qt/models/related_packet_delegate.cpp
363 ${CMAKE_SOURCE_DIR}/ui/qt/models/resolved_addresses_models.cpp
364 ${CMAKE_SOURCE_DIR}/ui/qt/models/sparkline_delegate.cpp
365 ${CMAKE_SOURCE_DIR}/ui/qt/models/supported_protocols_model.cpp
366 ${CMAKE_SOURCE_DIR}/ui/qt/models/timeline_delegate.cpp
367 ${CMAKE_SOURCE_DIR}/ui/qt/models/uat_delegate.cpp
368 ${CMAKE_SOURCE_DIR}/ui/qt/models/uat_model.cpp
369 ${CMAKE_SOURCE_DIR}/ui/qt/models/url_link_delegate.cpp
372 set (LOGRAY_MODEL_SRCS ${WIRESHARK_MODEL_SRCS})
375 ${CMAKE_SOURCE_DIR}/ui/qt/about_dialog.cpp
376 ${CMAKE_SOURCE_DIR}/ui/qt/accordion_frame.cpp
377 ${CMAKE_SOURCE_DIR}/ui/qt/address_editor_frame.cpp
378 ${CMAKE_SOURCE_DIR}/ui/qt/byte_view_tab.cpp
379 ${CMAKE_SOURCE_DIR}/ui/qt/capture_comment_dialog.cpp
380 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file_dialog.cpp
381 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file_properties_dialog.cpp
382 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file.cpp
383 ${CMAKE_SOURCE_DIR}/ui/qt/capture_filter_syntax_worker.cpp
384 ${CMAKE_SOURCE_DIR}/ui/qt/capture_options_dialog.cpp
385 ${CMAKE_SOURCE_DIR}/ui/qt/capture_preferences_frame.cpp
386 ${CMAKE_SOURCE_DIR}/ui/qt/coloring_rules_dialog.cpp
387 ${CMAKE_SOURCE_DIR}/ui/qt/column_editor_frame.cpp
388 ${CMAKE_SOURCE_DIR}/ui/qt/column_preferences_frame.cpp
389 ${CMAKE_SOURCE_DIR}/ui/qt/compiled_filter_output.cpp
390 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_colorize_action.cpp
391 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_dialog.cpp
392 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_hash_tables_dialog.cpp
393 # XXX Required by packet list
394 ${CMAKE_SOURCE_DIR}/ui/qt/decode_as_dialog.cpp
395 ${CMAKE_SOURCE_DIR}/ui/qt/display_filter_expression_dialog.cpp
396 ${CMAKE_SOURCE_DIR}/ui/qt/dissector_tables_dialog.cpp
397 ${CMAKE_SOURCE_DIR}/ui/qt/enabled_protocols_dialog.cpp
398 ${CMAKE_SOURCE_DIR}/ui/qt/endpoint_dialog.cpp
399 ${CMAKE_SOURCE_DIR}/ui/qt/export_dissection_dialog.cpp
400 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_argument_file.cpp
401 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_argument_multiselect.cpp
402 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_argument.cpp
403 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_options_dialog.cpp
404 ${CMAKE_SOURCE_DIR}/ui/qt/file_set_dialog.cpp
405 ${CMAKE_SOURCE_DIR}/ui/qt/filter_action.cpp
406 ${CMAKE_SOURCE_DIR}/ui/qt/filter_dialog.cpp
407 ${CMAKE_SOURCE_DIR}/ui/qt/filter_expression_frame.cpp
408 ${CMAKE_SOURCE_DIR}/ui/qt/follow_stream_dialog.cpp
409 ${CMAKE_SOURCE_DIR}/ui/qt/follow_stream_action.cpp
410 ${CMAKE_SOURCE_DIR}/ui/qt/font_color_preferences_frame.cpp
411 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_string_dialog.cpp
412 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_text_dialog.cpp
413 ${CMAKE_SOURCE_DIR}/ui/qt/geometry_state_dialog.cpp
414 ${CMAKE_SOURCE_DIR}/ui/qt/glib_mainloop_on_qeventloop.cpp
415 ${CMAKE_SOURCE_DIR}/ui/qt/import_text_dialog.cpp
416 ${CMAKE_SOURCE_DIR}/ui/qt/interface_frame.cpp
417 ${CMAKE_SOURCE_DIR}/ui/qt/interface_toolbar_reader.cpp
418 ${CMAKE_SOURCE_DIR}/ui/qt/interface_toolbar.cpp
419 ${CMAKE_SOURCE_DIR}/ui/qt/io_console_dialog.cpp
420 ${CMAKE_SOURCE_DIR}/ui/qt/io_graph_action.cpp
421 ${CMAKE_SOURCE_DIR}/ui/qt/layout_preferences_frame.cpp
422 ${CMAKE_SOURCE_DIR}/ui/qt/main_application.cpp
423 ${CMAKE_SOURCE_DIR}/ui/qt/main_status_bar.cpp
424 ${CMAKE_SOURCE_DIR}/ui/qt/main_window_layout.cpp
425 ${CMAKE_SOURCE_DIR}/ui/qt/main_window_preferences_frame.cpp
426 ${CMAKE_SOURCE_DIR}/ui/qt/main_window.cpp
427 ${CMAKE_SOURCE_DIR}/ui/qt/manage_interfaces_dialog.cpp
428 ${CMAKE_SOURCE_DIR}/ui/qt/module_preferences_scroll_area.cpp
429 ${CMAKE_SOURCE_DIR}/ui/qt/packet_comment_dialog.cpp
430 ${CMAKE_SOURCE_DIR}/ui/qt/packet_dialog.cpp
431 ${CMAKE_SOURCE_DIR}/ui/qt/packet_format_group_box.cpp
432 ${CMAKE_SOURCE_DIR}/ui/qt/packet_list.cpp
433 ${CMAKE_SOURCE_DIR}/ui/qt/packet_range_group_box.cpp
434 ${CMAKE_SOURCE_DIR}/ui/qt/preference_editor_frame.cpp
435 ${CMAKE_SOURCE_DIR}/ui/qt/preferences_dialog.cpp
436 ${CMAKE_SOURCE_DIR}/ui/qt/print_dialog.cpp
437 ${CMAKE_SOURCE_DIR}/ui/qt/profile_dialog.cpp
438 ${CMAKE_SOURCE_DIR}/ui/qt/progress_frame.cpp
439 ${CMAKE_SOURCE_DIR}/ui/qt/proto_tree.cpp
440 ${CMAKE_SOURCE_DIR}/ui/qt/protocol_hierarchy_dialog.cpp
441 ${CMAKE_SOURCE_DIR}/ui/qt/protocol_preferences_menu.cpp
442 ${CMAKE_SOURCE_DIR}/ui/qt/recent_file_status.cpp
443 ${CMAKE_SOURCE_DIR}/ui/qt/resolved_addresses_dialog.cpp
444 ${CMAKE_SOURCE_DIR}/ui/qt/response_time_delay_dialog.cpp
445 ${CMAKE_SOURCE_DIR}/ui/qt/rsa_keys_frame.cpp
446 ${CMAKE_SOURCE_DIR}/ui/qt/search_frame.cpp
447 # XXX Depends on RTP Stream Dialog
448 # ${CMAKE_SOURCE_DIR}/ui/qt/sequence_diagram.cpp
449 # ${CMAKE_SOURCE_DIR}/ui/qt/sequence_dialog.cpp
450 ${CMAKE_SOURCE_DIR}/ui/qt/show_packet_bytes_dialog.cpp
451 ${CMAKE_SOURCE_DIR}/ui/qt/simple_dialog.cpp
452 ${CMAKE_SOURCE_DIR}/ui/qt/simple_statistics_dialog.cpp
453 ${CMAKE_SOURCE_DIR}/ui/qt/supported_protocols_dialog.cpp
454 ${CMAKE_SOURCE_DIR}/ui/qt/tabnav_tree_widget.cpp
455 ${CMAKE_SOURCE_DIR}/ui/qt/tap_parameter_dialog.cpp
456 ${CMAKE_SOURCE_DIR}/ui/qt/tcp_stream_dialog.cpp
457 ${CMAKE_SOURCE_DIR}/ui/qt/time_shift_dialog.cpp
458 ${CMAKE_SOURCE_DIR}/ui/qt/traffic_table_dialog.cpp
459 ${CMAKE_SOURCE_DIR}/ui/qt/uat_dialog.cpp
460 ${CMAKE_SOURCE_DIR}/ui/qt/uat_frame.cpp
461 ${CMAKE_SOURCE_DIR}/ui/qt/welcome_page.cpp
462 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_dialog.cpp
465 if(WIRESHARK_CUSTOM_QT_SRCS)
466 list(APPEND WIRESHARK_QT_SRC
467 ${CMAKE_SOURCE_DIR}/ui/qt/${WIRESHARK_CUSTOM_QT_SRCS}
472 list(APPEND WIRESHARK_QT_SRC
473 ${CMAKE_SOURCE_DIR}/ui/qt/capture_info_dialog.cpp
476 list(APPEND WIRESHARK_QT_SRC
477 ${CMAKE_SOURCE_DIR}/ui/qt/remote_capture_dialog.cpp
478 ${CMAKE_SOURCE_DIR}/ui/qt/remote_settings_dialog.cpp
484 logray_application.cpp
486 logray_main_window.cpp
487 logray_main_window_slots.cpp
490 set(WIRESHARK_QT_TAP_SRC
491 ${CMAKE_SOURCE_DIR}/ui/qt/expert_info_dialog.cpp
492 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_statistics.cpp
493 ${CMAKE_SOURCE_DIR}/ui/qt/io_graph_dialog.cpp
494 ${CMAKE_SOURCE_DIR}/ui/qt/stats_tree_dialog.cpp
495 ${WIRESHARK_CUSTOM_TAP_SRC}
498 set (LOGRAY_QT_TAP_SRC ${WIRESHARK_QT_TAP_SRC})
500 set(WIRESHARK_QT_FILES
502 ${WIRESHARK_QT_TAP_SRC}
505 set (LOGRAY_QT_FILES ${WIRESHARK_QT_FILES})
508 ${CMAKE_SOURCE_DIR}/ui/qt/about_dialog.ui
509 ${CMAKE_SOURCE_DIR}/ui/qt/address_editor_frame.ui
510 ${CMAKE_SOURCE_DIR}/ui/qt/capture_comment_dialog.ui
511 ${CMAKE_SOURCE_DIR}/ui/qt/capture_file_properties_dialog.ui
512 ${CMAKE_SOURCE_DIR}/ui/qt/capture_info_dialog.ui
513 ${CMAKE_SOURCE_DIR}/ui/qt/capture_options_dialog.ui
514 ${CMAKE_SOURCE_DIR}/ui/qt/capture_preferences_frame.ui
515 ${CMAKE_SOURCE_DIR}/ui/qt/coloring_rules_dialog.ui
516 ${CMAKE_SOURCE_DIR}/ui/qt/column_editor_frame.ui
517 ${CMAKE_SOURCE_DIR}/ui/qt/column_preferences_frame.ui
518 ${CMAKE_SOURCE_DIR}/ui/qt/compiled_filter_output.ui
519 ${CMAKE_SOURCE_DIR}/ui/qt/conversation_hash_tables_dialog.ui
520 ${CMAKE_SOURCE_DIR}/ui/qt/decode_as_dialog.ui
521 ${CMAKE_SOURCE_DIR}/ui/qt/display_filter_expression_dialog.ui
522 ${CMAKE_SOURCE_DIR}/ui/qt/dissector_tables_dialog.ui
523 ${CMAKE_SOURCE_DIR}/ui/qt/enabled_protocols_dialog.ui
524 ${CMAKE_SOURCE_DIR}/ui/qt/expert_info_dialog.ui
525 ${CMAKE_SOURCE_DIR}/ui/qt/extcap_options_dialog.ui
526 ${CMAKE_SOURCE_DIR}/ui/qt/file_set_dialog.ui
527 ${CMAKE_SOURCE_DIR}/ui/qt/filter_dialog.ui
528 ${CMAKE_SOURCE_DIR}/ui/qt/filter_expression_frame.ui
529 ${CMAKE_SOURCE_DIR}/ui/qt/follow_stream_dialog.ui
530 ${CMAKE_SOURCE_DIR}/ui/qt/font_color_preferences_frame.ui
531 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_string_dialog.ui
532 ${CMAKE_SOURCE_DIR}/ui/qt/funnel_text_dialog.ui
533 ${CMAKE_SOURCE_DIR}/ui/qt/import_text_dialog.ui
534 ${CMAKE_SOURCE_DIR}/ui/qt/interface_frame.ui
535 ${CMAKE_SOURCE_DIR}/ui/qt/interface_toolbar.ui
536 ${CMAKE_SOURCE_DIR}/ui/qt/io_console_dialog.ui
537 ${CMAKE_SOURCE_DIR}/ui/qt/io_graph_dialog.ui
538 ${CMAKE_SOURCE_DIR}/ui/qt/layout_preferences_frame.ui
539 ${CMAKE_SOURCE_DIR}/ui/qt/main_window_preferences_frame.ui
540 ${CMAKE_SOURCE_DIR}/ui/qt/manage_interfaces_dialog.ui
541 ${CMAKE_SOURCE_DIR}/ui/qt/module_preferences_scroll_area.ui
542 ${CMAKE_SOURCE_DIR}/ui/qt/packet_comment_dialog.ui
543 ${CMAKE_SOURCE_DIR}/ui/qt/packet_dialog.ui
544 ${CMAKE_SOURCE_DIR}/ui/qt/packet_format_group_box.ui
545 ${CMAKE_SOURCE_DIR}/ui/qt/packet_range_group_box.ui
546 ${CMAKE_SOURCE_DIR}/ui/qt/preference_editor_frame.ui
547 ${CMAKE_SOURCE_DIR}/ui/qt/preferences_dialog.ui
548 ${CMAKE_SOURCE_DIR}/ui/qt/print_dialog.ui
549 ${CMAKE_SOURCE_DIR}/ui/qt/profile_dialog.ui
550 ${CMAKE_SOURCE_DIR}/ui/qt/progress_frame.ui
551 ${CMAKE_SOURCE_DIR}/ui/qt/protocol_hierarchy_dialog.ui
552 ${CMAKE_SOURCE_DIR}/ui/qt/resolved_addresses_dialog.ui
553 ${CMAKE_SOURCE_DIR}/ui/qt/rsa_keys_frame.ui
554 ${CMAKE_SOURCE_DIR}/ui/qt/search_frame.ui
555 # XXX Depends on RTP Stream Dialog
556 # ${CMAKE_SOURCE_DIR}/ui/qt/sequence_dialog.ui
557 ${CMAKE_SOURCE_DIR}/ui/qt/show_packet_bytes_dialog.ui
558 ${CMAKE_SOURCE_DIR}/ui/qt/supported_protocols_dialog.ui
559 ${CMAKE_SOURCE_DIR}/ui/qt/tap_parameter_dialog.ui
560 ${CMAKE_SOURCE_DIR}/ui/qt/tcp_stream_dialog.ui
561 ${CMAKE_SOURCE_DIR}/ui/qt/time_shift_dialog.ui
562 ${CMAKE_SOURCE_DIR}/ui/qt/traffic_table_dialog.ui
563 ${CMAKE_SOURCE_DIR}/ui/qt/uat_dialog.ui
564 ${CMAKE_SOURCE_DIR}/ui/qt/uat_frame.ui
565 ${CMAKE_SOURCE_DIR}/ui/qt/welcome_page.ui
566 ${CMAKE_SOURCE_DIR}/ui/qt/widgets/splash_overlay.ui
570 list(APPEND WIRESHARK_QT_UI
571 ${CMAKE_SOURCE_DIR}/ui/qt/remote_capture_dialog.ui
572 ${CMAKE_SOURCE_DIR}/ui/qt/remote_settings_dialog.ui
577 logray_main_window.ui
582 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_de.ts
583 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_en.ts # lupdate -pluralonly
584 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_es.ts
585 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_fr.ts
586 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_it.ts
587 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_ja_JP.ts
588 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_pl.ts
589 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_ru.ts
590 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_sv.ts
591 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_tr_TR.ts
592 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_uk.ts
593 ${CMAKE_SOURCE_DIR}/ui/qt/wireshark_zh_CN.ts
601 foreach(_file ${LOGRAY_QT_TS})
602 get_filename_component(_qresource ${_file} NAME_WE)
603 set(_qresource_qm "${_qresource}.qm")
604 set(i18n_qresource "${i18n_qresource}\n <file>${_qresource_qm}</file>")
606 configure_file(i18n.qrc.in ${CMAKE_CURRENT_BINARY_DIR}/i18n.qrc)
608 file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/authors.qrc"
610 " <qresource prefix=\"/about\">\n"
611 " <file compress-algo=\"zstd\">authors.csv</file>\n"
617 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/authors.csv
618 COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/make-authors-csv.py
619 < ${CMAKE_SOURCE_DIR}/AUTHORS
620 > ${CMAKE_CURRENT_BINARY_DIR}/authors.csv
622 ${CMAKE_SOURCE_DIR}/tools/make-authors-csv.py
623 ${CMAKE_SOURCE_DIR}/AUTHORS
627 ${CMAKE_SOURCE_DIR}/resources/about.qrc
628 ${CMAKE_SOURCE_DIR}/resources/languages/languages.qrc
629 ${CMAKE_SOURCE_DIR}/resources/layout.qrc
630 ${CMAKE_SOURCE_DIR}/resources/lricon.qrc
631 ${CMAKE_SOURCE_DIR}/resources/stock_icons.qrc
632 ${CMAKE_CURRENT_BINARY_DIR}/i18n.qrc
633 ${CMAKE_CURRENT_BINARY_DIR}/authors.qrc
634 ${CMAKE_CURRENT_BINARY_DIR}/authors.csv
637 if(NOT Qt${qtver}Widgets_VERSION VERSION_LESS "5.9")
638 # Drop the file modification time of source files from generated files
639 # to help with reproducible builds. We do not use QFileInfo.lastModified
640 # so this has no unwanted side effects. This mtime started appearing in
641 # Qt 5.8. The option to force the old file format without mtime was
642 # added in Qt 5.9. See https://bugreports.qt.io/browse/QTBUG-58769.
643 # Force the compression algorithm to zlib, since zstd requires format
644 # version 3. See https://gitlab.com/wireshark/wireshark/-/issues/18100.
645 # Use the number of dashes for each argument as documented at
646 # https://doc.qt.io/qt-6/rcc.html.
647 set(CMAKE_AUTORCC_OPTIONS --format-version 1)
648 if(Qt${qtver}Widgets_VERSION VERSION_GREATER_EQUAL "5.13")
649 list(APPEND CMAKE_AUTORCC_OPTIONS -compress-algo zlib)
654 QT6_ADD_TRANSLATION(LOGRAY_QT_QM ${LOGRAY_QT_TS} OPTIONS -silent)
655 elseif(NOT Qt${qtver}Widgets_VERSION VERSION_LESS "5.11")
656 QT5_ADD_TRANSLATION(LOGRAY_QT_QM ${LOGRAY_QT_TS} OPTIONS -silent)
658 QT5_ADD_TRANSLATION(LOGRAY_QT_QM ${LOGRAY_QT_TS})
666 set_target_properties(logray_translations PROPERTIES FOLDER "UI")
668 set_source_files_properties(
671 COMPILE_FLAGS "${WERROR_COMMON_FLAGS}"
674 set_source_files_properties(
675 logray-tap-register.c
680 add_definitions(${QT_DEFINITIONS})
682 register_tap_files(logray-tap-register.c
686 source_group("ui\\UIC Files" FILES ${LOGRAY_QT_UI})
687 source_group("ui\\qrc" FILES ${LOGRAY_QT_QRC})
688 source_group("ui\\Header" FILES ${LOGRAY_QT_HEADERS})
689 source_group("ui\\Widget Header" FILES ${LOGRAY_WIDGET_HEADERS})
690 source_group("ui\\Widget Source" FILES ${LOGRAY_WIDGET_SRCS})
691 source_group("ui\\Utils Headers Files" FILES ${LOGRAY_UTILS_HEADERS})
692 source_group("ui\\Utils Source" FILES ${LOGRAY_UTILS_SRCS})
693 source_group("ui\\Models Headers" FILES ${LOGRAY_MODEL_HEADERS})
694 source_group("ui\\Models Source" FILES ${LOGRAY_MODEL_SRCS})
695 source_group("ui\\Manager Headers" FILES ${LOGRAY_MANAGER_HEADERS})
696 source_group("ui\\Manager Source" FILES ${LOGRAY_MANAGER_SRCS})
698 add_library(ui_logray OBJECT
699 #Included so that Visual Studio can properly put header files in solution
701 ${LOGRAY_WIDGET_HEADERS}
702 ${LOGRAY_3RD_PARTY_WIDGET_HEADERS}
703 ${LOGRAY_MANAGER_HEADERS}
704 ${LOGRAY_UTILS_HEADERS}
705 ${LOGRAY_MODEL_HEADERS}
708 ${LOGRAY_WIDGET_SRCS}
709 ${LOGRAY_3RD_PARTY_WIDGET_SRCS}
710 ${LOGRAY_MANAGER_SRCS}
714 # For AUTOUIC and AUTORCC.
719 logray-tap-register.c
722 target_include_directories(ui_logray
724 # Include Qt before anything else, see the comment about
725 # QT5_INCLUDE_DIRS in the top-level CMakeLists.txt
726 # Basically, qt@5 headers should be prioritized over qt@6 which
727 # would be found due to GCRYPT_INCLUDE_DIRS=/usr/local/include
729 ${GCRYPT_INCLUDE_DIRS}
730 ${MINIZIP_INCLUDE_DIRS}
731 ${MINIZIPNG_INCLUDE_DIRS}
733 ${SPEEXDSP_INCLUDE_DIRS}
734 ${WINSPARKLE_INCLUDE_DIRS}
736 ${CMAKE_CURRENT_BINARY_DIR}
737 ${CMAKE_CURRENT_SOURCE_DIR}
738 ${CMAKE_SOURCE_DIR}/ui/qt
742 target_link_libraries(ui_logray PUBLIC
748 if(Qt6Multimedia_FOUND)
749 target_link_libraries(ui_logray PUBLIC Qt6::Multimedia)
752 target_link_libraries(ui_logray PUBLIC Qt6::DBus)
756 target_compile_definitions(ui_logray
758 ${QT5_COMPILE_DEFINITIONS}
761 set_target_properties(ui_logray PROPERTIES
762 LINK_FLAGS "${WS_LINK_FLAGS}"
767 # Ensure .qm files are generated before autogenerating i18n.qrc
768 AUTOGEN_TARGET_DEPENDS "${LOGRAY_QT_QM}"
772 set_target_properties(ui_logray PROPERTIES LINK_FLAGS_DEBUG "${WS_MSVC_DEBUG_LINK_FLAGS}")
781 # QCustomPlot (LOGRAY_3RD_PARTY_WIDGET_{HEADERS,SRCS}) uses
784 ${LOGRAY_WIDGET_HEADERS}
785 ${LOGRAY_MANAGER_HEADERS}
786 ${LOGRAY_UTILS_HEADERS}
787 ${LOGRAY_MODEL_HEADERS}
790 ${LOGRAY_WIDGET_SRCS}
791 ${LOGRAY_MANAGER_SRCS}
798 # Editor modelines - https://www.wireshark.org/tools/modelines.html
803 # indent-tabs-mode: t
806 # vi: set shiftwidth=8 tabstop=8 noexpandtab:
807 # :indentSize=8:tabSize=8:noTabs=false: