distribution/packages/ui/emulationstation/package.mk

129 lines
4.3 KiB
Makefile
Raw Normal View History

2022-02-05 14:23:32 +00:00
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2019-present Shanti Gilbert (https://github.com/shantigilbert)
# Copyright (C) 2020-present Fewtarius
PKG_NAME="emulationstation"
2023-03-14 21:59:38 +00:00
PKG_VERSION="182c86c29e6242fcc7b22f26dcb46c7c1bf824f5"
2022-03-07 03:57:10 +00:00
PKG_GIT_CLONE_BRANCH="main"
2022-02-05 14:23:32 +00:00
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/JustEnoughLinuxOS/emulationstation"
PKG_URL="${PKG_SITE}.git"
PKG_DEPENDS_TARGET="boost toolchain SDL2 freetype curl freeimage bash rapidjson SDL2_mixer fping p7zip alsa vlc splash"
2022-02-05 14:23:32 +00:00
PKG_NEED_UNPACK="busybox"
PKG_SHORTDESC="Emulationstation emulator frontend"
PKG_BUILD_FLAGS="-gold"
GET_HANDLER_SUPPORT="git"
2022-07-20 23:02:00 +00:00
PKG_PATCH_DIRS+="${DEVICE}"
2022-02-05 14:23:32 +00:00
if [ ! "${OPENGL}" = "no" ]; then
PKG_DEPENDS_TARGET+=" ${OPENGL} glu"
PKG_CMAKE_OPTS_TARGET+=" -DGL=1"
fi
if [ ! "${OPENGLES_SUPPORT}" = no ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_CMAKE_OPTS_TARGET+=" -DGLES2=1"
fi
2022-12-13 19:29:38 +00:00
if [ ! "${ENABLE_UPDATES}" = "no" ]; then
PKG_CMAKE_OPTS_TARGET+=" -DENABLE_UPDATES=1"
else
PKG_CMAKE_OPTS_TARGET+=" -DENABLE_UPDATES=0"
fi
2022-02-05 14:23:32 +00:00
2022-12-13 19:29:38 +00:00
PKG_CMAKE_OPTS_TARGET+=" -DENABLE_EMUELEC=1 -DDISABLE_KODI=1 -DENABLE_FILEMANAGER=0 -DCEC=0"
2022-02-05 14:23:32 +00:00
##########################################################################################################
# The following allows building Emulation station from local copy by using EMULATIONSTATION_SRC.
# The built makes symlinks to a local repository.
#
# One time setup:
# ---------------
# cd ~
# git clone https://github.com/JustEnoughLinuxOS/emulationstation.git
# cd emulationstation
# git submodule update --init
#
# Cleanup old files:
# ------------------
# DEVICE=RG351V ARCH=aarch64 ./scripts/clean emulationstation
#
# Build from local copy:
# ----------------------
# EMULATIONSTATION_SRC=~/emulationstation DEVICE=RG351V ARCH=aarch64 ./scripts/build emulationstation
#
# Run from the device:
# --------------------
2022-12-13 19:29:38 +00:00
# Copy ./emulationstation binary found in build.JELOS-<device>.aarch64/emulationstation-*/.install_pkg/usr/bin/
# Via ssh, run emulationstation with
# systemctl stop emustation
# chmod +x ./emulationstation
# ./emulationstation
##########################################################################################################
2022-06-03 11:39:08 +00:00
if [ -n "${EMULATIONSTATION_SRC}" ]; then
unpack() {
2022-06-03 11:39:08 +00:00
echo cp -PRf ${EMULATIONSTATION_SRC} ${PKG_BUILD}
cp -PRf ${EMULATIONSTATION_SRC} ${PKG_BUILD}
}
# add some symbolic links to point to a code in local source folder
post_unpack() {
2022-06-03 11:39:08 +00:00
rm -rf "${PKG_BUILD}/es-app"
ln -sf "${EMULATIONSTATION_SRC}/es-app" "${PKG_BUILD}"
2022-06-03 11:39:08 +00:00
rm -rf "${PKG_BUILD}/es-core"
ln -sf "${EMULATIONSTATION_SRC}/es-core" "${PKG_BUILD}"
}
fi
2022-02-05 14:23:32 +00:00
pre_configure_target() {
if [ -f ~/developer_settings.conf ]; then
. ~/developer_settings.conf
fi
}
makeinstall_target() {
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/usr/config/locale
cp -rf ${PKG_BUILD}/locale/lang/* ${INSTALL}/usr/config/locale/
2022-02-05 14:23:32 +00:00
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/usr/lib
ln -sf /storage/.config/emulationstation/locale ${INSTALL}/usr/lib/locale
2022-02-05 14:23:32 +00:00
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/usr/config/emulationstation/resources
cp -rf ${PKG_BUILD}/resources/* ${INSTALL}/usr/config/emulationstation/resources/
rm -rf ${INSTALL}/usr/config/emulationstation/resources/logo.png
2022-05-02 11:34:33 +00:00
mkdir -p ${INSTALL}/usr/bin
2022-09-26 23:11:53 +00:00
cp ${PKG_BUILD}/es_settings ${INSTALL}/usr/bin
chmod 0755 ${INSTALL}/usr/bin/es_settings
cp ${PKG_BUILD}/start_es.sh ${INSTALL}/usr/bin
2022-08-28 21:46:12 +00:00
chmod 0755 ${INSTALL}/usr/bin/start_es.sh
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/usr/lib/${PKG_PYTHON_VERSION}
cp -rf ${PKG_DIR}/bluez/* ${INSTALL}/usr/lib/${PKG_PYTHON_VERSION}
2022-02-05 14:23:32 +00:00
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/usr/bin
2022-09-13 22:49:46 +00:00
#ln -sf /storage/.config/emulationstation/resources ${INSTALL}/usr/bin/resources
2022-03-28 21:33:58 +00:00
cp -rf ${PKG_BUILD}/emulationstation ${INSTALL}/usr/bin
2022-02-05 14:23:32 +00:00
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/etc/emulationstation/
ln -sf /storage/.config/emulationstation/themes ${INSTALL}/etc/emulationstation/
ln -sf /usr/config/emulationstation/es_systems.cfg ${INSTALL}/etc/emulationstation/es_systems.cfg
2022-02-05 14:23:32 +00:00
2022-05-27 22:33:28 +00:00
cp -rf ${PKG_DIR}/config/common/*.cfg ${INSTALL}/usr/config/emulationstation
2022-02-05 14:23:32 +00:00
2023-01-10 23:39:16 +00:00
if [ -d "${PKG_DIR}/config/device/${DEVICE}" ]; then
cp -rf ${PKG_DIR}/config/device/${DEVICE}/*.cfg ${INSTALL}/usr/config/emulationstation
fi
ln -sf /storage/.cache/system_timezone ${INSTALL}/etc/timezone
2022-02-05 14:23:32 +00:00
}
post_install() {
2022-03-28 21:33:58 +00:00
mkdir -p ${INSTALL}/usr/share
ln -sf /storage/.config/emulationstation/locale ${INSTALL}/usr/share/locale
2022-02-05 14:23:32 +00:00
}