distribution/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-video-gliden64/package.mk

82 lines
3.2 KiB
Makefile
Raw Normal View History

2022-12-30 14:22:04 +00:00
# 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)
2022-12-30 14:22:04 +00:00
2023-03-17 05:51:36 +00:00
PKG_NAME="mupen64plus-sa-video-gliden64"
2023-06-16 15:52:17 +00:00
PKG_VERSION="0fee30d010d1feda7d343654871b3dfd05ccab70"
2022-12-30 14:22:04 +00:00
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/gonetz/GLideN64"
PKG_URL="${PKG_SITE}.git"
2023-06-16 23:28:31 +00:00
PKG_DEPENDS_TARGET="toolchain boost libpng SDL2 SDL2_net zlib freetype nasm:host mupen64plus-sa-core"
2022-12-30 14:22:04 +00:00
PKG_SHORTDESC="mupen64plus-video-gliden64"
PKG_LONGDESC="Mupen64Plus Standalone GLide64 Video Driver"
PKG_TOOLCHAIN="manual"
2023-06-16 23:28:31 +00:00
case ${DEVICE} in
AMD64|RK3588|S922X|RK3399)
PKG_DEPENDS_TARGET+=" mupen64plus-sa-simplecore"
2023-06-16 23:28:31 +00:00
;;
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 HOST_CPU=${TARGET_ARCH} \
NEW_DYNAREC=1 \
VFP_HARD=1 \
V=1 \
VC=0 \
OSD=0
case ${TARGET_ARCH} in
2022-12-30 14:22:04 +00:00
arm|aarch64)
PKG_MAKE_OPTS_TARGET+="-DNOHQ=On -DCRC_ARMV8=On -DEGL=On -DNEON_OPT=On"
;;
esac
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"
2022-12-30 14:22:04 +00:00
export SDL_LDLIBS="-lSDL2_net -lSDL2"
export CROSS_COMPILE="${TARGET_PREFIX}"
2022-12-30 14:22:04 +00:00
./src/getRevision.sh
2023-06-08 21:25:18 +00:00
cmake ${PKG_MAKE_OPTS_TARGET} -DAPIDIR=${APIDIR} -DMUPENPLUSAPI=On -DGLIDEN64_BUILD_TYPE=Release -DCMAKE_C_COMPILER="${CC}" -DCMAKE_CXX_COMPILER="${CXX}" -DCMAKE_C_FLAGS="${CFLAGS}" -DCMAKE_CXX_FLAGS="${CXXFLAGS} -pthread" -S src -B projects/cmake
2022-12-30 14:22:04 +00:00
make clean -C projects/cmake
make -Wno-unused-variable -C projects/cmake
2023-06-08 13:29:19 +00:00
cp ${PKG_BUILD}/projects/cmake/plugin/Release/mupen64plus-video-GLideN64.so ${PKG_BUILD}/projects/cmake/plugin/Release/mupen64plus-video-GLideN64-base.so
export APIDIR=$(get_build_dir mupen64plus-sa-simplecore)/src/api
2023-06-08 21:25:18 +00:00
cmake ${PKG_MAKE_OPTS_TARGET} -DAPIDIR=${APIDIR} -DMUPENPLUSAPI=On -DGLIDEN64_BUILD_TYPE=Release -DCMAKE_C_COMPILER="${CC}" -DCMAKE_CXX_COMPILER="${CXX}" -DCMAKE_C_FLAGS="${CFLAGS}" -DCMAKE_CXX_FLAGS="${CXXFLAGS} -pthread" -S src -B projects/cmake
2023-06-08 13:29:19 +00:00
make -Wno-unused-variable -C projects/cmake
2023-06-09 02:26:26 +00:00
cp ${PKG_BUILD}/projects/cmake/plugin/Release/mupen64plus-video-GLideN64.so ${PKG_BUILD}/projects/cmake/plugin/Release/mupen64plus-video-GLideN64-simple.so
2022-12-30 14:22:04 +00:00
}
makeinstall_target() {
UPREFIX=${INSTALL}/usr/local
ULIBDIR=${UPREFIX}/lib
USHAREDIR=${UPREFIX}/share/mupen64plus
UPLUGINDIR=${ULIBDIR}/mupen64plus
mkdir -p ${UPLUGINDIR}
2023-06-08 14:57:02 +00:00
cp ${PKG_BUILD}/projects/cmake/plugin/Release/mupen64plus-video-GLideN64-base.so ${UPLUGINDIR}/mupen64plus-video-GLideN64.so
2022-12-30 14:22:04 +00:00
chmod 0644 ${UPLUGINDIR}/mupen64plus-video-GLideN64.so
2023-06-08 14:57:02 +00:00
cp ${PKG_BUILD}/projects/cmake/plugin/Release/mupen64plus-video-GLideN64-simple.so ${UPLUGINDIR}
chmod 0644 ${UPLUGINDIR}/mupen64plus-video-GLideN64-simple.so
2022-12-30 14:22:04 +00:00
mkdir -p ${USHAREDIR}
cp ${PKG_BUILD}/ini/GLideN64.ini ${USHAREDIR}
chmod 0644 ${USHAREDIR}/GLideN64.ini
2023-06-16 23:28:31 +00:00
}