summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
Diffstat (limited to 'emulators')
-rw-r--r--emulators/mame/Makefile65
-rw-r--r--emulators/mame/distinfo14
-rw-r--r--emulators/mame/patches/patch-3rdparty_genie_build_gmake.darwin_genie.make26
-rw-r--r--emulators/mame/patches/patch-makefile22
-rw-r--r--emulators/mame/patches/patch-scripts_toolchain.lua51
5 files changed, 125 insertions, 53 deletions
diff --git a/emulators/mame/Makefile b/emulators/mame/Makefile
index 461cce2894a..8f2cab0afe4 100644
--- a/emulators/mame/Makefile
+++ b/emulators/mame/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.90 2018/08/30 22:56:46 wiz Exp $
+# $NetBSD: Makefile,v 1.91 2018/10/11 08:20:54 adam Exp $
-DISTNAME= mame-0.201
+DISTNAME= mame-0.202
CATEGORIES= emulators
MASTER_SITES= ${MASTER_SITE_GITHUB:=mamedev/}
GITHUB_TAG= ${DISTNAME:S/-//S/.//}
@@ -19,13 +19,11 @@ INSTALLATION_DIRS+= ${SHAREDIR}/artwork/bgfx/chains/crt-geom ${SHAREDIR}/hash
DEPENDS+= liberation-ttf-[0-9]*:../../fonts/liberation-ttf
USE_LANGUAGES= c99 c++
-GCC_REQD+= 5.3
+GCC_REQD+= 5
USE_TOOLS+= bsdtar gmake pkg-config
UNLIMIT_RESOURCES+= datasize
MAKE_FILE= makefile
EXTRACT_USING= bsdtar
-# 0.141 has too many conversion warnings
-MAKE_ENV= NOWERROR=1
.include "../../mk/bsd.prefs.mk"
@@ -36,6 +34,10 @@ MAKE_ENV+= LDOPTS="-Wl,-R${BUILDLINK_PREFIX.flac}/lib -L${BUILDLINK_PREFIX.flac}
MAKE_ENV+= LDOPTS="-Wl,-R${BUILDLINK_PREFIX.flac}/lib -L${BUILDLINK_PREFIX.flac}/lib"
.endif
+# -Werror is problematic
+MAKE_ENV= NOWERROR=1 VERBOSE=1
+# on Darwin, avoid SDL2.framework
+MAKE_ENV+= USE_LIBSDL=1
# use pkgsrc packages for expat, zlib, jpeg, flac, lua, sqlite3
MAKE_ENV+= USE_SYSTEM_LIB_EXPAT=1
MAKE_ENV+= USE_SYSTEM_LIB_ZLIB=1
@@ -43,6 +45,10 @@ MAKE_ENV+= USE_SYSTEM_LIB_JPEG=1
MAKE_ENV+= USE_SYSTEM_LIB_FLAC=1
MAKE_ENV+= USE_SYSTEM_LIB_LUA=1
MAKE_ENV+= USE_SYSTEM_LIB_SQLITE3=1
+MAKE_ENV+= USE_SYSTEM_LIB_UTF8PROC=1
+MAKE_ENV+= USE_SYSTEM_LIB_GLM=1
+MAKE_ENV+= USE_SYSTEM_LIB_RAPIDJSON=1
+MAKE_ENV+= USE_SYSTEM_LIB_PUGIXML=1
# no portmidi package exists yet
#MAKE_ENV+= USE_SYSTEM_LIB_PORTMIDI=1
# find proper python binary
@@ -54,40 +60,13 @@ MAKE_ENV+= USE_QTDEBUG=0
# build tools
MAKE_ENV+= TOOLS=1
-.include "../../mk/compiler.mk"
-
-.if !empty(PKGSRC_COMPILER:Mclang)
-_WRAP_EXTRA_ARGS.CC+= -Wno-error=cast-align \
- -Wno-error=constant-logical-operand \
- -Wno-error=sometimes-uninitialized \
- -Wno-error=shift-count-overflow \
- -Wno-error=unused-private-field \
- -Wno-error=tautological-constant-out-of-range-compare \
- -Wno-error=tautological-compare \
- -Wno-error=self-assign-field \
- -Wno-error=unused-const-variable \
- -Wno-error=unused-function
-CWRAPPERS_APPEND.cc+= -Wno-error=cast-align \
- -Wno-error=constant-logical-operand \
- -Wno-error=sometimes-uninitialized \
- -Wno-error=shift-count-overflow \
- -Wno-error=unused-private-field \
- -Wno-error=tautological-constant-out-of-range-compare \
- -Wno-error=tautological-compare \
- -Wno-error=self-assign-field \
- -Wno-error=unused-const-variable \
- -Wno-error=unused-function
-MAKE_ENV+= OPTIMIZE=2
-.endif
-
-. include "../../mk/endian.mk"
-
-.if ${MACHINE_ENDIAN:Mbig}
+.include "../../mk/endian.mk"
+.if ${MACHINE_ENDIAN} == "big"
MAKE_ENV+= BIGENDIAN=1
.endif
-PYTHON_FOR_BUILD_ONLY= yes
-PYTHON_VERSIONS_INCOMPATIBLE= 34 35 36 37 # not yet ported as of 0.151
+LUA_VERSIONS_ACCEPTED= 53
+PYTHON_FOR_BUILD_ONLY= yes
post-extract:
# will be chosen in preference to /usr/include/signal.h, but does not provide kill()
@@ -104,8 +83,7 @@ do-install:
${INSTALL_PROGRAM} ${WRKSRC}/mame64 ${DESTDIR}${PREFIX}/bin/mame
set -e; \
for prg in castool chdman floptool imgtool jedutil ldresample ldverify \
- nltool nlwav pngcmp regrep romcmp split src2html srcclean unidasm; \
- do \
+ nltool nlwav pngcmp regrep romcmp split src2html srcclean unidasm; do \
${INSTALL_PROGRAM} ${WRKSRC}/"$$prg" ${DESTDIR}${PREFIX}/bin; \
done
${INSTALL_DATA} ${WRKSRC}/docs/man/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
@@ -118,15 +96,18 @@ do-install:
${INSTALL_DATA} ${WRKSRC}/docs/*.md ${DESTDIR}${PREFIX}/${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/hash/* ${DESTDIR}${PREFIX}/${SHAREDIR}/hash
-.include "../../lang/python/application.mk"
.include "../../audio/flac/buildlink3.mk"
+.include "../../converters/utf8proc/buildlink3.mk"
.include "../../devel/GConf/buildlink3.mk"
.include "../../devel/SDL2/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../graphics/glm/buildlink3.mk"
.include "../../fonts/SDL2_ttf/buildlink3.mk"
-.include "../../mk/jpeg.buildlink3.mk"
+.include "../../lang/lua/buildlink3.mk"
+.include "../../lang/python/pyversion.mk"
.include "../../textproc/expat/buildlink3.mk"
-.include "../../x11/libXinerama/buildlink3.mk"
-.include "../../x11/gtk2/buildlink3.mk"
+.include "../../textproc/pugixml/buildlink3.mk"
+.include "../../textproc/rapidjson/buildlink3.mk"
+.include "../../mk/jpeg.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/emulators/mame/distinfo b/emulators/mame/distinfo
index b0704d8848c..973bfddeee4 100644
--- a/emulators/mame/distinfo
+++ b/emulators/mame/distinfo
@@ -1,15 +1,17 @@
-$NetBSD: distinfo,v 1.71 2018/08/30 22:56:46 wiz Exp $
+$NetBSD: distinfo,v 1.72 2018/10/11 08:20:54 adam Exp $
-SHA1 (mame-0.201.tar.gz) = a2c6f27d7373879067455498dc9546100eac2b98
-RMD160 (mame-0.201.tar.gz) = 46657a0010e702e86a52eca80f4071c5bee864be
-SHA512 (mame-0.201.tar.gz) = e82ce0f3b52db88a2efc5a93f6da3174304b6549f19ffb5dd293d97b5630c8f89bb3def7e62cbebf2f75ecab8b5d4c21242775ed094a765207081cbe52636b2d
-Size (mame-0.201.tar.gz) = 130692844 bytes
+SHA1 (mame-0.202.tar.gz) = 763b5c3a7bf785623add8965ca3cd7f70fe4951e
+RMD160 (mame-0.202.tar.gz) = d5ef2df513fa2a7f1ff60656de57c86843cef45b
+SHA512 (mame-0.202.tar.gz) = 08c6a2e8f012fdc4c7c159802dfa66d08797ac6fbfbc24e4b5ef4a49ff83d768e6386b5d7cb327dadb9c4453e25d3b5804ccfc70d6c6f70baaf9f3fb8bb6b3d3
+Size (mame-0.202.tar.gz) = 130806658 bytes
SHA1 (patch-3rdparty_asio_include_asio_detail_config.hpp) = 9b0d6139e853d8efb9d51270bbfa5382feac42a7
SHA1 (patch-3rdparty_bgfx_examples_common_font_font__manager.cpp) = e39b2dff553505531adb5f0a31b0a22306b8e2e4
SHA1 (patch-3rdparty_bx_include_bx_platform.h) = caa57597d7c0916f82b3dbdc6ebf2e4851984e70
SHA1 (patch-3rdparty_bx_src_mutex.cpp) = 06efd43f0b69a6e1b764528527b5cfaa1adba138
SHA1 (patch-3rdparty_bx_src_thread.cpp) = 9bdd6334e9522faa4a42990ac77284633b31c6a5
-SHA1 (patch-makefile) = c1766b434ea5d5e57179d9d9616eaa66af77206e
+SHA1 (patch-3rdparty_genie_build_gmake.darwin_genie.make) = d222e3eb11d147bdc0ab2c08a6458028a68b6b47
+SHA1 (patch-makefile) = 2e9092a2eba3db8b9a33a1d22f8410d7ab965a87
SHA1 (patch-scripts_genie.lua) = 91940dbcf30e0abd25167a79b53deb43a18daf86
+SHA1 (patch-scripts_toolchain.lua) = 6227e19645ce1f632401629bc9c988736e5e1ba7
SHA1 (patch-src_devices_cpu_mips_mips3.cpp) = 64de7e132051d7b55bd1b9ae1cf0b5bbc826dc33
SHA1 (patch-src_devices_cpu_mips_ps2vif1.cpp) = dffb66d3fd7579b285684ece4c819fd29722d920
diff --git a/emulators/mame/patches/patch-3rdparty_genie_build_gmake.darwin_genie.make b/emulators/mame/patches/patch-3rdparty_genie_build_gmake.darwin_genie.make
new file mode 100644
index 00000000000..a82091e0798
--- /dev/null
+++ b/emulators/mame/patches/patch-3rdparty_genie_build_gmake.darwin_genie.make
@@ -0,0 +1,26 @@
+$NetBSD: patch-3rdparty_genie_build_gmake.darwin_genie.make,v 1.1 2018/10/11 08:20:54 adam Exp $
+
+Do not set optimization level, nor minimal macOS version.
+
+--- 3rdparty/genie/build/gmake.darwin/genie.make.orig 2018-10-10 17:27:27.000000000 +0000
++++ 3rdparty/genie/build/gmake.darwin/genie.make
+@@ -50,13 +50,13 @@ ifeq ($(config),release)
+ INCLUDES += -I"../../src/host/lua-5.3.0/src"
+ INCLUDES +=
+ ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP -MP $(DEFINES) $(INCLUDES)
+- ALL_ASMFLAGS += $(ASMFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os -mmacosx-version-min=10.4
+- ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os -mmacosx-version-min=10.4
+- ALL_CXXFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os -mmacosx-version-min=10.4
+- ALL_OBJCFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os -mmacosx-version-min=10.4
+- ALL_OBJCPPFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os -mmacosx-version-min=10.4
++ ALL_ASMFLAGS += $(ASMFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra
++ ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra
++ ALL_CXXFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra
++ ALL_OBJCFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra
++ ALL_OBJCPPFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra
+ ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
+- ALL_LDFLAGS += $(LDFLAGS) -L. -mmacosx-version-min=10.4
++ ALL_LDFLAGS += $(LDFLAGS) -L.
+ LDDEPS +=
+ LIBS += $(LDDEPS) -framework CoreServices
+ EXTERNAL_LIBS +=
diff --git a/emulators/mame/patches/patch-makefile b/emulators/mame/patches/patch-makefile
index de6a60dba94..60c91181189 100644
--- a/emulators/mame/patches/patch-makefile
+++ b/emulators/mame/patches/patch-makefile
@@ -1,11 +1,12 @@
-$NetBSD: patch-makefile,v 1.20 2017/09/09 22:40:58 dholland Exp $
+$NetBSD: patch-makefile,v 1.21 2018/10/11 08:20:54 adam Exp $
Treat all BSDs the same.
+Do not set compiler optimization.
Add missing rules for building with clang on FreeBSD and NetBSD.
---- makefile.orig 2017-03-29 03:12:20.000000000 +0000
+--- makefile.orig 2018-08-29 00:35:24.000000000 +0000
+++ makefile
-@@ -180,19 +180,19 @@ GENIEOS := solaris
+@@ -190,19 +190,19 @@ GENIEOS := solaris
endif
ifeq ($(firstword $(filter FreeBSD,$(UNAME))),FreeBSD)
OS := freebsd
@@ -29,7 +30,18 @@ Add missing rules for building with clang on FreeBSD and NetBSD.
endif
ifeq ($(firstword $(filter Darwin,$(UNAME))),Darwin)
OS := macosx
-@@ -1357,6 +1357,23 @@ freebsd_x86: generate $(PROJECTDIR)/$(MA
+@@ -566,10 +566,6 @@ PROFILER =
+ SYMBOLS = 1
+ endif
+
+-# specify a default optimization level if none explicitly stated
+-ifndef OPTIMIZE
+-OPTIMIZE = 3
+-endif
+
+ # set the symbols level
+ ifdef SYMBOLS
+@@ -1395,6 +1391,23 @@ freebsd_x86: generate $(PROJECTDIR)/$(MA
$(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd config=$(CONFIG)32
#-------------------------------------------------
@@ -53,7 +65,7 @@ Add missing rules for building with clang on FreeBSD and NetBSD.
# gmake-netbsd
#-------------------------------------------------
-@@ -1377,6 +1394,23 @@ netbsd_x86: generate $(PROJECTDIR)/$(MAK
+@@ -1415,6 +1428,23 @@ netbsd_x86: generate $(PROJECTDIR)/$(MAK
$(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd config=$(CONFIG)32
#-------------------------------------------------
diff --git a/emulators/mame/patches/patch-scripts_toolchain.lua b/emulators/mame/patches/patch-scripts_toolchain.lua
new file mode 100644
index 00000000000..bcc1b1d683e
--- /dev/null
+++ b/emulators/mame/patches/patch-scripts_toolchain.lua
@@ -0,0 +1,51 @@
+$NetBSD: patch-scripts_toolchain.lua,v 1.3 2018/10/11 08:20:54 adam Exp $
+
+Allow Clang on FreeBSD, NetBSD, and OpenBSD.
+
+--- scripts/toolchain.lua.orig 2018-09-26 04:43:31.000000000 +0000
++++ scripts/toolchain.lua
+@@ -23,6 +23,7 @@ newoption {
+ { "android-x64", "Android - x64" },
+ { "asmjs", "Emscripten/asm.js" },
+ { "freebsd", "FreeBSD" },
++ { "freebsd-clang", "FreeBSD (clang compiler)"},
+ { "linux-gcc", "Linux (GCC compiler)" },
+ { "linux-clang", "Linux (Clang compiler)" },
+ { "ios-arm", "iOS - ARM" },
+@@ -31,7 +32,9 @@ newoption {
+ { "mingw64-gcc", "MinGW64" },
+ { "mingw-clang", "MinGW (clang compiler)" },
+ { "netbsd", "NetBSD" },
++ { "netbsd-clang", "NetBSD (clang compiler)"},
+ { "openbsd", "OpenBSD" },
++ { "openbsd-clang", "OpenBSD (clang compiler)"},
+ { "osx", "OSX (GCC compiler)" },
+ { "osx-clang", "OSX (Clang compiler)" },
+ { "pnacl", "Native Client - PNaCl" },
+@@ -168,14 +171,26 @@ function toolchain(_buildDir, _subDir)
+ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-freebsd")
+ end
+
++ if "freebsd-clang" == _OPTIONS["gcc"] then
++ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-freebsd-clang")
++ end
++
+ if "netbsd" == _OPTIONS["gcc"] then
+ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-netbsd")
+ end
+
++ if "netbsd-clang" == _OPTIONS["gcc"] then
++ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-netbsd-clang")
++ end
++
+ if "openbsd" == _OPTIONS["gcc"] then
+ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-openbsd")
+ end
+
++ if "openbsd-clang" == _OPTIONS["gcc"] then
++ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-openbsd-clang")
++ end
++
+ if "ios-arm" == _OPTIONS["gcc"] then
+ premake.gcc.cc = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang"
+ premake.gcc.cxx = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++"