diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /games-emulation/mupen64plus-core | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'games-emulation/mupen64plus-core')
4 files changed, 239 insertions, 0 deletions
diff --git a/games-emulation/mupen64plus-core/Manifest b/games-emulation/mupen64plus-core/Manifest new file mode 100644 index 000000000000..19006ccfa9e7 --- /dev/null +++ b/games-emulation/mupen64plus-core/Manifest @@ -0,0 +1 @@ +DIST mupen64plus-core-src-2.0.tar.gz 1127862 SHA256 7e98795dbe4646b858919078f58a6ed94f7cfa30867df6cf44ef33da6aaa7a28 SHA512 6f7391536c23b465af737b3b64f3488bc0275c472e27f97f1d8be61e917c6772cad2c747db8ffa251ba88ba4f4c0d29de2451325f3ea4bcc6049534ef1dac41e WHIRLPOOL c32c97071d911696c9b24a931287ba7da1bdb29434300d984926a2a1b0541660022b6a811f616e8ed18de8d59fdafd168a571b248165c950d80f4e045e25aa53 diff --git a/games-emulation/mupen64plus-core/metadata.xml b/games-emulation/mupen64plus-core/metadata.xml new file mode 100644 index 000000000000..c2134731fe1b --- /dev/null +++ b/games-emulation/mupen64plus-core/metadata.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> + <maintainer> + <email>joker@gentoo.org</email> + <name>Christian Birchinger</name> + </maintainer> + <use> + <flag name="new-dynarec">Enable new experimental dynamic recompiler implementation (only for x86 and arm)</flag> + <flag name="osd">Overlay emulator messages using on-screen-display</flag> + </use> + <longdescription>Mupen64Plus is a plugin-based N64 emulator for Linux which is capable of accurately playing many games. +Included are four MIPS R4300 CPU emulators, with dynamic recompilers for 32-bit x86 and 64-bit amd64 systems.</longdescription> + <upstream> + <remote-id type="google-code">mupen64plus</remote-id> + <remote-id type="github">mupen64plus/mupen64plus-core</remote-id> + </upstream> +</pkgmetadata> diff --git a/games-emulation/mupen64plus-core/mupen64plus-core-2.0-r1.ebuild b/games-emulation/mupen64plus-core/mupen64plus-core-2.0-r1.ebuild new file mode 100644 index 000000000000..8d3cccd00a74 --- /dev/null +++ b/games-emulation/mupen64plus-core/mupen64plus-core-2.0-r1.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +MY_P=${PN}-src-${PV} +inherit eutils multilib toolchain-funcs + +DESCRIPTION="A fork of Mupen64 Nintendo 64 emulator, core library" +HOMEPAGE="http://code.google.com/p/mupen64plus/" +SRC_URI="https://github.com/mupen64plus/${PN}/releases/download/${PV}/${MY_P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/2" +KEYWORDS="~amd64 ~x86" +IUSE="lirc new-dynarec +osd cpu_flags_x86_sse" + +RDEPEND="media-libs/libpng:0= + media-libs/libsdl:0=[joystick,opengl,video] + sys-libs/zlib:0=[minizip] + lirc? ( app-misc/lirc:0 ) + osd? ( + media-fonts/ttf-bitstream-vera + media-libs/freetype:2= + virtual/opengl:0= + virtual/glu:0= + ) + !<games-emulation/mupen64plus-2.0" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +# block versions using games.eclass +RDEPEND="${RDEPEND} + !<games-emulation/m64py-0.2.1-r1 + !<games-emulation/mupen64plus-audio-sdl-2.0-r1 + !<games-emulation/mupen64plus-input-sdl-2.0-r1 + !<games-emulation/mupen64plus-rsp-hle-2.0-r1 + !<games-emulation/mupen64plus-ui-console-2.0-r1 + !<games-emulation/mupen64plus-video-glide64mk2-2.0-r1 + !<games-emulation/mupen64plus-video-rice-2.0-r1" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch_user + + # avoid implicitly appending CPU flags + sed -i -e 's:-mmmx::g' -e 's:-msse::g' projects/unix/Makefile || die +} + +src_compile() { + MAKEARGS=( + # Note: please keep this in sync in all of mupen64plus-* packages + + -C projects/unix + + # this basically means: GNU userspace + UNAME=Linux + + # verbose output + V=1 + + CROSS_COMPILE="${CHOST}-" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + PKG_CONFIG="$(tc-getPKG_CONFIG)" + # usual CFLAGS, CXXFLAGS and LDFLAGS are respected + # so we can leave OPTFLAGS empty + OPTFLAGS= + + # paths, some of them are used at compile time + PREFIX=/usr + LIBDIR=/usr/$(get_libdir) + + # disable unwanted magic + LDCONFIG=: + INSTALL_STRIP_FLAG= + + # Package-specific stuff + + # CROSS_COMPILE causes it to look for ${CHOST}-sdl-config... + SDL_CFLAGS="$($(tc-getPKG_CONFIG) --cflags sdl)" + SDL_LDLIBS="$($(tc-getPKG_CONFIG) --libs sdl)" + + OSD=$(usex osd 1 0) + NO_ASM=$(usex cpu_flags_x86_sse 0 1) + LIRC=$(usex lirc 1 0) + # (it does not build) + # DEBUGGER=$(usex debug 1 0) + NEW_DYNAREC=$(usex new-dynarec 1 0) + ) + + use amd64 && MAKEARGS+=( HOST_CPU=x86_64 ) + use x86 && MAKEARGS+=( HOST_CPU=i386 ) + + emake "${MAKEARGS[@]}" all +} + +src_install() { + emake "${MAKEARGS[@]}" DESTDIR="${D}" install + einstalldocs + dodoc -r doc/{emuwiki-api-doc,new_dynarec.txt} + + # replace bundled font with a symlink + # TODO: fix the code to not rely on it + local font_path=/usr/share/mupen64plus/font.ttf + rm "${D%/}/${font_path}" || die + if use osd; then + dosym /usr/share/fonts/ttf-bitstream-vera/Vera.ttf "${font_path}" + fi +} diff --git a/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild b/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild new file mode 100644 index 000000000000..8c690e4fa473 --- /dev/null +++ b/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +MY_P=${PN}-src-${PV} +inherit eutils toolchain-funcs games + +DESCRIPTION="A fork of Mupen64 Nintendo 64 emulator, core library" +HOMEPAGE="http://code.google.com/p/mupen64plus/" +SRC_URI="https://github.com/mupen64plus/${PN}/releases/download/${PV}/${MY_P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/2" +KEYWORDS="~amd64 ~x86" +IUSE="lirc new-dynarec +osd cpu_flags_x86_sse" + +RDEPEND="media-libs/libpng:0= + media-libs/libsdl:0=[joystick,opengl,video] + sys-libs/zlib:0=[minizip] + lirc? ( app-misc/lirc:0 ) + osd? ( + media-fonts/ttf-bitstream-vera + media-libs/freetype:2= + virtual/opengl:0= + virtual/glu:0= + ) + !<games-emulation/mupen64plus-2.0" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch_user + + # avoid implicitly appending CPU flags + sed -i -e 's:-mmmx::g' -e 's:-msse::g' projects/unix/Makefile || die +} + +src_compile() { + MAKEARGS=( + # Note: please keep this in sync in all of mupen64plus-* packages + + -C projects/unix + + # this basically means: GNU userspace + UNAME=Linux + + # verbose output + V=1 + + CROSS_COMPILE="${CHOST}-" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + PKG_CONFIG="$(tc-getPKG_CONFIG)" + # usual CFLAGS, CXXFLAGS and LDFLAGS are respected + # so we can leave OPTFLAGS empty + OPTFLAGS= + + # paths, some of them are used at compile time + PREFIX=/usr + LIBDIR="$(games_get_libdir)" + SHAREDIR="${GAMES_DATADIR}"/mupen64plus + + # disable unwanted magic + LDCONFIG=: + INSTALL_STRIP_FLAG= + + # Package-specific stuff + + # CROSS_COMPILE causes it to look for ${CHOST}-sdl-config... + SDL_CFLAGS="$($(tc-getPKG_CONFIG) --cflags sdl)" + SDL_LDLIBS="$($(tc-getPKG_CONFIG) --libs sdl)" + + OSD=$(usex osd 1 0) + NO_ASM=$(usex cpu_flags_x86_sse 0 1) + LIRC=$(usex lirc 1 0) + # (it does not build) + # DEBUGGER=$(usex debug 1 0) + NEW_DYNAREC=$(usex new-dynarec 1 0) + ) + + use amd64 && MAKEARGS+=( HOST_CPU=x86_64 ) + use x86 && MAKEARGS+=( HOST_CPU=i386 ) + + emake "${MAKEARGS[@]}" all +} + +src_install() { + emake "${MAKEARGS[@]}" DESTDIR="${D}" install + einstalldocs + dodoc -r doc/{emuwiki-api-doc,new_dynarec.txt} + + # replace bundled font with a symlink + # TODO: fix the code to not rely on it + local font_path=${GAMES_DATADIR}/mupen64plus/font.ttf + rm "${D%/}/${font_path}" || die + if use osd; then + dosym /usr/share/fonts/ttf-bitstream-vera/Vera.ttf "${font_path}" + fi + prepgamesdirs +} |