This commit is contained in:
Jeffrey Hsu 2025-03-25 18:25:03 +08:00
parent 79b6fbe7e3
commit cbd9bd31a9
2 changed files with 59 additions and 9 deletions

View File

@ -69,7 +69,51 @@ add_executable(374 src/374.c)
add_executable(2786 src/2786.c)
add_executable(3110 src/3110.c)
add_library(2711 STATIC src/2711.c)
add_library(367 STATIC src/367.c)
file(GLOB SRC_FILES "src/*.c")
set(EXECUTABLE_SOURCES
"${CMAKE_SOURCE_DIR}/src/13.c"
"${CMAKE_SOURCE_DIR}/src/88.c"
"${CMAKE_SOURCE_DIR}/src/100.c"
"${CMAKE_SOURCE_DIR}/src/101.c"
"${CMAKE_SOURCE_DIR}/src/104.c"
"${CMAKE_SOURCE_DIR}/src/108.c"
"${CMAKE_SOURCE_DIR}/src/110.c"
"${CMAKE_SOURCE_DIR}/src/111.c"
"${CMAKE_SOURCE_DIR}/src/112.c"
"${CMAKE_SOURCE_DIR}/src/136.c"
"${CMAKE_SOURCE_DIR}/src/141.c"
"${CMAKE_SOURCE_DIR}/src/144.c"
"${CMAKE_SOURCE_DIR}/src/145.c"
"${CMAKE_SOURCE_DIR}/src/160.c"
"${CMAKE_SOURCE_DIR}/src/168.c"
"${CMAKE_SOURCE_DIR}/src/169.c"
"${CMAKE_SOURCE_DIR}/src/171.c"
"${CMAKE_SOURCE_DIR}/src/190.c"
"${CMAKE_SOURCE_DIR}/src/191.c"
"${CMAKE_SOURCE_DIR}/src/202.c"
"${CMAKE_SOURCE_DIR}/src/219.c"
"${CMAKE_SOURCE_DIR}/src/225.c"
"${CMAKE_SOURCE_DIR}/src/228.c"
"${CMAKE_SOURCE_DIR}/src/231.c"
"${CMAKE_SOURCE_DIR}/src/258.c"
"${CMAKE_SOURCE_DIR}/src/263.c"
"${CMAKE_SOURCE_DIR}/src/268.c"
"${CMAKE_SOURCE_DIR}/src/278.c"
"${CMAKE_SOURCE_DIR}/src/338.c"
"${CMAKE_SOURCE_DIR}/src/374.c"
"${CMAKE_SOURCE_DIR}/src/2786.c"
"${CMAKE_SOURCE_DIR}/src/3110.c"
)
set(LIBRARY_SOURCES)
foreach (SRC_FILE ${SRC_FILES})
if (NOT SRC_FILE IN_LIST EXECUTABLE_SOURCES)
list(APPEND LIBRARY_SOURCES ${SRC_FILE})
endif ()
endforeach ()
add_library(leetcode STATIC ${LIBRARY_SOURCES})
add_subdirectory(tests)

View File

@ -1,8 +1,14 @@
add_executable(test_2711 test_2711.cpp)
target_link_libraries(test_2711 PUBLIC gtest_main 2711)
add_executable(test_367 test_367.cpp)
target_link_libraries(test_367 PUBLIC gtest_main 367)
file(GLOB TEST_SOURCES "test_*.cpp")
enable_testing()
add_test(NAME test_2711 COMMAND test_2711)
add_test(NAME test_367 COMMAND test_367)
set(TEST_LIBS gtest_main leetcode)
foreach (TEST_SRC ${TEST_SOURCES})
get_filename_component(TEST_NAME ${TEST_SRC} NAME_WE)
add_executable(${TEST_NAME} ${TEST_SRC})
target_link_libraries(${TEST_NAME} PUBLIC ${TEST_LIBS})
add_test(NAME ${TEST_NAME} COMMAND ${TEST_NAME})
endforeach ()
enable_testing()