Skip to content

Commit

Permalink
Merge pull request #443 from ROCKNIX/dev
Browse files Browse the repository at this point in the history
PR to dev into main for release.
  • Loading branch information
r3claimer authored Aug 12, 2024
2 parents 74e0aa3 + d6fde53 commit 430833c
Show file tree
Hide file tree
Showing 358 changed files with 7,568 additions and 194,308 deletions.
6 changes: 4 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,9 @@ docker-%: GLOBAL_SETTINGS := $(shell if [ -f "${HOME}/.ROCKNIX/options" ]; then
# LOCAL_SSH_KEYS_FILE is a variable that contains the location of the authorized keys file for development build use. It will be mounted into the container if it exists.
docker-%: LOCAL_SSH_KEYS_FILE := $(shell if [ -n "${LOCAL_SSH_KEYS_FILE}" ]; then echo "-v \"${LOCAL_SSH_KEYS_FILE}:${LOCAL_SSH_KEYS_FILE}\""; else echo ""; fi)

# EMULATIONSTATION_SRC is a variable that contains the location of local emulationstation source code. It will be mounted into the container if it exists.
docker-%: EMULATIONSTATION_SRC := $(shell if [ -n "${EMULATIONSTATION_SRC}" ]; then echo "-v \"${EMULATIONSTATION_SRC}:${EMULATIONSTATION_SRC}\""; else echo ""; fi)

# UID is the user ID of current user - ensures docker sets file permissions properly
docker-%: UID := $(shell id -u)

Expand Down Expand Up @@ -141,5 +144,4 @@ docker-image-pull:

# Wire up docker to call equivalent make files using % to match and $* to pass the value matched by %
docker-%:
BUILD_DIR=$(DOCKER_WORK_DIR) $(DOCKER_CMD) run $(PODMAN_ARGS) $(INTERACTIVE) --init --env-file .env --rm --user $(UID):$(GID) $(GLOBAL_SETTINGS) $(LOCAL_SSH_KEYS_FILE) -v $(PWD):$(DOCKER_WORK_DIR) -w $(DOCKER_WORK_DIR) $(DOCKER_EXTRA_OPTS) $(DOCKER_IMAGE) $(COMMAND)

BUILD_DIR=$(DOCKER_WORK_DIR) $(DOCKER_CMD) run $(PODMAN_ARGS) $(INTERACTIVE) --init --env-file .env --rm --user $(UID):$(GID) $(GLOBAL_SETTINGS) $(LOCAL_SSH_KEYS_FILE) $(EMULATIONSTATION_SRC) -v $(PWD):$(DOCKER_WORK_DIR) -w $(DOCKER_WORK_DIR) $(DOCKER_EXTRA_OPTS) $(DOCKER_IMAGE) $(COMMAND)
15 changes: 11 additions & 4 deletions config/arch.aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,27 @@

# determine architecture's family
case $TARGET_CPU in
generic|cortex-a35|cortex-a53|cortex-a57|cortex-a72|exynos-m1|qdf24xx|thunderx|xgene1|cortex-a57.cortex-a53|cortex-a72.cortex-a53|cortex-a55|cortex-a76.cortex-a55|cortex-a73.cortex-a53)
generic|cortex-a35|cortex-a53|cortex-a57|cortex-a72|exynos-m1|qdf24xx|thunderx|xgene1|cortex-a57.cortex-a53|cortex-a72.cortex-a53|cortex-a73.cortex-a53)
TARGET_SUBARCH=aarch64
TARGET_VARIANT=armv8-a
TARGET_ABI=eabi
TARGET_FEATURES+=" neon"
# This only makes sense for 8.0-a, later revisions have LSE
TARGET_CFLAGS=" -mno-outline-atomics"
;;
cortex-a55|cortex-a76.cortex-a55)
TARGET_SUBARCH=aarch64
TARGET_VARIANT=armv8.2-a
TARGET_ABI=eabi
TARGET_FEATURES+=" neon"
;;

esac

TARGET_GCC_ARCH=${TARGET_SUBARCH/-}
TARGET_KERNEL_ARCH=arm64

# setup ARCH specific *FLAGS
TARGET_CFLAGS="-march=${TARGET_VARIANT}${TARGET_CPU_FLAGS} -mabi=lp64 -Wno-psabi -mtune=$TARGET_CPU"
# Disable runtime checking support of ARMv8.0's optional LSE feature. Breaks gdb and mesa compile.
TARGET_CFLAGS="${TARGET_CFLAGS} -mno-outline-atomics"
TARGET_CFLAGS="${TARGET_CFLAGS} -march=${TARGET_VARIANT}${TARGET_CPU_FLAGS} -mabi=lp64 -Wno-psabi -mtune=$TARGET_CPU"
TARGET_LDFLAGS="-march=${TARGET_VARIANT}${TARGET_CPU_FLAGS} -mtune=$TARGET_CPU"
GCC_OPTS="--with-abi=lp64 --with-arch=$TARGET_VARIANT"
7 changes: 7 additions & 0 deletions config/arch.arm
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,13 @@
TARGET_FPU_FLAGS="-mfloat-abi=$TARGET_FLOAT -mfpu=$TARGET_FPU"
TARGET_FEATURES+=" neon"
;;
cortex-a55|cortex-a76.cortex-a55)
TARGET_SUBARCH=armv8.2-a
TARGET_ABI=eabi
TARGET_FPU_FLAGS="-mfloat-abi=$TARGET_FLOAT -mfpu=$TARGET_FPU"
TARGET_FEATURES+=" neon"
;;

esac

# if [ "${TARGET_FLOAT}" = "hard" ]; then
Expand Down
6 changes: 3 additions & 3 deletions config/optimize
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,13 @@ LDFLAGS_OPTIM_LINKER_GOLD="-fuse-ld=gold"
LDFLAGS_OPTIM_LINKER_MOLD="-fuse-ld=mold"

# default compiler optimization
CFLAGS_OPTIM_DEFAULT="-O3 -fomit-frame-pointer -DNDEBUG"
CFLAGS_OPTIM_DEFAULT="-O3 -DNDEBUG"
CXXFLAGS_OPTIM_DEFAULT="${CFLAGS_OPTIM_DEFAULT}"
# speed flag
CFLAGS_OPTIM_SPEED="-Ofast -fomit-frame-pointer -DNDEBUG"
CFLAGS_OPTIM_SPEED="-Ofast -DNDEBUG"
CXXFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED}"
# size flag
CFLAGS_OPTIM_SIZE="-Os -fomit-frame-pointer -DNDEBUG"
CFLAGS_OPTIM_SIZE="-Os -DNDEBUG"
CXXFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE}"
# debug settings
CFLAGS_OPTIM_DEBUG="-ggdb -Og"
Expand Down
11 changes: 6 additions & 5 deletions distributions/ROCKNIX/options
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,16 @@

# Define package sets to clean based on the type of build being executed.
# This should be updated to be more dynamic in the future.
CLEAN_OS_BASE="emulators system-utils modules quirks autostart rocknix"
CLEAN_OS_BASE="emulators system-utils modules quirks autostart rocknix kernel-firmware"
CLEAN_NETWORK=""
CLEAN_EMU_32BIT="lib32 box86 pcsx_rearmed-lr arm"
# Sway depends on it, weston will use it if it's built but we don't want that.
CLEAN_WESTON="libdisplay-info sway"
# Packages to clean for S922X platform - all vary based on VULKAN_SUPPORT
CLEAN_S922X="beetle-psx-lr dolphin-sa duckstation-sa fileman emulationstation flycast-lr flycast-sa"
CLEAN_S922X+=" gmu gzdoom-sa libplacebo lime3ds-sa linux mali-bifrost mesa moonlight parallel-n64-lr"
CLEAN_S922X+=" pipewire portmaster ppsspp-sa qt5 retroarch SDL2"
# Packages to clean for S922X platform - all vary based on VULKAN_SUPPORT or USE_MALI
CLEAN_S922X="beetle-psx-lr dolphin-sa drastic-sa duckstation-sa fileman emulationstation"
CLEAN_S922X+=" flycast-lr flycast-sa gmu gzdoom-sa libplacebo lime3ds-sa linux mali-bifrost"
CLEAN_S922X+=" mesa moonlight parallel-n64-lr pipewire portmaster ppsspp-sa qt5 retroarch"
CLEAN_S922X+=" wayland SDL2"

# build and install rocknix joypad driver (yes / no)
ROCKNIX_JOYPAD="no"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ This document describes all available systems emulators and cores available for
|Nintendo|Game Boy Color (Hacks) (gbch)|1998|`gbch`|.gb .gbc .zip .7z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>**mednafen:** gb<br>|
|Nintendo|GameCube (gamecube)|2001|`gamecube`|.gcm .iso .gcz .ciso .wbfs .rvz .dol|**dolphin:** dolphin-sa-gc (default)<br>**retroarch:** dolphin<br>|
|Nintendo|NES (Hacks) (nesh)|1985|`nesh`|.nes .unif .unf .zip .7z|**retroarch:** nestopia (default)<br>**retroarch:** fceumm<br>**retroarch:** quicknes<br>**retroarch:** mesen<br>**mednafen:** nesh<br>|
|Nintendo|Nintendo 3DS (3ds)|2010|`3ds`|.3ds .3dsx .elf .axf .cci .cxi .app|**lime3ds:** lime3ds-sa (default)<br>|
|Nintendo|Nintendo 64 (n64)|1996|`n64`|.z64 .n64 .v64 .zip .7z|**retroarch:** mupen64plus_next (default)<br>**retroarch:** mupen64plus<br>**retroarch:** parallel_n64<br>**mupen64plus:** mupen64plus-sa<br>|
|Nintendo|Nintendo DS (nds)|2005|`nds`|.nds .zip .7z|**retroarch:** melonds (default)<br>**retroarch:** desmume<br>**melonds:** melonds-sa<br>|
|Nintendo|Nintendo Entertainment System (nes)|1985|`nes`|.nes .unif .unf .zip .7z|**retroarch:** nestopia (default)<br>**retroarch:** fceumm<br>**retroarch:** quicknes<br>**retroarch:** mesen<br>**mednafen:** nes<br>|
Expand Down Expand Up @@ -100,11 +101,11 @@ This document describes all available systems emulators and cores available for
|Sega|Mega Drive (megadrive)|1990|`megadrive`|.bin .gen .md .sg .smd .zip .7z|**retroarch:** genesis_plus_gx (default)<br>**retroarch:** genesis_plus_gx_wide<br>**retroarch:** picodrive<br>**mednafen:** md<br>|
|Sega|Mega Drive (megadrive-japan)|1988|`megadrive-japan`|.bin .gen .md .sg .smd .zip .7z|**retroarch:** genesis_plus_gx (default)<br>**retroarch:** genesis_plus_gx_wide<br>**retroarch:** picodrive<br>**mednafen:** md<br>|
|Sega|Naomi (naomi)|1998|`naomi`|.lst .bin .dat .zip .7z|**retroarch:** flycast2021<br>**retroarch:** flycast (default)<br>**flycast:** flycast-sa<br>|
|Sega|Saturn (saturn)|1994|`saturn`|.cue .chd .iso .zip|**kronos:** kronos-sa<br>**retroarch:** yabasanshiro (default)<br>**retroarch:** kronos<br>**retroarch:** beetle_saturn<br>**mednafen:** ss<br>**kronos:** kronos-sa (default)<br>|
|Sega|Saturn (saturn)|1994|`saturn`|.cue .chd .iso .zip|**retroarch:** yabasanshiro (default)<br>**retroarch:** beetle_saturn<br>**mednafen:** ss<br>|
|Sega|Sega 32X (sega32x)|1994|`sega32x`|.32x .smd .bin .md .zip .7z|**retroarch:** picodrive (default)<br>|
|Sega|Sega CD (segacd)|1991|`segacd`|.chd .cue .iso .m3u|**retroarch:** genesis_plus_gx (default)<br>**retroarch:** picodrive<br>|
|Sega|SG-1000 (sg-1000)|1983|`sg-1000`|.bin .sg .zip .7z|**retroarch:** gearsystem (default)<br>**retroarch:** genesis_plus_gx<br>**retroarch:** picodrive<br>|
|Sega|ST-V (st-v)|1995|`st-v`|.zip .ZIP|**retroarch:** kronos<br>**mednafen:** ss<br>|
|Sega|ST-V (st-v)|1995|`st-v`|.zip .ZIP|**mednafen:** ss (default)<br>|
|Sharp|X1 (x1)|1982|`x1`|.dx1 .2d .2hd .tfd .d88 .88d .hdm .xdf .dup .tap .cmd .zip .7z|**retroarch:** x1 (default)<br>|
|Sharp|x68000 (x68000)|1987|`x68000`|.dim .img .d88 .hdm .dup .2hd .xdf .hdf .cmd .m3u .zip .7z|**retroarch:** px68k (default)<br>|
|Sinclair|ZX Spectrum (zxspectrum)|1982|`zxspectrum`|.tzx .tap .z80 .rzx .scl .trd .dsk .zip .7z|**retroarch:** fuse<br>|
Expand All @@ -117,7 +118,7 @@ This document describes all available systems emulators and cores available for
|Sony|PlayStation (psx)|1994|`psx`|.bin .cue .img .mdf .pbp .toc .cbn .m3u .ccd .chd .iso|**retroarch:** beetle_psx (default)<br>**mednafen:** psx<br>**duckstation:** duckstation-sa<br>**retroarch:** duckstation<br>**retroarch:** swanstation<br>|
|Sony|PlayStation 2 (ps2)|2000|`ps2`|.iso .mdf .nrg .bin .img .dump .gz .cso .chd|**pcsx2:** pcsx2-sa (default)<br>**retroarch:** pcsx2<br>|
|Sony|PlayStation 3 (ps3)|2006|`ps3`|.ps3 .psn|**rpcs3:** rpcs3-sa (default)<br>|
|Sony|PlayStation Portable (psp)|2004|`psp`|.iso .cso .pbp .chd|**ppsspp:** ppsspp-sa (default)<br>**retroarch:** ppsspp<br>|
|Sony|PlayStation Portable (psp)|2004|`psp`|.iso .cso .pbp .chd|**ppsspp:** ppsspp-sa (default)<br>|
|Sony|PlayStation Vita (psvita)|2011|`launcher`|.sh .psvita|**vita3k:** vita3k-sa (default)<br>|
|Sony|PSP Minis (pspminis)|2004|`pspminis`|.iso .cso .pbp|**ppsspp:** ppsspp-sa (default)<br>**retroarch:** ppsspp<br>|
|Sun Microsystems|J2ME (j2me)|2002|`j2me`|.jar|**retroarch:** freej2me (default)<br>|
Expand Down
Loading

0 comments on commit 430833c

Please sign in to comment.