From 6c2dd8e999378b99d7a2ef4f6fabe65d581eb20c Mon Sep 17 00:00:00 2001 From: q66 Date: Tue, 11 Jun 2019 21:32:16 +0200 Subject: [PATCH] New package: libretro-mupen64plus-rpi-20190611 --- .../patches/rpi.patch | 24 +++++++++++++ .../patches/types.patch | 29 ++++++++++++++++ srcpkgs/libretro-mupen64plus-rpi/template | 34 +++++++++++++++++++ 3 files changed, 87 insertions(+) create mode 100644 srcpkgs/libretro-mupen64plus-rpi/patches/rpi.patch create mode 100644 srcpkgs/libretro-mupen64plus-rpi/patches/types.patch create mode 100644 srcpkgs/libretro-mupen64plus-rpi/template diff --git a/srcpkgs/libretro-mupen64plus-rpi/patches/rpi.patch b/srcpkgs/libretro-mupen64plus-rpi/patches/rpi.patch new file mode 100644 index 00000000000..8d16c944337 --- /dev/null +++ b/srcpkgs/libretro-mupen64plus-rpi/patches/rpi.patch @@ -0,0 +1,24 @@ +--- Makefile ++++ Makefile +@@ -99,7 +99,7 @@ else ifneq (,$(findstring rpi,$(platform))) + GL_LIB := -lGLESv2 + else + LLE = 0 +- CPUFLAGS += -DVC ++ CPUFLAGS += -DVC -DGL_GLEXT_PROTOTYPES + GL_LIB := -L/opt/vc/lib -lbrcmGLESv2 + EGL_LIB := -lbrcmEGL + INCFLAGS += -I/opt/vc/include -I/opt/vc/include/interface/vcos -I/opt/vc/include/interface/vcos/pthreads +--- libretro-common/include/glsm/glsm.h ++++ libretro-common/include/glsm/glsm.h +@@ -32,8 +32,8 @@ + RETRO_BEGIN_DECLS + + #ifdef HAVE_OPENGLES2 +-typedef GLfloat GLdouble; +-typedef GLclampf GLclampd; ++typedef double GLdouble; ++typedef double GLclampd; + #endif + + #if defined(HAVE_OPENGLES2) diff --git a/srcpkgs/libretro-mupen64plus-rpi/patches/types.patch b/srcpkgs/libretro-mupen64plus-rpi/patches/types.patch new file mode 100644 index 00000000000..423ed76f406 --- /dev/null +++ b/srcpkgs/libretro-mupen64plus-rpi/patches/types.patch @@ -0,0 +1,29 @@ +This is needed to build on armv6/7 musl. +--- mupen64plus-core/src/r4300/new_dynarec/new_dynarec.c ++++ mupen64plus-core/src/r4300/new_dynarec/new_dynarec.c +@@ -25,12 +25,8 @@ + #include + #include + +-#if defined(__APPLE__) + #include // needed for u_int, u_char, etc + +-#define MAP_ANONYMOUS MAP_ANON +-#endif +- + #ifdef __cplusplus + extern "C" { + #endif +--- mupen64plus-core/src/r4300/new_dynarec/new_dynarec_64.c ++++ mupen64plus-core/src/r4300/new_dynarec/new_dynarec_64.c +@@ -24,10 +24,7 @@ + #include + #include + +-#if defined(__APPLE__) + #include // needed for u_int, u_char, etc +-#define MAP_ANONYMOUS MAP_ANON +-#endif + + #include "new_dynarec.h" + #include "main/main.h" diff --git a/srcpkgs/libretro-mupen64plus-rpi/template b/srcpkgs/libretro-mupen64plus-rpi/template new file mode 100644 index 00000000000..3d7e80733dd --- /dev/null +++ b/srcpkgs/libretro-mupen64plus-rpi/template @@ -0,0 +1,34 @@ +# Template file for 'libretro-mupen64plus-rpi' +pkgname=libretro-mupen64plus-rpi +version=20190611 +revision=1 +archs="armv6l* armv7l*" +_gitrev=e64ef9d9f214e32341fb7cd9633260fbb44b2326 +wrksrc="mupen64plus-libretro-${_gitrev}" +hostmakedepends="pkg-config unzip" +makedepends="rpi-userland-devel zlib-devel" +short_desc="Libretro port of Mupen64 Plus" +maintainer="q66 " +license="GPL-3.0-or-later" +homepage="http://www.libretro.com/" +distfiles="https://github.com/libretro/mupen64plus-libretro/archive/${_gitrev}.tar.gz" +checksum=947abfb1d5ff34d6b22fecfb2df02bd3759fde3f4a0e5d238f65ec7e97d964d4 +conflicts="ĺibretro-mupen64plus>=0" + +do_build() { + local _args="ARCH=arm" + + case "$XBPS_TARGET_MACHINE" in + armv6*) _args+=" platform=rpi";; + armv7*) _args+=" platform=rpi2";; + esac + install -d /opt/vc/lib + sed -i "s|-L/opt/vc/lib|-L${XBPS_CROSS_BASE}/opt/vc/lib -Wl,-R /opt/vc/lib|g" Makefile + sed -i 's|/opt/vc/include|${XBPS_CROSS_BASE}/opt/vc/include|g' Makefile + + make CC=$CC ${_args} ${makejobs} +} + +do_install() { + vinstall mupen64plus_libretro.so 755 usr/lib/libretro +}