From 0a277174bc434ef964b444deefdec24d247a62aa Mon Sep 17 00:00:00 2001 From: sindoring Date: Sat, 12 Sep 2026 21:13:31 +0400 Subject: [PATCH] fix --- cmake/compiler/gcc/settings.cmake | 8 ++++++++ docker/database/init.sh | 14 +++++++------- docker/entrypoint.sh | 2 +- sql/sylvania/locales/ruRU_from_french_hotfixes.sql | 2 ++ sql/sylvania/locales/ruRU_from_french_world.sql | 2 ++ tools/build_ruru_locale_sql.py | 2 ++ 6 files changed, 22 insertions(+), 8 deletions(-) diff --git a/cmake/compiler/gcc/settings.cmake b/cmake/compiler/gcc/settings.cmake index f827f53..2edf46c 100644 --- a/cmake/compiler/gcc/settings.cmake +++ b/cmake/compiler/gcc/settings.cmake @@ -20,6 +20,14 @@ target_compile_definitions(trinity-compile-option-interface INTERFACE -DHAVE_SSE2 -D__SSE2__) + +# Player-facing module messages are stored in the repository as UTF-8. +# Keep their byte representation deterministic even when the build host uses +# a different system locale. +target_compile_options(trinity-compile-option-interface + INTERFACE + -finput-charset=UTF-8 + -fexec-charset=UTF-8) message(STATUS "GCC: SFMT enabled, SSE2 flags forced") if( WITH_WARNINGS ) diff --git a/docker/database/init.sh b/docker/database/init.sh index 13e2ddc..28eccfb 100644 --- a/docker/database/init.sh +++ b/docker/database/init.sh @@ -5,7 +5,7 @@ db_user="${DB_USER:-sylvania}" db_password="${DB_PASSWORD:-sylvania}" # Identifiers are deliberately fixed; only the application login is configurable. -mariadb --protocol=socket -uroot -p"${MARIADB_ROOT_PASSWORD}" < int: with output.open("w", encoding="utf-8", newline="\n") as sql: sql.write("-- Generated from ChatGPT WoW localisation source.csv.\n") sql.write("-- Apply to dc_hotfixes. Existing frFR rows are not modified.\n\n") + sql.write("SET NAMES utf8mb4;\n\n") sql.write("INSERT INTO `broadcast_text_locale` " "(`ID`,`locale`,`Text_lang`,`Text1_lang`,`VerifiedBuild`) VALUES\n") values = [] @@ -110,6 +111,7 @@ def build_world(translated: dict[str, str]) -> int: with output.open("w", encoding="utf-8", newline="\n") as sql: sql.write("-- Generated from ChatGPT WoW localisation source.csv.\n") sql.write("-- Apply to dc_world. Existing frFR rows are not modified.\n\n") + sql.write("SET NAMES utf8mb4;\n\n") sql.write("INSERT INTO `creature_text_locale` " "(`CreatureID`,`GroupID`,`ID`,`Locale`,`Text`) VALUES\n") values = []