this brings images suited to work OOB for RPi3/4/5 with CRT TV sets. it
comes with preconfigured shaders, core options, readable font, ...
see https://www.lakka.tv/articles/2024/05/02/rpi-composite/
- add new RPiX-Composite devices under RPi project
- RPi3/4-Composite use own kernel config
- RPi5-Composite uses kernel config of RPi5
- remove linux.arm.conf broken symlinks from some devices
- move VULKAN enable to device options
- add splash screens for 480/576 height
- glibc: match kernel version for RPi3/4 (using 5.10.y with "fake" 240p
patch)
- adjust DEVICE conditions to only match first 4 characters / first 4
characters + wildcard (various places)
- add specific assets, configs, shaders in retroarch package
- retroarch: adjust default configuration
- linux: add 5.10.y kernel (used by RPi3/4-Composite, see above)
- linux: add patches for 5.10.y kernel
- mkimage: add additional information into cmdline.txt and
retroarch-overrides.txt
- firstboot.sh: add output (logged in fs-resize.log)
- firstboot.sh: prepend processed overrides with hash
- firstboot.sh: copy core configurations to storage partition
- firstboot.sh: rework wifi autoconfig script
- retroarch: add full default config file and apply changes in the
package file directly to the config for individual systems (solves
some issues with core/game overrides when there is no value in the
config and user creates overrides in first run of retroarch, then
these overrides are also stored in default config)
the exclusion of dependencies of a package is now handled by pkgjson
script, that now does not include dependencies of a package, that is
not meant to be built for target architecture.
the core builds only for x86_64 targets. looks like the build picks up
header file from the host:
Compiling libretro-rs-ffi v0.1.0 (https://github.com/libretro-rs/libretro-rs.git?rev=c7f414d19d837921b8762656e53e7f1b8f892179#c7f414d1)
error: failed to run custom build command for `libretro-rs-ffi v0.1.0 (https://github.com/libretro-rs/libretro-rs.git?rev=c7f414d19d837921b8762656e53e7f1b8f892179#c7f414d1)`
Caused by:
process didn't exit successfully: `[...]/build.Lakka-AMLGX.aarch64/build/holani-0.9.6/.aarch64-libreelec-linux-gnu/target/release/build/libretro-rs-ffi-8c6a434ec6227cf4/build-script-build` (exit status: 101)
--- stdout
cargo:rerun-if-changed=include/libretro.h
--- stderr
/usr/include/stdint.h:26:10: fatal error: 'bits/libc-header-start.h' file not found
thread 'main' panicked at [...]/build.Lakka-AMLGX.aarch64/build/rust-1.84.0/cargo_home/git/checkouts/libretro-rs-a4ab5b59ed8bbdf7/c7f414d/libretro-rs-ffi/build.rs:20:6:
Unable to generate bindings: ClangDiagnostic("/usr/include/stdint.h:26:10: fatal error: 'bits/libc-header-start.h' file not found\n")
~~~~~~~~~~~~~~~~~~~~~ <- header included from the host, not the buildsystem
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
- all libretro cores updated to latest version
- RetroArch updated to 1.20.0
- assets, core-infos, joypad configs, shaders, overlays, databases
updated to latest version
- easyrpg: removed patch merged upstream, switched to latest commit
instead of tag
- liblcf: updated to latest version (dep of easyrpg)
- libinih: new dep of liblcf/easyrpg
- mame: updated patch for crosscompilation
- mupen64_plus_next: updated patch for gcc14 buildfix
- picodrive: dropped patch merged upstream
- retroarch: updated patch for saving to default config
- retroarch: drop libXv dep for x11 build (pkg was removed)
- ppsspp: drop old patch
- snes9x2002: dropped ARM_ASM=1 from make options for RPi0/1
- fbalpha2012: add buildfix patch
- yabasanshiro: dropped patch for RPi5 merged upstream
- yabasanshiro: added patch with function declaration
- yabasanshiro: re-enable for most targets
- modified patch for CMakeLists.txt to add -mno-outline-atomics for
LIBRETRO + ARM64
- add -std=c++17 for LIBRETRO not ANDROID
- add patch from https://github.com/hrydgard/ppsspp/pull/19176 to fix
std::clamp issue (clamp is not member of std)
all patches were renamed - prefixed with package name