pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/emulators



Module Name:    pkgsrc
Committed By:   nia
Date:           Tue Jun  2 13:24:32 UTC 2020

Modified Files:
        pkgsrc/emulators: Makefile
Added Files:
        pkgsrc/emulators/gearboy: DESCR Makefile Makefile.common PLIST distinfo
        pkgsrc/emulators/gearboy/patches:
            patch-platforms_desktop-shared_Makefile.common

Log Message:
emulators: add gearboy

Gearboy is a cross-platform Game Boy / GameBoy Color emulator written in C++.

## Features

- Accurate CPU emulation, passes cpu_instrs.gb from blargg's tests.
- Accurate instruction and memory timing, passes instr_timing.gb and
  mem_timing.gb from blargg's tests.
- Supported cartridges: ROM, ROM + RAM, MBC1, MBC2, MBC3 + RTC, MBC5, HuC-1
  and MBC1M (multicart).
- Accurate LCD controller emulation with correct timings and priorities
  including mid-scanline effects.
- Game Boy Color support.
- LCD screen ghosting effect as seen in the original Game Boy.
- LCD dot matrix effect.
- Sound emulation using SDL Audio and Gb_Snd_Emu library.
- Save battery powered RAM cartridges to file.
- Save states.
- Compressed rom support (ZIP).
- Game Genie and GameShark cheat support.
- Full debugger with disassembler, breakpoints, debug symbols, memory editor,
  IO inspector and and VRAM viewer including tiles, sprites, backgrounds and
  palettes.


To generate a diff of this commit:
cvs rdiff -u -r1.323 -r1.324 pkgsrc/emulators/Makefile
cvs rdiff -u -r0 -r1.1 pkgsrc/emulators/gearboy/DESCR \
    pkgsrc/emulators/gearboy/Makefile \
    pkgsrc/emulators/gearboy/Makefile.common pkgsrc/emulators/gearboy/PLIST \
    pkgsrc/emulators/gearboy/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/emulators/gearboy/patches/patch-platforms_desktop-shared_Makefile.common

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/emulators/Makefile
diff -u pkgsrc/emulators/Makefile:1.323 pkgsrc/emulators/Makefile:1.324
--- pkgsrc/emulators/Makefile:1.323     Sun May 31 17:02:14 2020
+++ pkgsrc/emulators/Makefile   Tue Jun  2 13:24:31 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.323 2020/05/31 17:02:14 nia Exp $
+# $NetBSD: Makefile,v 1.324 2020/06/02 13:24:31 nia Exp $
 #
 
 COMMENT=       Emulators for other operating systems
@@ -68,6 +68,7 @@ SUBDIR+=      fs-uae-arcade
 SUBDIR+=       fs-uae-launcher
 SUBDIR+=       fuse-emulator
 SUBDIR+=       fuse-emulator-utils
+SUBDIR+=       gearboy
 SUBDIR+=       generator-cbiere
 SUBDIR+=       gens
 SUBDIR+=       gns3-gui

Added files:

