Remove SDL2

This commit is contained in:
2025-07-22 14:21:23 -05:00
parent e870773fe2
commit 374e34d896
61 changed files with 54 additions and 6457 deletions

View File

@@ -51,28 +51,6 @@ src/Crypto/MbedHelpers.cpp
src/TF_Init.cpp
src/wrapper.cpp
src/HiddenField.cpp
src/SDL2/FontCache.cpp
src/SDL2/Stream.cpp
src/SDL2/GUI.cpp
src/SDL2/GUIWindow.cpp
src/SDL2/GUIPopup.cpp
src/SDL2/View.cpp
src/SDL2/Views/ButtonView.cpp
src/SDL2/Views/AbsoluteView.cpp
src/SDL2/Views/LabelView.cpp
src/SDL2/Views/TextListView.cpp
src/SDL2/Views/ScrollableTextListView.cpp
src/SDL2/Views/ProgressView.cpp
src/SDL2/Views/CheckView.cpp
src/SDL2/Views/MultilineEditTextView.cpp
src/SDL2/Views/EditTextView.cpp
src/SDL2/Views/PictureView.cpp
src/SDL2/Views/VScrollView.cpp
src/SDL2/Views/HScrollView.cpp
src/SDL2/Views/VStackView.cpp
src/SDL2/Views/HStackView.cpp
src/SDL2/Views/DropDownView.cpp
src/SDL2/Views/TabView.cpp
)
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
@@ -83,7 +61,7 @@ option(TESSESFRAMEWORK_ENABLE_NETWORKING "Enable Networking" ON)
option(TESSESFRAMEWORK_ENABLE_THREADING "Enable Threading" ON)
option(TESSESFRAMEWORK_ENABLE_SQLITE "Enable sqlite (embedded in source)" ON)
option(TESSESFRAMEWORK_ENABLE_PLATFORMFOLDERS "Enable sago platformfolders (embedded in source)" ON)
option(TESSESFRAMEWORK_DEFINE_SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS OFF)
if(TESSESFRAMEWORK_DEFINE_SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS)
add_definitions(-DSDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS=1)
endif()
@@ -105,7 +83,6 @@ option(TESSESFRAMEWORK_ENABLE_STATIC "Enable Tesses Framework Static Libraries"
option(TESSESFRAMEWORK_ENABLE_SHARED "Enable Tesses Framework Shared Libraries" ON)
option(TESSESFRAMEWORK_ENABLE_SETDATE "Enable setting date to file" ON)
option(TESSESFRAMEWORK_LOGTOFILE "TessesFramework Log to file" OFF)
option(TESSESFRAMEWORK_ENABLE_SDL2 "Enable SDL2" OFF)
option(TESSESFRAMEWORK_FETCHCONTENT "TessesFramework fetchcontent" OFF)
option(TESSESFRAMEWORK_VENDERCERTCHAIN "Use the ca-certificates.crt in project rather than system" ON)
if(TESSESFRAMEWORK_FETCHCONTENT)
@@ -122,83 +99,11 @@ endif()
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include)
include(cmake/bin2h.cmake)
if(TESSESFRAMEWORK_ENABLE_SDL2)
if("${CMAKE_SYSTEM_NAME}" STREQUAL "NintendoWii" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "NintendoGameCube" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "NintendoSwitch")
find_package(PkgConfig)
pkg_search_module(SDL2 REQUIRED sdl2)
pkg_search_module(SDL2_TTF REQUIRED SDL2_ttf)
pkg_search_module(SDL2_IMAGE REQUIRED SDL2_image)
else()
if(TESSESFRAMEWORK_FETCHCONTENT)
function(sdl2_fix TessesFramework_TARGET)
target_include_directories(${TessesFramework_TARGET} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/_deps/sdl_image-src/include")
target_include_directories(${TessesFramework_TARGET} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/_deps/sdl_ttf-src")
endfunction()
FetchContent_Declare(
SDL
URL https://downloads.tesses.net/cache/libraries/source/SDL2-2.30.11.tar.gz
)
FetchContent_Declare(
SDL_IMAGE
URL https://downloads.tesses.net/cache/libraries/source/SDL2_image-2.8.4.tar.gz
)
FetchContent_Declare(
FREETYPE
URL https://downloads.tesses.net/cache/libraries/source/freetype-2.13.3.tar.gz
)
FetchContent_Declare(
SDL_TTF
URL https://downloads.tesses.net/cache/libraries/source/SDL2_ttf-2.24.0.tar.gz
)
set(SDL2_DISABLE_UNINSTALL ON CACHE BOOL "" FORCE)
set(SDL_TEST_ENABLED_BY_DEFAULT OFF)
# SDL main is only needed for desktop apps (more specifically Windows)
set(SDL2_DISABLE_SDL2MAIN ON CACHE BOOL "" FORCE)
set(SDL_CMAKE_DEBUG_POSTFIX "" CACHE STRING "" FORCE)
set(SDL2IMAGE_DEBUG_POSTFIX "" CACHE STRING "" FORCE)
if(NOT TESSESFRAMEWORK_ENABLE_SHARED)
#set(SDL_SHARED OFF)
set(BUILD_SHARED_LIBS OFF)
endif()
set(SDL2TTF_VENDORED ON)
set(SDL2IMAGE_VENDORED ON)
FetchContent_MakeAvailable(SDL SDL_IMAGE SDL_TTF)
# Making sure libraries don't generate symlinks
if(TESSESFRAMEWORK_ENABLE_SHARED)
set_property(TARGET SDL2 PROPERTY VERSION)
set_property(TARGET SDL2 PROPERTY SOVERSION)
set_property(TARGET SDL2_image PROPERTY VERSION)
set_property(TARGET SDL2_image PROPERTY SOVERSION)
set_property(TARGET SDL2_ttf PROPERTY VERSION)
set_property(TARGET SDL2_ttf PROPERTY SOVERSION)
endif()
else()
find_package(SDL2 REQUIRED)
find_package(SDL2_image REQUIRED)
find_package(SDL2_ttf REQUIRED)
find_package(SDL2 REQUIRED CONFIG COMPONENTS SDL2main)
endif()
endif()
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/include/TessesFramework/TanoheSans-Regular.h" "#pragma once\n")
bin2h(SOURCE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/font/NonMono/TanoheSans-Regular.ttf" HEADER_FILE "${CMAKE_CURRENT_BINARY_DIR}/include/TessesFramework/TanoheSans-Regular.h" VARIABLE_NAME TanoheSansRegular APPEND NULL_TERMINATE)
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/include/TessesFramework/TanoheSans-Regular.h" "\n")
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/include/TessesFramework/aardvark-fixed-regular.h" "#pragma once\n")
bin2h(SOURCE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/font/Mono/aardvark-fixed-regular.ttf" HEADER_FILE "${CMAKE_CURRENT_BINARY_DIR}/include/TessesFramework/aardvark-fixed-regular.h" VARIABLE_NAME AardvarkFixedRegular APPEND NULL_TERMINATE)
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/include/TessesFramework/aardvark-fixed-regular.h" "\n")
endif()
if(TESSESFRAMEWORK_ENABLE_MBED)
if(TESSESFRAMEWORK_EMBED_CERT_BUNDLE)
@@ -261,32 +166,6 @@ endif()
if(TESSESFRAMEWORK_FETCHCONTENT)
target_compile_definitions(${TessesFramework_TARGET} PUBLIC TESSESFRAMEWORK_FETCHCONTENT)
endif()
if(TESSESFRAMEWORK_ENABLE_SDL2)
if("${CMAKE_SYSTEM_NAME}" STREQUAL "NintendoWii" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "NintendoGameCube" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "NintendoSwitch")
target_link_libraries(${TessesFramework_TARGET} PUBLIC ${SDL2_LIBRARIES})
target_include_directories(${TessesFramework_TARGET} PUBLIC ${SDL2_INCLUDE_DIRS})
target_compile_options(${TessesFramework_TARGET} PUBLIC ${SDL2_CFLAGS_OTHER})
target_link_libraries(${TessesFramework_TARGET} PUBLIC ${SDL2_TTF_LIBRARIES})
target_include_directories(${TessesFramework_TARGET} PUBLIC ${SDL2_TTF_INCLUDE_DIRS})
target_compile_options(${TessesFramework_TARGET} PUBLIC ${SDL2_TTF_CFLAGS_OTHER})
target_link_libraries(${TessesFramework_TARGET} PUBLIC ${SDL2_IMAGE_LIBRARIES})
target_include_directories(${TessesFramework_TARGET} PUBLIC ${SDL2_IMAGE_INCLUDE_DIRS})
target_compile_options(${TessesFramework_TARGET} PUBLIC ${SDL2_IMAGE_CFLAGS_OTHER})
else()
if(TESSESFRAMEWORK_FETCHCONTENT)
if(NOT TESSESFRAMEWORK_ENABLE_SHARED)
target_link_libraries(${TessesFramework_TARGET} PUBLIC SDL2-static SDL2_image SDL2_ttf)
else()
target_link_libraries(${TessesFramework_TARGET} PUBLIC SDL2 SDL2_image SDL2_ttf)
endif()
sdl2_fix(${TessesFramework_TARGET})
else()
target_link_libraries(${TessesFramework_TARGET} PUBLIC SDL2::SDL2 SDL2_image::SDL2_image SDL2_ttf::SDL2_ttf)
endif()
endif()
target_compile_definitions(${TessesFramework_TARGET} PUBLIC TESSESFRAMEWORK_ENABLE_SDL2)
endif()
if(TESSESFRAMEWORK_ENABLE_MBED)
target_compile_definitions(${TessesFramework_TARGET} PUBLIC TESSESFRAMEWORK_ENABLE_MBED)
if(TESSESFRAMEWORK_EMBED_CERT_BUNDLE)
@@ -376,19 +255,12 @@ target_link_libraries(tessesframework_shared PUBLIC mbedtls mbedx509 mbedcrypto)
endif()
endif()
list(APPEND TessesFrameworkLibs tessesframework_shared)
endif()
if((TESSESFRAMEWORK_ENABLE_STATIC OR TESSESFRAMEWORK_ENABLE_SHARED) AND TESSESFRAMEWORK_FETCHCONTENT AND TESSESFRAMEWORK_ENABLE_MBED)
list(APPEND TessesFrameworkLibs mbedtls mbedx509 mbedcrypto everest p256m)
endif()
if((TESSESFRAMEWORK_ENABLE_STATIC OR TESSESFRAMEWORK_ENABLE_SHARED) AND TESSESFRAMEWORK_FETCHCONTENT AND TESSESFRAMEWORK_ENABLE_SDL2)
if(NOT TESSESFRAMEWORK_ENABLE_SHARED)
list(APPEND TessesFrameworkLibs SDL2-static SDL2_image SDL2_ttf)
else()
list(APPEND TessesFrameworkLibs SDL2 SDL2_image SDL2_ttf)
endif()
endif()
@@ -422,30 +294,7 @@ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/TessesFramework)
endif()
if(TESSESFRAMEWORK_ENABLE_EXAMPLES)
if(TESSESFRAMEWORK_ENABLE_SDL2)
if(TESSESFRAMEWORK_ENABLE_SQLITE AND TESSESFRAMEWORK_ENABLE_PLATFORMFOLDERS)
add_executable(databaseex examples/databaseex.cpp)
target_link_libraries(databaseex PUBLIC tessesframework)
#if(TARGET SDL2::SDL2main)
#target_link_libraries(databaseex PRIVATE SDL2::SDL2main)
#endif()
#if(TARGET SDL2main)
#target_link_libraries(databaseex PRIVATE SDL2main)
#endif()
endif()
add_executable(guikitchensink examples/guikitchensink.cpp)
target_link_libraries(guikitchensink PUBLIC tessesframework)
# if(TARGET SDL2::SDL2main)
# target_link_libraries(guikitchensink PRIVATE SDL2::SDL2main)
# endif()
# if(TARGET SDL2main)
# target_link_libraries(guikitchensink PRIVATE SDL2main)
# endif()
endif()
add_executable(copyfile examples/copyfile.cpp)
target_link_libraries(copyfile PUBLIC tessesframework)
@@ -472,19 +321,6 @@ if(TESSESFRAMEWORK_ENABLE_EXAMPLES)
endif()
if(TESSESFRAMEWORK_ENABLE_APPS)
if(TESSESFRAMEWORK_ENABLE_SDL2)
add_executable(tguilayouttester apps/guilayouttester.cpp)
target_link_libraries(tguilayouttester PUBLIC tessesframework)
#if(TARGET SDL2::SDL2main)
# target_link_libraries(tguilayouttester PRIVATE SDL2::SDL2main)
# endif()
# if(TARGET SDL2main)
# target_link_libraries(tguilayouttester PRIVATE SDL2main)
# endif()
install(TARGETS tguilayouttester DESTINATION bin)
endif()
add_executable(tanonydrop apps/tanonydrop.cpp)
target_link_libraries(tanonydrop PUBLIC tessesframework)
install(TARGETS tanonydrop DESTINATION bin)