aboutsummaryrefslogtreecommitdiffstats
path: root/emulators/rpcs3
diff options
context:
space:
mode:
authorjbeich <jbeich@FreeBSD.org>2017-06-20 04:47:00 +0800
committerjbeich <jbeich@FreeBSD.org>2017-06-20 04:47:00 +0800
commitf3726f807391f58c8fb4be74ec7378c651825ae6 (patch)
tree97ca22290efde30beb7e720d444dfeef2bb153cf /emulators/rpcs3
parent59ac3903328ff7ae2285774e97d13c81b8372c02 (diff)
downloadfreebsd-ports-gnome-f3726f807391f58c8fb4be74ec7378c651825ae6.tar.gz
freebsd-ports-gnome-f3726f807391f58c8fb4be74ec7378c651825ae6.tar.zst
freebsd-ports-gnome-f3726f807391f58c8fb4be74ec7378c651825ae6.zip
emulators/rpcs3: add new port
RPCS3 is an open-source Sony PlayStation 3 emulator and debugger written in C++ for Windows and Linux. The project began development on May 23rd, 2011 and currently sports modern Vulkan, Direct3D 12 and OpenGL graphic APIs. The emulator is capable of booting and playing hundreds of commercial games. With each and every contribution and donation, more and more games are becoming closer and closer to either booting or full playability. https://rpcs3.net/
Diffstat (limited to 'emulators/rpcs3')
-rw-r--r--emulators/rpcs3/Makefile54
-rw-r--r--emulators/rpcs3/distinfo15
-rw-r--r--emulators/rpcs3/files/patch-3rdparty_hidapi_libusb_hid.c11
-rw-r--r--emulators/rpcs3/pkg-descr9
4 files changed, 89 insertions, 0 deletions
diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile
new file mode 100644
index 000000000000..c30028b3fd20
--- /dev/null
+++ b/emulators/rpcs3/Makefile
@@ -0,0 +1,54 @@
+# $FreeBSD$
+
+PORTNAME= rpcs3
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.0.2-312
+DISTVERSIONSUFFIX= -gcddf0bf7 # tracking #2813
+CATEGORIES= emulators
+
+MAINTAINER= jbeich@FreeBSD.org
+COMMENT= PS3 emulator/debugger
+
+LICENSE= BSD3CLAUSE BSL GPLv2 MIT ZLIB
+LICENSE_COMB= multi
+LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/3rdparty/cereal/LICENSE
+LICENSE_FILE_BSL= ${WRKSRC}/Utilities/LICENSE_1_0.txt
+LICENSE_FILE_MIT= ${WRKSRC}/3rdparty/GSL/LICENSE
+LICENSE_FILE_ZLIB= ${WRKSRC}/asmjit/LICENSE.md
+
+LIB_DEPENDS= libLLVM-4.0.so:devel/llvm40 \
+ libpng.so:graphics/png \
+ libavcodec.so:multimedia/ffmpeg
+
+ONLY_FOR_ARCHS= amd64
+
+USE_GITHUB= yes
+GH_ACCOUNT= RPCS3
+GH_TUPLE= RPCS3:hidapi:hidapi-0.8.0-rc1-23-gc095a22:hidapi/3rdparty/hidapi \
+ RPCS3:pugixml:f205aaf:pugixml/3rdparty/pugixml \
+ RPCS3:yaml-cpp:release-0.5.3-62-g017626a:yamlcpp/Utilities/yaml-cpp \
+ kobalicek:asmjit:1370fe6:asmjit/asmjit \
+ Microsoft:GSL:fc5fce4:GSL/3rdparty/GSL \
+ USCiLab:cereal:v1.2.0:cereal/3rdparty/cereal
+
+USES= cmake compiler:c++14-lang iconv:wchar_t localbase:ldflags \
+ openal:soft pkgconfig
+USE_GL= gl glew
+USE_QT5= qmake_build buildtools_build core gui widgets
+CMAKE_ARGS+= -DUSE_SYSTEM_LIBPNG=on -DUSE_SYSTEM_FFMPEG=on
+CXXFLAGS+= -D_GLIBCXX_USE_C99 # XXX ports/193528
+CXXFLAGS+= -Wno-macro-redefined # __STDC_*_MACROS sys/cdefs.h vs. llvm-config
+LDFLAGS+= -Wl,--as-needed # GLU
+PLIST_FILES= bin/${PORTNAME} \
+ share/applications/${PORTNAME}.desktop \
+ share/icons/hicolor/48x48/apps/${PORTNAME}.png \
+ share/icons/hicolor/scalable/apps/${PORTNAME}.svg \
+
+post-patch:
+ @${REINPLACE_CMD} -e 's/5\.8/5\.7/' ${WRKSRC}/${PORTNAME}/CMakeLists.txt
+ @${REINPLACE_CMD} \
+ -e 's/"unknown"/"${GH_TAGNAME}"/' \
+ -e 's/^\(VERSION =\).*/\1 ${GH_TAGNAME}/' \
+ ${WRKSRC}/${PORTNAME}/git-version.cmake
+
+.include <bsd.port.mk>
diff --git a/emulators/rpcs3/distinfo b/emulators/rpcs3/distinfo
new file mode 100644
index 000000000000..3667207675c8
--- /dev/null
+++ b/emulators/rpcs3/distinfo
@@ -0,0 +1,15 @@
+TIMESTAMP = 1497896268
+SHA256 (RPCS3-rpcs3-v0.0.2-312-gcddf0bf7_GH0.tar.gz) = 77ac9a9666c178c1c52c470b9c047bb4caa14ba92925fc8e3a5509e8c6275767
+SIZE (RPCS3-rpcs3-v0.0.2-312-gcddf0bf7_GH0.tar.gz) = 11247315
+SHA256 (RPCS3-hidapi-hidapi-0.8.0-rc1-23-gc095a22_GH0.tar.gz) = 76796e880e71864f24540f6f6edf8759e4710f9b2b0594a28066865733681de0
+SIZE (RPCS3-hidapi-hidapi-0.8.0-rc1-23-gc095a22_GH0.tar.gz) = 105539
+SHA256 (RPCS3-pugixml-f205aaf_GH0.tar.gz) = 3b2a7e21625d8cbeb3aa1841b8816f6cab0752e89008b9fc67a325c800f153b5
+SIZE (RPCS3-pugixml-f205aaf_GH0.tar.gz) = 76332
+SHA256 (RPCS3-yaml-cpp-release-0.5.3-62-g017626a_GH0.tar.gz) = 1d4b32443f137c23b68d3cb183ba6fb48eb76be2b0b30016970adff5c770d841
+SIZE (RPCS3-yaml-cpp-release-0.5.3-62-g017626a_GH0.tar.gz) = 65888
+SHA256 (kobalicek-asmjit-1370fe6_GH0.tar.gz) = cc064a8e495959ee525803bd83a4f9b2b3bf6e9aacbc7538e8ac3c20fb12e83e
+SIZE (kobalicek-asmjit-1370fe6_GH0.tar.gz) = 447958
+SHA256 (Microsoft-GSL-fc5fce4_GH0.tar.gz) = 2df1538ff240bf4dd3ef44ba8c832451376fff8e74f7734d32fc8c337557a64d
+SIZE (Microsoft-GSL-fc5fce4_GH0.tar.gz) = 38809
+SHA256 (USCiLab-cereal-v1.2.0_GH0.tar.gz) = 1ccf3ed205a7a2f0d6a060415b123f1ae0d984cd4435db01af8de11a2eda49c1
+SIZE (USCiLab-cereal-v1.2.0_GH0.tar.gz) = 299883
diff --git a/emulators/rpcs3/files/patch-3rdparty_hidapi_libusb_hid.c b/emulators/rpcs3/files/patch-3rdparty_hidapi_libusb_hid.c
new file mode 100644
index 000000000000..34c8c925484d
--- /dev/null
+++ b/emulators/rpcs3/files/patch-3rdparty_hidapi_libusb_hid.c
@@ -0,0 +1,11 @@
+--- 3rdparty/hidapi/libusb/hid.c.orig 2017-04-29 01:03:27 UTC
++++ 3rdparty/hidapi/libusb/hid.c
+@@ -397,7 +397,7 @@ static wchar_t *get_usb_string(libusb_device_handle *d
+ size_t inbytes;
+ size_t outbytes;
+ size_t res;
+-#ifdef __FreeBSD__
++#if defined(__FreeBSD__) && __FreeBSD__ < 10
+ const char *inptr;
+ #else
+ char *inptr;
diff --git a/emulators/rpcs3/pkg-descr b/emulators/rpcs3/pkg-descr
new file mode 100644
index 000000000000..f14e456cfc44
--- /dev/null
+++ b/emulators/rpcs3/pkg-descr
@@ -0,0 +1,9 @@
+RPCS3 is an open-source Sony PlayStation 3 emulator and debugger
+written in C++ for Windows and Linux. The project began development on
+May 23rd, 2011 and currently sports modern Vulkan, Direct3D 12 and
+OpenGL graphic APIs. The emulator is capable of booting and playing
+hundreds of commercial games. With each and every contribution and
+donation, more and more games are becoming closer and closer to either
+booting or full playability.
+
+WWW: https://rpcs3.net/