2025-11-06 00:19:19 +08:00
|
|
|
cmake_minimum_required(VERSION 3.15)
|
|
|
|
|
project(WinGUI C)
|
|
|
|
|
|
|
|
|
|
set(SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
|
file(GLOB SOURCES ${SOURCE_DIR}/*.c)
|
|
|
|
|
list(FILTER SOURCES EXCLUDE REGEX \\.t\\.c)
|
|
|
|
|
foreach (item IN LISTS SOURCES)
|
|
|
|
|
message(STATUS "[${PROJECT_NAME}] SOURCE: ${item}")
|
|
|
|
|
endforeach ()
|
|
|
|
|
|
|
|
|
|
add_library(${PROJECT_NAME} "")
|
|
|
|
|
target_sources(${PROJECT_NAME} PUBLIC ${SOURCES})
|
|
|
|
|
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
|
|
|
|
|
|
file(GLOB TEST_SOURCES ${SOURCE_DIR}/*.t.c)
|
|
|
|
|
foreach (item IN LISTS TEST_SOURCES)
|
|
|
|
|
get_filename_component(TestUnit ${item} NAME_WLE)
|
|
|
|
|
message(STATUS "[${PROJECT_NAME}] TEST UNIT: ${TestUnit} - ${item}")
|
|
|
|
|
add_executable(${TestUnit} ${item})
|
|
|
|
|
target_link_libraries(${TestUnit} PRIVATE ${PROJECT_NAME})
|
2026-07-28 14:17:49 +08:00
|
|
|
endforeach ()
|
|
|
|
|
|
|
|
|
|
file(GLOB GUI_TEST_SOURCES ${SOURCE_DIR}/GUITest/*.t.c)
|
|
|
|
|
foreach (item IN LISTS GUI_TEST_SOURCES)
|
|
|
|
|
get_filename_component(TestUnit ${item} NAME_WLE)
|
|
|
|
|
message(STATUS "[${PROJECT_NAME}] TEST UNIT: ${TestUnit} - ${item}")
|
|
|
|
|
add_executable(${TestUnit} WIN32 ${item})
|
|
|
|
|
target_include_directories(${TestUnit} PUBLIC ${SOURCE_DIR}/GUITest)
|
|
|
|
|
target_link_libraries(${TestUnit} PRIVATE ${PROJECT_NAME})
|
|
|
|
|
endforeach ()
|
|
|
|
|
|
|
|
|
|
target_sources(Resource.t PRIVATE GUITest/Resource.rc)
|
|
|
|
|
target_sources(Snake.t PRIVATE GUITest/Snake.rc)
|
|
|
|
|
target_sources(SimpFont.t PRIVATE GUITest/SimpFont.rc)
|
2026-07-28 23:35:51 +08:00
|
|
|
target_sources(FontsExp.t PRIVATE GUITest/FontsExp.rc GUITest/FontStr.c)
|