From 53c2b345c909fdf2832caf45da5f73169552719f Mon Sep 17 00:00:00 2001 From: Sergio Valor Date: Fri, 17 Apr 2026 16:21:56 +0200 Subject: [PATCH] build: unifica .clang-format/.clang-tidy i exclou external/ i spv/ amb dummies --- .clang-tidy | 22 +++++++----------- CMakeLists.txt | 10 ++++---- gamecontrollerdb.txt | 1 + source/core/input/input.cpp | 23 ++++++++++--------- .../core/rendering/sdl3gpu/sdl3gpu_shader.cpp | 10 ++++---- .../core/rendering/sdl3gpu/spv/.clang-format | 2 ++ source/core/rendering/sdl3gpu/spv/.clang-tidy | 4 ++++ .../sdl3gpu/{ => spv}/crtpi_frag_spv.h | 0 .../sdl3gpu/{ => spv}/downscale_frag_spv.h | 0 .../sdl3gpu/{ => spv}/postfx_frag_spv.h | 0 .../sdl3gpu/{ => spv}/postfx_vert_spv.h | 0 .../sdl3gpu/{ => spv}/upscale_frag_spv.h | 0 source/core/system/director.hpp | 4 ++-- source/game/options.cpp | 12 +++++++--- 14 files changed, 49 insertions(+), 39 deletions(-) create mode 100644 source/core/rendering/sdl3gpu/spv/.clang-format create mode 100644 source/core/rendering/sdl3gpu/spv/.clang-tidy rename source/core/rendering/sdl3gpu/{ => spv}/crtpi_frag_spv.h (100%) rename source/core/rendering/sdl3gpu/{ => spv}/downscale_frag_spv.h (100%) rename source/core/rendering/sdl3gpu/{ => spv}/postfx_frag_spv.h (100%) rename source/core/rendering/sdl3gpu/{ => spv}/postfx_vert_spv.h (100%) rename source/core/rendering/sdl3gpu/{ => spv}/upscale_frag_spv.h (100%) diff --git a/.clang-tidy b/.clang-tidy index 897695a..91d231a 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -2,29 +2,23 @@ Checks: - readability-* - modernize-* - performance-* - - bugprone-unchecked-optional-access - - bugprone-sizeof-expression - - bugprone-suspicious-missing-comma - - bugprone-suspicious-index - - bugprone-undefined-memory-manipulation - - bugprone-use-after-move - - bugprone-out-of-bound-access + - bugprone-* - -readability-identifier-length - -readability-magic-numbers - - -bugprone-narrowing-conversions - - -performance-enum-size - - -performance-inefficient-string-concatenation - -bugprone-integer-division - -bugprone-easily-swappable-parameters + - -bugprone-narrowing-conversions - -modernize-avoid-c-arrays,-warnings-as-errors WarningsAsErrors: '*' -# Solo incluir archivos de tu código fuente (external tiene su propio .clang-tidy) -# Excluye jail_audio.hpp del análisis -HeaderFilterRegex: 'source/(?!core/audio/jail_audio\.hpp|core/rendering/sdl3gpu/.*_spv\.h).*' +# Solo headers del propio código fuente (external/ y spv/ tienen su propio .clang-tidy dummy) +HeaderFilterRegex: 'source/.*' FormatStyle: file CheckOptions: + # bugprone-empty-catch: aceptar catches vacíos marcados con @INTENTIONAL en un comentario + - { key: bugprone-empty-catch.IgnoreCatchWithKeywords, value: '@INTENTIONAL' } + # Variables locales en snake_case - { key: readability-identifier-naming.VariableCase, value: lower_case } @@ -45,7 +39,7 @@ CheckOptions: # Variables estáticas privadas como miembros privados - { key: readability-identifier-naming.StaticVariableCase, value: lower_case } - { key: readability-identifier-naming.StaticVariableSuffix, value: _ } - + # Constantes estáticas sin sufijo - { key: readability-identifier-naming.StaticConstantCase, value: UPPER_CASE } diff --git a/CMakeLists.txt b/CMakeLists.txt index c3618f7..5966f0d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,6 +3,11 @@ cmake_minimum_required(VERSION 3.10) project(jaildoctors_dilemma VERSION 1.00) +# Tipus de build per defecte (Debug) si no se n'ha especificat cap +if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set(CMAKE_BUILD_TYPE Debug CACHE STRING "" FORCE) +endif() + # Establecer estándar de C++ set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED True) @@ -159,7 +164,7 @@ if(NOT APPLE AND NOT EMSCRIPTEN) find_program(GLSLC_EXE NAMES glslc) set(SHADERS_DIR "${CMAKE_SOURCE_DIR}/data/shaders") - set(HEADERS_DIR "${CMAKE_SOURCE_DIR}/source/core/rendering/sdl3gpu") + set(HEADERS_DIR "${CMAKE_SOURCE_DIR}/source/core/rendering/sdl3gpu/spv") set(SHADER_POSTFX_VERT_SRC "${SHADERS_DIR}/postfx.vert") set(SHADER_POSTFX_FRAG_SRC "${SHADERS_DIR}/postfx.frag") @@ -316,10 +321,7 @@ file(GLOB_RECURSE ALL_SOURCE_FILES # Excluir directorio external del análisis list(FILTER ALL_SOURCE_FILES EXCLUDE REGEX ".*/external/.*") -# Para clang-tidy, también excluir jail_audio.hpp set(CLANG_TIDY_SOURCES ${ALL_SOURCE_FILES}) -list(FILTER CLANG_TIDY_SOURCES EXCLUDE REGEX ".*jail_audio\\.hpp$") -list(FILTER CLANG_TIDY_SOURCES EXCLUDE REGEX ".*_spv\\.h$") # Para cppcheck, pasar solo .cpp (los headers se procesan transitivamente). set(CPPCHECK_SOURCES ${ALL_SOURCE_FILES}) diff --git a/gamecontrollerdb.txt b/gamecontrollerdb.txt index 3b14721..ce52a7a 100644 --- a/gamecontrollerdb.txt +++ b/gamecontrollerdb.txt @@ -1009,6 +1009,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2, 030000006d04000018c2000000000000,Logitech F510,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X, 030000006d04000019c2000005030000,Logitech F710,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X, 030000006d0400001fc2000000000000,Logitech F710,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X, +030000006d0400001ac2000004000000,Logitech Precision,a:b1,b:b2,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X, 030000006d04000018c2000000010000,Logitech RumblePad 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3~,start:b9,x:b0,y:b3,platform:Mac OS X, 03000000380700005032000000010000,Mad Catz PS3 Fightpad Pro,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X, 03000000380700008433000000010000,Mad Catz PS3 Fightstick TE S Plus,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X, diff --git a/source/core/input/input.cpp b/source/core/input/input.cpp index b62982c..cb7c967 100644 --- a/source/core/input/input.cpp +++ b/source/core/input/input.cpp @@ -27,17 +27,18 @@ static void installWebStandardMapping(SDL_JoystickID jid) { char mapping[512]; SDL_snprintf(mapping, sizeof(mapping), - "%s,%s," - "a:b0,b:b1,x:b2,y:b3," - "leftshoulder:b4,rightshoulder:b5," - "lefttrigger:b6,righttrigger:b7," - "back:b8,start:b9," - "leftstick:b10,rightstick:b11," - "dpup:b12,dpdown:b13,dpleft:b14,dpright:b15," - "guide:b16," - "leftx:a0,lefty:a1,rightx:a2,righty:a3," - "platform:Emscripten", - guidStr, name); + "%s,%s," + "a:b0,b:b1,x:b2,y:b3," + "leftshoulder:b4,rightshoulder:b5," + "lefttrigger:b6,righttrigger:b7," + "back:b8,start:b9," + "leftstick:b10,rightstick:b11," + "dpup:b12,dpdown:b13,dpleft:b14,dpright:b15," + "guide:b16," + "leftx:a0,lefty:a1,rightx:a2,righty:a3," + "platform:Emscripten", + guidStr, + name); SDL_AddGamepadMapping(mapping); #else (void)jid; diff --git a/source/core/rendering/sdl3gpu/sdl3gpu_shader.cpp b/source/core/rendering/sdl3gpu/sdl3gpu_shader.cpp index 1131035..cc43cc0 100644 --- a/source/core/rendering/sdl3gpu/sdl3gpu_shader.cpp +++ b/source/core/rendering/sdl3gpu/sdl3gpu_shader.cpp @@ -8,11 +8,11 @@ #include // std::cout #ifndef __APPLE__ -#include "core/rendering/sdl3gpu/crtpi_frag_spv.h" -#include "core/rendering/sdl3gpu/downscale_frag_spv.h" -#include "core/rendering/sdl3gpu/postfx_frag_spv.h" -#include "core/rendering/sdl3gpu/postfx_vert_spv.h" -#include "core/rendering/sdl3gpu/upscale_frag_spv.h" +#include "core/rendering/sdl3gpu/spv/crtpi_frag_spv.h" +#include "core/rendering/sdl3gpu/spv/downscale_frag_spv.h" +#include "core/rendering/sdl3gpu/spv/postfx_frag_spv.h" +#include "core/rendering/sdl3gpu/spv/postfx_vert_spv.h" +#include "core/rendering/sdl3gpu/spv/upscale_frag_spv.h" #endif #ifdef __APPLE__ diff --git a/source/core/rendering/sdl3gpu/spv/.clang-format b/source/core/rendering/sdl3gpu/spv/.clang-format new file mode 100644 index 0000000..47a38a9 --- /dev/null +++ b/source/core/rendering/sdl3gpu/spv/.clang-format @@ -0,0 +1,2 @@ +DisableFormat: true +SortIncludes: Never diff --git a/source/core/rendering/sdl3gpu/spv/.clang-tidy b/source/core/rendering/sdl3gpu/spv/.clang-tidy new file mode 100644 index 0000000..46f35e3 --- /dev/null +++ b/source/core/rendering/sdl3gpu/spv/.clang-tidy @@ -0,0 +1,4 @@ +# source/core/rendering/sdl3gpu/spv/.clang-tidy +Checks: '-*' +WarningsAsErrors: '' +HeaderFilterRegex: '' diff --git a/source/core/rendering/sdl3gpu/crtpi_frag_spv.h b/source/core/rendering/sdl3gpu/spv/crtpi_frag_spv.h similarity index 100% rename from source/core/rendering/sdl3gpu/crtpi_frag_spv.h rename to source/core/rendering/sdl3gpu/spv/crtpi_frag_spv.h diff --git a/source/core/rendering/sdl3gpu/downscale_frag_spv.h b/source/core/rendering/sdl3gpu/spv/downscale_frag_spv.h similarity index 100% rename from source/core/rendering/sdl3gpu/downscale_frag_spv.h rename to source/core/rendering/sdl3gpu/spv/downscale_frag_spv.h diff --git a/source/core/rendering/sdl3gpu/postfx_frag_spv.h b/source/core/rendering/sdl3gpu/spv/postfx_frag_spv.h similarity index 100% rename from source/core/rendering/sdl3gpu/postfx_frag_spv.h rename to source/core/rendering/sdl3gpu/spv/postfx_frag_spv.h diff --git a/source/core/rendering/sdl3gpu/postfx_vert_spv.h b/source/core/rendering/sdl3gpu/spv/postfx_vert_spv.h similarity index 100% rename from source/core/rendering/sdl3gpu/postfx_vert_spv.h rename to source/core/rendering/sdl3gpu/spv/postfx_vert_spv.h diff --git a/source/core/rendering/sdl3gpu/upscale_frag_spv.h b/source/core/rendering/sdl3gpu/spv/upscale_frag_spv.h similarity index 100% rename from source/core/rendering/sdl3gpu/upscale_frag_spv.h rename to source/core/rendering/sdl3gpu/spv/upscale_frag_spv.h diff --git a/source/core/system/director.hpp b/source/core/system/director.hpp index dae6012..f95b26b 100644 --- a/source/core/system/director.hpp +++ b/source/core/system/director.hpp @@ -24,8 +24,8 @@ class Director { std::unique_ptr active_scene_; // Escena activa SceneManager::Scene current_scene_{SceneManager::Scene::BOOT_LOADER}; // Tipus d'escena activa - bool boot_loading_{true}; // True mientras Cache::loadStep() no haya acabado - bool boot_waiting_for_input_{false}; // True si la carga acabó y Options::loading.wait_for_input está activo + bool boot_loading_{true}; // True mientras Cache::loadStep() no haya acabado + bool boot_waiting_for_input_{false}; // True si la carga acabó y Options::loading.wait_for_input está activo // --- Funciones --- void createSystemFolder(const std::string& folder); // Crea la carpeta del sistema donde guardar datos diff --git a/source/game/options.cpp b/source/game/options.cpp index e1172bb..67fd6d7 100644 --- a/source/game/options.cpp +++ b/source/game/options.cpp @@ -628,13 +628,19 @@ namespace Options { if (!yaml.contains("loading")) { return; } const auto& ld = yaml["loading"]; if (ld.contains("show")) { - try { loading.show = ld["show"].get_value(); } catch (...) { loading.show = Defaults::Loading::SHOW; } + try { + loading.show = ld["show"].get_value(); + } catch (...) { loading.show = Defaults::Loading::SHOW; } } if (ld.contains("show_resource_name")) { - try { loading.show_resource_name = ld["show_resource_name"].get_value(); } catch (...) { loading.show_resource_name = Defaults::Loading::SHOW_RESOURCE_NAME; } + try { + loading.show_resource_name = ld["show_resource_name"].get_value(); + } catch (...) { loading.show_resource_name = Defaults::Loading::SHOW_RESOURCE_NAME; } } if (ld.contains("wait_for_input")) { - try { loading.wait_for_input = ld["wait_for_input"].get_value(); } catch (...) { loading.wait_for_input = Defaults::Loading::WAIT_FOR_INPUT; } + try { + loading.wait_for_input = ld["wait_for_input"].get_value(); + } catch (...) { loading.wait_for_input = Defaults::Loading::WAIT_FOR_INPUT; } } }