eden/tools
crueter 18c11b88a0
[*] Drop MSVC support
To keep this PR description as short as possible, I will save the
ranting about MSVC for the blog post. In short: MSVC has been nothing
but a complete and utter slog to maintain for the *entire* existence of
Eden. CI is an absolute nightmare, it requires *completely* different
compile flags and definitions, has several sets of hacks dedicated to
getting its codegen to cooperate, is a horror story with respect to
dependency management, and is now completely broken and can't launch
games anymore.

Microsoft, you have long overstayed your welcome. And you're not getting
it back ever again. Good riddance.

Signed-off-by: crueter <crueter@eden-emu.dev>
2026-05-06 00:59:49 -04:00
..
cpm [externals] Update dependencies (#3664) 2026-03-08 22:33:51 +01:00
translations [ci] push sources on every master push (#3007) 2025-11-12 04:38:32 +01:00
clang-format.sh [desktop] Port some QtCommon changes from QML branch (#3703) 2026-03-10 05:37:45 +01:00
cpm-fetch-all.sh [cmake, docs, tools] update CPMUtil (#3183) 2025-12-31 17:16:46 +01:00
cpmutil.sh [cmake, tools] update CPMUtil and add support for CPMUtil bundled Qt, module updates, cleanups (#3289) 2026-01-14 19:29:13 +01:00
dtrace-tool.pl [docs, tools] Add 3rd party links, debug and testing guidelines; add extra tools for maintaining strings, rewrite lanczos generator in perl (#2749) 2025-10-20 14:25:03 +02:00
gendynarm.cpp [dynarmic] fix GetDecoderTable() making the compiler nervous due to the big table that gets made into the stack (#3799) 2026-04-01 07:05:42 +02:00
generate_converters.py [tools, hle/kernel] generate condensed version of svc.cpp; move svc_generator.py and generate_converters.py to tools (#2791) 2025-11-07 17:00:53 +01:00
lanczos-gen.pl [docs, tools] Add 3rd party links, debug and testing guidelines; add extra tools for maintaining strings, rewrite lanczos generator in perl (#2749) 2025-10-20 14:25:03 +02:00
llvmpipe-run.sh [tools, cmake] refactor: update/hash check scripts, use tags for some more deps, proper CPMUtil separation (#2666) 2025-10-05 03:04:53 +02:00
optimize-assets.sh [ci, tools] working find-unused-strings, android strings CI (#3036) 2025-11-17 15:52:30 +01:00
README.md [tools, hle/kernel] generate condensed version of svc.cpp; move svc_generator.py and generate_converters.py to tools (#2791) 2025-11-07 17:00:53 +01:00
shellcheck.sh [cmake, tools, docs] Update CPMUtil (#2790) 2025-10-20 03:43:15 +02:00
stale-translations.sh [ci, tools] working find-unused-strings, android strings CI (#3036) 2025-11-17 15:52:30 +01:00
svc_generator.py [hle/kernel] mark invalid SVC paths as unreachable (#3023) 2025-12-04 07:31:30 +01:00
unused-strings.sh [tools, android/res] Remove unused strings, update unused-strings.sh to work on POSIX shells (#2879) 2025-10-29 03:26:09 +01:00
update-icons.sh [dist] New 2026 Saint Patrick's icon; drop named variants (#3617) 2026-02-23 19:54:48 +01:00
VectorDrawable2Svg.py [android] Android 7.0 support (#2654) 2025-10-14 20:47:17 +02:00

Tools

Tools for Eden and other subprojects.

Third-Party

Eden

  • generate_converters.py: Generates converters for given formats of textures (C++ helper).
  • svc_generator.py: Generates the files src/core/hle/kernel/svc.cpp and src/core/hle/kernel/svc.h based off prototypes.
  • shellcheck.sh: Ensure POSIX compliance (and syntax sanity) for all tools in this directory and subdirectories.
  • llvmpipe-run.sh: Sets environment variables needed to run any command (or Eden) with llvmpipe.
  • optimize-assets.sh: Optimizes PNG assets with OptiPng.
  • update-cpm.sh: Updates CPM.cmake to the latest version.
  • update-icons.sh: Rebuild all icons (macOS, Windows, bitmaps) based on the master SVG file (dist/dev.eden_emu.eden.svg)
    • Also optimizes the master SVG
    • Requires: png2icns (libicns), ImageMagick, svgo
  • dtrace-tool.sh
  • lanczos-gen.pl: Generates constants for the Lanczos filter.
  • clang-format.sh: Runs clang-format on the entire codebase.
    • Requires: clang
  • find-unused-strings.sh: Find any unused strings in the Android app (XML -> Kotlin).

Android

It's recommended to run these scritps after almost any Android change, as they are relatively fast and important both for APK bloat and CI.

  • unused-strings.sh: Finds unused strings in strings.xml files.
  • stale-translations.sh: Finds translated strings that aren't present in the source strings.xml file.

Translations