From 2c4159b99adf72c428347a7dea6e704314b5b6f1 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Mon, 21 Nov 2022 20:28:58 -0800
Subject: [PATCH] First pass at changing SDL 2.0 to SDL 3.0
---
.editorconfig | 2 +-
Android.mk | 10 +-
CMakeLists.txt | 754 +++++++--------
Makefile.in | 60 +-
Makefile.minimal | 4 +-
Makefile.os2 | 16 +-
Makefile.pandora | 2 +-
Makefile.w32 | 18 +-
README.md | 2 +-
SDL2Config.cmake.in | 65 --
SDL2.spec.in => SDL3.spec.in | 6 +-
SDL3Config.cmake.in | 65 ++
VisualC-GDK/SDL.sln | 6 +-
VisualC-GDK/SDL/SDL.vcxproj | 2 +-
VisualC-GDK/SDLmain/SDLmain.vcxproj | 4 +-
VisualC-GDK/SDLtest/SDLtest.vcxproj | 4 +-
VisualC-WinRT/SDL-UWP.sln | 2 +-
VisualC-WinRT/SDL-UWP.vcxproj | 20 +-
VisualC/SDL.sln | 6 +-
VisualC/SDL/SDL.vcxproj | 2 +-
VisualC/SDLmain/SDLmain.vcxproj | 2 +-
VisualC/SDLtest/SDLtest.vcxproj | 2 +-
VisualC/pkg-support/cmake/sdl2-config.cmake | 111 ---
...ersion.cmake => sdl3-config-version.cmake} | 6 +-
VisualC/pkg-support/cmake/sdl3-config.cmake | 111 +++
.../Demos/Demos.xcodeproj/project.pbxproj | 98 +-
Xcode-iOS/Demos/README | 2 +-
Xcode-iOS/Demos/config.xcconfig | 2 +-
Xcode/SDL/Info-Framework.plist | 4 +-
Xcode/SDL/SDL.xcodeproj/project.pbxproj | 126 +--
.../xcschemes/Framework-iOS.xcscheme | 4 +-
.../xcschemes/xcFramework-iOS.xcscheme | 4 +-
Xcode/SDL/{SDL2 => SDL3}/Info.plist | 0
Xcode/SDL/pkg-support/SDL.info | 2 +-
.../resources/CMake/sdl2-config.cmake | 69 --
...ersion.cmake => sdl3-config-version.cmake} | 6 +-
.../resources/CMake/sdl3-config.cmake | 69 ++
Xcode/SDL/pkg-support/resources/ReadMe.txt | 10 +-
Xcode/SDL/pkg-support/resources/SDL_DS_Store | Bin 15364 -> 15365 bytes
.../SDLTest/SDLTest.xcodeproj/project.pbxproj | 66 +-
Xcode/SDLTest/config.xcconfig | 6 +-
android-project-ant/jni/src/Android.mk | 2 +-
android-project-ant/jni/src/Android_static.mk | 2 +-
android-project/app/jni/src/Android.mk | 2 +-
android-project/app/jni/src/CMakeLists.txt | 4 +-
.../main/java/org/libsdl/app/SDLActivity.java | 18 +-
build-scripts/android-prefab.sh | 4 +-
build-scripts/androidbuildlibs.sh | 2 +-
build-scripts/emscripten-buildbot.sh | 6 +-
build-scripts/nacl-buildbot.sh | 8 +-
build-scripts/naclbuild.sh | 12 +-
build-scripts/raspberrypi-buildbot.sh | 14 +-
build-scripts/windows-buildbot-zipper.bat | 6 +-
cmake/macros.cmake | 2 +-
cmake/sdlchecks.cmake | 58 +-
cmake/test/CMakeLists.txt | 84 +-
cmake/test/jni/Android.mk | 6 +-
cmake/test/main_cli.c | 2 +-
cmake/test/main_gui.c | 4 +-
cmake/test/main_lib.c | 2 +-
cmake/test/test_pkgconfig.sh | 6 +-
cmake/test/test_sdlconfig.sh | 6 +-
configure | 64 +-
configure.ac | 44 +-
docs/README-android.md | 8 +-
docs/README-cmake.md | 30 +-
docs/README-dynapi.md | 24 +-
docs/README-emscripten.md | 4 +-
docs/README-gdk.md | 20 +-
docs/README-ios.md | 8 +-
docs/README-kmsbsd.md | 2 +-
docs/README-n3ds.md | 2 +-
docs/README-ngage.md | 4 +-
docs/README-os2.md | 13 +-
docs/README-ps2.md | 6 +-
docs/README-psp.md | 6 +-
docs/README-raspberrypi.md | 4 +-
docs/README-riscos.md | 6 +-
docs/README-visualc.md | 16 +-
docs/README-winrt.md | 6 +-
docs/doxyfile | 8 +-
include/SDL.h | 2 +-
include/SDL_audio.h | 2 +-
include/SDL_hints.h | 2 +-
include/SDL_main.h | 2 +-
include/SDL_test.h | 2 +-
include/SDL_test_assert.h | 2 +-
include/SDL_test_common.h | 2 +-
include/SDL_test_compare.h | 2 +-
include/SDL_test_crc32.h | 2 +-
include/SDL_test_font.h | 2 +-
include/SDL_test_fuzzer.h | 2 +-
include/SDL_test_harness.h | 2 +-
include/SDL_test_images.h | 2 +-
include/SDL_test_log.h | 2 +-
include/SDL_test_md5.h | 2 +-
include/SDL_test_memory.h | 2 +-
include/SDL_test_random.h | 2 +-
include/SDL_thread.h | 8 +-
include/SDL_version.h | 6 +-
.../cmake/sdl2-config-version.cmake | 19 -
mingw/pkg-support/cmake/sdl2-config.cmake | 19 -
.../cmake/sdl3-config-version.cmake | 19 +
mingw/pkg-support/cmake/sdl3-config.cmake | 19 +
sdl2-config.cmake.in | 206 -----
...n.cmake.in => sdl3-config-version.cmake.in | 2 +-
sdl3-config.cmake.in | 206 +++++
sdl2-config.in => sdl3-config.in | 4 +-
sdl2.m4 => sdl3.m4 | 76 +-
sdl2.pc.in => sdl3.pc.in | 4 +-
src/SDL_internal.h | 2 +-
src/audio/emscripten/SDL_emscriptenaudio.c | 134 +--
src/audio/qsa/SDL_qsa_audio.c | 2 +-
src/core/linux/SDL_ibus.c | 2 +-
src/dynapi/SDL2.exports | 869 ------------------
src/dynapi/SDL3.exports | 869 ++++++++++++++++++
src/dynapi/SDL_dynapi.c | 16 +-
src/dynapi/gendynapi.pl | 8 +-
src/main/windows/version.rc | 10 +-
...cur => SDL3-WinRTResource_BlankCursor.cur} | Bin
...nRTResources.rc => SDL3-WinRTResources.rc} | 2 +-
src/stdlib/SDL_mslibc.c | 2 +-
.../emscripten/SDL_emscriptenframebuffer.c | 36 +-
src/video/haiku/SDL_bmessagebox.cc | 2 +-
src/video/kmsdrm/SDL_kmsdrmopengles.c | 2 +-
src/video/kmsdrm/SDL_kmsdrmvideo.c | 2 +-
src/video/os2/SDL_os2video.c | 4 +-
src/video/raspberry/SDL_rpiopengles.c | 2 +-
src/video/windows/SDL_windowswindow.c | 3 +-
src/video/winrt/SDL_winrtmouse.cpp | 4 +-
src/video/x11/SDL_x11video.c | 2 +-
test/CMakeLists.txt | 40 +-
test/Makefile.in | 4 +-
test/Makefile.os2 | 2 +-
test/Makefile.w32 | 2 +-
test/acinclude.m4 | 54 +-
test/configure | 108 +--
test/configure.ac | 20 +-
test/nacl/Makefile | 4 +-
test/testautomation_audio.c | 2 +-
test/testver.c | 6 +-
test/watcom.mif | 8 +-
visualtest/COPYING.txt | 2 +-
visualtest/acinclude.m4 | 54 +-
visualtest/configure | 86 +-
visualtest/configure.ac | 6 +-
146 files changed, 2633 insertions(+), 2635 deletions(-)
delete mode 100644 SDL2Config.cmake.in
rename SDL2.spec.in => SDL3.spec.in (97%)
create mode 100644 SDL3Config.cmake.in
delete mode 100644 VisualC/pkg-support/cmake/sdl2-config.cmake
rename VisualC/pkg-support/cmake/{sdl2-config-version.cmake => sdl3-config-version.cmake} (92%)
create mode 100644 VisualC/pkg-support/cmake/sdl3-config.cmake
rename Xcode/SDL/{SDL2 => SDL3}/Info.plist (100%)
delete mode 100644 Xcode/SDL/pkg-support/resources/CMake/sdl2-config.cmake
rename Xcode/SDL/pkg-support/resources/CMake/{sdl2-config-version.cmake => sdl3-config-version.cmake} (94%)
create mode 100644 Xcode/SDL/pkg-support/resources/CMake/sdl3-config.cmake
delete mode 100644 mingw/pkg-support/cmake/sdl2-config-version.cmake
delete mode 100644 mingw/pkg-support/cmake/sdl2-config.cmake
create mode 100644 mingw/pkg-support/cmake/sdl3-config-version.cmake
create mode 100644 mingw/pkg-support/cmake/sdl3-config.cmake
delete mode 100644 sdl2-config.cmake.in
rename sdl2-config-version.cmake.in => sdl3-config-version.cmake.in (81%)
create mode 100644 sdl3-config.cmake.in
rename sdl2-config.in => sdl3-config.in (94%)
rename sdl2.m4 => sdl3.m4 (73%)
rename sdl2.pc.in => sdl3.pc.in (86%)
delete mode 100644 src/dynapi/SDL2.exports
create mode 100644 src/dynapi/SDL3.exports
rename src/main/winrt/{SDL2-WinRTResource_BlankCursor.cur => SDL3-WinRTResource_BlankCursor.cur} (100%)
rename src/main/winrt/{SDL2-WinRTResources.rc => SDL3-WinRTResources.rc} (54%)
diff --git a/.editorconfig b/.editorconfig
index 636c5445335c..5f3849ca431f 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -16,7 +16,7 @@ indent_style = space
indent_size = 4
indent_style = space
-[{CMakeLists.txt,sdl2-config*.cmake.in,cmake/*.cmake}]
+[{CMakeLists.txt,sdl3-config*.cmake.in,cmake/*.cmake}]
indent_size = 2
indent_style = space
diff --git a/Android.mk b/Android.mk
index 06146cd40cd0..658e15951c44 100644
--- a/Android.mk
+++ b/Android.mk
@@ -8,7 +8,7 @@ LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
-LOCAL_MODULE := SDL2
+LOCAL_MODULE := SDL3
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
@@ -97,9 +97,9 @@ include $(BUILD_SHARED_LIBRARY)
#
###########################
-LOCAL_MODULE := SDL2_static
+LOCAL_MODULE := SDL3_static
-LOCAL_MODULE_FILENAME := libSDL2
+LOCAL_MODULE_FILENAME := libSDL3
LOCAL_LDLIBS :=
@@ -120,9 +120,9 @@ include $(CLEAR_VARS)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
-LOCAL_MODULE := SDL2_main
+LOCAL_MODULE := SDL3_main
-LOCAL_MODULE_FILENAME := libSDL2main
+LOCAL_MODULE_FILENAME := libSDL3main
include $(BUILD_STATIC_LIBRARY)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 021b66cd5731..60a4782ae581 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,12 +3,12 @@ if(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
endif()
cmake_minimum_required(VERSION 3.0.0)
-project(SDL2 C CXX)
+project(SDL3 C CXX)
if(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
- set(SDL2_SUBPROJECT OFF)
+ set(SDL3_SUBPROJECT OFF)
else()
- set(SDL2_SUBPROJECT ON)
+ set(SDL3_SUBPROJECT ON)
endif()
if (HAIKU)
@@ -46,7 +46,7 @@ if(POLICY CMP0054)
endif()
# !!! FIXME: this should probably do "MACOSX_RPATH ON" as a target property
-# !!! FIXME: for the SDL2 shared library (so you get an
+# !!! FIXME: for the SDL shared library (so you get an
# !!! FIXME: install_name ("soname") of "@rpath/libSDL-whatever.dylib"
# !!! FIXME: instead of "/usr/local/lib/libSDL-whatever.dylib"), but I'm
# !!! FIXME: punting for now and leaving the existing behavior. Until this
@@ -71,10 +71,10 @@ include(GNUInstallDirs)
find_package(PkgConfig)
-list(APPEND CMAKE_MODULE_PATH "${SDL2_SOURCE_DIR}/cmake")
-include(${SDL2_SOURCE_DIR}/cmake/macros.cmake)
-include(${SDL2_SOURCE_DIR}/cmake/sdlchecks.cmake)
-include(${SDL2_SOURCE_DIR}/cmake/CheckCPUArchitecture.cmake)
+list(APPEND CMAKE_MODULE_PATH "${SDL3_SOURCE_DIR}/cmake")
+include(${SDL3_SOURCE_DIR}/cmake/macros.cmake)
+include(${SDL3_SOURCE_DIR}/cmake/sdlchecks.cmake)
+include(${SDL3_SOURCE_DIR}/cmake/CheckCPUArchitecture.cmake)
# Enable large file support on 32-bit glibc, so that we can access files
# with large inode numbers
@@ -84,8 +84,8 @@ if (LIBC_IS_GLIBC AND CMAKE_SIZEOF_VOID_P EQUAL 4)
endif()
# See docs/release_checklist.md
-set(SDL_MAJOR_VERSION 2)
-set(SDL_MINOR_VERSION 26)
+set(SDL_MAJOR_VERSION 3)
+set(SDL_MINOR_VERSION 0)
set(SDL_MICRO_VERSION 0)
set(SDL_VERSION "${SDL_MAJOR_VERSION}.${SDL_MINOR_VERSION}.${SDL_MICRO_VERSION}")
@@ -98,15 +98,15 @@ mark_as_advanced(CMAKE_IMPORT_LIBRARY_SUFFIX SDL_CMAKE_DEBUG_POSTFIX)
# Calculate a libtool-like version number
math(EXPR SDL_BINARY_AGE "${SDL_MINOR_VERSION} * 100 + ${SDL_MICRO_VERSION}")
if(SDL_MINOR_VERSION MATCHES "[02468]$")
- # Stable branch, 2.24.1 -> libSDL2-2.0.so.0.2400.1
+ # Stable branch, 3.24.1 -> libSDL3-3.0.so.0.2400.1
set(SDL_INTERFACE_AGE ${SDL_MICRO_VERSION})
else()
- # Development branch, 2.23.1 -> libSDL2-2.0.so.0.2301.0
+ # Development branch, 3.23.1 -> libSDL3-3.0.so.0.2301.0
set(SDL_INTERFACE_AGE 0)
endif()
# Increment this if there is an incompatible change - but if that happens,
-# we should rename the library from SDL2 to SDL3, at which point this would
+# we should rename the library from SDL3 to SDL4, at which point this would
# reset to 0 anyway.
set(LT_MAJOR "0")
@@ -114,10 +114,10 @@ math(EXPR LT_AGE "${SDL_BINARY_AGE} - ${SDL_INTERFACE_AGE}")
math(EXPR LT_CURRENT "${LT_MAJOR} + ${LT_AGE}")
set(LT_REVISION "${SDL_INTERFACE_AGE}")
# For historical reasons, the library name redundantly includes the major
-# version twice: libSDL2-2.0.so.0.
+# version twice: libSDL3-3.0.so.0.
# TODO: in SDL 3, set the OUTPUT_NAME to plain SDL3, which will simplify
# it to libSDL3.so.0
-set(LT_RELEASE "2.0")
+set(LT_RELEASE "3.0")
set(LT_VERSION "${LT_MAJOR}.${LT_AGE}.${LT_REVISION}")
# The following should match the versions in the Xcode project file.
@@ -146,7 +146,7 @@ else()
set(ARCH_64 FALSE)
set(PROCESSOR_ARCH "x86")
endif()
-set(LIBNAME SDL2)
+set(LIBNAME SDL3)
if(NOT LIBTYPE)
set(LIBTYPE SHARED)
endif()
@@ -325,9 +325,9 @@ if(MSVC)
endif()
endif()
-# Those are used for pkg-config and friends, so that the sdl2.pc, sdl2-config,
+# Those are used for pkg-config and friends, so that the sdl3.pc, sdl3-config,
# etc. are created correctly.
-set(SDL_LIBS "-lSDL2")
+set(SDL_LIBS "-lSDL3")
set(SDL_CFLAGS )
# When building shared lib for Windows with MinGW,
@@ -358,13 +358,13 @@ endif()
# General includes
target_compile_definitions(sdl-build-options INTERFACE "-DUSING_GENERATED_CONFIG_H")
-target_include_directories(sdl-build-options BEFORE INTERFACE "${SDL2_BINARY_DIR}/include" "${SDL2_BINARY_DIR}/include-config-$<LOWER_CASE:$<CONFIG>>")
+target_include_directories(sdl-build-options BEFORE INTERFACE "${SDL3_BINARY_DIR}/include" "${SDL3_BINARY_DIR}/include-config-$<LOWER_CASE:$<CONFIG>>")
# Note: The clang toolset for Visual Studio does not support the '-idirafter' option.
if(USE_GCC OR (USE_CLANG AND NOT MSVC_CLANG))
# !!! FIXME: do we _need_ to mess with CMAKE_C_FLAGS here?
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter \"${SDL2_SOURCE_DIR}/src/video/khronos\"")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter \"${SDL3_SOURCE_DIR}/src/video/khronos\"")
else()
- target_include_directories(sdl-build-options INTERFACE "${SDL2_SOURCE_DIR}/src/video/khronos")
+ target_include_directories(sdl-build-options INTERFACE "${SDL3_SOURCE_DIR}/src/video/khronos")
endif()
# All these ENABLED_BY_DEFAULT vars will default to ON if not specified, so
@@ -427,9 +427,9 @@ foreach(_SUB ${SDL_SUBSYSTEMS})
endforeach()
# Allow some projects to be built conditionally.
-set_option(SDL2_DISABLE_SDL2MAIN "Disable building/installation of SDL2main" OFF)
-set_option(SDL2_DISABLE_INSTALL "Disable installation of SDL2" ${SDL2_SUBPROJECT})
-set_option(SDL2_DISABLE_UNINSTALL "Disable uninstallation of SDL2" OFF)
+set_option(SDL3_DISABLE_SDL3MAIN "Disable building/installation of SDL3main" OFF)
+set_option(SDL3_DISABLE_INSTALL "Disable installation of SDL3" ${SDL3_SUBPROJECT})
+set_option(SDL3_DISABLE_UNINSTALL "Disable uninstallation of SDL3" OFF)
option_string(SDL_ASSERTIONS "Enable internal sanity checks (auto/disabled/release/enabled/paranoid)" "auto")
#set_option(SDL_DEPENDENCY_TRACKING "Use gcc -MMD -MT dependency tracking" ON)
@@ -519,7 +519,7 @@ option(SDL_WERROR "Enable -Werror" OFF)
option(SDL_SHARED "Build a shared version of the library" ${SDL_SHARED_ENABLED_BY_DEFAULT})
option(SDL_STATIC "Build a static version of the library" ${SDL_STATIC_ENABLED_BY_DEFAULT})
-option(SDL_TEST "Build the SDL2_test library" ${SDL_TEST_ENABLED_BY_DEFAULT})
+option(SDL_TEST "Build the SDL3_test library" ${SDL_TEST_ENABLED_BY_DEFAULT})
dep_option(SDL_STATIC_PIC "Static version of the library should be built with Position Independent Code" "${CMAKE_POSITION_INDEPENDENT_CODE}" "SDL_STATIC" OFF)
dep_option(SDL_TESTS "Build the test directory" OFF SDL_TEST OFF)
@@ -562,28 +562,28 @@ endif()
# General source files
file(GLOB SOURCE_FILES
- ${SDL2_SOURCE_DIR}/src/*.c
- ${SDL2_SOURCE_DIR}/src/atomic/*.c
- ${SDL2_SOURCE_DIR}/src/audio/*.c
- ${SDL2_SOURCE_DIR}/src/cpuinfo/*.c
- ${SDL2_SOURCE_DIR}/src/dynapi/*.c
- ${SDL2_SOURCE_DIR}/src/events/*.c
- ${SDL2_SOURCE_DIR}/src/file/*.c
- ${SDL2_SOURCE_DIR}/src/joystick/*.c
- ${SDL2_SOURCE_DIR}/src/haptic/*.c
- ${SDL2_SOURCE_DIR}/src/hidapi/*.c
- ${SDL2_SOURCE_DIR}/src/libm/*.c
- ${SDL2_SOURCE_DIR}/src/locale/*.c
- ${SDL2_SOURCE_DIR}/src/misc/*.c
- ${SDL2_SOURCE_DIR}/src/power/*.c
- ${SDL2_SOURCE_DIR}/src/render/*.c
- ${SDL2_SOURCE_DIR}/src/render/*/*.c
- ${SDL2_SOURCE_DIR}/src/sensor/*.c
- ${SDL2_SOURCE_DIR}/src/stdlib/*.c
- ${SDL2_SOURCE_DIR}/src/thread/*.c
- ${SDL2_SOURCE_DIR}/src/timer/*.c
- ${SDL2_SOURCE_DIR}/src/video/*.c
- ${SDL2_SOURCE_DIR}/src/video/yuv2rgb/*.c)
+ ${SDL3_SOURCE_DIR}/src/*.c
+ ${SDL3_SOURCE_DIR}/src/atomic/*.c
+ ${SDL3_SOURCE_DIR}/src/audio/*.c
+ ${SDL3_SOURCE_DIR}/src/cpuinfo/*.c
+ ${SDL3_SOURCE_DIR}/src/dynapi/*.c
+ ${SDL3_SOURCE_DIR}/src/events/*.c
+ ${SDL3_SOURCE_DIR}/src/file/*.c
+ ${SDL3_SOURCE_DIR}/src/joystick/*.c
+ ${SDL3_SOURCE_DIR}/src/haptic/*.c
+ ${SDL3_SOURCE_DIR}/src/hidapi/*.c
+ ${SDL3_SOURCE_DIR}/src/libm/*.c
+ ${SDL3_SOURCE_DIR}/src/locale/*.c
+ ${SDL3_SOURCE_DIR}/src/misc/*.c
+ ${SDL3_SOURCE_DIR}/src/power/*.c
+ ${SDL3_SOURCE_DIR}/src/render/*.c
+ ${SDL3_SOURCE_DIR}/src/render/*/*.c
+ ${SDL3_SOURCE_DIR}/src/sensor/*.c
+ ${SDL3_SOURCE_DIR}/src/stdlib/*.c
+ ${SDL3_SOURCE_DIR}/src/thread/*.c
+ ${SDL3_SOURCE_DIR}/src/timer/*.c
+ ${SDL3_SOURCE_DIR}/src/video/*.c
+ ${SDL3_SOURCE_DIR}/src/video/yuv2rgb/*.c)
set(SDL_DEFAULT_ASSERT_LEVEL_CONFIGURED 1)
@@ -924,7 +924,7 @@ if(SDL_ASSEMBLY)
if(ARMSIMD_FOUND)
set(HAVE_ARMSIMD TRUE)
set(SDL_ARM_SIMD_BLITTERS 1)
- file(GLOB ARMSIMD_SOURCES ${SDL2_SOURCE_DIR}/src/video/arm/pixman-arm-simd*.S)
+ file(GLOB ARMSIMD_SOURCES ${SDL3_SOURCE_DIR}/src/video/arm/pixman-arm-simd*.S)
list(APPEND SOURCE_FILES ${ARMSIMD_SOURCES})
set(WARN_ABOUT_ARM_SIMD_ASM_MIT TRUE)
endif()
@@ -952,7 +952,7 @@ if(SDL_ASSEMBLY)
if(ARMNEON_FOUND)
set(HAVE_ARMNEON TRUE)
set(SDL_ARM_NEON_BLITTERS 1)
- file(GLOB ARMNEON_SOURCES ${SDL2_SOURCE_DIR}/src/video/arm/pixman-arm-neon*.S)
+ file(GLOB ARMNEON_SOURCES ${SDL3_SOURCE_DIR}/src/video/arm/pixman-arm-neon*.S)
list(APPEND SOURCE_FILES ${ARMNEON_SOURCES})
set(WARN_ABOUT_ARM_NEON_ASM_MIT TRUE)
endif()
@@ -1141,14 +1141,14 @@ if(SDL_AUDIO)
# CheckDummyAudio/CheckDiskAudio - valid for all platforms
if(SDL_DUMMYAUDIO)
set(SDL_AUDIO_DRIVER_DUMMY 1)
- file(GLOB DUMMYAUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/dummy/*.c)
+ file(GLOB DUMMYAUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/dummy/*.c)
list(APPEND SOURCE_FILES ${DUMMYAUDIO_SOURCES})
set(HAVE_DUMMYAUDIO TRUE)
set(HAVE_SDL_AUDIO TRUE)
endif()
if(SDL_DISKAUDIO)
set(SDL_AUDIO_DRIVER_DISK 1)
- file(GLOB DISKAUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/disk/*.c)
+ file(GLOB DISKAUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/disk/*.c)
list(APPEND SOURCE_FILES ${DISKAUDIO_SOURCES})
set(HAVE_DISKAUDIO TRUE)
set(HAVE_SDL_AUDIO TRUE)
@@ -1161,7 +1161,7 @@ if(UNIX OR APPLE)
CheckDLOPEN()
if(SDL_LOADSO AND HAVE_DLOPEN)
set(SDL_LOADSO_DLOPEN 1)
- file(GLOB DLOPEN_SOURCES ${SDL2_SOURCE_DIR}/src/loadso/dlopen/*.c)
+ file(GLOB DLOPEN_SOURCES ${SDL3_SOURCE_DIR}/src/loadso/dlopen/*.c)
list(APPEND SOURCE_FILES ${DLOPEN_SOURCES})
set(HAVE_SDL_LOADSO TRUE)
endif()
@@ -1175,7 +1175,7 @@ if(SDL_JOYSTICK)
if(SDL_VIRTUAL_JOYSTICK)
set(HAVE_VIRTUAL_JOYSTICK TRUE)
set(SDL_JOYSTICK_VIRTUAL 1)
- file(GLOB JOYSTICK_VIRTUAL_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/virtual/*.c)
+ file(GLOB JOYSTICK_VIRTUAL_SOURCES ${SDL3_SOURCE_DIR}/src/joystick/virtual/*.c)
list(APPEND SOURCE_FILES ${JOYSTICK_VIRTUAL_SOURCES})
endif()
endif()
@@ -1183,14 +1183,14 @@ endif()
if(SDL_VIDEO)
if(SDL_DUMMYVIDEO)
set(SDL_VIDEO_DRIVER_DUMMY 1)
- file(GLOB VIDEO_DUMMY_SOURCES ${SDL2_SOURCE_DIR}/src/video/dummy/*.c)
+ file(GLOB VIDEO_DUMMY_SOURCES ${SDL3_SOURCE_DIR}/src/video/dummy/*.c)
list(APPEND SOURCE_FILES ${VIDEO_DUMMY_SOURCES})
set(HAVE_DUMMYVIDEO TRUE)
set(HAVE_SDL_VIDEO TRUE)
endif()
if(SDL_OFFSCREEN)
set(SDL_VIDEO_DRIVER_OFFSCREEN 1)
- file(GLOB VIDEO_OFFSCREEN_SOURCES ${SDL2_SOURCE_DIR}/src/video/offscreen/*.c)
+ file(GLOB VIDEO_OFFSCREEN_SOURCES ${SDL3_SOURCE_DIR}/src/video/offscreen/*.c)
list(APPEND SOURCE_FILES ${VIDEO_OFFSCREEN_SOURCES})
set(HAVE_OFFSCREEN TRUE)
set(HAVE_SDL_VIDEO TRUE)
@@ -1199,12 +1199,12 @@ endif()
# Platform-specific options and settings
if(ANDROID)
- file(GLOB ANDROID_CORE_SOURCES ${SDL2_SOURCE_DIR}/src/core/android/*.c)
+ file(GLOB ANDROID_CORE_SOURCES ${SDL3_SOURCE_DIR}/src/core/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_CORE_SOURCES} ${ANDROID_NDK}/sources/android/cpufeatures/cpu-features.c)
set_property(SOURCE "${ANDROID_NDK}/sources/android/cpufeatures/cpu-features.c" APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-declaration-after-statement")
if(SDL_MISC)
- file(GLOB ANDROID_MISC_SOURCES ${SDL2_SOURCE_DIR}/src/misc/android/*.c)
+ file(GLOB ANDROID_MISC_SOURCES ${SDL3_SOURCE_DIR}/src/misc/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_MISC_SOURCES})
set(HAVE_SDL_MISC TRUE)
endif()
@@ -1217,39 +1217,39 @@ if(ANDROID)
set(CMAKE_REQUIRED_FLAGS "-Werror=unused-command-line-argument")
check_c_compiler_flag(-marm HAVE_ARM_MODE)
if(HAVE_ARM_MODE)
- set_property(SOURCE "${SDL2_SOURCE_DIR}/src/atomic/SDL_spinlock.c" APPEND_STRING PROPERTY COMPILE_FLAGS " -marm")
+ set_property(SOURCE "${SDL3_SOURCE_DIR}/src/atomic/SDL_spinlock.c" APPEND_STRING PROPERTY COMPILE_FLAGS " -marm")
endif()
cmake_pop_check_state()
- file(GLOB ANDROID_MAIN_SOURCES ${SDL2_SOURCE_DIR}/src/main/android/*.c)
+ file(GLOB ANDROID_MAIN_SOURCES ${SDL3_SOURCE_DIR}/src/main/android/*.c)
list(APPEND SDLMAIN_SOURCES ${ANDROID_MAIN_SOURCES})
if(SDL_AUDIO)
set(SDL_AUDIO_DRIVER_ANDROID 1)
- file(GLOB ANDROID_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/android/*.c)
+ file(GLOB ANDROID_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_AUDIO_SOURCES})
set(SDL_AUDIO_DRIVER_OPENSLES 1)
- file(GLOB OPENSLES_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/openslES/*.c)
+ file(GLOB OPENSLES_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/openslES/*.c)
list(APPEND SOURCE_FILES ${OPENSLES_AUDIO_SOURCES})
list(APPEND EXTRA_LIBS ${ANDROID_DL_LIBRARY} OpenSLES)
set(SDL_AUDIO_DRIVER_AAUDIO 1)
- file(GLOB AAUDIO_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/aaudio/*.c)
+ file(GLOB AAUDIO_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/aaudio/*.c)
list(APPEND SOURCE_FILES ${AAUDIO_AUDIO_SOURCES})
set(HAVE_SDL_AUDIO TRUE)
endif()
if(SDL_FILESYSTEM)
set(SDL_FILESYSTEM_ANDROID 1)
- file(GLOB ANDROID_FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/android/*.c)
+ file(GLOB ANDROID_FILESYSTEM_SOURCES ${SDL3_SOURCE_DIR}/src/filesystem/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_FILESYSTEM_SOURCES})
set(HAVE_SDL_FILESYSTEM TRUE)
endif()
if(SDL_HAPTIC)
set(SDL_HAPTIC_ANDROID 1)
- file(GLOB ANDROID_HAPTIC_SOURCES ${SDL2_SOURCE_DIR}/src/haptic/android/*.c)
+ file(GLOB ANDROID_HAPTIC_SOURCES ${SDL3_SOURCE_DIR}/src/haptic/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_HAPTIC_SOURCES})
set(HAVE_SDL_HAPTIC TRUE)
endif()
@@ -1258,42 +1258,42 @@ if(ANDROID)
endif()
if(SDL_JOYSTICK)
set(SDL_JOYSTICK_ANDROID 1)
- file(GLOB ANDROID_JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/android/*.c ${SDL2_SOURCE_DIR}/src/joystick/steam/*.c)
+ file(GLOB ANDROID_JOYSTICK_SOURCES ${SDL3_SOURCE_DIR}/src/joystick/android/*.c ${SDL3_SOURCE_DIR}/src/joystick/steam/*.c)
list(APPEND SOURCE_FILES ${ANDROID_JOYSTICK_SOURCES})
set(HAVE_SDL_JOYSTICK TRUE)
endif()
if(SDL_LOADSO)
set(SDL_LOADSO_DLOPEN 1)
- file(GLOB LOADSO_SOURCES ${SDL2_SOURCE_DIR}/src/loadso/dlopen/*.c)
+ file(GLOB LOADSO_SOURCES ${SDL3_SOURCE_DIR}/src/loadso/dlopen/*.c)
list(APPEND SOURCE_FILES ${LOADSO_SOURCES})
set(HAVE_SDL_LOADSO TRUE)
endif()
if(SDL_POWER)
set(SDL_POWER_ANDROID 1)
- file(GLOB ANDROID_POWER_SOURCES ${SDL2_SOURCE_DIR}/src/power/android/*.c)
+ file(GLOB ANDROID_POWER_SOURCES ${SDL3_SOURCE_DIR}/src/power/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_POWER_SOURCES})
set(HAVE_SDL_POWER TRUE)
endif()
if(SDL_LOCALE)
- file(GLOB ANDROID_LOCALE_SOURCES ${SDL2_SOURCE_DIR}/src/locale/android/*.c)
+ file(GLOB ANDROID_LOCALE_SOURCES ${SDL3_SOURCE_DIR}/src/locale/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_LOCALE_SOURCES})
set(HAVE_SDL_LOCALE TRUE)
endif()
if(SDL_TIMERS)
set(SDL_TIMER_UNIX 1)
- file(GLOB TIMER_SOURCES ${SDL2_SOURCE_DIR}/src/timer/unix/*.c)
+ file(GLOB TIMER_SOURCES ${SDL3_SOURCE_DIR}/src/timer/unix/*.c)
list(APPEND SOURCE_FILES ${TIMER_SOURCES})
set(HAVE_SDL_TIMERS TRUE)
endif()
if(SDL_SENSOR)
set(SDL_SENSOR_ANDROID 1)
set(HAVE_SDL_SENSORS TRUE)
- file(GLOB ANDROID_SENSOR_SOURCES ${SDL2_SOURCE_DIR}/src/sensor/android/*.c)
+ file(GLOB ANDROID_SENSOR_SOURCES ${SDL3_SOURCE_DIR}/src/sensor/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_SENSOR_SOURCES})
endif()
if(SDL_VIDEO)
set(SDL_VIDEO_DRIVER_ANDROID 1)
- file(GLOB ANDROID_VIDEO_SOURCES ${SDL2_SOURCE_DIR}/src/video/android/*.c)
+ file(GLOB ANDROID_VIDEO_SOURCES ${SDL3_SOURCE_DIR}/src/video/android/*.c)
list(APPEND SOURCE_FILES ${ANDROID_VIDEO_SOURCES})
set(HAVE_SDL_VIDEO TRUE)
@@ -1340,42 +1340,42 @@ elseif(EMSCRIPTEN)
target_compile_options(sdl-build-options INTERFACE "-Wno-warn-absolute-paths")
if(SDL_MISC)
- file(GLOB EMSRIPTEN_MISC_SOURCES ${SDL2_SOURCE_DIR}/src/misc/emscripten/*.c)
+ file(GLOB EMSRIPTEN_MISC_SOURCES ${SDL3_SOURCE_DIR}/src/misc/emscripten/*.c)
list(APPEND SOURCE_FILES ${EMSRIPTEN_MISC_SOURCES})
set(HAVE_SDL_MISC TRUE)
endif()
if(SDL_AUDIO)
set(SDL_AUDIO_DRIVER_EMSCRIPTEN 1)
- file(GLOB EM_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/emscripten/*.c)
+ file(GLOB EM_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/emscripten/*.c)
list(APPEND SOURCE_FILES ${EM_AUDIO_SOURCES})
set(HAVE_SDL_AUDIO TRUE)
endif()
if(SDL_FILESYSTEM)
set(SDL_FILESYSTEM_EMSCRIPTEN 1)
- file(GLOB EM_FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/emscripten/*.c)
+ file(GLOB EM_FILESYSTEM_SOURCES ${SDL3_SOURCE_DIR}/src/filesystem/emscripten/*.c)
list(APPEND SOURCE_FILES ${EM_FILESYSTEM_SOURCES})
set(HAVE_SDL_FILESYSTEM TRUE)
endif()
if(SDL_JOYSTICK)
set(SDL_JOYSTICK_EMSCRIPTEN 1)
- file(GLOB EM_JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/emscripten/*.c)
+ file(GLOB EM_JOYSTICK_SOURCES ${SDL3_SOURCE_DIR}/src/joystick/emscripten/*.c)
list(APPEND SOURCE_FILES ${EM_JOYSTICK_SOURCES})
set(HAVE_SDL_JOYSTICK TRUE)
endif()
if(SDL_POWER)
set(SDL_POWER_EMSCRIPTEN 1)
- file(GLOB EM_POWER_SOURCES ${SDL2_SOURCE_DIR}/src/power/emscripten/*.c)
+ file(GLOB EM_POWER_SOURCES ${SDL3_SOURCE_DIR}/src/power/emscripten/*.c)
list(APPEND SOURCE_FILES ${EM_POWER_SOURCES})
set(HAVE_SDL_POWER TRUE)
endif()
if(SDL_LOCALE)
- file(GLOB LOCALE_SOURCES ${SDL2_SOURCE_DIR}/src/locale/emscripten/*.c)
+ file(GLOB LOCALE_SOURCES ${SDL3_SOURCE_DIR}/src/locale/emscripten/*.c)
list(APPEND SOURCE_FILES ${LOCALE_SOURCES})
set(HAVE_SDL_LOCALE TRUE)
endif()
if(SDL_TIMERS)
set(SDL_TIMER_UNIX 1)
- file(GLOB TIMER_SOURCES ${SDL2_SOURCE_DIR}/src/timer/unix/*.c)
+ file(GLOB TIMER_SOURCES ${SDL3_SOURCE_DIR}/src/timer/unix/*.c)
list(APPEND SOURCE_FILES ${TIMER_SOURCES})
set(HAVE_SDL_TIMERS TRUE)
@@ -1385,7 +1385,7 @@ elseif(EMSCRIPTEN)
endif()
if(SDL_VIDEO)
set(SDL_VIDEO_DRIVER_EMSCRIPTEN 1)
- file(GLOB EM_VIDEO_SOURCES ${SDL2_SOURCE_DIR}/src/video/emscripten/*.c)
+ file(GLOB EM_VIDEO_SOURCES ${SDL3_SOURCE_DIR}/src/video/emscripten/*.c)
list(APPEND SOURCE_FILES ${EM_VIDEO_SOURCES})
set(HAVE_SDL_VIDEO TRUE)
@@ -1408,17 +1408,17 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU)
if(SDL_AUDIO)
if(SYSV5 OR SOLARIS OR HPUX)
set(SDL_AUDIO_DRIVER_SUNAUDIO 1)
- file(GLOB SUN_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/sun/*.c)
+ file(GLOB SUN_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/sun/*.c)
list(APPEND SOURCE_FILES ${SUN_AUDIO_SOURCES})
set(HAVE_SDL_AUDIO TRUE)
elseif(NETBSD)
set(SDL_AUDIO_DRIVER_NETBSD 1)
- file(GLOB NETBSD_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/netbsd/*.c)
+ file(GLOB NETBSD_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/netbsd/*.c)
list(APPEND SOURCE_FILES ${NETBSD_AUDIO_SOURCES})
set(HAVE_SDL_AUDIO TRUE)
elseif(AIX)
set(SDL_AUDIO_DRIVER_PAUDIO 1)
- file(GLOB AIX_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/paudio/*.c)
+ file(GLOB AIX_AUDIO_SOURCES ${SDL3_SOURCE_DIR}/src/audio/paudio/*.c)
list(APPEND SOURCE_FILES ${AIX_AUDIO_SOURCES})
set(HAVE_SDL_AUDIO TRUE)
endif()
@@ -1455,7 +1455,7 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU)
endif()
if(UNIX)
- file(GLOB CORE_UNIX_SOURCES ${SDL2_SOURCE_DIR}/src/core/unix/*.c)
+ file(GLOB CORE_UNIX_SOURCES ${SDL3_SOURCE_DIR}/src/core/unix/*.c)
list(APPEND SOURCE_FILES ${CORE_UNIX_SOURCES})
check_c_source_compiles("
@@ -1493,7 +1493,7 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU)
if(SDL_HAPTIC AND HAVE_INPUT_EVENTS)
set(SDL_HAPTIC_LINUX 1)
- file(GLOB HAPTIC_SOURCES ${SDL2_SOURCE_DIR}/src/haptic/linux/*.c)
+ file(GLOB HAPTIC_SOURCES ${SDL3_SOURCE_DIR}/src/haptic/linux/*.c
(Patch may be truncated, please check the link at the top of this post.)