@@ -15,6 +15,7 @@ include_directories(include/libs)
1515
1616set_source_files_properties (
1717 "src/libs/toml++/toml.cpp"
18+ "src/libs/tiny-process-library/process.cpp"
1819 PROPERTIES COMPILE_FLAGS "-fvisibility=default"
1920)
2021
@@ -93,6 +94,36 @@ add_library(fmt STATIC
9394set_target_properties (fmt PROPERTIES POSITION_INDEPENDENT_CODE ON )
9495target_link_libraries (${TARGET_NAME} PUBLIC fmt )
9596
97+ # tiny-process-library (integrated from its own CMakeLists.txt)
98+ add_library (tiny-process-library STATIC
99+ "src/libs/tiny-process-library/process.cpp" )
100+ add_library (tiny-process-library::tiny-process-library ALIAS tiny-process-library )
101+
102+ if (MSVC )
103+ target_compile_definitions (tiny-process-library PRIVATE /D_CRT_SECURE_NO_WARNINGS )
104+ else ()
105+ target_compile_options (tiny-process-library PRIVATE -std=c++11 -Wall -Wextra )
106+ endif ()
107+
108+ if (WIN32 )
109+ set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON )
110+ target_sources (tiny-process-library PRIVATE "src/libs/tiny-process-library/process_win.cpp" )
111+ # If compiled using MSYS2, use sh to run commands
112+ if (MSYS )
113+ target_compile_definitions (tiny-process-library PUBLIC MSYS_PROCESS_USE_SH )
114+ endif ()
115+ else ()
116+ target_sources (tiny-process-library PRIVATE "src/libs/tiny-process-library/process_unix.cpp" )
117+ endif ()
118+
119+ find_package (Threads REQUIRED )
120+ target_link_libraries (tiny-process-library Threads::Threads )
121+ target_include_directories (tiny-process-library PUBLIC
122+ $<BUILD_INTERFACE :${CMAKE_CURRENT_SOURCE_DIR} /src /libs /tiny -process -library >
123+ $<INSTALL_INTERFACE :include >
124+ )
125+ target_link_libraries (${TARGET_NAME} PUBLIC tiny-process-library )
126+
96127# libcufetch
97128set (CUFETCH_HEADERS
98129 include/libcufetch/config.hh
0 commit comments