88 lines
3 KiB
Makefile
88 lines
3 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
# Copyright (C) 2019-present Shanti Gilbert (https://github.com/shantigilbert)
|
|
# Copyright (C) 2023 Nicholas Ricciuti (rishooty@gmail.com)
|
|
# Copyright (C) 2023-present - The JELOS Project (https://github.com/JustEnoughLinuxOS) (fewtarius@jelos.org)
|
|
|
|
PKG_NAME="mupen64plus-sa-ui-console"
|
|
PKG_VERSION="1340c4bdfc9ec53d3fccda5e085930dd79eb08b3"
|
|
PKG_LICENSE="GPLv2"
|
|
PKG_SITE="https://github.com/mupen64plus/mupen64plus-ui-console"
|
|
PKG_URL="https://github.com/mupen64plus/mupen64plus-ui-console/archive/${PKG_VERSION}.tar.gz"
|
|
PKG_DEPENDS_TARGET="toolchain libpng SDL2 SDL2_net zlib freetype nasm:host mupen64plus-sa-core"
|
|
PKG_SHORTDESC="mupen64plus-ui-console"
|
|
PKG_LONGDESC="Mupen64Plus Standalone Console"
|
|
PKG_TOOLCHAIN="manual"
|
|
|
|
case ${DEVICE} in
|
|
AMD64|RK3588|S922X|RK3399)
|
|
PKG_DEPENDS_TARGET+=" mupen64plus-sa-simplecore"
|
|
;;
|
|
esac
|
|
|
|
case ${DEVICE} in
|
|
AMD64)
|
|
PKG_DEPENDS_TARGET+=" ${OPENGL} glu libglvnd"
|
|
export USE_GLES=0
|
|
;;
|
|
*)
|
|
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
|
|
export USE_GLES=1
|
|
;;
|
|
esac
|
|
|
|
make_target() {
|
|
|
|
export V=1 \
|
|
VC=0
|
|
|
|
export BINUTILS="$(get_build_dir binutils)/.${TARGET_NAME}"
|
|
export APIDIR=$(get_build_dir mupen64plus-sa-core)/src/api
|
|
export SDL_CFLAGS="-I${SYSROOT_PREFIX}/usr/include/SDL2 -pthread -D_REENTRANT"
|
|
export SDL_LDLIBS="-lSDL2_net -lSDL2"
|
|
export CROSS_COMPILE="${TARGET_PREFIX}"
|
|
|
|
make -C projects/unix clean
|
|
make -C projects/unix all ${PKG_MAKE_OPTS_TARGET}
|
|
cp ${PKG_BUILD}/projects/unix/mupen64plus ${PKG_BUILD}/projects/unix/mupen64plus-base
|
|
|
|
case ${DEVICE} in
|
|
AMD64|RK3588|S922X|RK3399)
|
|
export APIDIR=$(get_build_dir mupen64plus-sa-simplecore)/src/api
|
|
export CFLAGS="${CFLAGS} -DSIMPLECORE"
|
|
make -C projects/unix all ${PKG_MAKE_OPTS_TARGET}
|
|
cp ${PKG_BUILD}/projects/unix/mupen64plus ${PKG_BUILD}/projects/unix/mupen64plus-simple
|
|
;;
|
|
esac
|
|
}
|
|
|
|
makeinstall_target() {
|
|
UPREFIX=${INSTALL}/usr/local
|
|
ULIBDIR=${UPREFIX}/lib
|
|
UBINDIR=${UPREFIX}/bin
|
|
UMANDIR=${UPREFIX}/share/man
|
|
UAPPSDIR=${UPREFIX}/share/applications
|
|
UICONSDIR=${UPREFIX}/share/icons/hicolor
|
|
mkdir -p ${UBINDIR}
|
|
cp ${PKG_BUILD}/projects/unix/mupen64plus-base ${UBINDIR}/mupen64plus
|
|
chmod 0755 ${UBINDIR}/mupen64plus
|
|
|
|
if [ -e "${PKG_BUILD}/projects/unix/mupen64plus-simple" ]
|
|
then
|
|
cp ${PKG_BUILD}/projects/unix/mupen64plus-simple ${UBINDIR}
|
|
chmod 0755 ${UBINDIR}/mupen64plus-simple
|
|
fi
|
|
|
|
mkdir -p ${UMANDIR}/man6
|
|
cp ${PKG_BUILD}/doc/mupen64plus.6 ${UMANDIR}/man6
|
|
chmod 0644 ${UMANDIR}/man6/mupen64plus.6
|
|
mkdir -p ${UAPPSDIR}
|
|
cp ${PKG_BUILD}/data/mupen64plus.desktop ${UAPPSDIR}
|
|
chmod 0644 ${UAPPSDIR}/mupen64plus.desktop
|
|
mkdir -p ${UICONSDIR}/48x48/apps
|
|
cp ${PKG_BUILD}/data/icons/48x48/apps/mupen64plus.png ${UICONSDIR}/48x48/apps
|
|
chmod 0644 ${UICONSDIR}/48x48/apps/mupen64plus.png
|
|
mkdir -p ${UICONSDIR}/scalable/apps
|
|
cp ${PKG_BUILD}/data/icons/scalable/apps/mupen64plus.svg ${UICONSDIR}/scalable/apps
|
|
chmod 0644 ${UICONSDIR}/scalable/apps/mupen64plus.svg
|
|
}
|
|
|