1
0
mirror of https://github.com/wolfpld/tracy.git synced 2025-03-20 07:40:02 +08:00

add getopt

This commit is contained in:
Tom Atkinson 2024-03-11 00:00:12 +00:00
parent 28bd9d1e2f
commit 1fc8478a72
6 changed files with 43 additions and 15 deletions

View File

@ -3,6 +3,8 @@ project(capture C CXX ASM)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(TRACY_NO_STATISTICS ON)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake)
@ -12,4 +14,4 @@ set(CAPTURE_SOURCE
add_executable(capture ${CAPTURE_SOURCE}) add_executable(capture ${CAPTURE_SOURCE})
target_include_directories(capture PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src) target_include_directories(capture PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
target_link_libraries(capture PRIVATE TracyServer) target_link_libraries(capture PRIVATE TracyServer TracyGetOpt)

View File

@ -1,16 +1,24 @@
set(TRACY_CLIENT_DIR ${CMAKE_CURRENT_LIST_DIR}/../public)
set(TRACY_CLIENT_SOURCES set(TRACY_CLIENT_SOURCES
${CMAKE_CURRENT_LIST_DIR}/../public/TracyClient.cpp ${TRACY_CLIENT_DIR}/common/tracy_lz4.cpp
${CMAKE_CURRENT_LIST_DIR}/../public/common/TracyStackFrames.cpp ${TRACY_CLIENT_DIR}/common/tracy_lz4hc.cpp
${TRACY_CLIENT_DIR}/common/TracySocket.cpp
${TRACY_CLIENT_DIR}/common/TracyStackFrames.cpp
${TRACY_CLIENT_DIR}/common/TracySystem.cpp
) )
add_library(TracyClient STATIC ${TRACY_CLIENT_SOURCES}) add_library(TracyClient STATIC ${TRACY_CLIENT_SOURCES})
target_include_directories(TracyClient PUBLIC ${CMAKE_CURRENT_LIST_DIR}/../public) target_include_directories(TracyClient PUBLIC ${CMAKE_CURRENT_LIST_DIR}/../public)
target_compile_definitions(TracyClient PUBLIC TRACY_ENABLE)
if (TRACY_NO_STATISTICS) if (TRACY_NO_STATISTICS)
target_compile_definitions(TracyClient PUBLIC TRACY_NO_STATISTICS) target_compile_definitions(TracyClient PUBLIC TRACY_NO_STATISTICS)
endif() endif()
# Public dependency on some libraries required when using Mingw
if(WIN32)
target_link_libraries(TracyClient PUBLIC wsock32 ws2_32 dbghelp)
endif()
set(SERVER_SOURCES set(SERVER_SOURCES
TracyEventDebug.cpp TracyEventDebug.cpp
TracyTimelineController.cpp TracyTimelineController.cpp
@ -72,9 +80,26 @@ set(SERVER_SOURCES
TracyView_Options.cpp TracyView_Options.cpp
) )
list(TRANSFORM SERVER_SOURCES PREPEND ${CMAKE_CURRENT_SOURCE_DIR}/../server/) set(TRACY_NO_STATS_SOURCE
TracyPrint.cpp
TracyWorker.cpp
TracyThreadCompress.cpp
TracyMemory.cpp
TracyTextureCompression.cpp
TracyTaskDispatch.cpp
TracyMmap.cpp
)
add_library(TracyServer STATIC ${SERVER_SOURCES}) if (TRACY_NO_STATISTICS)
message(STATUS "Building TracyServer without statistics")
list(TRANSFORM TRACY_NO_STATS_SOURCE PREPEND ${CMAKE_CURRENT_SOURCE_DIR}/../server/)
set(SOURCES ${TRACY_NO_STATS_SOURCE})
else()
list(TRANSFORM SERVER_SOURCES PREPEND ${CMAKE_CURRENT_SOURCE_DIR}/../server/)
set(SOURCES ${SERVER_SOURCES})
endif()
add_library(TracyServer STATIC ${SOURCES})
target_include_directories(TracyServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../server) target_include_directories(TracyServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../server)
target_link_libraries(TracyServer PUBLIC TracyImGui TracyCapstone TracyZstd TracyClient) target_link_libraries(TracyServer PUBLIC TracyImGui TracyCapstone TracyZstd TracyClient)
@ -84,11 +109,6 @@ if (NOT NO_TBB)
target_link_libraries(TracyServer PUBLIC TracyTbb) target_link_libraries(TracyServer PUBLIC TracyTbb)
endif() endif()
if (TRACY_NO_STATISTICS)
message(STATUS "Disabling server statistics")
target_compile_definitions(TracyServer PUBLIC TRACY_NO_STATISTICS)
endif()
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
if (CMAKE_LINKER MATCHES "ld.mold") if (CMAKE_LINKER MATCHES "ld.mold")
set(LDFLAGS "-fuse-ld=mold") set(LDFLAGS "-fuse-ld=mold")

View File

@ -12,4 +12,4 @@ set(CSVEXPORT_SRC
add_executable(csvexport ${CSVEXPORT_SRC}) add_executable(csvexport ${CSVEXPORT_SRC})
target_include_directories(csvexport PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src) target_include_directories(csvexport PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
target_link_libraries(csvexport PRIVATE TracyServer) target_link_libraries(csvexport PRIVATE TracyServer TracyGetOpt)

View File

@ -3,6 +3,8 @@ project(import-chrome C CXX ASM)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(TRACY_NO_STATISTICS ON)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake)
@ -12,4 +14,4 @@ set(SOURCES
add_executable(import-chrome ${SOURCES}) add_executable(import-chrome ${SOURCES})
target_include_directories(import-chrome PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src) target_include_directories(import-chrome PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
target_link_libraries(import-chrome PRIVATE TracyServer) target_link_libraries(import-chrome PRIVATE TracyServer TracyGetOpt)

View File

@ -3,6 +3,8 @@ project(import-fuchsia C CXX ASM)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(TRACY_NO_STATISTICS ON)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake)
@ -12,4 +14,4 @@ set(SOURCES
add_executable(import-fuchsia ${SOURCES}) add_executable(import-fuchsia ${SOURCES})
target_include_directories(import-fuchsia PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src) target_include_directories(import-fuchsia PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
target_link_libraries(import-fuchsia PRIVATE TracyServer) target_link_libraries(import-fuchsia PRIVATE TracyServer TracyGetOpt)

View File

@ -3,6 +3,8 @@ project(update C CXX ASM)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(TRACY_NO_STATISTICS ON)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/vendor.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/server.cmake)
@ -15,4 +17,4 @@ set(UPDATE_SOURCE
add_executable(update ${UPDATE_SOURCE}) add_executable(update ${UPDATE_SOURCE})
target_include_directories(update PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src) target_include_directories(update PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)
target_link_libraries(update PRIVATE TracyServer) target_link_libraries(update PRIVATE TracyServer TracyGetOpt)