mirror of
https://git.citron-emu.org/Citron/Citron.git
synced 2025-03-15 03:14:50 +00:00
Compare commits
197 commits
v0.1-canar
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
21594b73aa | ||
|
d869045b77 | ||
|
f2931c7566 | ||
|
12c63997d2 | ||
|
1023125be5 | ||
|
dad8859679 | ||
|
834cc89548 | ||
|
38b259d099 | ||
|
e7e9453667 | ||
|
ae75413cc3 | ||
|
6a31da5905 | ||
|
a5125d008a | ||
|
b24dd921aa | ||
|
9a65205dba | ||
|
af4f08be33 | ||
|
0d0963d32f | ||
|
4491127f52 | ||
|
c304afe2b3 | ||
|
b8240b4214 | ||
|
91487f6d96 | ||
|
031c635095 | ||
|
90a8165f77 | ||
|
6565055865 | ||
|
ee3d858935 | ||
|
31694994f2 | ||
|
4197fa84a0 | ||
|
e4342324fe | ||
|
78b0080b96 | ||
|
644ed69285 | ||
|
3554f55fc9 | ||
|
dc9532b4d1 | ||
|
1308e2b935 | ||
|
5caecd8151 | ||
|
dc9fbcc893 | ||
|
b1d5d4e5be | ||
|
f0d8daf755 | ||
|
cbb9a35166 | ||
|
cfe437aacf | ||
|
9b293c3a98 | ||
|
84e5fbc089 | ||
|
a442078ee4 | ||
|
cc610ad9b6 | ||
|
5a65f9a094 | ||
|
5ca1f0e365 | ||
|
a36baad0f0 | ||
|
ed115d3f72 | ||
|
d9619b7eed | ||
|
dbe5bf1d18 | ||
|
7903415fa4 | ||
|
3bb4d97e9e | ||
|
a41f7b7a56 | ||
|
18f8a0f997 | ||
|
4d50d2ba16 | ||
|
0576d40bf0 | ||
|
6917530ba5 | ||
|
43495b6045 | ||
|
c5e480e55d | ||
|
1c9e17496b | ||
|
7730d14b4a | ||
|
677b8f476a | ||
|
5cbde61d3c | ||
|
33a1996ca4 | ||
|
a7af4d001b | ||
|
ef884ce39c | ||
|
1aad9fd4e3 | ||
|
f45f339ef9 | ||
|
298e797592 | ||
|
8bfafb4755 | ||
|
33d54e595f | ||
|
13ada2d705 | ||
|
8bf4660bac | ||
|
b07751ed43 | ||
|
b3c60b4cbe | ||
|
dcf6f9a071 | ||
|
b42a0fb227 | ||
|
5af4803e42 | ||
|
becaf850ab | ||
|
d4ad55ed21 | ||
|
6e16a8db1c | ||
|
384a18927b | ||
|
76716b5248 | ||
|
6917a22a2c | ||
|
646af3c143 | ||
|
d1b7aebe8c | ||
|
d783806b1e | ||
|
268d322d7f | ||
|
92b70b31e0 | ||
|
4792ba752e | ||
|
b8fe6b6f7c | ||
|
0acfbc5fa1 | ||
|
e3128c6e98 | ||
|
b89a85e228 | ||
|
cc48197448 | ||
|
0010882f36 | ||
|
28350f7af8 | ||
|
7ecb890a16 | ||
|
c31768ec15 | ||
|
227db142e2 | ||
|
3aa9c0d151 | ||
|
7b6495aced | ||
|
d4eca46bba | ||
|
df1ae19742 | ||
|
4cc01f6c71 | ||
|
89ecb641f1 | ||
|
3857e6afe9 | ||
|
42f44a0c09 | ||
|
94c4ef8946 | ||
|
14065ae7cb | ||
|
9eb32d2d85 | ||
|
71e652123b | ||
|
ddd5e7e887 | ||
|
6b9c239fbd | ||
|
cf43fd8038 | ||
|
a1cbcee7ab | ||
|
19ce9d695e | ||
|
44944c4d80 | ||
|
8bda64895f | ||
|
f4b9e54b22 | ||
|
70a9f20ae1 | ||
|
076d0e618d | ||
|
ecc32958ec | ||
|
e8bbdbce42 | ||
|
0216eaa071 | ||
|
137034ca2c | ||
|
8f76ef2579 | ||
|
4e8d00f034 | ||
|
f638922129 | ||
|
a96216ff35 | ||
|
6ab82e8eeb | ||
|
733721f0a1 | ||
|
613099703a | ||
|
9a3d4f0489 | ||
|
8c630a8bea | ||
|
2e4db14bc1 | ||
|
c36151d6e3 | ||
|
33f8cd0c7e | ||
|
c5a2689cef | ||
|
f380744c61 | ||
|
b7e11d3724 | ||
|
be191f740a | ||
|
a5d62fa4ec | ||
|
a6063bbd64 | ||
|
924c06d88f | ||
|
b55be320b7 | ||
|
5ba970b574 | ||
|
58ed33dd9f | ||
|
c279df9cfe | ||
|
0adeac26af | ||
|
37677052c1 | ||
|
774d8d9eba | ||
|
d7dc87bbf3 | ||
|
07024f7ea6 | ||
|
04f9d8b61a | ||
|
b574aba98b | ||
|
6d225eb94a | ||
|
5a1a2f3eca | ||
|
d4d3061eb7 | ||
|
450d80fc81 | ||
|
b938893599 | ||
|
07b949025f | ||
|
913cc27e3a | ||
|
3698478977 | ||
|
382999025a | ||
|
ee0beea82a | ||
|
62de5aa9de | ||
|
43170513b6 | ||
|
3635b6e602 | ||
|
f560ac024d | ||
|
496b010927 | ||
|
498d016873 | ||
|
132077e18f | ||
|
236ad28d61 | ||
|
9ae0eeeb87 | ||
|
d028ac291c | ||
|
cc897c3f0e | ||
|
cce4abbb0b | ||
|
6d5475a9cf | ||
|
2d7f9d921b | ||
|
d3ed42af8f | ||
|
0cf545858d | ||
|
08be9b0617 | ||
|
3f151c5111 | ||
|
c65c8ac45e | ||
|
dae1524eb5 | ||
|
66b6d5b2da | ||
|
83393a6c6b | ||
|
60cb826e93 | ||
|
3100d13fc0 | ||
|
08f1ed4011 | ||
|
21f94d5825 | ||
|
8f5e3516fe | ||
|
9be4bf9aa5 | ||
|
e11c6c03ec | ||
|
27d662ad0e | ||
|
ab82a115f5 | ||
|
18eb054ab6 | ||
|
b685d5701d |
2960 changed files with 10187 additions and 4559 deletions
|
@ -1,4 +1,4 @@
|
||||||
; SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
; SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
; SPDX-License-Identifier: GPL-2.0-or-later
|
; SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
[codespell]
|
[codespell]
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# CRLF -> LF
|
# CRLF -> LF
|
||||||
|
|
2
.gitattributes
vendored
2
.gitattributes
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
dist/languages/* linguist-vendored
|
dist/languages/* linguist-vendored
|
||||||
|
|
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2013 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2013 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# Build directory
|
# Build directory
|
||||||
|
|
14
.gitmodules
vendored
14
.gitmodules
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2014 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
[submodule "enet"]
|
[submodule "enet"]
|
||||||
|
@ -9,22 +9,22 @@
|
||||||
url = https://github.com/mozilla/cubeb.git
|
url = https://github.com/mozilla/cubeb.git
|
||||||
[submodule "dynarmic"]
|
[submodule "dynarmic"]
|
||||||
path = externals/dynarmic
|
path = externals/dynarmic
|
||||||
url = https://github.com/yuzu-mirror/dynarmic.git
|
url = https://git.citron-emu.org/Citron/dynarmic.git
|
||||||
[submodule "libusb"]
|
[submodule "libusb"]
|
||||||
path = externals/libusb/libusb
|
path = externals/libusb/libusb
|
||||||
url = https://github.com/libusb/libusb.git
|
url = https://github.com/libusb/libusb.git
|
||||||
[submodule "discord-rpc"]
|
[submodule "discord-rpc"]
|
||||||
path = externals/discord-rpc
|
path = externals/discord-rpc
|
||||||
url = https://github.com/yuzu-mirror/discord-rpc.git
|
url = https://git.citron-emu.org/Citron/discord-rpc.git
|
||||||
[submodule "Vulkan-Headers"]
|
[submodule "Vulkan-Headers"]
|
||||||
path = externals/Vulkan-Headers
|
path = externals/Vulkan-Headers
|
||||||
url = https://github.com/KhronosGroup/Vulkan-Headers.git
|
url = https://github.com/KhronosGroup/Vulkan-Headers.git
|
||||||
[submodule "sirit"]
|
[submodule "sirit"]
|
||||||
path = externals/sirit
|
path = externals/sirit
|
||||||
url = https://github.com/yuzu-mirror/sirit.git
|
url = https://git.citron-emu.org/Citron/sirit.git
|
||||||
[submodule "mbedtls"]
|
[submodule "mbedtls"]
|
||||||
path = externals/mbedtls
|
path = externals/mbedtls
|
||||||
url = https://github.com/yuzu-mirror/mbedtls.git
|
url = https://git.citron-emu.org/Citron/mbedtls.git
|
||||||
[submodule "xbyak"]
|
[submodule "xbyak"]
|
||||||
path = externals/xbyak
|
path = externals/xbyak
|
||||||
url = https://github.com/herumi/xbyak.git
|
url = https://github.com/herumi/xbyak.git
|
||||||
|
@ -57,13 +57,13 @@
|
||||||
url = https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git
|
url = https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git
|
||||||
[submodule "breakpad"]
|
[submodule "breakpad"]
|
||||||
path = externals/breakpad
|
path = externals/breakpad
|
||||||
url = https://github.com/yuzu-mirror/breakpad.git
|
url = https://git.citron-emu.org/Citron/breakpad.git
|
||||||
[submodule "simpleini"]
|
[submodule "simpleini"]
|
||||||
path = externals/simpleini
|
path = externals/simpleini
|
||||||
url = https://github.com/brofield/simpleini.git
|
url = https://github.com/brofield/simpleini.git
|
||||||
[submodule "oaknut"]
|
[submodule "oaknut"]
|
||||||
path = externals/oaknut
|
path = externals/oaknut
|
||||||
url = https://github.com/yuzu-mirror/oaknut
|
url = https://git.citron-emu.org/Citron/oaknut.git
|
||||||
[submodule "Vulkan-Utility-Libraries"]
|
[submodule "Vulkan-Utility-Libraries"]
|
||||||
path = externals/Vulkan-Utility-Libraries
|
path = externals/Vulkan-Utility-Libraries
|
||||||
url = https://github.com/KhronosGroup/Vulkan-Utility-Libraries.git
|
url = https://github.com/KhronosGroup/Vulkan-Utility-Libraries.git
|
||||||
|
|
22
.reuse/dep5
22
.reuse/dep5
|
@ -9,7 +9,7 @@ Files: dist/english_plurals/*
|
||||||
dist/qt_themes/*/icons/48x48/sd_card.png
|
dist/qt_themes/*/icons/48x48/sd_card.png
|
||||||
dist/qt_themes/*/icons/index.theme
|
dist/qt_themes/*/icons/index.theme
|
||||||
dist/qt_themes/default/style.qss
|
dist/qt_themes/default/style.qss
|
||||||
Copyright: yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: yuzu Emulator Project
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
|
|
||||||
Files: dist/qt_themes/default/icons/256x256/citron.png
|
Files: dist/qt_themes/default/icons/256x256/citron.png
|
||||||
|
@ -17,7 +17,7 @@ Files: dist/qt_themes/default/icons/256x256/citron.png
|
||||||
dist/citron.icns
|
dist/citron.icns
|
||||||
dist/citron.ico
|
dist/citron.ico
|
||||||
dist/citron.svg
|
dist/citron.svg
|
||||||
Copyright: yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: yuzu Emulator Project
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
|
|
||||||
Files: dist/qt_themes/qdarkstyle*/LICENSE.*
|
Files: dist/qt_themes/qdarkstyle*/LICENSE.*
|
||||||
|
@ -109,12 +109,12 @@ Copyright: 2021 Advanced Micro Devices, Inc.
|
||||||
License: MIT
|
License: MIT
|
||||||
|
|
||||||
Files: src/citron/*.ui
|
Files: src/citron/*.ui
|
||||||
Copyright: 2018-2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2018-2022 yuzu Emulator Project
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
|
|
||||||
Files: src/citron/compatdb.ui
|
Files: src/citron/compatdb.ui
|
||||||
src/citron/main.ui
|
src/citron/main.ui
|
||||||
Copyright: 2014-2017 Citra Emulator Project & 2025 Citron Homebrew Project
|
Copyright: 2014-2017 Citra Emulator Project
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
|
|
||||||
Files: src/citron/loading_screen.ui
|
Files: src/citron/loading_screen.ui
|
||||||
|
@ -125,27 +125,27 @@ Files: src/citron/applets/aboutdialog.ui
|
||||||
src/citron/applets/qt_software_keyboard.ui
|
src/citron/applets/qt_software_keyboard.ui
|
||||||
src/citron/util/overlay_dialog.ui
|
src/citron/util/overlay_dialog.ui
|
||||||
Copyright: 2020-2021 Its-Rei <kupfel@gmail.com>
|
Copyright: 2020-2021 Its-Rei <kupfel@gmail.com>
|
||||||
2020-2021 yuzu Emulator Project & 2025 citron Homebrew Project
|
2020-2021 yuzu Emulator Project
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
|
|
||||||
Files: vcpkg.json
|
Files: vcpkg.json
|
||||||
Copyright: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2022 yuzu Emulator Project
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
|
|
||||||
Files: .github/ISSUE_TEMPLATE/*
|
Files: .github/ISSUE_TEMPLATE/*
|
||||||
Copyright: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2022 yuzu Emulator Project
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
|
|
||||||
Files: src/android/app/src/ea/res/*
|
Files: src/android/app/src/ea/res/*
|
||||||
Copyright: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2023 yuzu Emulator Project
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
|
|
||||||
Files: src/android/app/src/main/res/*
|
Files: src/android/app/src/main/res/*
|
||||||
Copyright: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2023 yuzu Emulator Project
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
|
|
||||||
Files: src/android/gradle/wrapper/*
|
Files: src/android/gradle/wrapper/*
|
||||||
Copyright: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2023 yuzu Emulator Project
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
|
|
||||||
Files: externals/stb/*
|
Files: externals/stb/*
|
||||||
|
@ -157,5 +157,5 @@ Copyright: Copyright 2017-2019 Feral Interactive
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
|
|
||||||
Files: src/android/app/debug.keystore
|
Files: src/android/app/debug.keystore
|
||||||
Copyright: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
Copyright: 2023 yuzu Emulator Project
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
|
|
409
CMakeLists.txt
409
CMakeLists.txt
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2025 Citron Homebrew Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.22)
|
cmake_minimum_required(VERSION 3.22)
|
||||||
|
@ -12,11 +12,60 @@ include(DownloadExternals)
|
||||||
include(CMakeDependentOption)
|
include(CMakeDependentOption)
|
||||||
include(CTest)
|
include(CTest)
|
||||||
|
|
||||||
|
# Disable Warnings as Errors for MSVC
|
||||||
|
if (MSVC)
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W3 /WX-")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# PGO Configuration
|
||||||
|
option(CITRON_ENABLE_PGO_INSTRUMENT "Enable Profile-Guided Optimization instrumentation build" OFF)
|
||||||
|
option(CITRON_ENABLE_PGO_OPTIMIZE "Enable Profile-Guided Optimization optimization build" OFF)
|
||||||
|
|
||||||
|
if(MSVC)
|
||||||
|
if(CITRON_ENABLE_PGO_INSTRUMENT)
|
||||||
|
string(APPEND CMAKE_CXX_FLAGS_RELEASE " /GL /LTCG:PGINSTRUMENT")
|
||||||
|
string(APPEND CMAKE_EXE_LINKER_FLAGS_RELEASE " /LTCG:PGINSTRUMENT")
|
||||||
|
string(APPEND CMAKE_SHARED_LINKER_FLAGS_RELEASE " /LTCG:PGINSTRUMENT")
|
||||||
|
elseif(CITRON_ENABLE_PGO_OPTIMIZE)
|
||||||
|
string(APPEND CMAKE_CXX_FLAGS_RELEASE " /GL /LTCG:PGOPTIMIZE")
|
||||||
|
string(APPEND CMAKE_EXE_LINKER_FLAGS_RELEASE " /LTCG:PGOPTIMIZE")
|
||||||
|
string(APPEND CMAKE_SHARED_LINKER_FLAGS_RELEASE " /LTCG:PGOPTIMIZE")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
# GCC and Clang PGO flags
|
||||||
|
if(CITRON_ENABLE_PGO_INSTRUMENT)
|
||||||
|
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||||
|
string(APPEND CMAKE_CXX_FLAGS_RELEASE " -fprofile-instr-generate")
|
||||||
|
string(APPEND CMAKE_EXE_LINKER_FLAGS_RELEASE " -fprofile-instr-generate")
|
||||||
|
string(APPEND CMAKE_SHARED_LINKER_FLAGS_RELEASE " -fprofile-instr-generate")
|
||||||
|
else() # GCC
|
||||||
|
string(APPEND CMAKE_CXX_FLAGS_RELEASE " -fprofile-generate")
|
||||||
|
string(APPEND CMAKE_EXE_LINKER_FLAGS_RELEASE " -fprofile-generate")
|
||||||
|
string(APPEND CMAKE_SHARED_LINKER_FLAGS_RELEASE " -fprofile-generate")
|
||||||
|
endif()
|
||||||
|
elseif(CITRON_ENABLE_PGO_OPTIMIZE)
|
||||||
|
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||||
|
string(APPEND CMAKE_CXX_FLAGS_RELEASE " -fprofile-instr-use=default.profdata")
|
||||||
|
string(APPEND CMAKE_EXE_LINKER_FLAGS_RELEASE " -fprofile-instr-use=default.profdata")
|
||||||
|
string(APPEND CMAKE_SHARED_LINKER_FLAGS_RELEASE " -fprofile-instr-use=default.profdata")
|
||||||
|
else() # GCC
|
||||||
|
string(APPEND CMAKE_CXX_FLAGS_RELEASE " -fprofile-use")
|
||||||
|
string(APPEND CMAKE_EXE_LINKER_FLAGS_RELEASE " -fprofile-use")
|
||||||
|
string(APPEND CMAKE_SHARED_LINKER_FLAGS_RELEASE " -fprofile-use")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Check if SDL2::SDL2 target exists; if not, create an alias
|
||||||
|
if (TARGET SDL2::SDL2-static)
|
||||||
|
add_library(SDL2::SDL2 ALIAS SDL2::SDL2-static)
|
||||||
|
elseif (TARGET SDL2::SDL2-shared)
|
||||||
|
add_library(SDL2::SDL2 ALIAS SDL2::SDL2-shared)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Set bundled sdl2/qt as dependent options.
|
# Set bundled sdl2/qt as dependent options.
|
||||||
# OFF by default, but if ENABLE_SDL2 and MSVC are true then ON
|
|
||||||
option(ENABLE_SDL2 "Enable the SDL2 frontend" ON)
|
option(ENABLE_SDL2 "Enable the SDL2 frontend" ON)
|
||||||
CMAKE_DEPENDENT_OPTION(CITRON_USE_BUNDLED_SDL2 "Download bundled SDL2 binaries" ON "ENABLE_SDL2;MSVC" OFF)
|
CMAKE_DEPENDENT_OPTION(CITRON_USE_BUNDLED_SDL2 "Download bundled SDL2 binaries" ON "ENABLE_SDL2;MSVC" OFF)
|
||||||
# On Linux system SDL2 is likely to be lacking HIDAPI support which have drawbacks but is needed for SDL motion
|
|
||||||
CMAKE_DEPENDENT_OPTION(CITRON_USE_EXTERNAL_SDL2 "Compile external SDL2" ON "ENABLE_SDL2;NOT MSVC" OFF)
|
CMAKE_DEPENDENT_OPTION(CITRON_USE_EXTERNAL_SDL2 "Compile external SDL2" ON "ENABLE_SDL2;NOT MSVC" OFF)
|
||||||
|
|
||||||
cmake_dependent_option(ENABLE_LIBUSB "Enable the use of LibUSB" ON "NOT ANDROID" OFF)
|
cmake_dependent_option(ENABLE_LIBUSB "Enable the use of LibUSB" ON "NOT ANDROID" OFF)
|
||||||
|
@ -24,8 +73,6 @@ cmake_dependent_option(ENABLE_LIBUSB "Enable the use of LibUSB" ON "NOT ANDROID"
|
||||||
option(ENABLE_OPENGL "Enable OpenGL" ON)
|
option(ENABLE_OPENGL "Enable OpenGL" ON)
|
||||||
mark_as_advanced(FORCE ENABLE_OPENGL)
|
mark_as_advanced(FORCE ENABLE_OPENGL)
|
||||||
option(ENABLE_QT "Enable the Qt frontend" ON)
|
option(ENABLE_QT "Enable the Qt frontend" ON)
|
||||||
option(ENABLE_QT6 "Allow usage of Qt6 to be attempted" OFF)
|
|
||||||
set(QT6_LOCATION "" CACHE PATH "Additional Location to search for Qt6 libraries like C:/Qt/6.3.1/msvc2019_64/")
|
|
||||||
|
|
||||||
option(ENABLE_QT_TRANSLATION "Enable translations for the Qt frontend" OFF)
|
option(ENABLE_QT_TRANSLATION "Enable translations for the Qt frontend" OFF)
|
||||||
CMAKE_DEPENDENT_OPTION(CITRON_USE_BUNDLED_QT "Download bundled Qt binaries" "${MSVC}" "ENABLE_QT" OFF)
|
CMAKE_DEPENDENT_OPTION(CITRON_USE_BUNDLED_QT "Download bundled Qt binaries" "${MSVC}" "ENABLE_QT" OFF)
|
||||||
|
@ -66,11 +113,18 @@ option(CITRON_DOWNLOAD_TIME_ZONE_DATA "Always download time zone binaries" OFF)
|
||||||
|
|
||||||
option(CITRON_ENABLE_PORTABLE "Allow citron to enable portable mode if a user folder is found in the CWD" ON)
|
option(CITRON_ENABLE_PORTABLE "Allow citron to enable portable mode if a user folder is found in the CWD" ON)
|
||||||
|
|
||||||
|
option(CITRON_USE_LLVM_DEMANGLE "Use LLVM Demangle" ON)
|
||||||
|
|
||||||
CMAKE_DEPENDENT_OPTION(CITRON_USE_FASTER_LD "Check if a faster linker is available" ON "NOT WIN32" OFF)
|
CMAKE_DEPENDENT_OPTION(CITRON_USE_FASTER_LD "Check if a faster linker is available" ON "NOT WIN32" OFF)
|
||||||
|
|
||||||
CMAKE_DEPENDENT_OPTION(USE_SYSTEM_MOLTENVK "Use the system MoltenVK lib (instead of the bundled one)" OFF "APPLE" OFF)
|
CMAKE_DEPENDENT_OPTION(USE_SYSTEM_MOLTENVK "Use the system MoltenVK lib (instead of the bundled one)" OFF "APPLE" OFF)
|
||||||
|
|
||||||
set(DEFAULT_ENABLE_OPENSSL ON)
|
set(DEFAULT_ENABLE_OPENSSL ON)
|
||||||
|
if (ANDROID OR WIN32 OR APPLE)
|
||||||
|
set(DEFAULT_ENABLE_OPENSSL OFF)
|
||||||
|
endif()
|
||||||
|
option(ENABLE_OPENSSL "Enable OpenSSL backend for ISslConnection" ${DEFAULT_ENABLE_OPENSSL})
|
||||||
|
|
||||||
if (ANDROID OR WIN32 OR APPLE)
|
if (ANDROID OR WIN32 OR APPLE)
|
||||||
# - Windows defaults to the Schannel backend.
|
# - Windows defaults to the Schannel backend.
|
||||||
# - macOS defaults to the SecureTransport backend.
|
# - macOS defaults to the SecureTransport backend.
|
||||||
|
@ -83,21 +137,25 @@ endif()
|
||||||
option(ENABLE_OPENSSL "Enable OpenSSL backend for ISslConnection" ${DEFAULT_ENABLE_OPENSSL})
|
option(ENABLE_OPENSSL "Enable OpenSSL backend for ISslConnection" ${DEFAULT_ENABLE_OPENSSL})
|
||||||
|
|
||||||
if (ANDROID AND CITRON_DOWNLOAD_ANDROID_VVL)
|
if (ANDROID AND CITRON_DOWNLOAD_ANDROID_VVL)
|
||||||
set(vvl_version "sdk-1.3.261.1")
|
set(vvl_version "1.4.304.1")
|
||||||
set(vvl_zip_file "${CMAKE_BINARY_DIR}/externals/vvl-android.zip")
|
set(vvl_zip_file "${CMAKE_BINARY_DIR}/externals/vvl-android.zip")
|
||||||
if (NOT EXISTS "${vvl_zip_file}")
|
|
||||||
# Download and extract validation layer release to externals directory
|
|
||||||
set(vvl_base_url "https://github.com/KhronosGroup/Vulkan-ValidationLayers/releases/download")
|
|
||||||
file(DOWNLOAD "${vvl_base_url}/${vvl_version}/android-binaries-${vvl_version}-android.zip"
|
|
||||||
"${vvl_zip_file}" SHOW_PROGRESS)
|
|
||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf "${vvl_zip_file}"
|
|
||||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/externals")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Copy the arm64 binary to src/android/app/main/jniLibs
|
|
||||||
set(vvl_lib_path "${CMAKE_CURRENT_SOURCE_DIR}/src/android/app/src/main/jniLibs/arm64-v8a/")
|
set(vvl_lib_path "${CMAKE_CURRENT_SOURCE_DIR}/src/android/app/src/main/jniLibs/arm64-v8a/")
|
||||||
file(COPY "${CMAKE_BINARY_DIR}/externals/android-binaries-${vvl_version}/arm64-v8a/libVkLayer_khronos_validation.so"
|
set(vvl_final_lib "${vvl_lib_path}/libVkLayer_khronos_validation.so")
|
||||||
DESTINATION "${vvl_lib_path}")
|
|
||||||
|
if (NOT EXISTS "${vvl_final_lib}")
|
||||||
|
# Download and extract validation layer release to externals directory
|
||||||
|
if (NOT EXISTS "${vvl_zip_file}")
|
||||||
|
set(vvl_base_url "https://github.com/KhronosGroup/Vulkan-ValidationLayers/releases/download")
|
||||||
|
file(DOWNLOAD "${vvl_base_url}/vulkan-sdk-${vvl_version}/android-binaries-${vvl_version}.zip"
|
||||||
|
"${vvl_zip_file}" SHOW_PROGRESS)
|
||||||
|
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf "${vvl_zip_file}"
|
||||||
|
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/externals")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Copy the arm64 binary to src/android/app/main/jniLibs
|
||||||
|
file(COPY "${CMAKE_BINARY_DIR}/externals/android-binaries-${vvl_version}/arm64-v8a/libVkLayer_khronos_validation.so"
|
||||||
|
DESTINATION "${vvl_lib_path}")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ANDROID)
|
if (ANDROID)
|
||||||
|
@ -111,22 +169,29 @@ if (CITRON_USE_BUNDLED_VCPKG)
|
||||||
|
|
||||||
if (CMAKE_ANDROID_ARCH_ABI STREQUAL "arm64-v8a")
|
if (CMAKE_ANDROID_ARCH_ABI STREQUAL "arm64-v8a")
|
||||||
set(VCPKG_TARGET_TRIPLET "arm64-android")
|
set(VCPKG_TARGET_TRIPLET "arm64-android")
|
||||||
|
set(VCPKG_HOST_TRIPLET "x64-windows")
|
||||||
# this is to avoid CMake using the host pkg-config to find the host
|
# this is to avoid CMake using the host pkg-config to find the host
|
||||||
# libraries when building for Android targets
|
# libraries when building for Android targets
|
||||||
set(PKG_CONFIG_EXECUTABLE "aarch64-none-linux-android-pkg-config" CACHE FILEPATH "" FORCE)
|
set(PKG_CONFIG_EXECUTABLE "aarch64-none-linux-android-pkg-config" CACHE FILEPATH "" FORCE)
|
||||||
elseif (CMAKE_ANDROID_ARCH_ABI STREQUAL "x86_64")
|
elseif (CMAKE_ANDROID_ARCH_ABI STREQUAL "x86_64")
|
||||||
set(VCPKG_TARGET_TRIPLET "x64-android")
|
set(VCPKG_TARGET_TRIPLET "x64-android")
|
||||||
|
set(VCPKG_HOST_TRIPLET "x64-windows")
|
||||||
set(PKG_CONFIG_EXECUTABLE "x86_64-none-linux-android-pkg-config" CACHE FILEPATH "" FORCE)
|
set(PKG_CONFIG_EXECUTABLE "x86_64-none-linux-android-pkg-config" CACHE FILEPATH "" FORCE)
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "Unsupported Android architecture ${CMAKE_ANDROID_ARCH_ABI}")
|
message(FATAL_ERROR "Unsupported Android architecture ${CMAKE_ANDROID_ARCH_ABI}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Add these lines to ensure proper Android toolchain setup
|
||||||
|
set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${ANDROID_NDK}/build/cmake/android.toolchain.cmake")
|
||||||
|
set(VCPKG_CRT_LINKAGE "dynamic")
|
||||||
|
set(VCPKG_LIBRARY_LINKAGE "static")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (MSVC)
|
if (MSVC)
|
||||||
set(VCPKG_DOWNLOADS_PATH ${PROJECT_SOURCE_DIR}/externals/vcpkg/downloads)
|
set(VCPKG_DOWNLOADS_PATH ${PROJECT_SOURCE_DIR}/externals/vcpkg/downloads)
|
||||||
set(NASM_VERSION "2.16.01")
|
set(NASM_VERSION "2.16.03")
|
||||||
set(NASM_DESTINATION_PATH ${VCPKG_DOWNLOADS_PATH}/nasm-${NASM_VERSION}-win64.zip)
|
set(NASM_DESTINATION_PATH ${VCPKG_DOWNLOADS_PATH}/nasm-${NASM_VERSION}-win64.zip)
|
||||||
set(NASM_DOWNLOAD_URL "https://github.com/yuzu-mirror/ext-windows-bin/raw/master/nasm/nasm-${NASM_VERSION}-win64.zip")
|
set(NASM_DOWNLOAD_URL "https://www.nasm.us/pub/nasm/releasebuilds/${NASM_VERSION}/win64/nasm-${NASM_VERSION}-win64.zip")
|
||||||
|
|
||||||
if (NOT EXISTS ${NASM_DESTINATION_PATH})
|
if (NOT EXISTS ${NASM_DESTINATION_PATH})
|
||||||
file(DOWNLOAD ${NASM_DOWNLOAD_URL} ${NASM_DESTINATION_PATH} SHOW_PROGRESS STATUS NASM_STATUS)
|
file(DOWNLOAD ${NASM_DOWNLOAD_URL} ${NASM_DESTINATION_PATH} SHOW_PROGRESS STATUS NASM_STATUS)
|
||||||
|
@ -213,7 +278,7 @@ endif()
|
||||||
if (ENABLE_COMPATIBILITY_LIST_DOWNLOAD AND NOT EXISTS ${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.json)
|
if (ENABLE_COMPATIBILITY_LIST_DOWNLOAD AND NOT EXISTS ${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.json)
|
||||||
message(STATUS "Downloading compatibility list for citron...")
|
message(STATUS "Downloading compatibility list for citron...")
|
||||||
file(DOWNLOAD
|
file(DOWNLOAD
|
||||||
https://api.yuzu-mirror.org/gamedb/
|
https://api.citron-emu.org/gamedb/
|
||||||
"${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.json" SHOW_PROGRESS)
|
"${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.json" SHOW_PROGRESS)
|
||||||
endif()
|
endif()
|
||||||
if (NOT EXISTS ${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.json)
|
if (NOT EXISTS ${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.json)
|
||||||
|
@ -292,22 +357,24 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
|
||||||
# =======================================================================
|
# =======================================================================
|
||||||
|
|
||||||
# Enforce the search mode of non-required packages for better and shorter failure messages
|
# Enforce the search mode of non-required packages for better and shorter failure messages
|
||||||
find_package(Boost 1.79.0 REQUIRED context)
|
find_package(Boost REQUIRED context)
|
||||||
find_package(enet 1.3 MODULE)
|
find_package(enet MODULE)
|
||||||
find_package(fmt 9 REQUIRED)
|
find_package(fmt 11 REQUIRED)
|
||||||
find_package(LLVM 17.0.2 MODULE COMPONENTS Demangle)
|
if (CITRON_USE_LLVM_DEMANGLE)
|
||||||
|
find_package(LLVM MODULE COMPONENTS Demangle)
|
||||||
|
endif()
|
||||||
find_package(lz4 REQUIRED)
|
find_package(lz4 REQUIRED)
|
||||||
find_package(nlohmann_json 3.8 REQUIRED)
|
find_package(nlohmann_json REQUIRED)
|
||||||
find_package(Opus 1.3 MODULE)
|
find_package(Opus MODULE)
|
||||||
find_package(RenderDoc MODULE)
|
find_package(RenderDoc MODULE)
|
||||||
find_package(SimpleIni MODULE)
|
find_package(SimpleIni MODULE)
|
||||||
find_package(stb MODULE)
|
find_package(stb MODULE)
|
||||||
find_package(VulkanMemoryAllocator CONFIG)
|
find_package(VulkanMemoryAllocator CONFIG)
|
||||||
find_package(ZLIB 1.2 REQUIRED)
|
find_package(ZLIB REQUIRED)
|
||||||
find_package(zstd 1.5 REQUIRED)
|
find_package(zstd REQUIRED)
|
||||||
|
|
||||||
if (NOT CITRON_USE_EXTERNAL_VULKAN_HEADERS)
|
if (NOT CITRON_USE_EXTERNAL_VULKAN_HEADERS)
|
||||||
find_package(VulkanHeaders 1.3.274 REQUIRED)
|
find_package(VulkanHeaders 1.4.307 REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (NOT CITRON_USE_EXTERNAL_VULKAN_UTILITY_LIBRARIES)
|
if (NOT CITRON_USE_EXTERNAL_VULKAN_UTILITY_LIBRARIES)
|
||||||
|
@ -315,19 +382,19 @@ if (NOT CITRON_USE_EXTERNAL_VULKAN_UTILITY_LIBRARIES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ENABLE_LIBUSB)
|
if (ENABLE_LIBUSB)
|
||||||
find_package(libusb 1.0.24 MODULE)
|
find_package(libusb MODULE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ARCHITECTURE_x86 OR ARCHITECTURE_x86_64)
|
if (ARCHITECTURE_x86 OR ARCHITECTURE_x86_64)
|
||||||
find_package(xbyak 6 CONFIG)
|
find_package(xbyak CONFIG)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ARCHITECTURE_arm64)
|
if (ARCHITECTURE_arm64)
|
||||||
find_package(oaknut 2.0.1 CONFIG)
|
find_package(oaknut CONFIG)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64)
|
if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64)
|
||||||
find_package(dynarmic 6.4.0 CONFIG)
|
find_package(dynarmic CONFIG)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ENABLE_CUBEB)
|
if (ENABLE_CUBEB)
|
||||||
|
@ -339,12 +406,12 @@ if (USE_DISCORD_PRESENCE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ENABLE_WEB_SERVICE)
|
if (ENABLE_WEB_SERVICE)
|
||||||
find_package(cpp-jwt 1.4 CONFIG)
|
find_package(cpp-jwt CONFIG)
|
||||||
find_package(httplib 0.12 MODULE COMPONENTS OpenSSL)
|
find_package(httplib MODULE COMPONENTS OpenSSL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (CITRON_TESTS)
|
if (CITRON_TESTS)
|
||||||
find_package(Catch2 3.0.1 REQUIRED)
|
find_package(Catch2 REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# boost:asio has functions that require AcceptEx et al
|
# boost:asio has functions that require AcceptEx et al
|
||||||
|
@ -353,11 +420,11 @@ if (MINGW)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ENABLE_OPENSSL)
|
if(ENABLE_OPENSSL)
|
||||||
find_package(OpenSSL 1.1.1 REQUIRED)
|
find_package(OpenSSL REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (UNIX AND NOT APPLE)
|
if (UNIX AND NOT APPLE)
|
||||||
find_package(gamemode 1.7 MODULE)
|
find_package(gamemode MODULE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Please consider this as a stub
|
# Please consider this as a stub
|
||||||
|
@ -365,172 +432,12 @@ if(ENABLE_QT6 AND Qt6_LOCATION)
|
||||||
list(APPEND CMAKE_PREFIX_PATH "${Qt6_LOCATION}")
|
list(APPEND CMAKE_PREFIX_PATH "${Qt6_LOCATION}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
function(set_citron_qt_components)
|
|
||||||
# Best practice is to ask for all components at once, so they are from the same version
|
|
||||||
set(CITRON_QT_COMPONENTS2 Core Widgets Concurrent)
|
|
||||||
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
|
||||||
list(APPEND CITRON_QT_COMPONENTS2 DBus)
|
|
||||||
endif()
|
|
||||||
if (CITRON_USE_QT_MULTIMEDIA)
|
|
||||||
list(APPEND CITRON_QT_COMPONENTS2 Multimedia)
|
|
||||||
endif()
|
|
||||||
if (CITRON_USE_QT_WEB_ENGINE)
|
|
||||||
list(APPEND CITRON_QT_COMPONENTS2 WebEngineCore WebEngineWidgets)
|
|
||||||
endif()
|
|
||||||
if (ENABLE_QT_TRANSLATION)
|
|
||||||
list(APPEND CITRON_QT_COMPONENTS2 LinguistTools)
|
|
||||||
endif()
|
|
||||||
if (USE_DISCORD_PRESENCE)
|
|
||||||
list(APPEND CITRON_QT_COMPONENTS2 Network)
|
|
||||||
endif()
|
|
||||||
set(CITRON_QT_COMPONENTS ${CITRON_QT_COMPONENTS2} PARENT_SCOPE)
|
|
||||||
endfunction(set_citron_qt_components)
|
|
||||||
|
|
||||||
# Qt5 requires that we find components, so it doesn't fit our pretty little find package function
|
|
||||||
if(ENABLE_QT)
|
|
||||||
set(QT_VERSION 5.15)
|
|
||||||
# These are used to specify minimum versions
|
|
||||||
set(QT5_VERSION 5.15)
|
|
||||||
set(QT6_VERSION 6.3.1)
|
|
||||||
|
|
||||||
set_citron_qt_components()
|
|
||||||
if (ENABLE_QT6)
|
|
||||||
find_package(Qt6 ${QT6_VERSION} COMPONENTS ${CITRON_QT_COMPONENTS})
|
|
||||||
endif()
|
|
||||||
if (Qt6_FOUND)
|
|
||||||
message(STATUS "citron/CMakeLists.txt: Qt6Widgets_VERSION ${Qt6Widgets_VERSION}, setting QT_VERSION")
|
|
||||||
set(QT_VERSION ${Qt6Widgets_VERSION})
|
|
||||||
set(QT_MAJOR_VERSION 6)
|
|
||||||
# Qt6 sets cxx_std_17 and we need to undo that
|
|
||||||
set_target_properties(Qt6::Platform PROPERTIES INTERFACE_COMPILE_FEATURES "")
|
|
||||||
else()
|
|
||||||
message(STATUS "citron/CMakeLists.txt: Qt6 not found/not selected, trying for Qt5")
|
|
||||||
# When Qt6 partially found, need this set to use Qt5 when not specifying version
|
|
||||||
set(QT_DEFAULT_MAJOR_VERSION 5)
|
|
||||||
set(QT_MAJOR_VERSION 5)
|
|
||||||
|
|
||||||
set(CITRON_USE_QT_MULTIMEDIA ON)
|
|
||||||
# Check for system Qt on Linux, fallback to bundled Qt
|
|
||||||
if (UNIX AND NOT APPLE)
|
|
||||||
if (NOT CITRON_USE_BUNDLED_QT)
|
|
||||||
find_package(Qt5 ${QT5_VERSION} COMPONENTS Widgets DBus Multimedia)
|
|
||||||
endif()
|
|
||||||
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux" AND (NOT Qt5_FOUND OR CITRON_USE_BUNDLED_QT))
|
|
||||||
# Check for dependencies, then enable bundled Qt download
|
|
||||||
|
|
||||||
# Check that the system GLIBCXX version is compatible
|
|
||||||
find_program(OBJDUMP objdump)
|
|
||||||
if (NOT OBJDUMP)
|
|
||||||
message(FATAL_ERROR "Required program `objdump` not found.")
|
|
||||||
endif()
|
|
||||||
find_library(LIBSTDCXX libstdc++.so.6)
|
|
||||||
execute_process(
|
|
||||||
COMMAND
|
|
||||||
${OBJDUMP} -T ${LIBSTDCXX}
|
|
||||||
COMMAND
|
|
||||||
grep GLIBCXX_3.4.28
|
|
||||||
COMMAND
|
|
||||||
sed "s/[0-9a-f]*.* //"
|
|
||||||
COMMAND
|
|
||||||
sed "s/ .*//"
|
|
||||||
COMMAND
|
|
||||||
sort -u
|
|
||||||
OUTPUT_VARIABLE
|
|
||||||
GLIBCXX_MET
|
|
||||||
)
|
|
||||||
if (NOT GLIBCXX_MET)
|
|
||||||
message(FATAL_ERROR "Qt too old or not found, and bundled Qt package is not \
|
|
||||||
compatible with this system. Either install Qt ${QT_VERSION}, or provide the path \
|
|
||||||
to Qt by setting the variable Qt5_ROOT.")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Check for headers
|
|
||||||
find_package(PkgConfig REQUIRED)
|
|
||||||
pkg_check_modules(QT_DEP_GLU QUIET glu>=9.0.0)
|
|
||||||
if (NOT QT_DEP_GLU_FOUND)
|
|
||||||
message(FATAL_ERROR "Qt bundled package dependency `glu` not found. \
|
|
||||||
Perhaps `libglu1-mesa-dev` needs to be installed?")
|
|
||||||
endif()
|
|
||||||
pkg_check_modules(QT_DEP_MESA QUIET dri>=20.0.8)
|
|
||||||
if (NOT QT_DEP_MESA_FOUND)
|
|
||||||
message(FATAL_ERROR "Qt bundled package dependency `dri` not found. \
|
|
||||||
Perhaps `mesa-common-dev` needs to be installed?")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Check for X libraries
|
|
||||||
set(BUNDLED_QT_REQUIREMENTS
|
|
||||||
libxcb-icccm.so.4
|
|
||||||
libxcb-image.so.0
|
|
||||||
libxcb-keysyms.so.1
|
|
||||||
libxcb-randr.so.0
|
|
||||||
libxcb-render-util.so.0
|
|
||||||
libxcb-render.so.0
|
|
||||||
libxcb-shape.so.0
|
|
||||||
libxcb-shm.so.0
|
|
||||||
libxcb-sync.so.1
|
|
||||||
libxcb-xfixes.so.0
|
|
||||||
libxcb-xinerama.so.0
|
|
||||||
libxcb-xkb.so.1
|
|
||||||
libxcb.so.1
|
|
||||||
libxkbcommon-x11.so.0
|
|
||||||
libxkbcommon.so.0
|
|
||||||
)
|
|
||||||
set(UNRESOLVED_QT_DEPS "")
|
|
||||||
foreach (REQUIREMENT ${BUNDLED_QT_REQUIREMENTS})
|
|
||||||
find_library(BUNDLED_QT_${REQUIREMENT} ${REQUIREMENT})
|
|
||||||
if (NOT BUNDLED_QT_${REQUIREMENT})
|
|
||||||
set(UNRESOLVED_QT_DEPS ${UNRESOLVED_QT_DEPS} ${REQUIREMENT})
|
|
||||||
endif()
|
|
||||||
unset(BUNDLED_QT_${REQUIREMENT})
|
|
||||||
endforeach()
|
|
||||||
unset(BUNDLED_QT_REQUIREMENTS)
|
|
||||||
|
|
||||||
if (NOT "${UNRESOLVED_QT_DEPS}" STREQUAL "")
|
|
||||||
message(FATAL_ERROR "Bundled Qt package missing required dependencies: ${UNRESOLVED_QT_DEPS}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CITRON_USE_BUNDLED_QT ON CACHE BOOL "Download bundled Qt" FORCE)
|
|
||||||
endif()
|
|
||||||
if (CITRON_USE_BUNDLED_QT)
|
|
||||||
# Binary package currently does not support Qt webengine, so make sure it's disabled
|
|
||||||
set(CITRON_USE_QT_WEB_ENGINE OFF CACHE BOOL "Use Qt Webengine" FORCE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CITRON_QT_NO_CMAKE_SYSTEM_PATH)
|
|
||||||
|
|
||||||
if(CITRON_USE_BUNDLED_QT)
|
|
||||||
if ((MSVC_VERSION GREATER_EQUAL 1920 AND MSVC_VERSION LESS 1940) AND ARCHITECTURE_x86_64)
|
|
||||||
set(QT_BUILD qt-5.15.2-msvc2019_64)
|
|
||||||
elseif ((${CMAKE_SYSTEM_NAME} STREQUAL "Linux") AND NOT MINGW AND ARCHITECTURE_x86_64)
|
|
||||||
set(QT_BUILD qt5_5_15_2)
|
|
||||||
else()
|
|
||||||
message(FATAL_ERROR "No bundled Qt binaries for your toolchain. Disable CITRON_USE_BUNDLED_QT and provide your own.")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (DEFINED QT_BUILD)
|
|
||||||
download_bundled_external("qt/" ${QT_BUILD} QT_PREFIX)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(QT_PREFIX_HINT HINTS "${QT_PREFIX}")
|
|
||||||
|
|
||||||
set(CITRON_QT_NO_CMAKE_SYSTEM_PATH "NO_CMAKE_SYSTEM_PATH")
|
|
||||||
# Binary package for Qt5 has Qt Multimedia
|
|
||||||
set(CITRON_USE_QT_MULTIMEDIA ON CACHE BOOL "Use Qt Multimedia" FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set_citron_qt_components()
|
|
||||||
find_package(Qt5 ${QT5_VERSION} COMPONENTS ${CITRON_QT_COMPONENTS} ${QT_PREFIX_HINT} ${CITRON_QT_NO_CMAKE_SYSTEM_PATH})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# find SDL2 exports a bunch of variables that are needed, so its easier to do this outside of the citron_find_package
|
# find SDL2 exports a bunch of variables that are needed, so its easier to do this outside of the citron_find_package
|
||||||
if (ENABLE_SDL2)
|
if (ENABLE_SDL2)
|
||||||
if (CITRON_USE_BUNDLED_SDL2)
|
if (CITRON_USE_BUNDLED_SDL2)
|
||||||
# Detect toolchain and platform
|
# Detect toolchain and platform
|
||||||
if ((MSVC_VERSION GREATER_EQUAL 1920 AND MSVC_VERSION LESS 1940) AND ARCHITECTURE_x86_64)
|
if ((MSVC_VERSION GREATER_EQUAL 1920) AND ARCHITECTURE_x86_64)
|
||||||
set(SDL2_VER "SDL2-2.28.2")
|
set(SDL2_VER "SDL2-2.32.0")
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "No bundled SDL2 binaries for your toolchain. Disable CITRON_USE_BUNDLED_SDL2 and provide your own.")
|
message(FATAL_ERROR "No bundled SDL2 binaries for your toolchain. Disable CITRON_USE_BUNDLED_SDL2 and provide your own.")
|
||||||
endif()
|
endif()
|
||||||
|
@ -554,22 +461,90 @@ if (ENABLE_SDL2)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# List of all FFmpeg components required
|
add_subdirectory(externals)
|
||||||
set(FFmpeg_COMPONENTS
|
|
||||||
|
if (USE_DISCORD_PRESENCE)
|
||||||
|
target_compile_options(discord-rpc PRIVATE -fpermissive)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (ENABLE_QT)
|
||||||
|
if (NOT USE_SYSTEM_QT)
|
||||||
|
download_qt(6.8.2)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(Qt6 REQUIRED COMPONENTS Widgets Multimedia Concurrent Network)
|
||||||
|
|
||||||
|
if (UNIX AND NOT APPLE)
|
||||||
|
find_package(Qt6 REQUIRED COMPONENTS DBus)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (ENABLE_QT_TRANSLATION)
|
||||||
|
find_package(Qt6 REQUIRED COMPONENTS LinguistTools)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (NOT DEFINED QT_TARGET_PATH)
|
||||||
|
get_target_property(qtcore_path Qt6::Core LOCATION_Release)
|
||||||
|
string(FIND "${qtcore_path}" "/bin/" qtcore_path_bin_pos REVERSE)
|
||||||
|
string(FIND "${qtcore_path}" "/lib/" qtcore_path_lib_pos REVERSE)
|
||||||
|
if (qtcore_path_bin_pos GREATER qtcore_path_lib_pos)
|
||||||
|
string(SUBSTRING "${qtcore_path}" 0 ${qtcore_path_bin_pos} QT_TARGET_PATH)
|
||||||
|
else()
|
||||||
|
string(SUBSTRING "${qtcore_path}" 0 ${qtcore_path_lib_pos} QT_TARGET_PATH)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (NOT DEFINED QT_HOST_PATH)
|
||||||
|
set(QT_HOST_PATH "${QT_TARGET_PATH}")
|
||||||
|
endif()
|
||||||
|
message(STATUS "Using target Qt at ${QT_TARGET_PATH}")
|
||||||
|
message(STATUS "Using host Qt at ${QT_HOST_PATH}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
function(set_citron_qt_components)
|
||||||
|
# Best practice is to ask for all components at once, so they are from the same version
|
||||||
|
set(CITRON_QT_COMPONENTS2 Core Widgets Concurrent)
|
||||||
|
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||||
|
list(APPEND CITRON_QT_COMPONENTS2 DBus)
|
||||||
|
endif()
|
||||||
|
if (CITRON_USE_QT_MULTIMEDIA)
|
||||||
|
list(APPEND CITRON_QT_COMPONENTS2 Multimedia)
|
||||||
|
endif()
|
||||||
|
if (CITRON_USE_QT_WEB_ENGINE)
|
||||||
|
list(APPEND CITRON_QT_COMPONENTS2 WebEngineCore WebEngineWidgets)
|
||||||
|
endif()
|
||||||
|
if (ENABLE_QT_TRANSLATION)
|
||||||
|
list(APPEND CITRON_QT_COMPONENTS2 LinguistTools)
|
||||||
|
endif()
|
||||||
|
if (USE_DISCORD_PRESENCE)
|
||||||
|
list(APPEND CITRON_QT_COMPONENTS2 Network)
|
||||||
|
endif()
|
||||||
|
set(CITRON_QT_COMPONENTS ${CITRON_QT_COMPONENTS2} PARENT_SCOPE)
|
||||||
|
endfunction(set_citron_qt_components)
|
||||||
|
|
||||||
|
# List of all FFmpeg components required
|
||||||
|
set(FFmpeg_COMPONENTS
|
||||||
avcodec
|
avcodec
|
||||||
avfilter
|
avfilter
|
||||||
avutil
|
avutil
|
||||||
swscale)
|
swscale)
|
||||||
|
|
||||||
if (UNIX AND NOT APPLE AND NOT ANDROID)
|
if (UNIX AND NOT APPLE AND NOT ANDROID)
|
||||||
find_package(PkgConfig REQUIRED)
|
find_package(PkgConfig REQUIRED)
|
||||||
pkg_check_modules(LIBVA libva)
|
pkg_check_modules(LIBVA libva)
|
||||||
endif()
|
endif()
|
||||||
if (NOT CITRON_USE_BUNDLED_FFMPEG)
|
if (NOT CITRON_USE_BUNDLED_FFMPEG)
|
||||||
# Use system installed FFmpeg
|
# Use system installed FFmpeg
|
||||||
find_package(FFmpeg 4.3 REQUIRED QUIET COMPONENTS ${FFmpeg_COMPONENTS})
|
find_package(FFmpeg REQUIRED QUIET COMPONENTS ${FFmpeg_COMPONENTS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_QT)
|
||||||
|
set_citron_qt_components()
|
||||||
|
find_package(Qt6 REQUIRED COMPONENTS ${CITRON_QT_COMPONENTS})
|
||||||
|
set(QT_MAJOR_VERSION 6)
|
||||||
|
# Qt6 sets cxx_std_17 and we need to undo that
|
||||||
|
set_target_properties(Qt6::Platform PROPERTIES INTERFACE_COMPILE_FEATURES "")
|
||||||
|
endif()
|
||||||
|
|
||||||
if (WIN32 AND CITRON_CRASH_DUMPS)
|
if (WIN32 AND CITRON_CRASH_DUMPS)
|
||||||
set(BREAKPAD_VER "breakpad-c89f9dd")
|
set(BREAKPAD_VER "breakpad-c89f9dd")
|
||||||
download_bundled_external("breakpad/" ${BREAKPAD_VER} BREAKPAD_PREFIX)
|
download_bundled_external("breakpad/" ${BREAKPAD_VER} BREAKPAD_PREFIX)
|
||||||
|
@ -609,7 +584,7 @@ endif()
|
||||||
# against all the src files. This should be used before making a pull request.
|
# against all the src files. This should be used before making a pull request.
|
||||||
# =======================================================================
|
# =======================================================================
|
||||||
|
|
||||||
set(CLANG_FORMAT_POSTFIX "-15")
|
set(CLANG_FORMAT_POSTFIX "-18")
|
||||||
find_program(CLANG_FORMAT
|
find_program(CLANG_FORMAT
|
||||||
NAMES clang-format${CLANG_FORMAT_POSTFIX}
|
NAMES clang-format${CLANG_FORMAT_POSTFIX}
|
||||||
clang-format
|
clang-format
|
||||||
|
@ -620,7 +595,7 @@ if (NOT CLANG_FORMAT)
|
||||||
message(STATUS "Clang format not found! Downloading...")
|
message(STATUS "Clang format not found! Downloading...")
|
||||||
set(CLANG_FORMAT "${PROJECT_BINARY_DIR}/externals/clang-format${CLANG_FORMAT_POSTFIX}.exe")
|
set(CLANG_FORMAT "${PROJECT_BINARY_DIR}/externals/clang-format${CLANG_FORMAT_POSTFIX}.exe")
|
||||||
file(DOWNLOAD
|
file(DOWNLOAD
|
||||||
https://github.com/yuzu-mirror/ext-windows-bin/raw/master/clang-format${CLANG_FORMAT_POSTFIX}.exe
|
https://git.citron-emu.org/Citron/ext-windows-bin/raw/master/clang-format${CLANG_FORMAT_POSTFIX}.exe
|
||||||
"${CLANG_FORMAT}" SHOW_PROGRESS
|
"${CLANG_FORMAT}" SHOW_PROGRESS
|
||||||
STATUS DOWNLOAD_SUCCESS)
|
STATUS DOWNLOAD_SUCCESS)
|
||||||
if (NOT DOWNLOAD_SUCCESS EQUAL 0)
|
if (NOT DOWNLOAD_SUCCESS EQUAL 0)
|
||||||
|
@ -700,7 +675,25 @@ if (CITRON_USE_FASTER_LD AND CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_subdirectory(externals)
|
# Set runtime library to MD/MDd for all configurations
|
||||||
|
if(MSVC)
|
||||||
|
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
|
||||||
|
|
||||||
|
# Force all projects (including external dependencies) to use the same runtime
|
||||||
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD")
|
||||||
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd")
|
||||||
|
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MD")
|
||||||
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MDd")
|
||||||
|
|
||||||
|
# Add this to ensure Cubeb uses the same runtime
|
||||||
|
add_compile_options(
|
||||||
|
$<$<CONFIG:Debug>:/MDd>
|
||||||
|
$<$<CONFIG:Release>:/MD>
|
||||||
|
$<$<CONFIG:RelWithDebInfo>:/MD>
|
||||||
|
$<$<CONFIG:MinSizeRel>:/MD>
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_subdirectory(src)
|
add_subdirectory(src)
|
||||||
|
|
||||||
# Set citron project or citron-cmd project as default StartUp Project in Visual Studio depending on whether QT is enabled or not
|
# Set citron project or citron-cmd project as default StartUp Project in Visual Studio depending on whether QT is enabled or not
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2020 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
function(copy_citron_FFmpeg_deps target_dir)
|
function(copy_citron_FFmpeg_deps target_dir)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2016 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2016 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
function(copy_citron_Qt5_deps target_dir)
|
function(copy_citron_Qt5_deps target_dir)
|
||||||
|
|
60
CMakeModules/CopyCitronQt6Deps.cmake
Normal file
60
CMakeModules/CopyCitronQt6Deps.cmake
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
# SPDX-FileCopyrightText: 2024 Citron HomeBrew Emulator Project
|
||||||
|
|
||||||
|
function(copy_citron_Qt6_deps target_dir)
|
||||||
|
include(WindowsCopyFiles)
|
||||||
|
if (MSVC)
|
||||||
|
set(DLL_DEST "$<TARGET_FILE_DIR:${target_dir}>/")
|
||||||
|
set(Qt6_DLL_DIR "${Qt6_DIR}/../../../bin")
|
||||||
|
else()
|
||||||
|
set(DLL_DEST "${CMAKE_BINARY_DIR}/bin/")
|
||||||
|
set(Qt6_DLL_DIR "${Qt6_DIR}/../../../lib/")
|
||||||
|
endif()
|
||||||
|
set(Qt6_PLATFORMS_DIR "${Qt6_DIR}/../../../plugins/platforms/")
|
||||||
|
set(Qt6_STYLES_DIR "${Qt6_DIR}/../../../plugins/styles/")
|
||||||
|
set(Qt6_IMAGEFORMATS_DIR "${Qt6_DIR}/../../../plugins/imageformats/")
|
||||||
|
set(Qt6_RESOURCES_DIR "${Qt6_DIR}/../../../resources/")
|
||||||
|
set(PLATFORMS ${DLL_DEST}plugins/platforms/)
|
||||||
|
set(STYLES ${DLL_DEST}plugins/styles/)
|
||||||
|
set(IMAGEFORMATS ${DLL_DEST}plugins/imageformats/)
|
||||||
|
|
||||||
|
if (MSVC)
|
||||||
|
windows_copy_files(${target_dir} ${Qt6_DLL_DIR} ${DLL_DEST}
|
||||||
|
Qt6Core$<$<CONFIG:Debug>:d>.*
|
||||||
|
Qt6Gui$<$<CONFIG:Debug>:d>.*
|
||||||
|
Qt6Widgets$<$<CONFIG:Debug>:d>.*
|
||||||
|
Qt6Network$<$<CONFIG:Debug>:d>.*
|
||||||
|
)
|
||||||
|
if (CITRON_USE_QT_MULTIMEDIA)
|
||||||
|
windows_copy_files(${target_dir} ${Qt6_DLL_DIR} ${DLL_DEST}
|
||||||
|
Qt6Multimedia$<$<CONFIG:Debug>:d>.*
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
if (CITRON_USE_QT_WEB_ENGINE)
|
||||||
|
windows_copy_files(${target_dir} ${Qt6_DLL_DIR} ${DLL_DEST}
|
||||||
|
Qt6WebEngineCore$<$<CONFIG:Debug>:d>.*
|
||||||
|
Qt6WebEngineWidgets$<$<CONFIG:Debug>:d>.*
|
||||||
|
QtWebEngineProcess$<$<CONFIG:Debug>:d>.*
|
||||||
|
)
|
||||||
|
windows_copy_files(${target_dir} ${Qt6_RESOURCES_DIR} ${DLL_DEST}
|
||||||
|
icudtl.dat
|
||||||
|
qtwebengine_devtools_resources.pak
|
||||||
|
qtwebengine_resources.pak
|
||||||
|
qtwebengine_resources_100p.pak
|
||||||
|
qtwebengine_resources_200p.pak
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
windows_copy_files(citron ${Qt6_PLATFORMS_DIR} ${PLATFORMS} qwindows$<$<CONFIG:Debug>:d>.*)
|
||||||
|
windows_copy_files(citron ${Qt6_STYLES_DIR} ${STYLES} qwindowsvistastyle$<$<CONFIG:Debug>:d>.*)
|
||||||
|
windows_copy_files(citron ${Qt6_IMAGEFORMATS_DIR} ${IMAGEFORMATS}
|
||||||
|
qjpeg$<$<CONFIG:Debug>:d>.*
|
||||||
|
qgif$<$<CONFIG:Debug>:d>.*
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
# Update for non-MSVC platforms if needed
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Create an empty qt.conf file
|
||||||
|
add_custom_command(TARGET citron POST_BUILD
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E touch ${DLL_DEST}qt.conf
|
||||||
|
)
|
||||||
|
endfunction(copy_citron_Qt6_deps)
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2016 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2016 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
function(copy_citron_SDL_deps target_dir)
|
function(copy_citron_SDL_deps target_dir)
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
# SPDX-FileCopyrightText: 2017 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2025 Citron Homebrew Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# This function downloads a binary library package from our external repo.
|
# This function downloads a binary library package from our external repo.
|
||||||
# Params:
|
# Params:
|
||||||
# remote_path: path to the file to download, relative to the remote repository root
|
# remote_path: path to the file to download, relative to the remote repository root
|
||||||
# prefix_var: name of a variable which will be set with the path to the extracted contents
|
# prefix_var: name of a variable which will be set with the path to the extracted contents
|
||||||
|
set(CURRENT_MODULE_DIR ${CMAKE_CURRENT_LIST_DIR})
|
||||||
function(download_bundled_external remote_path lib_name prefix_var)
|
function(download_bundled_external remote_path lib_name prefix_var)
|
||||||
|
|
||||||
set(package_base_url "https://github.com/yuzu-mirror/")
|
set(package_base_url "https://git.citron-emu.org/Citron/")
|
||||||
set(package_repo "no_platform")
|
set(package_repo "no_platform")
|
||||||
set(package_extension "no_platform")
|
set(package_extension "no_platform")
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
|
@ -16,7 +17,7 @@ if (WIN32)
|
||||||
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||||
set(package_repo "ext-linux-bin/raw/main/")
|
set(package_repo "ext-linux-bin/raw/main/")
|
||||||
set(package_extension ".tar.xz")
|
set(package_extension ".tar.xz")
|
||||||
elseif (ANDROID)
|
elseif (ANDROID)
|
||||||
set(package_repo "ext-android-bin/raw/main/")
|
set(package_repo "ext-android-bin/raw/main/")
|
||||||
set(package_extension ".tar.xz")
|
set(package_extension ".tar.xz")
|
||||||
else()
|
else()
|
||||||
|
@ -54,3 +55,172 @@ function(download_moltenvk_external platform version)
|
||||||
list(APPEND CMAKE_PREFIX_PATH "${MOLTENVK_DIR}/MoltenVK/dylib/${platform}")
|
list(APPEND CMAKE_PREFIX_PATH "${MOLTENVK_DIR}/MoltenVK/dylib/${platform}")
|
||||||
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} PARENT_SCOPE)
|
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} PARENT_SCOPE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
# Determine installation parameters for OS, architecture, and compiler
|
||||||
|
function(determine_qt_parameters target host_out type_out arch_out arch_path_out host_type_out host_arch_out host_arch_path_out)
|
||||||
|
if (WIN32)
|
||||||
|
set(host "windows")
|
||||||
|
set(type "desktop")
|
||||||
|
|
||||||
|
if (NOT tool)
|
||||||
|
if (MINGW)
|
||||||
|
set(arch "win64_mingw")
|
||||||
|
set(arch_path "mingw_64")
|
||||||
|
elseif (MSVC)
|
||||||
|
if ("arm64" IN_LIST ARCHITECTURE)
|
||||||
|
set(arch_path "msvc2022_arm64")
|
||||||
|
elseif ("x86_64" IN_LIST ARCHITECTURE)
|
||||||
|
set(arch_path "msvc2022_64")
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "Unsupported bundled Qt architecture. Enable USE_SYSTEM_QT and provide your own.")
|
||||||
|
endif()
|
||||||
|
set(arch "win64_${arch_path}")
|
||||||
|
|
||||||
|
if (CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "AMD64")
|
||||||
|
set(host_arch_path "msvc2022_64")
|
||||||
|
elseif (CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "ARM64")
|
||||||
|
set(host_arch_path "msvc2022_64")
|
||||||
|
endif()
|
||||||
|
set(host_arch "win64_${host_arch_path}")
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "Unsupported bundled Qt toolchain. Enable USE_SYSTEM_QT and provide your own.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
elseif (APPLE)
|
||||||
|
set(host "mac")
|
||||||
|
set(type "desktop")
|
||||||
|
set(arch "clang_64")
|
||||||
|
set(arch_path "macos")
|
||||||
|
else()
|
||||||
|
set(host "linux")
|
||||||
|
set(type "desktop")
|
||||||
|
set(arch "gcc_64")
|
||||||
|
set(arch_path "linux")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(${host_out} "${host}" PARENT_SCOPE)
|
||||||
|
set(${type_out} "${type}" PARENT_SCOPE)
|
||||||
|
set(${arch_out} "${arch}" PARENT_SCOPE)
|
||||||
|
set(${arch_path_out} "${arch_path}" PARENT_SCOPE)
|
||||||
|
if (DEFINED host_type)
|
||||||
|
set(${host_type_out} "${host_type}" PARENT_SCOPE)
|
||||||
|
else()
|
||||||
|
set(${host_type_out} "${type}" PARENT_SCOPE)
|
||||||
|
endif()
|
||||||
|
if (DEFINED host_arch)
|
||||||
|
set(${host_arch_out} "${host_arch}" PARENT_SCOPE)
|
||||||
|
else()
|
||||||
|
set(${host_arch_out} "${arch}" PARENT_SCOPE)
|
||||||
|
endif()
|
||||||
|
if (DEFINED host_arch_path)
|
||||||
|
set(${host_arch_path_out} "${host_arch_path}" PARENT_SCOPE)
|
||||||
|
else()
|
||||||
|
set(${host_arch_path_out} "${arch_path}" PARENT_SCOPE)
|
||||||
|
endif()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
# Download Qt binaries for a specific configuration.
|
||||||
|
function(download_qt_configuration prefix_out target host type arch arch_path base_path)
|
||||||
|
if (target MATCHES "tools_.*")
|
||||||
|
set(tool ON)
|
||||||
|
else()
|
||||||
|
set(tool OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(install_args -c "${CURRENT_MODULE_DIR}/aqt_config.ini")
|
||||||
|
if (tool)
|
||||||
|
set(prefix "${base_path}/Tools")
|
||||||
|
set(install_args ${install_args} install-tool --outputdir ${base_path} ${host} desktop ${target})
|
||||||
|
else()
|
||||||
|
set(prefix "${base_path}/${target}/${arch_path}")
|
||||||
|
set(install_args ${install_args} install-qt --outputdir ${base_path} ${host} ${type} ${target} ${arch}
|
||||||
|
-m all)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (NOT EXISTS "${prefix}")
|
||||||
|
message(STATUS "Downloading Qt binaries for ${target}:${host}:${type}:${arch}:${arch_path}")
|
||||||
|
set(AQT_PREBUILD_BASE_URL "https://github.com/miurahr/aqtinstall/releases/download/v3.2.0")
|
||||||
|
if (WIN32)
|
||||||
|
set(aqt_path "${base_path}/aqt.exe")
|
||||||
|
if (NOT EXISTS "${aqt_path}")
|
||||||
|
file(DOWNLOAD
|
||||||
|
${AQT_PREBUILD_BASE_URL}/aqt.exe
|
||||||
|
${aqt_path} SHOW_PROGRESS)
|
||||||
|
endif()
|
||||||
|
execute_process(COMMAND ${aqt_path} ${install_args}
|
||||||
|
WORKING_DIRECTORY ${base_path})
|
||||||
|
elseif (APPLE)
|
||||||
|
set(aqt_path "${base_path}/aqt-macos")
|
||||||
|
if (NOT EXISTS "${aqt_path}")
|
||||||
|
file(DOWNLOAD
|
||||||
|
${AQT_PREBUILD_BASE_URL}/aqt-macos
|
||||||
|
${aqt_path} SHOW_PROGRESS)
|
||||||
|
endif()
|
||||||
|
execute_process(COMMAND chmod +x ${aqt_path})
|
||||||
|
execute_process(COMMAND ${aqt_path} ${install_args}
|
||||||
|
WORKING_DIRECTORY ${base_path})
|
||||||
|
else()
|
||||||
|
set(aqt_install_path "${base_path}/aqt")
|
||||||
|
file(MAKE_DIRECTORY "${aqt_install_path}")
|
||||||
|
|
||||||
|
execute_process(COMMAND python3 -m pip install --target=${aqt_install_path} aqtinstall
|
||||||
|
WORKING_DIRECTORY ${base_path})
|
||||||
|
execute_process(COMMAND ${CMAKE_COMMAND} -E env PYTHONPATH=${aqt_install_path} python3 -m aqt ${install_args}
|
||||||
|
WORKING_DIRECTORY ${base_path})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
message(STATUS "Downloaded Qt binaries for ${target}:${host}:${type}:${arch}:${arch_path} to ${prefix}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(${prefix_out} "${prefix}" PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
# This function downloads Qt using aqt.
|
||||||
|
# The path of the downloaded content will be added to the CMAKE_PREFIX_PATH.
|
||||||
|
# QT_TARGET_PATH is set to the Qt for the compile target platform.
|
||||||
|
# QT_HOST_PATH is set to a host-compatible Qt, for running tools.
|
||||||
|
# Params:
|
||||||
|
# target: Qt dependency to install. Specify a version number to download Qt, or "tools_(name)" for a specific build tool.
|
||||||
|
function(download_qt target)
|
||||||
|
determine_qt_parameters("${target}" host type arch arch_path host_type host_arch host_arch_path)
|
||||||
|
|
||||||
|
get_external_prefix(qt base_path)
|
||||||
|
file(MAKE_DIRECTORY "${base_path}")
|
||||||
|
|
||||||
|
download_qt_configuration(prefix "${target}" "${host}" "${type}" "${arch}" "${arch_path}" "${base_path}")
|
||||||
|
if (DEFINED host_arch_path AND NOT "${host_arch_path}" STREQUAL "${arch_path}")
|
||||||
|
download_qt_configuration(host_prefix "${target}" "${host}" "${host_type}" "${host_arch}" "${host_arch_path}" "${base_path}")
|
||||||
|
else()
|
||||||
|
set(host_prefix "${prefix}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(QT_TARGET_PATH "${prefix}" CACHE STRING "")
|
||||||
|
set(QT_HOST_PATH "${host_prefix}" CACHE STRING "")
|
||||||
|
|
||||||
|
list(APPEND CMAKE_PREFIX_PATH "${prefix}")
|
||||||
|
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(download_moltenvk)
|
||||||
|
set(MOLTENVK_PLATFORM "macOS")
|
||||||
|
|
||||||
|
set(MOLTENVK_DIR "${CMAKE_BINARY_DIR}/externals/MoltenVK")
|
||||||
|
set(MOLTENVK_TAR "${CMAKE_BINARY_DIR}/externals/MoltenVK.tar")
|
||||||
|
if (NOT EXISTS ${MOLTENVK_DIR})
|
||||||
|
if (NOT EXISTS ${MOLTENVK_TAR})
|
||||||
|
file(DOWNLOAD https://github.com/KhronosGroup/MoltenVK/releases/download/v1.2.10-rc2/MoltenVK-all.tar
|
||||||
|
${MOLTENVK_TAR} SHOW_PROGRESS)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf "${MOLTENVK_TAR}"
|
||||||
|
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/externals")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Add the MoltenVK library path to the prefix so find_library can locate it.
|
||||||
|
list(APPEND CMAKE_PREFIX_PATH "${MOLTENVK_DIR}/MoltenVK/dylib/${MOLTENVK_PLATFORM}")
|
||||||
|
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(get_external_prefix lib_name prefix_var)
|
||||||
|
set(${prefix_var} "${CMAKE_BINARY_DIR}/externals/${lib_name}" PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2019 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2019 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# FindFFmpeg
|
# FindFFmpeg
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
find_package(PkgConfig QUIET)
|
find_package(PkgConfig QUIET)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
find_package(PkgConfig QUIET)
|
find_package(PkgConfig QUIET)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2019 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# Gets a UTC timestamp and sets the provided variable to it
|
# Gets a UTC timestamp and sets the provided variable to it
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
# buildcache wrapper
|
# buildcache wrapper
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
set(MINGW_PREFIX /usr/x86_64-w64-mingw32/)
|
set(MINGW_PREFIX /usr/x86_64-w64-mingw32/)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# This file provides the function windows_copy_files.
|
# This file provides the function windows_copy_files.
|
||||||
|
|
30
CMakeModules/aqt_config.ini
Normal file
30
CMakeModules/aqt_config.ini
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
# SPDX-FileCopyrightText: 2024 Citron HomeBrew Emulator Project
|
||||||
|
|
||||||
|
[aqt]
|
||||||
|
concurrency: 2
|
||||||
|
|
||||||
|
[mirrors]
|
||||||
|
trusted_mirrors:
|
||||||
|
https://download.qt.io
|
||||||
|
blacklist:
|
||||||
|
https://qt.mirror.constant.com
|
||||||
|
https://mirrors.ocf.berkeley.edu
|
||||||
|
https://mirrors.ustc.edu.cn
|
||||||
|
https://mirrors.tuna.tsinghua.edu.cn
|
||||||
|
https://mirrors.geekpie.club
|
||||||
|
https://mirrors-wan.geekpie.club
|
||||||
|
https://mirrors.sjtug.sjtu.edu.cn
|
||||||
|
fallbacks:
|
||||||
|
https://qtproject.mirror.liquidtelecom.com/
|
||||||
|
https://mirrors.aliyun.com/qt/
|
||||||
|
https://ftp.jaist.ac.jp/pub/qtproject/
|
||||||
|
https://ftp.yz.yamagata-u.ac.jp/pub/qtproject/
|
||||||
|
https://qt-mirror.dannhauer.de/
|
||||||
|
https://ftp.fau.de/qtproject/
|
||||||
|
https://mirror.netcologne.de/qtproject/
|
||||||
|
https://mirrors.dotsrc.org/qtproject/
|
||||||
|
https://www.nic.funet.fi/pub/mirrors/download.qt-project.org/
|
||||||
|
https://master.qt.io/
|
||||||
|
https://mirrors.ukfast.co.uk/sites/qt.io/
|
||||||
|
https://ftp2.nluug.nl/languages/qt/
|
||||||
|
https://ftp1.nluug.nl/languages/qt/
|
109
appimage-builder.sh
Executable file
109
appimage-builder.sh
Executable file
|
@ -0,0 +1,109 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# reg_server, 2024-01-09
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# check arguments
|
||||||
|
if [[ $# != 2 ]]; then
|
||||||
|
>&2 echo "Invalid arguments!"
|
||||||
|
echo "Usage: $0 torzu|citron <build dir>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
BUILD_APP="$1"
|
||||||
|
if [[ "${BUILD_APP}" != "torzu" && "${BUILD_APP}" != "citron" ]]; then
|
||||||
|
>&2 echo "Invalid arguments!"
|
||||||
|
echo "Usage: $0 torzu|citron <build dir>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
BUILD_DIR=$(realpath "$2")
|
||||||
|
if [[ ! -d "${BUILD_DIR}" ]]; then
|
||||||
|
>&2 echo "Invalid arguments!"
|
||||||
|
echo "'$2' is not a directory"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
DEPLOY_LINUX_FOLDER="${BUILD_DIR}/deploy-linux"
|
||||||
|
DEPLOY_LINUX_APPDIR_FOLDER="${BUILD_DIR}/deploy-linux/AppDir"
|
||||||
|
BIN_FOLDER="${BUILD_DIR}/bin"
|
||||||
|
BIN_EXE="${BIN_FOLDER}/${BUILD_APP//torzu/yuzu}"
|
||||||
|
|
||||||
|
CPU_ARCH=$(uname -m)
|
||||||
|
|
||||||
|
#export DISPLAYVERSION="1.2.3" # before cmake
|
||||||
|
|
||||||
|
BIN_EXE_MIME_TYPE=$(file -b --mime-type "${BIN_EXE}")
|
||||||
|
if [[ "${BIN_EXE_MIME_TYPE}" != "application/x-pie-executable" && "${BIN_EXE_MIME_TYPE}" != "application/x-executable" ]]; then
|
||||||
|
>&2 echo "Invalid or missing main executable (${BIN_EXE})!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p "${DEPLOY_LINUX_FOLDER}"
|
||||||
|
rm -rf "${DEPLOY_LINUX_APPDIR_FOLDER}"
|
||||||
|
|
||||||
|
cd "${BUILD_DIR}"
|
||||||
|
|
||||||
|
# deploy/install to deploy-linux/AppDir
|
||||||
|
DESTDIR="${DEPLOY_LINUX_APPDIR_FOLDER}" ninja install
|
||||||
|
|
||||||
|
cd "${DEPLOY_LINUX_FOLDER}"
|
||||||
|
|
||||||
|
# remove -cmd executable, not needed for AppImage
|
||||||
|
rm -fv "${DEPLOY_LINUX_APPDIR_FOLDER}"/usr/bin/"${BUILD_APP//torzu/yuzu}"-cmd
|
||||||
|
|
||||||
|
curl -fsSLo ./linuxdeploy "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-${CPU_ARCH}.AppImage"
|
||||||
|
chmod +x ./linuxdeploy
|
||||||
|
|
||||||
|
curl -fsSLo ./linuxdeploy-plugin-qt "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-${CPU_ARCH}.AppImage"
|
||||||
|
chmod +x ./linuxdeploy-plugin-qt
|
||||||
|
|
||||||
|
curl -fsSLo ./linuxdeploy-plugin-checkrt.sh https://github.com/darealshinji/linuxdeploy-plugin-checkrt/releases/download/continuous/linuxdeploy-plugin-checkrt.sh
|
||||||
|
chmod +x ./linuxdeploy-plugin-checkrt.sh
|
||||||
|
|
||||||
|
# Add Qt 6 specific environment variables
|
||||||
|
export QT_QPA_PLATFORM="wayland;xcb"
|
||||||
|
export EXTRA_PLATFORM_PLUGINS="libqwayland-egl.so;libqwayland-generic.so;libqxcb.so"
|
||||||
|
export EXTRA_QT_PLUGINS="svg;wayland-decoration-client;wayland-graphics-integration-client;wayland-shell-integration;waylandcompositor;xcb-gl-integration;platformthemes/libqt6ct.so"
|
||||||
|
|
||||||
|
# Update linuxdeploy commands for Qt 6
|
||||||
|
export QMAKE="/usr/bin/qmake6"
|
||||||
|
export QT_SELECT=6
|
||||||
|
|
||||||
|
# remove NO_STRIP=1 if linuxdeploy is updated, see: https://github.com/linuxdeploy/linuxdeploy/issues/272
|
||||||
|
NO_STRIP=1 APPIMAGE_EXTRACT_AND_RUN=1 ./linuxdeploy --appdir ./AppDir --plugin qt --plugin checkrt
|
||||||
|
|
||||||
|
# remove libwayland-client because it has platform-dependent exports and breaks other OSes
|
||||||
|
rm -fv ./AppDir/usr/lib/libwayland-client.so*
|
||||||
|
|
||||||
|
# remove libvulkan because it causes issues with gamescope
|
||||||
|
rm -fv ./AppDir/usr/lib/libvulkan.so*
|
||||||
|
|
||||||
|
rm -rf ./linuxdeploy-squashfs-root
|
||||||
|
./linuxdeploy --appimage-extract
|
||||||
|
mv -v ./squashfs-root/ ./linuxdeploy-squashfs-root/
|
||||||
|
|
||||||
|
./linuxdeploy-squashfs-root/plugins/linuxdeploy-plugin-appimage/usr/bin/appimagetool ./AppDir -g
|
||||||
|
|
||||||
|
#APPIMAGE_SUFFIX="linux_${CPU_ARCH}"
|
||||||
|
APPIMAGE_SUFFIX="${CPU_ARCH}"
|
||||||
|
#COMM_TAG="${DISPLAYVERSION}"
|
||||||
|
COMM_COUNT="$(git rev-list --count HEAD)"
|
||||||
|
COMM_HASH="$(git rev-parse --short=9 HEAD)"
|
||||||
|
BUILD_DATE=$(date +"%Y%m%d")
|
||||||
|
#APPIMAGE_NAME="${BUILD_APP}-v${COMM_TAG}-${BUILD_DATE}-${COMM_COUNT}-${COMM_HASH}-${APPIMAGE_SUFFIX}.AppImage"
|
||||||
|
APPIMAGE_NAME="${BUILD_APP}-nightly-${BUILD_DATE}-${COMM_COUNT}-${COMM_HASH}-${APPIMAGE_SUFFIX}.AppImage"
|
||||||
|
|
||||||
|
LATEST_APPIMAGE=$(ls -1t ${BUILD_APP}*.AppImage | head -n 1) # find the most recent AppImage
|
||||||
|
if [[ -z "${LATEST_APPIMAGE}" ]]; then
|
||||||
|
>&2 echo "Error: No AppImage found for ${BUILD_APP}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
mv -v "${LATEST_APPIMAGE}" "${APPIMAGE_NAME}"
|
||||||
|
|
||||||
|
FILESIZE=$(stat -c %s "./${APPIMAGE_NAME}")
|
||||||
|
SHA256SUM=$(sha256sum "./${APPIMAGE_NAME}" | awk '{ print $1 }')
|
||||||
|
|
||||||
|
echo "${APPIMAGE_NAME}"
|
||||||
|
echo "${SHA256SUM};${FILESIZE}B"
|
2
dist/72-citron-input.rules
vendored
2
dist/72-citron-input.rules
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# Allow systemd-logind to manage user access to hidraw with this file
|
# Allow systemd-logind to manage user access to hidraw with this file
|
||||||
|
|
2
dist/citron.manifest
vendored
2
dist/citron.manifest
vendored
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2020 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
2
dist/icons/controller/controller.qrc
vendored
2
dist/icons/controller/controller.qrc
vendored
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2020 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
2
dist/icons/overlay/overlay.qrc
vendored
2
dist/icons/overlay/overlay.qrc
vendored
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2021 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2021 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
8
dist/languages/ar.ts
vendored
8
dist/languages/ar.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">موقعنا</span></a>|<a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">رماز المصدر</span></a>|<a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">المساهمون</span></a>|<a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">الرخصة</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">موقعنا</span></a>|<a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">رماز المصدر</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">المساهمون</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">الرخصة</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6074,7 +6074,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii تحرير التطبيق الصغير</translation>
|
<translation>Mii تحرير التطبيق الصغير</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/ca.ts
vendored
8
dist/languages/ca.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Pàgina web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Codi Font</span></a>|<a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contribuïdors</span></a>|<a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Llicència</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Pàgina web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Codi Font</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contribuïdors</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Llicència</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -407,7 +407,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6111,7 +6111,7 @@ Si us plau, utilitzi aquesta funció només per a instal·lar actualitzacions i
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/cs.ts
vendored
8
dist/languages/cs.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Webové stránky</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Zdrojový kód</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Přispěvatelé</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licence</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Webové stránky</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Zdrojový kód</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Přispěvatelé</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licence</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -407,7 +407,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6095,7 +6095,7 @@ Tuto funkci prosím používejte pouze k instalaci aktualizací a DLC.</translat
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/da.ts
vendored
8
dist/languages/da.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/">Netsted<span style=" text-decoration: underline; color:#039be5;"></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Kildekode</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bidragsydere</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licens</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/">Netsted<span style=" text-decoration: underline; color:#039be5;"></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Kildekode</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bidragsydere</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licens</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Dette vil bandlyse både vedkommendes forum-brugernavn og IP-adresse.</translati
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6101,7 +6101,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/de.ts
vendored
8
dist/languages/de.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Webseite</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Quellcode</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Mitwirkende</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Lizenz</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Webseite</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Quellcode</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Mitwirkende</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Lizenz</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -408,7 +408,7 @@ Dies würde deren Forum-Benutzernamen und deren IP-Adresse sperren.</translation
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6121,7 +6121,7 @@ Bitte nutze diese Funktion nur zum Installieren von Updates und DLC.</translatio
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii-Edit-Applet</translation>
|
<translation>Mii-Edit-Applet</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/el.ts
vendored
8
dist/languages/el.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Ιστοσελίδα</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Πηγαίος Κώδικας</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Συνεργάτες</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"></span>Άδεια</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Ιστοσελίδα</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Πηγαίος Κώδικας</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Συνεργάτες</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"></span>Άδεια</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6097,7 +6097,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/es.ts
vendored
8
dist/languages/es.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Página web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Código fuente</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contribuidores</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licencia</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Página web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Código fuente</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contribuidores</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licencia</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Esto banearía su nombre del foro y su dirección IP.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Editor de Mii</translation>
|
<translation>Editor de Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6167,7 +6167,7 @@ Por favor, utiliza esta función sólo para instalar actualizaciones y DLCs.</tr
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Applet de Editor de Mii</translation>
|
<translation>Applet de Editor de Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
4
dist/languages/fi.ts
vendored
4
dist/languages/fi.ts
vendored
|
@ -40,8 +40,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="118"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="118"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Nettisivu</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Lähdekoodi</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Lahjoittajat</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">Lisenssi</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Nettisivu</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Lähdekoodi</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Lahjoittajat</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">Lisenssi</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="134"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="134"/>
|
||||||
|
|
8
dist/languages/fr.ts
vendored
8
dist/languages/fr.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Site Web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Code Source</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributeurs</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licence</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Site Web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Code Source</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributeurs</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licence</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -410,7 +410,7 @@ Cela bannirait à la fois son nom d'utilisateur du forum et son adresse IP.
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Édition de Mii</translation>
|
<translation>Édition de Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6160,7 +6160,7 @@ Veuillez n'utiliser cette fonctionnalité que pour installer des mises à j
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Applet de l'éditeur Mii</translation>
|
<translation>Applet de l'éditeur Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/hu.ts
vendored
8
dist/languages/hu.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Weboldal</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Forráskód</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Közreműködők</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licensz</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Weboldal</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Forráskód</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Közreműködők</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licensz</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Ez kitiltaná a fórum felhasználóneve és az IP címe alapján.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Mii szerkesztés</translation>
|
<translation>Mii szerkesztés</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6134,7 +6134,7 @@ Kérjük, csak frissítések és DLC-k telepítéséhez használd ezt a funkció
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii szerkesztő applet</translation>
|
<translation>Mii szerkesztő applet</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/id.ts
vendored
8
dist/languages/id.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Situs web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Kode Sumber</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Kontributor</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Lisensi</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Situs web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Kode Sumber</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Kontributor</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Lisensi</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Ini akan melarang nama pengguna forum mereka dan alamat IP mereka.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Ubah Mii</translation>
|
<translation>Ubah Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6154,7 +6154,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/it.ts
vendored
8
dist/languages/it.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Sito web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Codice sorgente</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributori</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licenza</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Sito web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Codice sorgente</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributori</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licenza</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Questo bannerà sia il suo nome utente del forum che il suo indirizzo IP.</trans
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6130,7 +6130,7 @@ Configurazione &gt; Web.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Editor dei Mii</translation>
|
<translation>Editor dei Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/ja_JP.ts
vendored
8
dist/languages/ja_JP.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">ウェブサイト</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">ソースコード</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">貢献者</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">ライセンス</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">ウェブサイト</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">ソースコード</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">貢献者</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">ライセンス</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6116,7 +6116,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii 編集アプレット</translation>
|
<translation>Mii 編集アプレット</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/ko_KR.ts
vendored
8
dist/languages/ko_KR.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">웹사이트</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">소스 코드</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">기여자</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">라이센스</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">웹사이트</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">소스 코드</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">기여자</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">라이센스</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6115,7 +6115,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/nb.ts
vendored
8
dist/languages/nb.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Nettside</span></a>|<a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Kildekode</span></a>|<a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bidragsytere</span></a>|<a href="https://github.com/citron-emu/citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">Lisens</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Nettside</span></a>|<a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Kildekode</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bidragsytere</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">Lisens</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Dette vil bannlyse både deres forum brukernavn og deres IP adresse.</translatio
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6120,7 +6120,7 @@ Bruk kun denne funksjonen til å installere oppdateringer og DLC.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/nl.ts
vendored
8
dist/languages/nl.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Broncode</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bijdragers</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licentie</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Broncode</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bijdragers</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licentie</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Dit zou zowel hun forum gebruikersnaam als hun IP-adres verbannen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6108,7 +6108,7 @@ Gebruik deze functie alleen om updates en DLC te installeren.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/pl.ts
vendored
8
dist/languages/pl.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Strona</span></a>I<a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Kod Źródłowy</span></a>I<a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Kontrybutorzy</span></a>I<a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licencja</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Strona</span></a>I<a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Kod Źródłowy</span></a>I<a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Kontrybutorzy</span></a>I<a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licencja</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ To zbanuje jego/jej nick na forum, oraz jego/jej adres IP.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6111,7 +6111,7 @@ Proszę, używaj tej funkcji tylko do instalowania łatek i DLC.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/pt_BR.ts
vendored
8
dist/languages/pt_BR.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Site</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Código-fonte</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Colaboradores</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licença</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Site</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Código-fonte</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Colaboradores</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licença</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Isto banirá tanto o nome de usuário do fórum como o endereço IP.</translatio
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Editar Mii</translation>
|
<translation>Editar Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6169,7 +6169,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLCs.</transla
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Miniaplicativo Editor de Mii</translation>
|
<translation>Miniaplicativo Editor de Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/pt_PT.ts
vendored
8
dist/languages/pt_PT.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation>Site | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Código fonte | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contribuidores</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licença</span></a></p></body></html></translation>
|
<translation>Site | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Código fonte | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contribuidores</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licença</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Isto banirá tanto o nome de usuário do fórum como o endereço IP.</translatio
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Editar Mii</translation>
|
<translation>Editar Mii</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6152,7 +6152,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLC.</translat
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Applet Editor de Miis</translation>
|
<translation>Applet Editor de Miis</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
10
dist/languages/ru_RU.ts
vendored
10
dist/languages/ru_RU.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Веб-сайт</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Исходный код</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Контрибьюторы</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Лицензия</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Веб-сайт</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Исходный код</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Контрибьюторы</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Лицензия</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Mii редактор</translation>
|
<translation>Mii редактор</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii Edit Applet</translation>
|
<translation>Mii Editor Applet</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4452"/>
|
<location filename="../../src/citron/main.cpp" line="4452"/>
|
||||||
|
|
8
dist/languages/sv.ts
vendored
8
dist/languages/sv.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Hemsida</span></a>I<a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Källkod</span></a>I<a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bidragsgivare</span></a>I<a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licens</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Hemsida</span></a>I<a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Källkod</span></a>I<a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Bidragsgivare</span></a>I<a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Licens</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Detta kommer bannlysa både dennes användarnamn på forum samt IP-adress.</tran
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6090,7 +6090,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/tr_TR.ts
vendored
8
dist/languages/tr_TR.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a>|<a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Kaynak Kodu</span></a>|<a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Katkıda Bulunanlar</span></a>|<a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Lisans</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a>|<a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Kaynak Kodu</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Katkıda Bulunanlar</span></a>|<a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Lisans</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Bu işlem onların hem forum kullanıcı adını hem de IP adresini banlar.</tra
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6112,7 +6112,7 @@ Lütfen bu özelliği sadece güncelleme ve DLC yüklemek için kullanın.</tran
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/uk.ts
vendored
8
dist/languages/uk.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Веб-сайт</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Першокод</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Вкладники</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Ліцензія</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Веб-сайт</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Першокод</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Вкладники</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Ліцензія</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6124,7 +6124,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/vi.ts
vendored
8
dist/languages/vi.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Trang web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Mã nguồn</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Người đóng góp</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Giấy phép</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Trang web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Mã nguồn</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Người đóng góp</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">Giấy phép</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ Việc này sẽ ban tên người dùng trên diễn đàn và IP của họ lu
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6117,7 +6117,7 @@ Vui lòng, chỉ sử dụng tính năng này để cài đặt các bản cập
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
8
dist/languages/vi_VN.ts
vendored
8
dist/languages/vi_VN.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Trang web</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Mã nguồn</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Đóng góp</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">Giấy phép</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Trang web</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Mã nguồn</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Đóng góp</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/license.txt"><span style=" text-decoration: underline; color:#039be5;">Giấy phép</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,7 +409,7 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
@ -6117,7 +6117,7 @@ Vui lòng, chỉ sử dụng tính năng này để cài các bản cập nhật
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation type="unfinished"/>
|
<translation type="unfinished"/>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
12
dist/languages/zh_CN.ts
vendored
12
dist/languages/zh_CN.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">官方网站</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">源代码</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">贡献者</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">许可证</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">官方网站</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">源代码</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">贡献者</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">许可证</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,8 +409,8 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Mii Edit</translation>
|
<translation>Mii Editor</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="38"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="38"/>
|
||||||
|
@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii Edit 小程序</translation>
|
<translation>Mii Editor 小程序</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4452"/>
|
<location filename="../../src/citron/main.cpp" line="4452"/>
|
||||||
|
|
10
dist/languages/zh_TW.ts
vendored
10
dist/languages/zh_TW.ts
vendored
|
@ -35,8 +35,8 @@ p, li { white-space: pre-wrap; }
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="130"/>
|
||||||
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
<source><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">Website</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">Source Code</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">Contributors</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">License</span></a></p></body></html></source>
|
||||||
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">官網</span></a> | <a href="https://github.com/citron-emu"><span style=" text-decoration: underline; color:#039be5;">原始碼</span></a> | <a href="https://github.com/citron-emu/citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">貢獻者</span></a> | <a href="https://github.com/citron-emu/citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">許可證</span></a></p></body></html></translation>
|
<translation><html><head/><body><p><a href="https://citron-emu.org/"><span style=" text-decoration: underline; color:#039be5;">官網</span></a> | <a href="https://git.citron-emu.org"><span style=" text-decoration: underline; color:#039be5;">原始碼</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/graphs/contributors"><span style=" text-decoration: underline; color:#039be5;">貢獻者</span></a> | <a href="https://git.citron-emu.org/Citron/Citron/blob/master/LICENSE.txt"><span style=" text-decoration: underline; color:#039be5;">許可證</span></a></p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
<location filename="../../src/citron/aboutdialog.ui" line="146"/>
|
||||||
|
@ -409,8 +409,8 @@ This would ban both their forum username and their IP address.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/>
|
||||||
<source>Mii Edit</source>
|
<source>Mii Editor</source>
|
||||||
<translation>Mii Edit</translation>
|
<translation>Mii Editor</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/configuration/shared_translation.cpp" line="38"/>
|
<location filename="../../src/citron/configuration/shared_translation.cpp" line="38"/>
|
||||||
|
@ -6161,7 +6161,7 @@ Please, only use this feature to install updates and DLC.</source>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/citron/main.cpp" line="4451"/>
|
<location filename="../../src/citron/main.cpp" line="4451"/>
|
||||||
<source>Mii Edit Applet</source>
|
<source>Mii Editor Applet</source>
|
||||||
<translation>Mii 編輯器小程式</translation>
|
<translation>Mii 編輯器小程式</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
|
|
2
dist/org.citron_emu.citron.desktop
vendored
2
dist/org.citron_emu.citron.desktop
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
|
|
6
dist/org.citron_emu.citron.metainfo.xml
vendored
6
dist/org.citron_emu.citron.metainfo.xml
vendored
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2021 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2021 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: CC0-1.0
|
SPDX-License-Identifier: CC0-1.0
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
@ -25,13 +25,13 @@ SPDX-License-Identifier: CC0-1.0
|
||||||
<keyword>emulator</keyword>
|
<keyword>emulator</keyword>
|
||||||
</keywords>
|
</keywords>
|
||||||
<url type="homepage">https://citron-emu.org/</url>
|
<url type="homepage">https://citron-emu.org/</url>
|
||||||
<url type="bugtracker">https://github.com/citron-emu/citron/issues</url>
|
<url type="bugtracker">https://git.citron-emu.org/Citron/Citron/issues</url>
|
||||||
<url type="faq">https://citron-emu.org/wiki/faq/</url>
|
<url type="faq">https://citron-emu.org/wiki/faq/</url>
|
||||||
<url type="help">https://citron-emu.org/wiki/home/</url>
|
<url type="help">https://citron-emu.org/wiki/home/</url>
|
||||||
<url type="donation">https://citron-emu.org/donate/</url>
|
<url type="donation">https://citron-emu.org/donate/</url>
|
||||||
<url type="translate">https://www.transifex.com/projects/p/citron</url>
|
<url type="translate">https://www.transifex.com/projects/p/citron</url>
|
||||||
<url type="contact">https://community.citra-emu.org/</url>
|
<url type="contact">https://community.citra-emu.org/</url>
|
||||||
<url type="vcs-browser">https://github.com/citron-emu/citron</url>
|
<url type="vcs-browser">https://git.citron-emu.org/Citron/Citron</url>
|
||||||
<url type="contribute">https://citron-emu.org/wiki/contributing/</url>
|
<url type="contribute">https://citron-emu.org/wiki/contributing/</url>
|
||||||
<launchable type="desktop-id">org.citron_emu.citron.desktop</launchable>
|
<launchable type="desktop-id">org.citron_emu.citron.desktop</launchable>
|
||||||
<provides>
|
<provides>
|
||||||
|
|
2
dist/org.citron_emu.citron.xml
vendored
2
dist/org.citron_emu.citron.xml
vendored
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
2
dist/qt_themes/colorful/style.qrc
vendored
2
dist/qt_themes/colorful/style.qrc
vendored
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2019 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
2
dist/qt_themes/colorful_dark/style.qrc
vendored
2
dist/qt_themes/colorful_dark/style.qrc
vendored
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2019 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2020 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
2
dist/qt_themes/default/default.qrc
vendored
2
dist/qt_themes/default/default.qrc
vendored
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
BIN
dist/qt_themes/default/icons/256x256/citron.png
vendored
BIN
dist/qt_themes/default/icons/256x256/citron.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 12 KiB |
2
dist/qt_themes/default_dark/style.qrc
vendored
2
dist/qt_themes/default_dark/style.qrc
vendored
|
@ -1,5 +1,5 @@
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2022 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-2.0-or-later
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
-->
|
-->
|
||||||
<RCC>
|
<RCC>
|
||||||
|
|
2
dist/qt_themes/default_dark/style.qss
vendored
2
dist/qt_themes/default_dark/style.qss
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
* SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
*/
|
*/
|
||||||
QAbstractSpinBox {
|
QAbstractSpinBox {
|
||||||
|
|
2
externals/CMakeLists.txt
vendored
2
externals/CMakeLists.txt
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2016 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2016 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# Dynarmic has cmake_minimum_required(3.12) and we may want to override
|
# Dynarmic has cmake_minimum_required(3.12) and we may want to override
|
||||||
|
|
2
externals/Vulkan-Headers
vendored
2
externals/Vulkan-Headers
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit d4a196d8c84e032d27f999adcea3075517c1c97f
|
Subproject commit cacef3039d277c448c89336290ec3937270b0996
|
2
externals/Vulkan-Utility-Libraries
vendored
2
externals/Vulkan-Utility-Libraries
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 5a88b6042edb8f03eefc8de73bd73a899989373f
|
Subproject commit bc3a4d9fd9b46729651a3cec4f5226f6272b8684
|
2
externals/VulkanMemoryAllocator
vendored
2
externals/VulkanMemoryAllocator
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 3bab6924988e5f19bf36586a496156cf72f70d9f
|
Subproject commit c788c52156f3ef7bc7ab769cb03c110a53ac8fcb
|
2
externals/cpp-httplib
vendored
2
externals/cpp-httplib
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit a609330e4c6374f741d3b369269f7848255e1954
|
Subproject commit 39a64fb4e7e42216f14f0ec51ccc5fa85e651432
|
2
externals/cpp-jwt
vendored
2
externals/cpp-jwt
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 10ef5735d842b31025f1257ae78899f50a40fb14
|
Subproject commit 4a970bc302d671476122cbc6b43cc89fbf4a96ec
|
2
externals/enet
vendored
2
externals/enet
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 39a72ab1990014eb399cee9d538fd529df99c6a0
|
Subproject commit 657eaf97d9d335917c58484a4a4b5e03838ebd8e
|
2
externals/ffmpeg/CMakeLists.txt
vendored
2
externals/ffmpeg/CMakeLists.txt
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2021 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2021 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
if (NOT WIN32 AND NOT ANDROID)
|
if (NOT WIN32 AND NOT ANDROID)
|
||||||
|
|
2
externals/ffmpeg/ffmpeg
vendored
2
externals/ffmpeg/ffmpeg
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 9c1294eaddb88cb0e044c675ccae059a85fc9c6c
|
Subproject commit 99e2af4e7837ca09b97d93a562dc12947179fc48
|
2
externals/libadrenotools
vendored
2
externals/libadrenotools
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 5cd3f5c5ceea6d9e9d435ccdd922d9b99e55d10b
|
Subproject commit 8fae8ce254dfc1344527e05301e43f37dea2df80
|
2
externals/libusb/CMakeLists.txt
vendored
2
externals/libusb/CMakeLists.txt
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2020 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
if (MINGW OR (${CMAKE_SYSTEM_NAME} MATCHES "Linux") OR APPLE)
|
if (MINGW OR (${CMAKE_SYSTEM_NAME} MATCHES "Linux") OR APPLE)
|
||||||
|
|
2
externals/libusb/config.h.in
vendored
2
externals/libusb/config.h.in
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2020 yuzu Emulator Project & 2025 citron Homebrew Project
|
* SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
2
externals/libusb/libusb
vendored
2
externals/libusb/libusb
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit c060e9ce30ac2e3ffb49d94209c4dae77b6642f7
|
Subproject commit de38189e8014fa393f4d8c1d9d3fdf5e2a95899d
|
2
externals/nx_tzdb/CMakeLists.txt
vendored
2
externals/nx_tzdb/CMakeLists.txt
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
set(NX_TZDB_INCLUDE_DIR "${CMAKE_CURRENT_BINARY_DIR}/include")
|
set(NX_TZDB_INCLUDE_DIR "${CMAKE_CURRENT_BINARY_DIR}/include")
|
||||||
|
|
2
externals/nx_tzdb/ListFilesInDirectory.cmake
vendored
2
externals/nx_tzdb/ListFilesInDirectory.cmake
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# CMake does not have a way to list the files in a specific directory,
|
# CMake does not have a way to list the files in a specific directory,
|
||||||
|
|
2
externals/nx_tzdb/NxTzdbCreateHeader.cmake
vendored
2
externals/nx_tzdb/NxTzdbCreateHeader.cmake
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
set(ZONE_PATH ${CMAKE_ARGV3})
|
set(ZONE_PATH ${CMAKE_ARGV3})
|
||||||
|
|
2
externals/nx_tzdb/include/nx_tzdb.h
vendored
2
externals/nx_tzdb/include/nx_tzdb.h
vendored
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
2
externals/nx_tzdb/tzdb_template.h.in
vendored
2
externals/nx_tzdb/tzdb_template.h.in
vendored
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
2
externals/oaknut
vendored
2
externals/oaknut
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 9d091109deb445bc6e9289c6195a282b7c993d49
|
Subproject commit 94c726ce0338b054eb8cb5ea91de8fe6c19f4392
|
2
externals/opus
vendored
2
externals/opus
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 101a71e03bbf860aaafb7090a0e440675cb27660
|
Subproject commit 734aed05d09af3d2690f8cb5aafa97f052746daf
|
2
externals/simpleini
vendored
2
externals/simpleini
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 382ddbb4b92c0b26aa1b32cefba2002119a5b1f2
|
Subproject commit 6048871ea9ee0ec24be5bd099d161a10567d7dc2
|
2
externals/tz/tz/tz.cpp
vendored
2
externals/tz/tz/tz.cpp
vendored
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-FileCopyrightText: 1996 Arthur David Olson
|
// SPDX-FileCopyrightText: 1996 Arthur David Olson
|
||||||
// SPDX-License-Identifier: BSD-2-Clause
|
// SPDX-License-Identifier: BSD-2-Clause
|
||||||
|
|
||||||
|
|
2
externals/tz/tz/tz.h
vendored
2
externals/tz/tz/tz.h
vendored
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-FileCopyrightText: 1996 Arthur David Olson
|
// SPDX-FileCopyrightText: 1996 Arthur David Olson
|
||||||
// SPDX-License-Identifier: BSD-2-Clause
|
// SPDX-License-Identifier: BSD-2-Clause
|
||||||
|
|
||||||
|
|
2
externals/vcpkg
vendored
2
externals/vcpkg
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit a42af01b72c28a8e1d7b48107b33e4f286a55ef6
|
Subproject commit e40d24cb149dd138e7c11d490834fa2c81298b32
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# SPDX-FileCopyrightText: 2015 Citra Emulator Project & 2025 Citron Homebrew Project
|
# SPDX-FileCopyrightText: 2015 Citra Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# Enforce citron's whitespace policy
|
# Enforce citron's whitespace policy
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# Enable modules to include each other's files
|
# Enable modules to include each other's files
|
||||||
|
|
2
src/android/.gitignore
vendored
2
src/android/.gitignore
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
# Built application files
|
# Built application files
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
|
// SPDX-FileCopyrightText: 2025 citron Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
|
@ -27,20 +28,20 @@ val autoVersion = (((System.currentTimeMillis() / 1000) - 1451606400) / 10).toIn
|
||||||
android {
|
android {
|
||||||
namespace = "org.citron.citron_emu"
|
namespace = "org.citron.citron_emu"
|
||||||
|
|
||||||
compileSdkVersion = "android-34"
|
compileSdkVersion = "android-35"
|
||||||
ndkVersion = "26.1.10909125"
|
ndkVersion = "29.0.13113456 rc1" // "26.1.10909125"
|
||||||
|
|
||||||
buildFeatures {
|
buildFeatures {
|
||||||
viewBinding = true
|
viewBinding = true
|
||||||
}
|
}
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility = JavaVersion.VERSION_17
|
sourceCompatibility = JavaVersion.VERSION_21
|
||||||
targetCompatibility = JavaVersion.VERSION_17
|
targetCompatibility = JavaVersion.VERSION_21
|
||||||
}
|
}
|
||||||
|
|
||||||
kotlinOptions {
|
kotlinOptions {
|
||||||
jvmTarget = "17"
|
jvmTarget = "21"
|
||||||
}
|
}
|
||||||
|
|
||||||
packaging {
|
packaging {
|
||||||
|
@ -54,9 +55,10 @@ android {
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
// TODO If this is ever modified, change application_id in strings.xml
|
// TODO If this is ever modified, change application_id in strings.xml
|
||||||
applicationId = "org.citron.citron_emu"
|
applicationId = "com.antutu.ABenchMark"
|
||||||
minSdk = 30
|
minSdk = 30
|
||||||
targetSdk = 34
|
//noinspection EditedTargetSdkVersion
|
||||||
|
targetSdk = 35
|
||||||
versionName = getGitVersion()
|
versionName = getGitVersion()
|
||||||
|
|
||||||
versionCode = if (System.getenv("AUTO_VERSIONED") == "true") {
|
versionCode = if (System.getenv("AUTO_VERSIONED") == "true") {
|
||||||
|
@ -103,11 +105,14 @@ android {
|
||||||
signingConfigs.getByName("default")
|
signingConfigs.getByName("default")
|
||||||
}
|
}
|
||||||
|
|
||||||
resValue("string", "app_name_suffixed", "citron")
|
resValue("string", "app_name_suffixed", "Citron")
|
||||||
|
isDefault = true
|
||||||
isMinifyEnabled = true
|
isMinifyEnabled = true
|
||||||
|
isShrinkResources = true
|
||||||
|
isJniDebuggable = false
|
||||||
isDebuggable = false
|
isDebuggable = false
|
||||||
proguardFiles(
|
proguardFiles(
|
||||||
getDefaultProguardFile("proguard-android.txt"),
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||||||
"proguard-rules.pro"
|
"proguard-rules.pro"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -115,13 +120,11 @@ android {
|
||||||
// builds a release build that doesn't need signing
|
// builds a release build that doesn't need signing
|
||||||
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
|
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
|
||||||
register("relWithDebInfo") {
|
register("relWithDebInfo") {
|
||||||
isDefault = true
|
resValue("string", "app_name_suffixed", "Citron Debug Release")
|
||||||
resValue("string", "app_name_suffixed", "citron Debug Release")
|
|
||||||
signingConfig = signingConfigs.getByName("default")
|
signingConfig = signingConfigs.getByName("default")
|
||||||
isMinifyEnabled = true
|
|
||||||
isDebuggable = true
|
isDebuggable = true
|
||||||
proguardFiles(
|
proguardFiles(
|
||||||
getDefaultProguardFile("proguard-android.txt"),
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||||||
"proguard-rules.pro"
|
"proguard-rules.pro"
|
||||||
)
|
)
|
||||||
versionNameSuffix = "-relWithDebInfo"
|
versionNameSuffix = "-relWithDebInfo"
|
||||||
|
@ -133,7 +136,7 @@ android {
|
||||||
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
|
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
|
||||||
debug {
|
debug {
|
||||||
signingConfig = signingConfigs.getByName("default")
|
signingConfig = signingConfigs.getByName("default")
|
||||||
resValue("string", "app_name_suffixed", "citron Debug")
|
resValue("string", "app_name_suffixed", "Citron Debug")
|
||||||
isDebuggable = true
|
isDebuggable = true
|
||||||
isJniDebuggable = true
|
isJniDebuggable = true
|
||||||
versionNameSuffix = "-debug"
|
versionNameSuffix = "-debug"
|
||||||
|
@ -146,7 +149,7 @@ android {
|
||||||
create("mainline") {
|
create("mainline") {
|
||||||
isDefault = true
|
isDefault = true
|
||||||
dimension = "version"
|
dimension = "version"
|
||||||
buildConfigField("Boolean", "PREMIUM", "false")
|
buildConfigField("Boolean", "PREMIUM", "true")
|
||||||
}
|
}
|
||||||
|
|
||||||
create("ea") {
|
create("ea") {
|
||||||
|
@ -158,7 +161,7 @@ android {
|
||||||
|
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
cmake {
|
cmake {
|
||||||
version = "3.22.1"
|
version = "3.31.6"
|
||||||
path = file("../../../CMakeLists.txt")
|
path = file("../../../CMakeLists.txt")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -175,10 +178,11 @@ android {
|
||||||
"-DCITRON_USE_BUNDLED_VCPKG=ON",
|
"-DCITRON_USE_BUNDLED_VCPKG=ON",
|
||||||
"-DCITRON_USE_BUNDLED_FFMPEG=ON",
|
"-DCITRON_USE_BUNDLED_FFMPEG=ON",
|
||||||
"-DCITRON_ENABLE_LTO=ON",
|
"-DCITRON_ENABLE_LTO=ON",
|
||||||
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON"
|
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
|
||||||
|
"-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
|
||||||
)
|
)
|
||||||
|
|
||||||
abiFilters("arm64-v8a", "x86_64")
|
abiFilters("arm64-v8a") // , "x86_64")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -191,7 +195,7 @@ tasks.create<Delete>("ktlintReset") {
|
||||||
val showFormatHelp = {
|
val showFormatHelp = {
|
||||||
logger.lifecycle(
|
logger.lifecycle(
|
||||||
"If this check fails, please try running \"gradlew ktlintFormat\" for automatic " +
|
"If this check fails, please try running \"gradlew ktlintFormat\" for automatic " +
|
||||||
"codestyle fixes"
|
"codestyle fixes"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
tasks.getByPath("ktlintKotlinScriptCheck").doFirst { showFormatHelp.invoke() }
|
tasks.getByPath("ktlintKotlinScriptCheck").doFirst { showFormatHelp.invoke() }
|
||||||
|
@ -236,7 +240,6 @@ dependencies {
|
||||||
implementation("io.coil-kt:coil:2.2.2")
|
implementation("io.coil-kt:coil:2.2.2")
|
||||||
implementation("androidx.core:core-splashscreen:1.0.1")
|
implementation("androidx.core:core-splashscreen:1.0.1")
|
||||||
implementation("androidx.window:window:1.2.0-beta03")
|
implementation("androidx.window:window:1.2.0-beta03")
|
||||||
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
|
|
||||||
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
||||||
implementation("androidx.navigation:navigation-fragment-ktx:2.7.4")
|
implementation("androidx.navigation:navigation-fragment-ktx:2.7.4")
|
||||||
implementation("androidx.navigation:navigation-ui-ktx:2.7.4")
|
implementation("androidx.navigation:navigation-ui-ktx:2.7.4")
|
||||||
|
|
9
src/android/app/proguard-rules.pro
vendored
9
src/android/app/proguard-rules.pro
vendored
|
@ -1,4 +1,4 @@
|
||||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
# To get usable stack traces
|
# To get usable stack traces
|
||||||
|
@ -22,3 +22,10 @@
|
||||||
-dontwarn java.beans.Introspector
|
-dontwarn java.beans.Introspector
|
||||||
-dontwarn java.beans.VetoableChangeListener
|
-dontwarn java.beans.VetoableChangeListener
|
||||||
-dontwarn java.beans.VetoableChangeSupport
|
-dontwarn java.beans.VetoableChangeSupport
|
||||||
|
|
||||||
|
# LicenseVerifier protection
|
||||||
|
-keep class org.citron.citron_emu.utils.LicenseVerifier { *; }
|
||||||
|
-keepnames class org.citron.citron_emu.utils.LicenseVerifier
|
||||||
|
-dontskipnonpubliclibraryclasses
|
||||||
|
-dontoptimize
|
||||||
|
-dontpreverify
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
SPDX-License-Identifier: GPL-3.0-or-later
|
SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.NFC" />
|
<uses-permission android:name="android.permission.NFC" />
|
||||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||||
<uses-permission android:name="android.permission.VIBRATE" />
|
<uses-permission android:name="android.permission.VIBRATE" />
|
||||||
|
|
||||||
<application
|
<application
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
package org.citron.citron_emu
|
package org.citron.citron_emu
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
package org.citron.citron_emu
|
package org.citron.citron_emu
|
||||||
|
@ -21,6 +21,8 @@ import org.citron.citron_emu.utils.Log
|
||||||
import org.citron.citron_emu.model.InstallResult
|
import org.citron.citron_emu.model.InstallResult
|
||||||
import org.citron.citron_emu.model.Patch
|
import org.citron.citron_emu.model.Patch
|
||||||
import org.citron.citron_emu.model.GameVerificationResult
|
import org.citron.citron_emu.model.GameVerificationResult
|
||||||
|
import org.citron.citron_emu.network.NetPlayManager
|
||||||
|
import java.net.NetworkInterface
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class which contains methods that interact
|
* Class which contains methods that interact
|
||||||
|
@ -242,6 +244,27 @@ object NativeLibrary {
|
||||||
return coreErrorAlertResult
|
return coreErrorAlertResult
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Keep
|
||||||
|
@JvmStatic
|
||||||
|
fun addNetPlayMessage(type: Int, message: String) {
|
||||||
|
val emulationActivity = sEmulationActivity.get()
|
||||||
|
if (emulationActivity != null) {
|
||||||
|
emulationActivity.addNetPlayMessages(type, message)
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
NetPlayManager.addNetPlayMessage(type, message)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Keep
|
||||||
|
@JvmStatic
|
||||||
|
fun clearChat() {
|
||||||
|
NetPlayManager.clearChat()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
external fun netPlayInit()
|
||||||
|
|
||||||
@Keep
|
@Keep
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun exitEmulationActivity(resultCode: Int) {
|
fun exitEmulationActivity(resultCode: Int) {
|
||||||
|
@ -459,4 +482,29 @@ object NativeLibrary {
|
||||||
* Checks if all necessary keys are present for decryption
|
* Checks if all necessary keys are present for decryption
|
||||||
*/
|
*/
|
||||||
external fun areKeysPresent(): Boolean
|
external fun areKeysPresent(): Boolean
|
||||||
|
|
||||||
|
fun getNetworkInterfaces(): Array<String> {
|
||||||
|
val interfaceList = mutableListOf<String>()
|
||||||
|
try {
|
||||||
|
NetworkInterface.getNetworkInterfaces()?.toList()?.forEach { iface ->
|
||||||
|
if (iface.isUp && !iface.isLoopback) {
|
||||||
|
iface.inetAddresses.toList()
|
||||||
|
.filterNot { it.isLoopbackAddress }
|
||||||
|
.forEach { addr ->
|
||||||
|
interfaceList.add("${iface.name};${addr.hostAddress}")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (e: Exception) {
|
||||||
|
Log.error("[NativeLibrary] Failed to enumerate network interfaces: ${e.message}")
|
||||||
|
}
|
||||||
|
|
||||||
|
// Always ensure we have at least a loopback interface
|
||||||
|
if (interfaceList.isEmpty()) {
|
||||||
|
Log.warning("[NativeLibrary] No interfaces found, adding loopback fallback")
|
||||||
|
interfaceList.add("lo;127.0.0.1")
|
||||||
|
}
|
||||||
|
|
||||||
|
return interfaceList.toTypedArray()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
package org.citron.citron_emu.activities
|
package org.citron.citron_emu.activities
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
|
import android.app.AlertDialog
|
||||||
import android.app.PendingIntent
|
import android.app.PendingIntent
|
||||||
import android.app.PictureInPictureParams
|
import android.app.PictureInPictureParams
|
||||||
import android.app.RemoteAction
|
import android.app.RemoteAction
|
||||||
|
@ -39,12 +40,14 @@ import org.citron.citron_emu.NativeLibrary
|
||||||
import org.citron.citron_emu.R
|
import org.citron.citron_emu.R
|
||||||
import org.citron.citron_emu.CitronApplication
|
import org.citron.citron_emu.CitronApplication
|
||||||
import org.citron.citron_emu.databinding.ActivityEmulationBinding
|
import org.citron.citron_emu.databinding.ActivityEmulationBinding
|
||||||
|
import org.citron.citron_emu.dialogs.NetPlayDialog
|
||||||
import org.citron.citron_emu.features.input.NativeInput
|
import org.citron.citron_emu.features.input.NativeInput
|
||||||
import org.citron.citron_emu.features.settings.model.BooleanSetting
|
import org.citron.citron_emu.features.settings.model.BooleanSetting
|
||||||
import org.citron.citron_emu.features.settings.model.IntSetting
|
import org.citron.citron_emu.features.settings.model.IntSetting
|
||||||
import org.citron.citron_emu.features.settings.model.Settings
|
import org.citron.citron_emu.features.settings.model.Settings
|
||||||
import org.citron.citron_emu.model.EmulationViewModel
|
import org.citron.citron_emu.model.EmulationViewModel
|
||||||
import org.citron.citron_emu.model.Game
|
import org.citron.citron_emu.model.Game
|
||||||
|
import org.citron.citron_emu.network.NetPlayManager
|
||||||
import org.citron.citron_emu.utils.InputHandler
|
import org.citron.citron_emu.utils.InputHandler
|
||||||
import org.citron.citron_emu.utils.Log
|
import org.citron.citron_emu.utils.Log
|
||||||
import org.citron.citron_emu.utils.MemoryUtil
|
import org.citron.citron_emu.utils.MemoryUtil
|
||||||
|
@ -52,6 +55,7 @@ import org.citron.citron_emu.utils.NativeConfig
|
||||||
import org.citron.citron_emu.utils.NfcReader
|
import org.citron.citron_emu.utils.NfcReader
|
||||||
import org.citron.citron_emu.utils.ParamPackage
|
import org.citron.citron_emu.utils.ParamPackage
|
||||||
import org.citron.citron_emu.utils.ThemeHelper
|
import org.citron.citron_emu.utils.ThemeHelper
|
||||||
|
import org.citron.citron_emu.utils.LicenseVerifier
|
||||||
import java.text.NumberFormat
|
import java.text.NumberFormat
|
||||||
import kotlin.math.roundToInt
|
import kotlin.math.roundToInt
|
||||||
|
|
||||||
|
@ -79,6 +83,22 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
|
||||||
|
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
|
// Check if firmware is available
|
||||||
|
if (!NativeLibrary.isFirmwareAvailable()) {
|
||||||
|
AlertDialog.Builder(this)
|
||||||
|
.setTitle(R.string.firmware_missing_title)
|
||||||
|
.setMessage(R.string.firmware_missing_message)
|
||||||
|
.setPositiveButton(R.string.ok) { _, _ ->
|
||||||
|
finish()
|
||||||
|
}
|
||||||
|
.setCancelable(false)
|
||||||
|
.show()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add license verification at the start
|
||||||
|
LicenseVerifier.verifyLicense(this)
|
||||||
|
|
||||||
InputHandler.updateControllerData()
|
InputHandler.updateControllerData()
|
||||||
val players = NativeConfig.getInputSettings(true)
|
val players = NativeConfig.getInputSettings(true)
|
||||||
var hasConfiguredControllers = false
|
var hasConfiguredControllers = false
|
||||||
|
@ -405,6 +425,16 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
|
||||||
setPictureInPictureParams(pictureInPictureParamsBuilder.build())
|
setPictureInPictureParams(pictureInPictureParamsBuilder.build())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun displayMultiplayerDialog() {
|
||||||
|
val dialog = NetPlayDialog(this)
|
||||||
|
dialog.show()
|
||||||
|
}
|
||||||
|
|
||||||
|
fun addNetPlayMessages(type: Int, msg: String) {
|
||||||
|
NetPlayManager.addNetPlayMessage(type, msg)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private var pictureInPictureReceiver = object : BroadcastReceiver() {
|
private var pictureInPictureReceiver = object : BroadcastReceiver() {
|
||||||
override fun onReceive(context: Context?, intent: Intent) {
|
override fun onReceive(context: Context?, intent: Intent) {
|
||||||
if (intent.action == actionPlay) {
|
if (intent.action == actionPlay) {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
package org.citron.citron_emu.adapters
|
package org.citron.citron_emu.adapters
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project & 2025 citron Homebrew Project
|
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
package org.citron.citron_emu.adapters
|
package org.citron.citron_emu.adapters
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue