Merge pull request #1263 from fewtarius/dev

Refactor the mechanisms for 32BIT packages.
This commit is contained in:
fewtarius 2023-04-05 17:10:22 -04:00 committed by GitHub
commit e84fa5e225
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 57 additions and 36 deletions

View file

@ -40,6 +40,16 @@
# build and install PulseAudio support (yes / no)
PULSEAUDIO_SUPPORT="yes"
# 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_DEEP="system-utils busybox linux grub u-boot SDL2 retroarch mesa"
CLEAN_OS_BASE="lib32 initramfs modules autostart splash jelos"
CLEAN_EMU_TOOLS="gamecontrollerdb"
CLEAN_EMU_32BIT="box86 flycast-lr pcsx_rearmed-lr"
# Clean necessary packages.
PKG_CLEAN="${CLEAN_OS} ${CLEAN_EMUS} ${CLEAN_UI} ${CLEAN_TOOLS} ${PKG_CLEAN} lib32 initramfs modules autostart splash jelos"
# additional drivers to install:
# for a list of additional drivers see packages/linux-drivers
# Space separated list is supported,

View file

@ -39,20 +39,26 @@ pre_configure_target() {
-DWITH_SYSTEM_ZLIB=ON \
-DUSE_OPENMP=ON"
}
makeinstall_target32() {
case ${ARCH} in
aarch64)
if [ "${ENABLE_32BIT}" == "true" ]
then
cp -vP ${ROOT}/build.${DISTRO}-${DEVICE}.arm/${PKG_NAME}-*/.install_pkg/usr/lib/libretro/${1}_libretro.so ${INSTALL}/usr/lib/libretro/${1}32_libretro.so
fi
;;
esac
}
makeinstall_target() {
mkdir -p ${INSTALL}/usr/lib/libretro
case ${TARGET_ARCH} in
aarch64)
if [ -f ${ROOT}/build.${DISTRO}-${DEVICE}.arm/flycast-lr-*/.install_pkg/usr/lib/libretro/flycast32_libretro.so ]
then
cp -vP ${ROOT}/build.${DISTRO}-${DEVICE}.arm/flycast-lr-*/.install_pkg/usr/lib/libretro/flycast32_libretro.so ${INSTALL}/usr/lib/libretro
fi
cp flycast_libretro.so ${INSTALL}/usr/lib/libretro/flycast_libretro.so
makeinstall_target32 flycast
;;
arm)
cp flycast_libretro.so ${INSTALL}/usr/lib/libretro/flycast32_libretro.so
;;
x86_64)
*)
cp flycast_libretro.so ${INSTALL}/usr/lib/libretro/flycast_libretro.so
;;
esac

View file

@ -18,13 +18,19 @@ make_target() {
make -f Makefile.libretro GIT_VERSION=${PKG_VERSION} platform=${DEVICE}
}
makeinstall_target32() {
case ${ARCH} in
aarch64)
if [ "${ENABLE_32BIT}" == "true" ]
then
cp -vP ${ROOT}/build.${DISTRO}-${DEVICE}.arm/${PKG_NAME}-*/.install_pkg/usr/lib/libretro/${1}_libretro.so ${INSTALL}/usr/lib/libretro/${1}32_libretro.so
fi
;;
esac
}
makeinstall_target() {
## Install the 64bit core.
mkdir -p ${INSTALL}/usr/lib/libretro
cp pcsx_rearmed_libretro.so ${INSTALL}/usr/lib/libretro/
if [ -f "${ROOT}/build.${DISTRO}-${DEVICE}.arm/pcsx_rearmed-lr-*/.install_pkg/usr/lib/libretro/pcsx_rearmed_libretro.so" ] && \
[ "${TARGET_ARCH}" = "aarch64" ]
then
cp -vP ${ROOT}/build.${DISTRO}-${DEVICE}.arm/pcsx_rearmed-lr-*/.install_pkg/usr/lib/libretro/pcsx_rearmed_libretro.so ${INSTALL}/usr/lib/libretro/pcsx_rearmed32_libretro.so
fi
makeinstall_target32 pcsx_rearmed
}

View file

@ -36,5 +36,5 @@ DMC_FREQ="/sys/devices/platform/dmc/devfreq/dmc"
# Volume Keys
#DEVICE_KEY_VOLUMEDOWN=
#DEVICE_KEY_VOLUMEUP=
DEVICE_VOL_MODIFIER="BTN_TR2"
DEVICE_VOL_MODIFIER="BTN_MODE"
EOF

View file

@ -16,7 +16,7 @@ LIBRETRO_CORES="2048-lr 81-lr a5200-lr atari800-lr beetle-gba-lr beetle-lynx-lr
beetle-pce-fast-lr beetle-pcfx-lr bsnes-lr bsnes-mercury-performance-lr beetle-supafaust-lr \
beetle-supergrafx-lr beetle-vb-lr beetle-wswan-lr beetle-saturn-lr bluemsx-lr cannonball-lr \
cap32-lr crocods-lr daphne-lr dinothawr-lr dosbox-svn-lr dosbox-pure-lr duckstation-lr \
easyrpg-lr fake08-lr fbalpha2012-lr fbalpha2019-lr fbneo-lr fceumm-lr fmsx-lr flycast-lr \
easyrpg-lr fake08-lr fbalpha2012-lr fbalpha2019-lr fbneo-lr fceumm-lr fmsx-lr \
freechaf-lr freeintv-lr freej2me-lr fuse-lr gambatte-lr gearboy-lr gearcoleco-lr gearsystem-lr \
genesis-plus-gx-lr genesis-plus-gx-wide-lr gme-lr gw-lr handy-lr hatari-lr mame2000-lr \
mame2003-plus-lr mame2010-lr mame2015-lr melonds-lr meowpc98-lr mesen-lr mgba-lr mrboom-lr \
@ -24,31 +24,32 @@ LIBRETRO_CORES="2048-lr 81-lr a5200-lr atari800-lr beetle-gba-lr beetle-lynx-lr
parallel-n64-lr pcsx_rearmed-lr picodrive-lr pokemini-lr potator-lr prboom-lr prosystem-lr \
ppsspp-lr puae-lr px68k-lr quasi88-lr quicknes-lr race-lr reminiscence-lr sameboy-lr \
sameduck-lr scummvm-lr smsplus-gx-lr snes9x-lr snes9x2002-lr snes9x2005_plus-lr snes9x2010-lr \
stella-lr stella-2014-lr swanstation-lr tic80-lr tgbdual-lr tyrquake-lr uzem-lr vba-next-lr \
stella-lr stella-2014-lr swanstation-lr tic80-lr tgbdual-lr tyrquake-lr uzem-lr vba-next-lr \
vbam-lr vecx-lr vice-lr yabasanshiro-lr virtualjaguar-lr xmil-lr xrick-lr"
### Emulators or cores for specific devices
case "${DEVICE}" in
handheld)
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="lutris-wine"
PKG_EMUS+=" duckstation-sa dolphin-sa cemu-sa citra-sa melonds-sa minivmacsa mupen64plus-sa pcsx2-sa \
primehack rpcs3-sa ryujinx-sa xemu-sa yuzu-sa"
LIBRETRO_CORES+=" beetle-psx-lr bsnes-hd-lr citra-lr desmume-lr dolphin-lr lrps2-lr mame-lr minivmac-lr \
play-lr"
;;
RK3588)
[ "${ENABLE_32BIT}" == "true" ] && PKG_EMUS+=" box86"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr pcsx_rearmed-lr"
PKG_EMUS+=" aethersx2-sa duckstation-sa pcsx_rearmed-lr box64 yabasanshiro-sa"
LIBRETRO_CORES+=" beetle-psx-lr bsnes-hd-lr dolphin-lr mame-lr pcsx_rearmed-lr"
LIBRETRO_CORES+=" beetle-psx-lr bsnes-hd-lr dolphin-lr mame-lr box64"
;;
RK3566)
[ "${ENABLE_32BIT}" == "true" ] && PKG_EMUS+=" box86"
PKG_DEPENDS_TARGET+=" common-shaders glsl-shaders pcsx_rearmed-lr box64"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr pcsx_rearmed-lr"
PKG_DEPENDS_TARGET+=" common-shaders glsl-shaders box64"
PKG_EMUS+=" yabasanshiro-sa"
;;
S922X)
[ "${ENABLE_32BIT}" == "true" ] && PKG_EMUS+=" box86"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr pcsx_rearmed-lr"
PKG_EMUS+=" aethersx2-sa dolphin-sa duckstation-sa mupen64plus-sa yabasanshiro-sa box64"
LIBRETRO_CORES+=" beetle-psx-lr bsnes-hd-lr dolphin-lr pcsx_rearmed-lr yabasanshiro-sa"
LIBRETRO_CORES+=" beetle-psx-lr bsnes-hd-lr dolphin-lr yabasanshiro-sa"
esac
PKG_DEPENDS_TARGET+=" ${PKG_EMUS} ${PKG_RETROARCH} ${LIBRETRO_CORES}"
PKG_DEPENDS_TARGET+=" ${PKG_EMUS} ${EMUS_32BIT} ${PKG_RETROARCH} ${LIBRETRO_CORES}"

View file

@ -66,6 +66,9 @@
# debug tty path
DEBUG_TTY="/dev/ttyFIQ0"
# Disable 32BIT support
ENABLE_32BIT="false"
# build and install PulseAudio support (yes / no)
PULSEAUDIO_SUPPORT="yes"

View file

@ -29,10 +29,6 @@ CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0")
GPU_FREQ="/sys/devices/platform/fde60000.gpu/devfreq/fde60000.gpu"
DMC_FREQ="/sys/devices/platform/dmc/devfreq/dmc"
# Affinity
SLOW_CORES="taskset -c 0-3"
FAST_CORES="${SLOW_CORES}"
# Volume Keys
DEVICE_KEY_VOLUMEDOWN=114
DEVICE_KEY_VOLUMEUP=115

View file

@ -48,18 +48,17 @@ then
# If DEVICE_ROOT is defined, take additional clean steps to ensure everything is built
# properly for all devices including the root device.
CLEAN_OS="system-utils busybox linux grub u-boot SDL2 retroarch mesa"
CLEAN_EMUS="mupen64plus-nx mupen64plus flycast_libretro dosbox-pure \
gpsp PPSSPPSDL mupen64plus-sa-core mupen64plus-sa-input-sdl \
duckstationsa"
CLEAN_UI="emulationstation"
CLEAN_TOOLS="gamecontrollerdb moonlight"
PKG_CLEAN+=" ${CLEAN_OS_DEEP} ${CLEAN_EMU_TOOLS}"
fi
if [ "${ENABLE_32BIT}" == "true" ]
then
PKG_CLEAN+=" ${CLEAN_EMU_32BIT}"
fi
# Clean necessary packages.
PKG_CLEAN="${CLEAN_OS} ${CLEAN_EMUS} ${CLEAN_UI} ${CLEAN_TOOLS} ${PKG_CLEAN} lib32 initramfs modules autostart splash jelos"
PKG_CLEAN+=" lib32 initramfs modules autostart splash jelos"
if [ ! -n "${DIRTY}" ]
then