Index: pkgsrc/emulators/gearboy/DESCR
diff -u /dev/null pkgsrc/emulators/gearboy/DESCR:1.1
--- /dev/null   Tue Jun  2 13:24:32 2020
+++ pkgsrc/emulators/gearboy/DESCR      Tue Jun  2 13:24:32 2020
@@ -0,0 +1,22 @@
+Gearboy is a cross-platform Game Boy / GameBoy Color emulator written in C++.
+
+## Features
+
+- Accurate CPU emulation, passes cpu_instrs.gb from blargg's tests.
+- Accurate instruction and memory timing, passes instr_timing.gb and
+  mem_timing.gb from blargg's tests.
+- Supported cartridges: ROM, ROM + RAM, MBC1, MBC2, MBC3 + RTC, MBC5, HuC-1
+  and MBC1M (multicart).
+- Accurate LCD controller emulation with correct timings and priorities
+  including mid-scanline effects.
+- Game Boy Color support.
+- LCD screen ghosting effect as seen in the original Game Boy.
+- LCD dot matrix effect.
+- Sound emulation using SDL Audio and Gb_Snd_Emu library.
+- Save battery powered RAM cartridges to file.
+- Save states.
+- Compressed rom support (ZIP).
+- Game Genie and GameShark cheat support.
+- Full debugger with disassembler, breakpoints, debug symbols, memory editor,
+  IO inspector and and VRAM viewer including tiles, sprites, backgrounds and
+  palettes.
Index: pkgsrc/emulators/gearboy/Makefile
diff -u /dev/null pkgsrc/emulators/gearboy/Makefile:1.1
--- /dev/null   Tue Jun  2 13:24:32 2020
+++ pkgsrc/emulators/gearboy/Makefile   Tue Jun  2 13:24:32 2020
@@ -0,0 +1,46 @@
+# $NetBSD: Makefile,v 1.1 2020/06/02 13:24:32 nia Exp $
+
+.include "Makefile.common"
+
+MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=      https://github.com/drhelius/Gearboy
+COMMENT=       Game Boy / Gameboy Color emulator
+LICENSE=       gnu-gpl-v3
+
+USE_TOOLS+=    gmake
+
+BUILD_DIRS=    platforms/linux
+
+MAKE_FLAGS+=   CXX=${CXX}
+MAKE_FLAGS+=   GIT_VERSION="pkgsrc"
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${OPSYS} != "Darwin"
+MAKE_FLAGS+=   UNAME_S="Linux"
+.else
+MAKE_FLAGS+=   UNAME_S="Darwin"
+.endif
+
+# alloca
+BUILDLINK_TRANSFORM+=  opt:-std=c++11:-std=gnu++11
+
+INSTALLATION_DIRS+=    bin share/applications share/pixmaps
+
+do-install:
+       ${INSTALL_PROGRAM} ${WRKSRC}/${BUILD_DIRS}/gearboy \
+               ${DESTDIR}${PREFIX}/bin
+       ${INSTALL_DATA} ${FILESDIR}/gearboy.desktop \
+               ${DESTDIR}${PREFIX}/share/applications
+       ${INSTALL_DATA} ${WRKSRC}/platforms/ios/Gearboy/Images.xcassets/AppIcon.appiconset/gb_icon_120.png \
+               ${DESTDIR}${PREFIX}/share/pixmaps/gearboy.png
+
+.include "../../devel/SDL2/buildlink3.mk"
+.if ${OPSYS} != "Darwin"
+.  include "../../graphics/glew/buildlink3.mk"
+.  include "../../graphics/MesaLib/buildlink3.mk"
+.endif
+.include "../../sysutils/desktop-file-utils/desktopdb.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+BUILDLINK_TRANSFORM+=  opt:-ldl:${BUILDLINK_LDADD.dl:Q}
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/emulators/gearboy/Makefile.common
diff -u /dev/null pkgsrc/emulators/gearboy/Makefile.common:1.1
--- /dev/null   Tue Jun  2 13:24:32 2020
+++ pkgsrc/emulators/gearboy/Makefile.common    Tue Jun  2 13:24:32 2020
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile.common,v 1.1 2020/06/02 13:24:32 nia Exp $
+# used by emulators/gearboy/Makefile
+# used by emulators/libretro-gearboy/Makefile
+
+DISTNAME=      gearboy-3.1.1
+CATEGORIES=    emulators
+MASTER_SITES=  ${MASTER_SITE_GITHUB:=drhelius/}
+GITHUB_PROJECT=        Gearboy
+GITHUB_TAG=    ${DISTNAME}
+
+USE_LANGUAGES= c c++
+
+DISTINFO_FILE= ${.CURDIR}/../../emulators/gearboy/distinfo
+PATCHDIR=      ${.CURDIR}/../../emulators/gearboy/patches
+
+CHECK_PORTABILITY_SKIP+=       platforms/*/dependencies/SDL-*/premake/*/build-scripts/*
+CHECK_PORTABILITY_SKIP+=       platforms/ios/dependencies/SDL-*/build-scripts/*
Index: pkgsrc/emulators/gearboy/PLIST
diff -u /dev/null pkgsrc/emulators/gearboy/PLIST:1.1
--- /dev/null   Tue Jun  2 13:24:32 2020
+++ pkgsrc/emulators/gearboy/PLIST      Tue Jun  2 13:24:32 2020
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.1 2020/06/02 13:24:32 nia Exp $
+bin/gearboy
+share/applications/gearboy.desktop
+share/pixmaps/gearboy.png
Index: pkgsrc/emulators/gearboy/distinfo
diff -u /dev/null pkgsrc/emulators/gearboy/distinfo:1.1
--- /dev/null   Tue Jun  2 13:24:32 2020
+++ pkgsrc/emulators/gearboy/distinfo   Tue Jun  2 13:24:32 2020
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2020/06/02 13:24:32 nia Exp $
+
+SHA1 (gearboy-3.1.1.tar.gz) = 0f4f89c9cc4c12075002cff5137da51a46139944
+RMD160 (gearboy-3.1.1.tar.gz) = bb1d003fb01eead0e24ff4743af210d4ae9552af
+SHA512 (gearboy-3.1.1.tar.gz) = 6ac9a76514ed83fb4d48ffa9f2b12286f21c82a693976899a7f9546d7424634e0a14201456f3b9800074baa323a5b3bd995140de794b8fb808a55b61d15feaaf
+Size (gearboy-3.1.1.tar.gz) = 16734766 bytes
+SHA1 (patch-platforms_desktop-shared_Makefile.common) = a22b4d53d1bf6e4e47cfafcc0e65747ef1fbe33d

Index: pkgsrc/emulators/gearboy/patches/patch-platforms_desktop-shared_Makefile.common
diff -u /dev/null pkgsrc/emulators/gearboy/patches/patch-platforms_desktop-shared_Makefile.common:1.1
--- /dev/null   Tue Jun  2 13:24:32 2020
+++ pkgsrc/emulators/gearboy/patches/patch-platforms_desktop-shared_Makefile.common     Tue Jun  2 13:24:32 2020
@@ -0,0 +1,51 @@
+$NetBSD: patch-platforms_desktop-shared_Makefile.common,v 1.1 2020/06/02 13:24:32 nia Exp $
+
+Avoid overriding variables we want to pass through pkgsrc.
+
+--- platforms/desktop-shared/Makefile.common.orig      2020-05-23 18:52:56.000000000 +0000
++++ platforms/desktop-shared/Makefile.common
+@@ -27,14 +27,14 @@ OBJS = $(addsuffix .o, $(basename $(notd
+ 
+ UNAME_S := $(shell uname -s)
+ 
+-CXXFLAGS = -I../ -I../../
++CXXFLAGS += -I../ -I../../
+ CXXFLAGS += -Wall -Wextra -Wformat -std=c++11 -DEMULATOR_BUILD=\"$(GIT_VERSION)\"
+ 
+ DEBUG ?= 0
+ ifeq ($(DEBUG), 1)
+-    CXXFLAGS +=-DDEBUG -g3
++    CXXFLAGS +=-DDEBUG
+ else
+-    CXXFLAGS +=-DNDEBUG -O3
++    CXXFLAGS +=-DNDEBUG
+ endif
+ 
+ LIBS =
+@@ -48,7 +48,7 @@ ifeq ($(UNAME_S), Linux) #LINUX
+       LIBS += -lGL -lGLEW -ldl `sdl2-config --libs`
+ 
+       CXXFLAGS += `sdl2-config --cflags`
+-      CFLAGS = $(CXXFLAGS)
++      CFLAGS += $(CXXFLAGS)
+ endif
+ 
+ ifeq ($(UNAME_S), Darwin) #APPLE
+@@ -58,7 +58,7 @@ ifeq ($(UNAME_S), Darwin) #APPLE
+ 
+       CXXFLAGS += `sdl2-config --cflags`
+       CXXFLAGS += -I/usr/local/include -I/opt/local/include
+-      CFLAGS = $(CXXFLAGS)
++      CFLAGS += $(CXXFLAGS)
+ endif
+ 
+ ifeq ($(findstring MINGW,$(UNAME_S)),MINGW)
+@@ -95,7 +95,7 @@ all: $(EXE)
+       @echo Build complete for $(ECHO_MESSAGE)
+ 
+ $(EXE): $(OBJS)
+-      $(CXX) -o $@ $^ $(CXXFLAGS) $(LIBS)
++      $(CXX) -o $@ $^ $(LDFLAGS) $(LIBS)
+ 
+ clean:
+       rm -f $(EXE) $(OBJS)



Home | Main Index | Thread Index | Old Index