summaryrefslogtreecommitdiff
path: root/games-emulation/gnuboy
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/gnuboy')
-rw-r--r--games-emulation/gnuboy/Manifest6
-rw-r--r--games-emulation/gnuboy/files/gnuboy-1.0.3-exec-stack.patch27
-rw-r--r--games-emulation/gnuboy/files/gnuboy-1.0.3-include.patch14
-rw-r--r--games-emulation/gnuboy/files/gnuboy-1.0.3-linux-headers.patch93
-rw-r--r--games-emulation/gnuboy/gnuboy-1.0.3-r2.ebuild60
-rw-r--r--games-emulation/gnuboy/metadata.xml11
6 files changed, 211 insertions, 0 deletions
diff --git a/games-emulation/gnuboy/Manifest b/games-emulation/gnuboy/Manifest
new file mode 100644
index 000000000000..91a13c156629
--- /dev/null
+++ b/games-emulation/gnuboy/Manifest
@@ -0,0 +1,6 @@
+AUX gnuboy-1.0.3-exec-stack.patch 487 BLAKE2B 09cc0019eed65610d67b4c305588b990c9458f8d59349b98fb9ddb274b614c85548928ee38ef68db871db095be40da6450c1444d45f72eb997db9d348eae0332 SHA512 b579b15906bf104f9db86bb49452c26a3eff0cebe2a66349f3b308742d9fe29823879df7658ce542a2d7397b664b7ba5297eb3c266fab1ddfb32ad73da78a693
+AUX gnuboy-1.0.3-include.patch 350 BLAKE2B 30d5bd6fc959e56cd3f6a49b38b86f973cb2b119856921675cdd1c5b665e13e62e9fd675adbc5340c9e1ed715aead8445c50e63b78a31106497fdf08cbcb79a7 SHA512 9815515c39bf0a387b32e0038a050dd7ca51b5b47d539ee39fcb77b1908735890aac9abfd7d1fe03733d7c9359398b1688f401aa2170ac48d0ed6d2d50acf04d
+AUX gnuboy-1.0.3-linux-headers.patch 1721 BLAKE2B 2ce538da8270a7893ddeb4233954b9abc8237785ed085cef8129108eaef93d5c34e37b65db246c91c61b2b7e71bf452b0317ceb5ee7b5a169b764e5f1fb44790 SHA512 710fd830cabea8fee05ab07a6342470a1176d7ed1c5ed14c110f47218d7d3b57704c09e0887da6152b05ed1b12e5a6959efde865359c220756176290617b3917
+DIST gnuboy-1.0.3.tar.gz 187627 BLAKE2B 1fe01abceae56244d28544f10cc5659063cfe19ac491374bcb2b818f01385e065385fcba01e0038f51d4b29bcb3018f02402adb820c0a556c201334766595a51 SHA512 89e8075dac5ec17b375a5739367b46c55130211fb487a052be1cca49a5d86cc1a7f1619b2b2473d744fbe3c51fdb1a11110b15836cc9cc9de588932b91d258e6
+EBUILD gnuboy-1.0.3-r2.ebuild 1068 BLAKE2B 8f750b31e7ce52c19992abbf167385d217a78f114f548e8ef39f4648b099e3ea98066cedf7a80129b54f8fb957bde2579090a7f5b2fb025980197448f326801a SHA512 7eb6e0885259eb224d93b1505d943113f8db50e2ca08efd50368ec941dcd96bddf78b7d624d383323736146b136f75e5ae49497112bc936c4764436d5fa61d28
+MISC metadata.xml 329 BLAKE2B 121873380b3adf5f6fc460d258de391a75a04f4d50b285c1f882e7461814133507981e7829ae1a783eddfc56933c328fdced934d04e5092a9c0e0f6eca7bfbdf SHA512 79c14f0442b618a82acc9b067360ef978d009fb61a44d869d0c6b4df375b005bc721ce8b90ac80be2bdb8e40e95e111b941a5ac9f006470eefc3b41459b52463
diff --git a/games-emulation/gnuboy/files/gnuboy-1.0.3-exec-stack.patch b/games-emulation/gnuboy/files/gnuboy-1.0.3-exec-stack.patch
new file mode 100644
index 000000000000..a263ee49599e
--- /dev/null
+++ b/games-emulation/gnuboy/files/gnuboy-1.0.3-exec-stack.patch
@@ -0,0 +1,27 @@
+--- a/asm/i386/cpu.s
++++ b/asm/i386/cpu.s
+@@ -2428,3 +2428,6 @@
+
+
+
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+--- a/asm/i386/lcd.s
++++ b/asm/i386/lcd.s
+@@ -288,3 +288,6 @@
+
+
+
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+--- a/asm/i386/refresh.s
++++ b/asm/i386/refresh.s
+@@ -283,3 +283,6 @@
+
+
+
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
diff --git a/games-emulation/gnuboy/files/gnuboy-1.0.3-include.patch b/games-emulation/gnuboy/files/gnuboy-1.0.3-include.patch
new file mode 100644
index 000000000000..15573000511e
--- /dev/null
+++ b/games-emulation/gnuboy/files/gnuboy-1.0.3-include.patch
@@ -0,0 +1,14 @@
+diff -ru gnuboy-1.0.3.orig/defs.h gnuboy-1.0.3/defs.h
+--- gnuboy-1.0.3.orig/defs.h 2001-01-23 07:04:22.000000000 -0500
++++ gnuboy-1.0.3/defs.h 2014-07-04 03:56:46.685149736 -0400
+@@ -4,6 +4,10 @@
+ #ifndef __DEFS_H__
+ #define __DEFS_H__
+
++#include <stdlib.h>
++#include <string.h>
++#include <unistd.h>
++#include <ctype.h>
+
+
+ #ifdef IS_LITTLE_ENDIAN
diff --git a/games-emulation/gnuboy/files/gnuboy-1.0.3-linux-headers.patch b/games-emulation/gnuboy/files/gnuboy-1.0.3-linux-headers.patch
new file mode 100644
index 000000000000..543bd2434eed
--- /dev/null
+++ b/games-emulation/gnuboy/files/gnuboy-1.0.3-linux-headers.patch
@@ -0,0 +1,93 @@
+# -ansi breaks <linux/joystick.h>
+
+--- a/configure.in
++++ b/configure.in
+@@ -133,7 +133,7 @@
+ if test "$enable_warnings" = yes ; then
+ case "$CC" in *gcc*)
+ AC_MSG_RESULT(enabling selected compiler warnings)
+-CFLAGS="$CFLAGS -ansi -pedantic -Wall -Wno-implicit -Wno-long-long" ;;
++CFLAGS="$CFLAGS -Wall -Wno-implicit -Wno-long-long" ;;
+ *)
+ AC_MSG_RESULT(disabling warnings for non-gcc compiler) ;;
+ esac
+--- a/loader.c
++++ b/loader.c
+@@ -11,7 +11,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-char *strdup();
+
+ static int mbc_table[256] =
+ {
+--- a/main.c
++++ b/main.c
+@@ -8,7 +8,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-char *strdup();
+
+ #include <stdarg.h>
+ #include <signal.h>
+--- a/path.c
++++ b/path.c
+@@ -5,7 +5,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-char *strdup();
+
+ #ifdef ALT_PATH_SEP
+ #define SEP ';'
+--- a/rckeys.c
++++ b/rckeys.c
+@@ -4,7 +4,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-char *strdup();
+
+ #include "defs.h"
+ #include "rc.h"
+--- a/rcvars.c
++++ b/rcvars.c
+@@ -5,7 +5,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-char *strdup();
+
+ #include "defs.h"
+ #include "rc.h"
+--- a/sys/linux/fbdev.c
++++ b/sys/linux/fbdev.c
+@@ -10,7 +10,6 @@
+
+ #include <stdlib.h>
+ #include <string.h>
+-char *strdup();
+ #include <unistd.h>
+ #include <sys/mman.h>
+ #include <linux/fb.h>
+--- a/sys/linux/joy.c
++++ b/sys/linux/joy.c
+@@ -2,7 +2,6 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-char *strdup();
+ #include <linux/joystick.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+--- a/sys/oss/oss.c
++++ b/sys/oss/oss.c
+@@ -2,7 +2,6 @@
+
+ #include <stdlib.h>
+ #include <string.h>
+-char *strdup();
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>
diff --git a/games-emulation/gnuboy/gnuboy-1.0.3-r2.ebuild b/games-emulation/gnuboy/gnuboy-1.0.3-r2.ebuild
new file mode 100644
index 000000000000..177799b9c235
--- /dev/null
+++ b/games-emulation/gnuboy/gnuboy-1.0.3-r2.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools
+
+DESCRIPTION="Gameboy emulator with multiple renderers"
+HOMEPAGE="https://sourceforge.net/projects/gnuboy/"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="X sdl"
+
+RDEPEND="
+ sdl? ( media-libs/libsdl )
+ !X? ( media-libs/libsdl )
+ X? ( x11-libs/libXext )
+"
+DEPEND="${RDEPEND}
+ X? ( x11-base/xorg-proto )
+"
+
+src_prepare() {
+ default
+ eapply \
+ "${FILESDIR}"/${P}-exec-stack.patch \
+ "${FILESDIR}"/${P}-linux-headers.patch \
+ "${FILESDIR}"/${P}-include.patch
+
+ mv configure.in configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ if ! use X ; then
+ myconf="--with-sdl"
+ fi
+
+ econf \
+ $(use_with X x) \
+ $(use_with sdl) \
+ $(use_enable x86 asm) \
+ ${myconf} \
+ --disable-arch \
+ --disable-optimize
+}
+
+src_install() {
+ for f in sdlgnuboy xgnuboy
+ do
+ if [[ -f ${f} ]] ; then
+ dobin ${f}
+ fi
+ done
+ dodoc README docs/{CHANGES,CONFIG,CREDITS,FAQ,HACKING,WHATSNEW}
+}
diff --git a/games-emulation/gnuboy/metadata.xml b/games-emulation/gnuboy/metadata.xml
new file mode 100644
index 000000000000..3e42cc8d1267
--- /dev/null
+++ b/games-emulation/gnuboy/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">gnuboy</remote-id>
+ </upstream>
+</pkgmetadata>