summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO61
-rw-r--r--.gitignore4
-rw-r--r--PKGBUILD89
-rw-r--r--retroarch-config.patch52
4 files changed, 206 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..f92a10208ef4
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,61 @@
+pkgbase = retroarch-rbp
+ pkgdesc = Reference frontend for the libretro API (Raspberry Pi)
+ pkgver = 1.6.7
+ pkgrel = 1.1
+ url = http://www.libretro.com/
+ arch = armv7h
+ groups = libretro
+ license = GPL
+ makedepends = vulkan-icd-loader
+ depends = alsa-lib
+ depends = gcc-libs
+ depends = glibc
+ depends = libdrm
+ depends = libgl
+ depends = libpulse
+ depends = libusb
+ depends = libx11
+ depends = libxcb
+ depends = libxext
+ depends = libxinerama
+ depends = libxkbcommon
+ depends = libxv
+ depends = libxxf86vm
+ depends = raspberrypi-firmware
+ depends = openal
+ depends = sdl2
+ depends = wayland
+ depends = zlib
+ depends = libass.so
+ depends = libavcodec.so
+ depends = libavformat.so
+ depends = libavutil.so
+ depends = libfreetype.so
+ depends = libswresample.so
+ depends = libswscale.so
+ depends = libudev.so
+ optdepends = libretro-desmume: Nintendo DS core
+ optdepends = libretro-gambatte: Nintendo Game Boy/Game Boy Color core
+ optdepends = libretro-genesis-plus: Sega Master System/Genesis/Game Gear/CD/32X core
+ optdepends = libretro-mgba: Nintendo Game Boy Advance core
+ optdepends = libretro-mupen64plus: Nintendo 64 core
+ optdepends = libretro-nestopia: Nintendo Entertainment System core
+ optdepends = libretro-pcsx-rearmed: Sony PlayStation core
+ optdepends = libretro-reicast: Sega Dreamcast core
+ optdepends = libretro-snes9x: Super Nintendo Entertainment System core
+ optdepends = libretro-yabause: Sega Saturn core
+ optdepends = libretro-overlays: Collection of overlays
+ optdepends = libretro-shaders: Collection of shaders
+ optdepends = python: retroarch-cg2glsl
+ optdepends = retroarch-assets-xmb: XMB menu assets
+ optdepends = retroarch-autoconfig-udev: udev joypad autoconfig
+ provides = retroarch
+ conflicts = retroarch
+ backup = etc/retroarch.cfg
+ source = retroarch-1.6.7.tar.gz::https://github.com/libretro/RetroArch/archive/v1.6.7.tar.gz
+ source = retroarch-config.patch
+ sha256sums = 212f281d3febde1df27d2edd5de3ced5be86c816b3f13614754495e4a62e778f
+ sha256sums = f37b12754256b0bcc2f9d738f9aa1c18557fffede670a328eb0eeb2f28a32bbd
+
+pkgname = retroarch-rbp
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..8732fbec1d79
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+/pkg
+/src
+/*.tar.gz
+/*.pkg.tar.xz
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..d0b820f5b498
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,89 @@
+# $Id$
+# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
+# Contributor: Themaister <maister@archlinux.us>
+# Contributor: lifning <definelightning@gmail.com>
+
+# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
+# - enable GLES
+
+# ALARM: Sergey Slipchenko <faergeek@gmail.com>
+# - add videocore paths to PKG_CONFIG_PATH
+# - enable neon
+# - enable floathard
+
+buildarch=4
+
+pkgname=retroarch-rbp
+pkgver=1.6.7
+pkgrel=1.1
+pkgdesc='Reference frontend for the libretro API (Raspberry Pi)'
+arch=('armv7h')
+url='http://www.libretro.com/'
+license=('GPL')
+groups=('libretro')
+provides=('retroarch')
+conflicts=('retroarch')
+depends=('alsa-lib' 'gcc-libs' 'glibc' 'libdrm' 'libgl' 'libpulse' 'libusb'
+ 'libx11' 'libxcb' 'libxext' 'libxinerama' 'libxkbcommon' 'libxv'
+ 'libxxf86vm' 'raspberrypi-firmware' 'openal' 'sdl2' 'wayland' 'zlib'
+ 'libass.so' 'libavcodec.so' 'libavformat.so' 'libavutil.so'
+ 'libfreetype.so' 'libswresample.so' 'libswscale.so' 'libudev.so')
+makedepends=('vulkan-icd-loader')
+optdepends=('libretro-desmume: Nintendo DS core'
+ 'libretro-gambatte: Nintendo Game Boy/Game Boy Color core'
+ 'libretro-genesis-plus: Sega Master System/Genesis/Game Gear/CD/32X core'
+ 'libretro-mgba: Nintendo Game Boy Advance core'
+ 'libretro-mupen64plus: Nintendo 64 core'
+ 'libretro-nestopia: Nintendo Entertainment System core'
+ 'libretro-pcsx-rearmed: Sony PlayStation core'
+ 'libretro-reicast: Sega Dreamcast core'
+ 'libretro-snes9x: Super Nintendo Entertainment System core'
+ 'libretro-yabause: Sega Saturn core'
+ 'libretro-overlays: Collection of overlays'
+ 'libretro-shaders: Collection of shaders'
+ 'python: retroarch-cg2glsl'
+ 'retroarch-assets-xmb: XMB menu assets'
+ 'retroarch-autoconfig-udev: udev joypad autoconfig')
+backup=('etc/retroarch.cfg')
+source=("retroarch-${pkgver}.tar.gz::https://github.com/libretro/RetroArch/archive/v${pkgver}.tar.gz"
+ 'retroarch-config.patch')
+sha256sums=('212f281d3febde1df27d2edd5de3ced5be86c816b3f13614754495e4a62e778f'
+ 'f37b12754256b0bcc2f9d738f9aa1c18557fffede670a328eb0eeb2f28a32bbd')
+
+prepare() {
+ cd RetroArch-${pkgver}
+
+ patch -Np1 -i ../retroarch-config.patch
+}
+
+build() {
+ cd RetroArch-${pkgver}
+
+ export PKG_CONFIG_PATH="/opt/vc/lib/pkgconfig:$PKG_CONFIG_PATH"
+
+ ./configure \
+ --prefix='/usr' \
+ --disable-cg \
+ --disable-jack \
+ --disable-oss \
+ --disable-sdl \
+ --enable-opengles \
+ --enable-neon \
+ --enable-floathard
+
+ make
+ make -C libretro-common/audio/dsp_filters
+ make -C gfx/video_filters
+}
+
+package() {
+ cd RetroArch-${pkgver}
+
+ make DESTDIR="${pkgdir}" install
+
+ install -dm 755 "${pkgdir}"/usr/lib/retroarch/filters/{audio,video}
+ install -m 644 libretro-common/audio/dsp_filters/*.so "${pkgdir}"/usr/lib/retroarch/filters/audio/
+ install -m 644 gfx/video_filters/*.{filt,so} "${pkgdir}"/usr/lib/retroarch/filters/video/
+}
+
+# vim: ts=2 sw=2 et:
diff --git a/retroarch-config.patch b/retroarch-config.patch
new file mode 100644
index 000000000000..92ed0acfd179
--- /dev/null
+++ b/retroarch-config.patch
@@ -0,0 +1,52 @@
+diff -rupN RetroArch-1.6.6.orig/retroarch.cfg RetroArch-1.6.6/retroarch.cfg
+--- RetroArch-1.6.6.orig/retroarch.cfg 2017-08-24 15:30:11.730485158 +0200
++++ RetroArch-1.6.6/retroarch.cfg 2017-08-24 15:32:05.506771029 +0200
+@@ -41,10 +41,10 @@
+ # libretro_path = "/path/to/libretro.so"
+
+ # A directory for where to search for libretro core implementations.
+-# libretro_directory =
++libretro_directory = /usr/lib/libretro
+
+ # A directory for where to search for libretro core information.
+-# libretro_info_path =
++libretro_info_path = /usr/share/libretro/info
+
+ # Sets log level for libretro cores (GET_LOG_INTERFACE).
+ # If a log level issued by a libretro core is below libretro_log_level, it is ignored.
+@@ -104,7 +104,7 @@
+
+ # Assets directory. This location is queried by default when menu interfaces try to look for
+ # loadable assets, etc.
+-# assets_directory =
++assets_directory = /usr/share/retroarch/assets
+
+ # Dynamic wallpapers directory. The place to store the wallpapers dynamically
+ # loaded by the menu depending on context.
+@@ -235,7 +235,7 @@
+ # video_shader_enable = false
+
+ # Defines a directory where shaders (Cg, CGP, GLSL) are kept for easy access.
+-# video_shader_dir =
++video_shader_dir = /usr/share/libretro/shaders
+
+ # CPU-based video filter. Path to a dynamic library.
+ # video_filter =
+@@ -411,7 +411,7 @@
+ # Input binds which are made explicit (input_playerN_*_btn/axis) will take priority over autoconfigs.
+ # Autoconfigs can be created with retroarch-joyconfig, manually, or with a frontend.
+ # Requires input_autodetect_enable to be enabled.
+-# joypad_autoconfig_dir =
++joypad_autoconfig_dir = /usr/share/retroarch/autoconfig
+
+ # Sets which libretro device is used for a user.
+ # Devices are indentified with a number.
+@@ -655,7 +655,7 @@
+ # menu_show_online_updater = true
+
+ # If disabled, will hide the ability to update cores (and core info files) inside the menu.
+-# menu_show_core_updater = true
++menu_show_core_updater = false
+
+ # If disabled, the libretro core will keep running in the background when we
+ # are in the menu.