diff options
author | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2015-09-16 13:17:54 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-09-22 16:15:05 -0300 |
commit | f3f5876239ae98af61562c09425373b9a2fdfb57 (patch) | |
tree | db49712f3cd40e05983bc9599c9305ede5b7a0be /pcr/reicast-multilib-git | |
parent | 764522271778b59ebc16c7bc3087ffe5e17a432b (diff) |
pcr/reicast-git: rebuild pkgbuild and add multilib pkg
Diffstat (limited to 'pcr/reicast-multilib-git')
-rw-r--r-- | pcr/reicast-multilib-git/PKGBUILD | 53 | ||||
-rw-r--r-- | pcr/reicast-multilib-git/enable_multiplayer_support.patch | 37 |
2 files changed, 90 insertions, 0 deletions
diff --git a/pcr/reicast-multilib-git/PKGBUILD b/pcr/reicast-multilib-git/PKGBUILD new file mode 100644 index 000000000..e2663fdb3 --- /dev/null +++ b/pcr/reicast-multilib-git/PKGBUILD @@ -0,0 +1,53 @@ +# Maintainer (Arch): carstene1ns <arch carsten-teibes de> - http://git.io/ctPKG +# Maintainer: André Silva <emulatorman@parabola.nu> +# Maintainer: Márcio Silva <coadde@parabola.nu> + +pkgname=reicast-multilib-git +pkgver=r1651.56f8ffa +pkgrel=2 +pkgdesc="A multiplatform Sega Dreamcast emulator" +arch=('x86_64') +url="http://reicast.com/" +license=('GPL2') +provides=('reicast') +conflicts=('reicast') +makedepends=('git' 'gcc-multilib') +depends=('lib32-libgl' 'lib32-alsa-plugins' 'lib32-libpulse' 'python-evdev' ) +source=(reicast::"git+https://github.com/reicast/reicast-emulator.git" + 'enable_multiplayer_support.patch') +sha256sums=('SKIP' + '12bfc58e12b3ee79b0c82159cdc70c76a4b6804f5c6986853156602bb0e6beb0') + +pkgver() { + cd reicast + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" +} + +prepare () { + cd reicast + + # Remove nonfree fp.h header + rm -v core/deps/libpng/fp.h + + # Add Multiplayer support + patch -Np1 -i "$srcdir"/enable_multiplayer_support.patch + + # Add experimental shadow support: http://github.com/reicast-emulator/issues/94 + sed -i 's|//DrawModVols|DrawModVols|' core/rend/gles/gldraw.cpp + + # Fix Xbox Input Axis + sed -i 's|DC_AXIS_LT, 0, 0, DC_AXIS_RT|0, 0, DC_AXIS_RT, DC_AXIS_LT|' core/linux-dist/joystick.cpp + + # Enable Pulseaudio + sed -i 's|#USE_PULSEAUDIO|USE_PULSEAUDIO|' shell/linux/Makefile +} + +build () { + mkdir -vm 0755 "$srcdir"/pkgbuild-dir + linux32 make -C reicast/shell/linux PREFIX=/usr DESTDIR="$srcdir"/pkgbuild-dir install +} + +package () { + cp -va "$srcdir"/pkgbuild-dir/* "$pkgdir" + install -Dm 644 reicast/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} diff --git a/pcr/reicast-multilib-git/enable_multiplayer_support.patch b/pcr/reicast-multilib-git/enable_multiplayer_support.patch new file mode 100644 index 000000000..57794d1eb --- /dev/null +++ b/pcr/reicast-multilib-git/enable_multiplayer_support.patch @@ -0,0 +1,37 @@ +diff -Nur a/core/hw/maple/maple_cfg.cpp b/core/hw/maple/maple_cfg.cpp +--- a/core/hw/maple/maple_cfg.cpp 2015-08-27 12:17:34.718561243 -0300 ++++ b/core/hw/maple/maple_cfg.cpp 2015-08-27 15:57:10.233166402 -0300 +@@ -22,10 +22,12 @@ + */ + void UpdateInputState(u32 port); + +-extern u16 kcode[4]; +-extern u32 vks[4]; +-extern s8 joyx[4],joyy[4]; +-extern u8 rt[4],lt[4]; ++#define NUM_PORTS 4 ++ ++extern u16 kcode[NUM_PORTS]; ++extern u32 vks[NUM_PORTS]; ++extern s8 joyx[NUM_PORTS],joyy[NUM_PORTS]; ++extern u8 rt[NUM_PORTS],lt[NUM_PORTS]; + + u8 GetBtFromSgn(s8 val) + { +@@ -69,10 +71,13 @@ + void mcfg_CreateDevices() + { + #if DC_PLATFORM == DC_PLATFORM_DREAMCAST +- mcfg_Create(MDT_SegaController,0,5); ++ for (int i = 0; i < NUM_PORTS; i++) ++ { ++ mcfg_Create(MDT_SegaController,i,5); + +- mcfg_Create(MDT_SegaVMU,0,0); +- mcfg_Create(MDT_SegaVMU,0,1); ++ mcfg_Create(MDT_SegaVMU,i,0); ++ mcfg_Create(MDT_SegaVMU,i,1); ++ } + #else + mcfg_Create(MDT_NaomiJamma, 0, 5); + #endif |