Lines 1-117
Link Here
|
1 |
PORTNAME= rpcs3 |
1 |
PORTNAME= rpcs3 |
2 |
DISTVERSIONPREFIX= v |
2 |
DISTVERSIONPREFIX= v |
3 |
DISTVERSION= 0.0.20-13155 # git rev-list --count HEAD |
3 |
DISTVERSION= 0.0.20-13155 # git rev-list --count HEAD |
4 |
DISTVERSIONSUFFIX= -g83026fd26 |
4 |
DISTVERSIONSUFFIX= -g83026fd26 |
5 |
CATEGORIES= emulators |
5 |
CATEGORIES= emulators |
6 |
|
6 |
|
7 |
MAINTAINER= jbeich@FreeBSD.org |
7 |
MAINTAINER= jbeich@FreeBSD.org |
8 |
COMMENT= PS3 emulator/debugger |
8 |
COMMENT= PS3 emulator/debugger |
9 |
|
9 |
|
10 |
LICENSE= APACHE20 ISCL GPLv2 MIT ZLIB |
10 |
LICENSE= APACHE20 ISCL GPLv2 MIT ZLIB |
11 |
LICENSE_COMB= multi |
11 |
LICENSE_COMB= multi |
12 |
LICENSE_FILE_ISCL= ${WRKSRC_cubeb}/LICENSE |
12 |
LICENSE_FILE_ISCL= ${WRKSRC_cubeb}/LICENSE |
13 |
LICENSE_FILE_MIT= ${WRKSRC_pugixml}/LICENSE.md |
13 |
LICENSE_FILE_MIT= ${WRKSRC_pugixml}/LICENSE.md |
14 |
LICENSE_FILE_ZLIB= ${WRKSRC_asmjit}/LICENSE.md |
14 |
LICENSE_FILE_ZLIB= ${WRKSRC_asmjit}/LICENSE.md |
15 |
|
15 |
|
16 |
LIB_DEPENDS= libcurl.so:ftp/curl \ |
16 |
LIB_DEPENDS= libcurl.so:ftp/curl \ |
17 |
libpng.so:graphics/png \ |
17 |
libpng.so:graphics/png \ |
18 |
libavcodec.so:multimedia/ffmpeg |
18 |
libavcodec.so:multimedia/ffmpeg |
19 |
|
19 |
|
20 |
ONLY_FOR_ARCHS= amd64 |
20 |
ONLY_FOR_ARCHS= amd64 |
21 |
ONLY_FOR_ARCHS_REASON= requires int128 and SSE2 |
21 |
ONLY_FOR_ARCHS_REASON= requires int128 and SSE2 |
22 |
|
22 |
|
23 |
USE_GITHUB= yes |
23 |
USE_GITHUB= yes |
24 |
GH_ACCOUNT= RPCS3 |
24 |
GH_ACCOUNT= RPCS3 |
25 |
GH_TUPLE= RPCS3:hidapi:hidapi-0.11.0-2-gc47734c:hidapi/3rdparty/hidapi/hidapi \ |
25 |
GH_TUPLE= RPCS3:hidapi:hidapi-0.11.0-2-gc47734c:hidapi/3rdparty/hidapi/hidapi \ |
26 |
RPCS3:llvm-mirror:509d31ad8967:llvm/llvm \ |
26 |
RPCS3:llvm-mirror:509d31ad8967:llvm/llvm \ |
27 |
Cyan4973:xxHash:v0.8.1:xxHash/3rdparty/xxHash \ |
27 |
Cyan4973:xxHash:v0.8.1:xxHash/3rdparty/xxHash \ |
28 |
asmjit:asmjit:eae7197:asmjit/3rdparty/asmjit/asmjit \ |
28 |
asmjit:asmjit:eae7197:asmjit/3rdparty/asmjit/asmjit \ |
29 |
google:flatbuffers:v2.0.0:flatbuffers/3rdparty/flatbuffers \ |
29 |
google:flatbuffers:v2.0.0:flatbuffers/3rdparty/flatbuffers \ |
30 |
jbeder:yaml-cpp:yaml-cpp-0.7.0-1-g0b67821:yamlcpp/3rdparty/yaml-cpp/yaml-cpp \ |
30 |
jbeder:yaml-cpp:yaml-cpp-0.7.0-1-g0b67821:yamlcpp/3rdparty/yaml-cpp/yaml-cpp \ |
31 |
KhronosGroup:SPIRV-Headers:1.5.3.reservations1:spirv_headers/3rdparty/SPIRV/SPIRV-Headers \ |
31 |
KhronosGroup:SPIRV-Headers:1.5.3.reservations1:spirv_headers/3rdparty/SPIRV/SPIRV-Headers \ |
32 |
KhronosGroup:SPIRV-Tools:v2020.4:spirv_tools/3rdparty/SPIRV/SPIRV-Tools \ |
32 |
KhronosGroup:SPIRV-Tools:v2020.4:spirv_tools/3rdparty/SPIRV/SPIRV-Tools \ |
33 |
KhronosGroup:glslang:11.7.1:glslang/3rdparty/glslang/glslang \ |
33 |
KhronosGroup:glslang:11.7.1:glslang/3rdparty/glslang/glslang \ |
34 |
kinetiknz:cubeb:cubeb-0.2-1345-g773f16b:cubeb/3rdparty/cubeb/cubeb \ |
34 |
kinetiknz:cubeb:cubeb-0.2-1345-g773f16b:cubeb/3rdparty/cubeb/cubeb \ |
35 |
wolfSSL:wolfssl:v4.8.1-stable:wolfssl/3rdparty/wolfssl/wolfssl \ |
35 |
wolfSSL:wolfssl:v4.8.1-stable:wolfssl/3rdparty/wolfssl/wolfssl \ |
36 |
zeux:pugixml:v1.11.4:pugixml/3rdparty/pugixml |
36 |
zeux:pugixml:v1.11.4:pugixml/3rdparty/pugixml |
37 |
|
37 |
|
38 |
USES= cmake compiler:c++17-lang gl iconv:wchar_t localbase:ldflags \ |
38 |
USES= cmake compiler:c++17-lang gl iconv:wchar_t localbase:ldflags \ |
39 |
openal:soft pkgconfig python:3.4+,build qt:5 xorg |
39 |
openal:soft pkgconfig python:3.4+,build qt:5 xorg |
40 |
USE_GL= gl glew |
40 |
USE_GL= gl glew |
41 |
USE_QT= qmake_build buildtools_build core concurrent dbus gui multimedia svg widgets |
41 |
USE_QT= qmake_build buildtools_build core concurrent dbus gui multimedia svg widgets |
42 |
USE_XORG= x11 |
42 |
USE_XORG= x11 |
43 |
CMAKE_ON= CMAKE_SKIP_RPATH USE_SYSTEM_CURL USE_SYSTEM_FFMPEG USE_SYSTEM_LIBPNG |
43 |
CMAKE_ON= CMAKE_SKIP_RPATH USE_SYSTEM_CURL USE_SYSTEM_FFMPEG USE_SYSTEM_LIBPNG |
44 |
CMAKE_ON+= BUNDLE_SPEEX # only used by cubeb tests |
44 |
CMAKE_ON+= BUNDLE_SPEEX # only used by cubeb tests |
45 |
CMAKE_OFF= USE_NATIVE_INSTRUCTIONS USE_PRECOMPILED_HEADERS |
45 |
CMAKE_OFF= USE_NATIVE_INSTRUCTIONS USE_PRECOMPILED_HEADERS |
46 |
LDFLAGS+= -Wl,--as-needed # GLU |
46 |
LDFLAGS+= -Wl,--as-needed # GLU |
47 |
|
47 |
|
48 |
OPTIONS_DEFINE= ALSA EVDEV FAUDIO PULSEAUDIO JACK SNDIO VULKAN |
48 |
OPTIONS_DEFINE= ALSA EVDEV FAUDIO PULSEAUDIO JACK SNDIO VULKAN |
49 |
OPTIONS_DEFAULT=EVDEV FAUDIO PULSEAUDIO JACK SNDIO VULKAN |
49 |
OPTIONS_DEFAULT=EVDEV FAUDIO PULSEAUDIO JACK SNDIO VULKAN |
50 |
|
50 |
|
51 |
ALSA_BUILD_DEPENDS= alsa-lib>0:audio/alsa-lib |
51 |
ALSA_BUILD_DEPENDS= alsa-lib>0:audio/alsa-lib |
52 |
ALSA_CMAKE_BOOL= USE_ALSA |
52 |
ALSA_CMAKE_BOOL= USE_ALSA |
53 |
|
53 |
|
54 |
EVDEV_DESC= libevdev-based joystick support |
54 |
EVDEV_DESC= libevdev-based joystick support |
55 |
EVDEV_CMAKE_BOOL= USE_LIBEVDEV |
55 |
EVDEV_CMAKE_BOOL= USE_LIBEVDEV |
56 |
EVDEV_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto |
56 |
EVDEV_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto |
57 |
EVDEV_LIB_DEPENDS= libevdev.so:devel/libevdev |
57 |
EVDEV_LIB_DEPENDS= libevdev.so:devel/libevdev |
58 |
|
58 |
|
59 |
FAUDIO_DESC= FAudio audio support |
59 |
FAUDIO_DESC= FAudio audio support |
60 |
FAUDIO_LIB_DEPENDS= libFAudio.so:audio/faudio |
60 |
FAUDIO_LIB_DEPENDS= libFAudio.so:audio/faudio |
61 |
FAUDIO_CMAKE_BOOL= USE_FAUDIO USE_SYSTEM_FAUDIO |
61 |
FAUDIO_CMAKE_BOOL= USE_FAUDIO USE_SYSTEM_FAUDIO |
62 |
|
62 |
|
63 |
JACK_BUILD_DEPENDS= jackit>0:audio/jack |
63 |
JACK_BUILD_DEPENDS= jackit>0:audio/jack |
64 |
JACK_CMAKE_BOOL= USE_JACK |
64 |
JACK_CMAKE_BOOL= USE_JACK |
65 |
|
65 |
|
66 |
PULSEAUDIO_BUILD_DEPENDS=pulseaudio>0:audio/pulseaudio |
66 |
PULSEAUDIO_BUILD_DEPENDS=pulseaudio>0:audio/pulseaudio |
67 |
PULSEAUDIO_CMAKE_BOOL= USE_PULSE |
67 |
PULSEAUDIO_CMAKE_BOOL= USE_PULSE |
68 |
|
68 |
|
69 |
SNDIO_BUILD_DEPENDS= sndio>0:audio/sndio |
69 |
SNDIO_BUILD_DEPENDS= sndio>0:audio/sndio |
70 |
SNDIO_CMAKE_BOOL= USE_SNDIO |
70 |
SNDIO_CMAKE_BOOL= USE_SNDIO |
71 |
|
71 |
|
72 |
VULKAN_DESC= Vulkan renderer |
72 |
VULKAN_DESC= Vulkan renderer |
73 |
VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers |
73 |
VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers |
74 |
VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader |
74 |
VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader |
75 |
VULKAN_CMAKE_BOOL= USE_VULKAN |
75 |
VULKAN_CMAKE_BOOL= USE_VULKAN |
76 |
|
76 |
|
77 |
post-patch: |
77 |
post-patch: |
78 |
@${REINPLACE_CMD} -e '/GIT_BRANCH/s/local_build/master/' \ |
78 |
@${REINPLACE_CMD} -e '/GIT_BRANCH/s/local_build/master/' \ |
79 |
-e '/GIT_FULL_BRANCH/s/local_build/${GH_ACCOUNT}\/${GH_PROJECT}\/master/' \ |
79 |
-e '/GIT_FULL_BRANCH/s/local_build/${GH_ACCOUNT}\/${GH_PROJECT}\/master/' \ |
80 |
-e '/GIT_VERSION/s/local_build/${GH_TAGNAME:C/[^-]*-//}/' \ |
80 |
-e '/GIT_VERSION/s/local_build/${GH_TAGNAME:C/[^-]*-//}/' \ |
81 |
${WRKSRC}/${PORTNAME}/git-version.cmake |
81 |
${WRKSRC}/${PORTNAME}/git-version.cmake |
82 |
|
82 |
|
83 |
post-install: |
83 |
post-install: |
84 |
.if exists(/usr/bin/elfctl) |
84 |
.if exists(/usr/bin/elfctl) |
85 |
. if 0 |
85 |
. if ${OSVERSION} >= 1300000 |
86 |
elfctl -e +noaslr ${STAGEDIR}${PREFIX}/bin/${PORTNAME} |
86 |
elfctl -e +noaslr +wxneeded ${STAGEDIR}${PREFIX}/bin/${PORTNAME} |
87 |
. else |
87 |
. else |
88 |
# FreeBSD 12.2 lacks https://cgit.freebsd.org/src/commit/?id=f56d7f838f5b |
88 |
# FreeBSD 12.2 lacks https://cgit.freebsd.org/src/commit/?id=f56d7f838f5b |
89 |
elfctl -e +aslr ${STAGEDIR}${PREFIX}/bin/${PORTNAME} |
89 |
elfctl -e +aslr ${STAGEDIR}${PREFIX}/bin/${PORTNAME} |
90 |
. endif |
90 |
. endif |
91 |
.endif |
91 |
.endif |
92 |
|
92 |
|
93 |
.include <bsd.port.pre.mk> |
93 |
.include <bsd.port.pre.mk> |
94 |
|
94 |
|
95 |
# Ignore Mk/bsd.default-versions.mk but respect make.conf(5) |
95 |
# Ignore Mk/bsd.default-versions.mk but respect make.conf(5) |
96 |
.if !defined(DEFAULT_VERSIONS) || ! ${DEFAULT_VERSIONS:Mllvm*} |
96 |
.if !defined(DEFAULT_VERSIONS) || ! ${DEFAULT_VERSIONS:Mllvm*} |
97 |
LLVM_DEFAULT= 13 # bump if not latest release |
97 |
LLVM_DEFAULT= 13 # bump if not latest release |
98 |
.endif |
98 |
.endif |
99 |
BUILD_DEPENDS+= clang++${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} |
99 |
BUILD_DEPENDS+= clang++${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} |
100 |
USES:= ${USES:Ncompiler*} |
100 |
USES:= ${USES:Ncompiler*} |
101 |
CC= clang${LLVM_DEFAULT} |
101 |
CC= clang${LLVM_DEFAULT} |
102 |
CXX= clang++${LLVM_DEFAULT} |
102 |
CXX= clang++${LLVM_DEFAULT} |
103 |
CPP= clang-cpp${LLVM_DEFAULT} |
103 |
CPP= clang-cpp${LLVM_DEFAULT} |
104 |
|
104 |
|
105 |
# XXX Move into separate port and standardize via USES |
105 |
# XXX Move into separate port and standardize via USES |
106 |
GH_TUPLE+= llvm:llvm-project:llvmorg-13.0.1-rc1:libcxx |
106 |
GH_TUPLE+= llvm:llvm-project:llvmorg-13.0.1-rc1:libcxx |
107 |
CXXFLAGS+= -nostdinc++ -isystem${WRKDIR}/libcxx_prefix/include/c++/v1 |
107 |
CXXFLAGS+= -nostdinc++ -isystem${WRKDIR}/libcxx_prefix/include/c++/v1 |
108 |
LDFLAGS+= -nostdlib++ -L${WRKDIR}/libcxx_prefix/lib -l:libc++.a -lcxxrt |
108 |
LDFLAGS+= -nostdlib++ -L${WRKDIR}/libcxx_prefix/lib -l:libc++.a -lcxxrt |
109 |
|
109 |
|
110 |
pre-configure: bundled-libcxx |
110 |
pre-configure: bundled-libcxx |
111 |
bundled-libcxx: |
111 |
bundled-libcxx: |
112 |
@${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS:M*Ninja*} \ |
112 |
@${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS:M*Ninja*} \ |
113 |
-DCMAKE_INSTALL_PREFIX:PATH=${WRKDIR}/libcxx_prefix \ |
113 |
-DCMAKE_INSTALL_PREFIX:PATH=${WRKDIR}/libcxx_prefix \ |
114 |
-B ${WRKDIR}/libcxx_build -S ${WRKSRC_libcxx}/libcxx |
114 |
-B ${WRKDIR}/libcxx_build -S ${WRKSRC_libcxx}/libcxx |
115 |
@${DO_MAKE_BUILD:NDESTDIR*} install -C ${WRKDIR}/libcxx_build |
115 |
@${DO_MAKE_BUILD:NDESTDIR*} install -C ${WRKDIR}/libcxx_build |
116 |
|
116 |
|
117 |
.include <bsd.port.post.mk> |
117 |
.include <bsd.port.post.mk> |
118 |
- |
|
|