T GUI tools: guard with cmake option, default off
The T tools offering a GUI use libxft as a dependency. By default, we try to limit the amount of dependencies, but libxft comes with X11. Put the GUI tools behind cmake option T_TOOLS_GUI (default: off) to only build on demand with a cmake option.
This commit is contained in:
@@ -21,30 +21,6 @@ target_link_libraries(extract_output_subframe PRIVATE tracer_utils)
|
||||
add_executable(extract extract.c)
|
||||
target_link_libraries(extract PRIVATE tracer_utils)
|
||||
|
||||
add_executable(textlog textlog.c)
|
||||
target_link_libraries(textlog PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
|
||||
|
||||
find_library(png png REQUIRED)
|
||||
add_executable(enb enb.c)
|
||||
target_link_libraries(enb PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
target_link_libraries(enb PRIVATE png)
|
||||
|
||||
add_executable(ue ue.c)
|
||||
target_link_libraries(ue PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
target_link_libraries(ue PRIVATE png)
|
||||
|
||||
add_executable(vcd vcd.c)
|
||||
target_link_libraries(vcd PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
|
||||
add_executable(to_vcd to_vcd.c)
|
||||
target_link_libraries(to_vcd PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
|
||||
add_executable(macpdu2wireshark macpdu2wireshark.c)
|
||||
target_link_libraries(macpdu2wireshark PRIVATE tracer_utils)
|
||||
|
||||
@@ -52,22 +28,52 @@ add_executable(multi multi.c)
|
||||
target_link_libraries(multi PRIVATE tracer_utils T)
|
||||
target_include_directories(multi PRIVATE ..)
|
||||
|
||||
add_executable(gnb gnb.c)
|
||||
target_link_libraries(gnb PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
target_link_libraries(gnb PRIVATE png)
|
||||
|
||||
add_subdirectory(filter)
|
||||
add_subdirectory(gui)
|
||||
add_subdirectory(logger)
|
||||
add_subdirectory(view)
|
||||
|
||||
add_custom_target(T_tools)
|
||||
add_dependencies(T_tools
|
||||
record replay extract_config textlog enb ue vcd macpdu2wireshark
|
||||
extract_input_subframe extract_output_subframe to_vcd extract multi
|
||||
gnb)
|
||||
record replay extract_config extract_input_subframe
|
||||
extract_output_subframe extract macpdu2wireshark multi)
|
||||
add_dependencies(nr-softmodem T_tools)
|
||||
add_dependencies(nr-uesoftmodem T_tools)
|
||||
add_dependencies(lte-softmodem T_tools)
|
||||
add_dependencies(lte-uesoftmodem T_tools)
|
||||
|
||||
# Some T tracer tools need additional libraries (Xft, also PNG) that come with
|
||||
# a long list of dependencies. We put it behind a separate option for
|
||||
# GUI-related tools so they can be added on demand, if necessary.
|
||||
add_boolean_option(T_TRACER_GUI OFF "Compile T tracer GUI tools" OFF)
|
||||
if(T_TRACER_GUI)
|
||||
add_executable(textlog textlog.c)
|
||||
target_link_libraries(textlog PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
|
||||
find_library(png png REQUIRED)
|
||||
add_executable(enb enb.c)
|
||||
target_link_libraries(enb PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
target_link_libraries(enb PRIVATE png)
|
||||
|
||||
add_executable(gnb gnb.c)
|
||||
target_link_libraries(gnb PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
target_link_libraries(gnb PRIVATE png)
|
||||
|
||||
add_executable(ue ue.c)
|
||||
target_link_libraries(ue PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
target_link_libraries(ue PRIVATE png)
|
||||
|
||||
add_executable(vcd vcd.c)
|
||||
target_link_libraries(vcd PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
|
||||
add_executable(to_vcd to_vcd.c)
|
||||
target_link_libraries(to_vcd PRIVATE tracer_utils tracer_filter tracer_gui
|
||||
tracer_logger tracer_view tracer_events)
|
||||
|
||||
add_subdirectory(gui)
|
||||
add_subdirectory(filter)
|
||||
add_subdirectory(logger)
|
||||
add_subdirectory(view)
|
||||
|
||||
add_dependencies(T_tools textlog enb gnb ue vcd to_vcd)
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user