From e0722f6145f1e8db6281ff135d83442091b31620 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 18 Jul 2023 13:00:52 +0100 Subject: gentoo auto-resync : 18:07:2023 - 13:00:52 --- games-emulation/Manifest.gz | Bin 11699 -> 11694 bytes games-emulation/mupen64plus-core/Manifest | 3 +- ...e-2.5.9-debugger-fix-binutils-2.39-compat.patch | 53 +++++++++ .../mupen64plus-core-2.5.9-r3.ebuild | 117 -------------------- .../mupen64plus-core-2.5.9-r4.ebuild | 119 +++++++++++++++++++++ 5 files changed, 174 insertions(+), 118 deletions(-) create mode 100644 games-emulation/mupen64plus-core/files/mupen64plus-core-2.5.9-debugger-fix-binutils-2.39-compat.patch delete mode 100644 games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r3.ebuild create mode 100644 games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r4.ebuild (limited to 'games-emulation') diff --git a/games-emulation/Manifest.gz b/games-emulation/Manifest.gz index eed195f4d300..8c72e0dc8dde 100644 Binary files a/games-emulation/Manifest.gz and b/games-emulation/Manifest.gz differ diff --git a/games-emulation/mupen64plus-core/Manifest b/games-emulation/mupen64plus-core/Manifest index 12d8ba116a49..b879513154ec 100644 --- a/games-emulation/mupen64plus-core/Manifest +++ b/games-emulation/mupen64plus-core/Manifest @@ -1,5 +1,6 @@ +AUX mupen64plus-core-2.5.9-debugger-fix-binutils-2.39-compat.patch 2335 BLAKE2B e8624784ac911c3b51154772690487c2a751c60a6928887d7d7664e0a9ca869a59b7bf44b44e01134d849a75e4ce76be2650579b42952b0b4247aa3ece386a62 SHA512 97c3826cdb32ffe4b06d6988969c5aec60391f38ec8d7f1dfff85b4e777a763b4b28002e473e12bef32d94c3b318fdb870a2e9f39e2e5f4ac59e3784538fea2f AUX mupen64plus-core-2.5.9-fix-gcc10-fno-common.patch 520 BLAKE2B 1a72237a46105840d90e25a551e5ffab3f35f8df9f975da6f65c135847aac71fbf2e7fb9899c05720cb29b31ea85a15d86167c95993b93d763fea585ae0a4bff SHA512 95860397c764a6a21faaab45e13f68aa6b5da15ff1b96a430a263aaac918495b27a923c639166a9f124c0e3f3d2af6a3947aed34c3a590abc2e3033ef8460bd9 AUX mupen64plus-core-2.5.9-pitch.patch 1257 BLAKE2B bc0852417539f391fa73aff7b63dfee7bfb8f99a7b7e06b90163f39093878f361701354ff5901e8366f8f99236d6a50dde2ddaaf9aec7e48cbc27dc414f8e0af SHA512 e84bce7d9b017eda8818444c99037f6c6ee069329d944658f6f500564e45bf080818f8dd05975f20a0ef835d7934c7ea8c92f4183668fba7120d0343f2cc5678 DIST mupen64plus-core-src-2.5.9.tar.gz 1618486 BLAKE2B 6d43789873c6866dc7d268e4a2cc1febc4a8ce6615a51e4dabfc3d3715aaaa6bf8d7c157ddccd45ae3b57852388c591b86d1cf401c7d78962ec6780272ef912d SHA512 8087211eb3301e356e1529c1702c965aca5e9191a5a3efe604f2e2f7470da44c8c3be506ba1f0aa96b209baa8faf011ca153566540e96c278fe63a330b791f20 -EBUILD mupen64plus-core-2.5.9-r3.ebuild 2710 BLAKE2B 393e63b93c64abf01f4be1d399e6793a8d7b640e995c1a0f123e3415c57b51a5ea2f8caf8f3f7140ae20bbf153a2ce8fcde3558ea1d7a175b02d823c25b81a70 SHA512 1580e1f1cfaeb69504307785ee2e37bb7f770665a9dd78694c054a72569d5f89799b2578e494958624c3209e01e1f86311ce91596d1cccee2f39104cf7edbdd2 +EBUILD mupen64plus-core-2.5.9-r4.ebuild 2831 BLAKE2B 4462626b1e012f9ac7bbaf43fc131ac206ac6a20a430fe8cceaac3b5b63610ff6f737486d726b218b7e48f206c8da59e17a68d09a7a14467ddf21e22c127bd14 SHA512 3eca1827a711b5192cad3ee282fa60b70bb84702b70b6fb1c380c328a747846e42783dcbeac6ef336faea90bf372f39c954b752aabf386fbd96a49df1c263a25 MISC metadata.xml 987 BLAKE2B d2c505ca12b65934e5debaa4f52876cc4a3903cf3ce084dacaf9be307a41c3ab1f6a1fb165377fe37b31065e6a901fd8432f92814eba4c4bdd43ad30da3a7467 SHA512 e0aa4b6c8f2b60c7c8aac793995b17de3892df48e3b4a8bd3ff8a938fc64a3bc7e4dcd4a659dce94dba1debc2beb71971187fed03ff0c723c4ba7b0a57d34db4 diff --git a/games-emulation/mupen64plus-core/files/mupen64plus-core-2.5.9-debugger-fix-binutils-2.39-compat.patch b/games-emulation/mupen64plus-core/files/mupen64plus-core-2.5.9-debugger-fix-binutils-2.39-compat.patch new file mode 100644 index 000000000000..b87a259ff809 --- /dev/null +++ b/games-emulation/mupen64plus-core/files/mupen64plus-core-2.5.9-debugger-fix-binutils-2.39-compat.patch @@ -0,0 +1,53 @@ +diff --git a/projects/unix/Makefile b/projects/unix/Makefile +index d48d8830..e4792b4e 100755 +--- a/projects/unix/Makefile ++++ b/projects/unix/Makefile +@@ -714,15 +714,19 @@ ifeq ($(DEBUGGER), 1) + $(SRCDIR)/debugger/dbg_breakpoints.c + LDLIBS += -lopcodes -lbfd + +- # UGLY libopcodes version check (we check for > 2.28) ++ # UGLY libopcodes/libbfd version check (we check for >= 2.28 and >= 2.39) + LIBOPCODES_VERSION := $(shell $(STRINGS) --version | head -n1 | rev | cut -d ' ' -f1 | rev) + LIBOPCODES_MAJOR := $(shell echo $(LIBOPCODES_VERSION) | cut -f1 -d.) + LIBOPCODES_MINOR := $(shell echo $(LIBOPCODES_VERSION) | cut -f2 -d.) + LIBOPCODES_POINT := $(shell echo $(LIBOPCODES_VERSION) | cut -f3 -d.) + LIBOPCODES_GE_2_29 := $(shell [ $(LIBOPCODES_MAJOR) -gt 2 -o \( $(LIBOPCODES_MAJOR) -eq 2 -a $(LIBOPCODES_MINOR) -ge 29 \) -o \( $(LIBOPCODES_MAJOR) -eq 2 -a $(LIBOPCODES_MINOR) -eq 28 -a $(LIBOPCODES_POINT) -ge 1 \) ] && echo true) ++ LIBBFD_GE_2_39 := $(shell [ $(LIBOPCODES_MAJOR) -gt 2 -o \( $(LIBOPCODES_MAJOR) -eq 2 -a $(LIBOPCODES_MINOR) -ge 29 \) -o \( $(LIBOPCODES_MAJOR) -eq 2 -a $(LIBOPCODES_MINOR) -eq 39 -a $(LIBOPCODES_POINT) -ge 1 \) ] && echo true) + ifeq ($(LIBOPCODES_GE_2_29),true) + CFLAGS += -DUSE_LIBOPCODES_GE_2_29 + endif ++ ifeq ($(LIBBFD_GE_2_39),true) ++ CFLAGS += -DUSE_LIBBFD_GE_2_39 ++ endif + endif + + ifeq ($(OPENCV), 1) +diff --git a/src/debugger/dbg_memory.c b/src/debugger/dbg_memory.c +index e98bf081..32c2af27 100644 +--- a/src/debugger/dbg_memory.c ++++ b/src/debugger/dbg_memory.c +@@ -97,9 +97,23 @@ static int read_memory_func(bfd_vma memaddr, bfd_byte *myaddr, unsigned int leng + return (0); + } + ++#ifdef USE_LIBBFD_GE_2_39 ++static int fprintf_styled_nop(void *out __attribute__((unused)), ++ enum disassembler_style s __attribute__((unused)), ++ const char *fmt __attribute__((unused)), ++ ...) ++{ ++ return 0; ++} ++#endif ++ + void init_host_disassembler(void) + { ++#ifdef USE_LIBBFD_GE_2_39 ++ INIT_DISASSEMBLE_INFO(dis_info, stderr, process_opcode_out, fprintf_styled_nop); ++#else + INIT_DISASSEMBLE_INFO(dis_info, stderr, process_opcode_out); ++#endif + dis_info.fprintf_func = (fprintf_ftype) process_opcode_out; + dis_info.stream = stderr; + dis_info.bytes_per_line=1; diff --git a/games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r3.ebuild b/games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r3.ebuild deleted file mode 100644 index 38e80fb81924..000000000000 --- a/games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r3.ebuild +++ /dev/null @@ -1,117 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit toolchain-funcs - -MY_P=${PN}-src-${PV} -DESCRIPTION="A fork of Mupen64 Nintendo 64 emulator, core library" -HOMEPAGE="https://www.mupen64plus.org/" -SRC_URI=" - https://github.com/mupen64plus/${PN}/releases/download/${PV}/${MY_P}.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="GPL-2+" -SLOT="0/2-sdl2" -KEYWORDS="~amd64 ~x86" -IUSE="debugger gles2-only lirc new-dynarec opencv +osd cpu_flags_x86_sse" -REQUIRED_USE="gles2-only? ( !osd )" - -DEPEND=" - media-libs/libpng:= - media-libs/libsdl2[joystick,opengl,video] - sys-libs/zlib[minizip] - gles2-only? ( media-libs/libsdl2[gles2] ) - lirc? ( app-misc/lirc ) - opencv? ( media-libs/opencv:= ) - osd? ( - media-fonts/dejavu - media-libs/freetype:2 - virtual/opengl - virtual/glu - ) -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - cpu_flags_x86_sse? ( dev-lang/nasm ) - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${P}-fix-gcc10-fno-common.patch - "${FILESDIR}"/${P}-pitch.patch -) - -src_prepare() { - default - - # avoid implicitly appending CPU flags - sed -i -e 's:-mmmx::g' -e 's:-msse::g' projects/unix/Makefile || die - # fix building against opencv-4 - sed -i -e '/PKG_CONFIG/s:opencv:&4:' 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}-sdl2-config... - SDL_CFLAGS="$($(tc-getPKG_CONFIG) --cflags sdl2)" - SDL_LDLIBS="$($(tc-getPKG_CONFIG) --libs sdl2)" - - OSD=$(usex osd 1 0) - NO_ASM=$(usex cpu_flags_x86_sse 0 1) - LIRC=$(usex lirc 1 0) - OPENCV=$(usex opencv 1 0) - DEBUGGER=$(usex debugger 1 0) - NEW_DYNAREC=$(usex new-dynarec 1 0) - USE_GLES=$(usex gles2-only 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 - dodoc -r CREDITS README RELEASE doc/{emuwiki-api-doc,new_dynarec.mediawiki} - - # replace bundled font with a symlink - # TODO: fix the code to not rely on it - rm "${ED}/usr/share/mupen64plus/font.ttf" || die - if use osd; then - dosym ../fonts/dejavu/DejaVuSans.ttf /usr/share/mupen64plus/font.ttf - fi -} diff --git a/games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r4.ebuild b/games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r4.ebuild new file mode 100644 index 000000000000..c9879d3b220f --- /dev/null +++ b/games-emulation/mupen64plus-core/mupen64plus-core-2.5.9-r4.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +MY_P=${PN}-src-${PV} +DESCRIPTION="A fork of Mupen64 Nintendo 64 emulator, core library" +HOMEPAGE="https://www.mupen64plus.org/" +SRC_URI=" + https://github.com/mupen64plus/${PN}/releases/download/${PV}/${MY_P}.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2+" +SLOT="0/2-sdl2" +KEYWORDS="~amd64 ~x86" +IUSE="debugger gles2-only lirc new-dynarec opencv +osd cpu_flags_x86_sse" +REQUIRED_USE="gles2-only? ( !osd )" + +DEPEND=" + media-libs/libpng:= + media-libs/libsdl2[joystick,opengl,video] + sys-libs/zlib[minizip] + gles2-only? ( media-libs/libsdl2[gles2] ) + lirc? ( app-misc/lirc ) + opencv? ( media-libs/opencv:= ) + osd? ( + media-fonts/dejavu + media-libs/freetype:2 + virtual/opengl + virtual/glu + ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + cpu_flags_x86_sse? ( dev-lang/nasm ) + virtual/pkgconfig +" + +PATCHES=( + # https://github.com/mupen64plus/mupen64plus-core/pull/1015 + "${FILESDIR}"/${P}-debugger-fix-binutils-2.39-compat.patch + "${FILESDIR}"/${P}-fix-gcc10-fno-common.patch + "${FILESDIR}"/${P}-pitch.patch +) + +src_prepare() { + default + + # avoid implicitly appending CPU flags + sed -i -e 's:-mmmx::g' -e 's:-msse::g' projects/unix/Makefile || die + # fix building against opencv-4 + sed -i -e '/PKG_CONFIG/s:opencv:&4:' 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}-sdl2-config... + SDL_CFLAGS="$($(tc-getPKG_CONFIG) --cflags sdl2)" + SDL_LDLIBS="$($(tc-getPKG_CONFIG) --libs sdl2)" + + OSD=$(usex osd 1 0) + NO_ASM=$(usex cpu_flags_x86_sse 0 1) + LIRC=$(usex lirc 1 0) + OPENCV=$(usex opencv 1 0) + DEBUGGER=$(usex debugger 1 0) + NEW_DYNAREC=$(usex new-dynarec 1 0) + USE_GLES=$(usex gles2-only 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 + dodoc -r CREDITS README RELEASE doc/{emuwiki-api-doc,new_dynarec.mediawiki} + + # replace bundled font with a symlink + # TODO: fix the code to not rely on it + rm "${ED}/usr/share/mupen64plus/font.ttf" || die + if use osd; then + dosym ../fonts/dejavu/DejaVuSans.ttf /usr/share/mupen64plus/font.ttf + fi +} -- cgit v1.2.3