Skip to content

Commit b5dd0ee

Browse files
committed
Relax the requirement that test programs be C90 compliant
Fixes #14588
1 parent 3b12019 commit b5dd0ee

File tree

1 file changed

+8
-13
lines changed

1 file changed

+8
-13
lines changed

test/CMakeLists.txt

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ option(SDLTEST_TRACKMEM "Run tests with --trackmem" OFF)
4444
if(WIN32)
4545
option(SDLTEST_PROCDUMP "Run tests using sdlprocdump for minidump generation" OFF)
4646
add_executable(sdlprocdump win32/sdlprocdump.c)
47-
set_property(TARGET sdlprocdump PROPERTY C_STANDARD "90")
4847
SDL_AddCommonCompilerFlags(sdlprocdump)
4948
if(SDLTEST_PROCDUMP)
5049
set(CMAKE_TEST_LAUNCHER "$<TARGET_FILE:sdlprocdump>;--")
@@ -100,7 +99,7 @@ define_property(TARGET PROPERTY SDL_NONINTERACTIVE_ARGUMENTS BRIEF_DOCS "Argumen
10099
define_property(TARGET PROPERTY SDL_NONINTERACTIVE_TIMEOUT BRIEF_DOCS "Timeout for noninteractive executable." FULL_DOCS "Timeout for noninteractive executable.")
101100

102101
function(add_sdl_test_executable TARGET)
103-
cmake_parse_arguments(AST "BUILD_DEPENDENT;NONINTERACTIVE;NEEDS_RESOURCES;TESTUTILS;THREADS;NO_C90;MAIN_CALLBACKS;NOTRACKMEM" "" "DEPENDS;DISABLE_THREADS_ARGS;NONINTERACTIVE_TIMEOUT;NONINTERACTIVE_ARGS;INSTALLED_ARGS;SOURCES" ${ARGN})
102+
cmake_parse_arguments(AST "BUILD_DEPENDENT;NONINTERACTIVE;NEEDS_RESOURCES;TESTUTILS;THREADS;MAIN_CALLBACKS;NOTRACKMEM" "" "DEPENDS;DISABLE_THREADS_ARGS;NONINTERACTIVE_TIMEOUT;NONINTERACTIVE_ARGS;INSTALLED_ARGS;SOURCES" ${ARGN})
104103
if(AST_UNPARSED_ARGUMENTS)
105104
message(FATAL_ERROR "Unknown argument(s): ${AST_UNPARSED_ARGUMENTS}")
106105
endif()
@@ -123,10 +122,6 @@ function(add_sdl_test_executable TARGET)
123122
SDL_AddCommonCompilerFlags(${TARGET})
124123
target_include_directories(${TARGET} PRIVATE "${SDL3_SOURCE_DIR}/src/video/khronos")
125124
target_link_libraries(${TARGET} PRIVATE SDL3::SDL3_test SDL3::${sdl_name_component})
126-
if(NOT AST_NO_C90 AND NOT SDL_CMAKE_PLATFORM MATCHES "^(n3ds|ps2|psp)$")
127-
set_property(TARGET ${TARGET} PROPERTY C_STANDARD 90)
128-
set_property(TARGET ${TARGET} PROPERTY C_EXTENSIONS FALSE)
129-
endif()
130125
if(AST_DEPENDS)
131126
add_dependencies(${TARGET} ${AST_DEPENDS})
132127
endif()
@@ -279,7 +274,7 @@ if(FFmpeg_FOUND)
279274
cmake_pop_check_state()
280275
endif()
281276
if(FFmpeg_FOUND AND LIBAVUTIL_AVFRAME_HAS_CH_LAYOUT)
282-
add_sdl_test_executable(testffmpeg NO_C90 SOURCES testffmpeg.c testffmpeg_vulkan.c ${icon_png_header} DEPENDS generate-icon_png_header)
277+
add_sdl_test_executable(testffmpeg SOURCES testffmpeg.c testffmpeg_vulkan.c ${icon_png_header} DEPENDS generate-icon_png_header)
283278
if(LIBAVUTIL_AVFULKANFRAMESCONTEXT_HAS_FORMAT)
284279
target_compile_definitions(testffmpeg PRIVATE FFMPEG_VULKAN_SUPPORT)
285280
endif()
@@ -305,7 +300,7 @@ add_sdl_test_executable(testaudioinfo SOURCES testaudioinfo.c)
305300
add_sdl_test_executable(testaudiostreamdynamicresample NEEDS_RESOURCES TESTUTILS SOURCES testaudiostreamdynamicresample.c)
306301

307302
file(GLOB TESTAUTOMATION_SOURCE_FILES testautomation*.c)
308-
add_sdl_test_executable(testautomation NONINTERACTIVE NONINTERACTIVE_TIMEOUT 120 NEEDS_RESOURCES BUILD_DEPENDENT NO_C90 SOURCES ${TESTAUTOMATION_SOURCE_FILES})
303+
add_sdl_test_executable(testautomation NONINTERACTIVE NONINTERACTIVE_TIMEOUT 120 NEEDS_RESOURCES BUILD_DEPENDENT SOURCES ${TESTAUTOMATION_SOURCE_FILES})
309304
if(EMSCRIPTEN)
310305
target_link_options(testautomation PRIVATE -sALLOW_MEMORY_GROWTH=1 -sMAXIMUM_MEMORY=1gb)
311306
endif()
@@ -324,7 +319,7 @@ add_sdl_test_executable(testsymbols NONINTERACTIVE NOTRACKMEM NONINTERACTIVE_ARG
324319

325320
set(build_options_dependent_tests )
326321

327-
add_sdl_test_executable(testevdev BUILD_DEPENDENT NONINTERACTIVE NO_C90 SOURCES testevdev.c)
322+
add_sdl_test_executable(testevdev BUILD_DEPENDENT NONINTERACTIVE SOURCES testevdev.c)
328323

329324
if(MACOS)
330325
add_sdl_test_executable(testnative BUILD_DEPENDENT NEEDS_RESOURCES TESTUTILS
@@ -336,7 +331,7 @@ if(MACOS)
336331
elseif(WINDOWS)
337332
add_sdl_test_executable(testnative BUILD_DEPENDENT NEEDS_RESOURCES TESTUTILS SOURCES testnative.c testnativew32.c)
338333
elseif(HAVE_X11 OR HAVE_WAYLAND)
339-
add_sdl_test_executable(testnative BUILD_DEPENDENT NO_C90 NEEDS_RESOURCES TESTUTILS SOURCES testnative.c)
334+
add_sdl_test_executable(testnative BUILD_DEPENDENT NEEDS_RESOURCES TESTUTILS SOURCES testnative.c)
340335
if(HAVE_X11)
341336
target_sources(testnative PRIVATE testnativex11.c)
342337
target_link_libraries(testnative PRIVATE X11)
@@ -381,7 +376,7 @@ add_sdl_test_executable(testime NEEDS_RESOURCES TESTUTILS SOURCES testime.c)
381376
add_sdl_test_executable(testkeys SOURCES testkeys.c)
382377
add_sdl_test_executable(testloadso SOURCES testloadso.c)
383378
add_sdl_test_executable(testlocale NONINTERACTIVE SOURCES testlocale.c)
384-
add_sdl_test_executable(testlock NO_C90 SOURCES testlock.c)
379+
add_sdl_test_executable(testlock SOURCES testlock.c)
385380
add_sdl_test_executable(testrwlock SOURCES testrwlock.c NONINTERACTIVE NONINTERACTIVE_TIMEOUT 20)
386381
add_sdl_test_executable(testmouse SOURCES testmouse.c)
387382

@@ -425,7 +420,7 @@ if(EMSCRIPTEN)
425420
endif()
426421
add_sdl_test_executable(testbounds NONINTERACTIVE SOURCES testbounds.c)
427422
add_sdl_test_executable(testcustomcursor SOURCES testcustomcursor.c)
428-
add_sdl_test_executable(testvulkan NO_C90 SOURCES testvulkan.c)
423+
add_sdl_test_executable(testvulkan SOURCES testvulkan.c)
429424
add_sdl_test_executable(testoffscreen SOURCES testoffscreen.c)
430425
add_sdl_test_executable(testpopup SOURCES testpopup.c)
431426
add_sdl_test_executable(testdialog SOURCES testdialog.c)
@@ -449,7 +444,7 @@ get_property(SDL_TEST_EXECUTABLES DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" PROPER
449444
if (HAVE_WAYLAND)
450445
# Set the GENERATED property on the protocol file, since it is first created at build time
451446
set_property(SOURCE ${SDL3_BINARY_DIR}/wayland-generated-protocols/xdg-shell-protocol.c PROPERTY GENERATED 1)
452-
add_sdl_test_executable(testwaylandcustom NO_C90 NEEDS_RESOURCES SOURCES testwaylandcustom.c ${SDL3_BINARY_DIR}/wayland-generated-protocols/xdg-shell-protocol.c)
447+
add_sdl_test_executable(testwaylandcustom NEEDS_RESOURCES SOURCES testwaylandcustom.c ${SDL3_BINARY_DIR}/wayland-generated-protocols/xdg-shell-protocol.c)
453448
# Needed to silence the documentation warning in the generated header file
454449
target_compile_options(testwaylandcustom PRIVATE -Wno-documentation-unknown-command)
455450
target_link_libraries(testwaylandcustom PRIVATE wayland-client)

0 commit comments

Comments
 (0)