eden/tools
lizzie 8f6e0aa2cb
[tools, hle/kernel] generate condensed version of svc.cpp; move svc_generator.py and generate_converters.py to tools (#2791)
Eventually we'd want cmake to do the build for us (as a build step) instead of having git be polluted with commits to update the autogenerated file...

Signed-off-by: lizzie <lizzie@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2791
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-11-07 17:00:53 +01:00
..
cpm [cmake] ffmpeg: use static on MSVC (#2946) 2025-11-04 07:05:52 +01:00
translations [meta] add missing license headers for some .cmake/.sh (#2878) 2025-10-28 23:54:45 +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
VectorDrawable2Svg.py [android] Android 7.0 support (#2654) 2025-10-14 20:47:17 +02:00
clang-format.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
cpm-fetch-all.sh [license-header] refactor: excludes, updating, better logic (#2780) 2025-10-20 02:59:43 +02: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
dtrace-tool.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
find-unused-strings.sh [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
generate-legacy-icons.sh [meta] add missing license headers for some .cmake/.sh (#2878) 2025-10-28 23:54:45 +01: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 [tools] fix optimize-assets not being multithreaded due to -print0 (#2887) 2025-10-29 13:09:05 +01:00
shellcheck.sh [cmake, tools, docs] Update CPMUtil (#2790) 2025-10-20 03:43:15 +02:00
stale-translations.sh [android, tools] remove unused XML strings; add script to find unused XML strings (#2777) 2025-10-19 04:57:47 +02:00
svc_generator.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
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-cpm.sh [cmake, tools, docs] Update CPMUtil (#2790) 2025-10-20 03:43:15 +02:00
update-icons.sh [dist] Halloween icons (#2886) 2025-10-29 13:17:50 +01:00

README.md

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