Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebase of nastys/osx14 branch #15035

Closed
wants to merge 481 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
481 commits
Select commit Hold shift + click to select a range
5669bd0
cellPhotoDecodeFromFile: allow decoding files inside dev_hdd1
Megamouse Oct 22, 2023
d23ad10
overlays/media_list_dialog: Fix path logging
Megamouse Oct 22, 2023
901f7b1
cellPhotoImport: better log channel name for string search in logs
Megamouse Oct 22, 2023
d5e8407
Reduce log level for missing gamecontrollerdb.txt to warning
Megamouse Oct 22, 2023
2e2d747
rsx: Add note explaining padding behavior in linear-swizzle conversio…
kd-11 Oct 24, 2023
a5c017b
vk: Drop obsolete ANV workaround
kd-11 Oct 24, 2023
51cbbcf
vk: Add chip detection for INTEL DG2 cards
kd-11 Oct 24, 2023
cfe36ac
Bump MVK to 1.2.6
shinra-electric Oct 24, 2023
d252c1d
Add MVK 1.2.6 to the Mac build script
shinra-electric Oct 24, 2023
cadcf99
Update moltenvk comment
Megamouse Oct 25, 2023
3171d39
unzip: check deflateInit and inflateInit results
Megamouse Oct 25, 2023
fb86757
fix unused parameter warning
Megamouse Oct 25, 2023
b24c8ec
fix deprecation warning
Megamouse Oct 25, 2023
74f919c
fix Clang compilation warnings
oltolm Sep 27, 2023
e78b9f7
sys_net: fix some warnings
Megamouse Oct 30, 2023
0e139da
Fix Firmware tree checkboxes
Darkhost1999 Nov 5, 2023
1fa9ab8
Switch official AppImage deployment to clang
hcorion Nov 7, 2023
0c2608d
Midi: improve error handling
Megamouse Nov 8, 2023
dbf6f57
Update dependencies
Megamouse Nov 8, 2023
10e5f24
rsx: Fix vertex program analyser bug
kd-11 Nov 8, 2023
5ce1e6f
rsx/vp: Emit more efficient code
kd-11 Nov 8, 2023
87b67b0
Replace some fmt::format with fmt::append
elad335 Oct 27, 2023
23875f8
Savestates: Implement initial RAM ventilation system
elad335 Oct 28, 2023
5e22f77
rsx: zip and unzip rsx captures
Megamouse Nov 9, 2023
c8cdd1c
rsx: fix reading zipped captures
Megamouse Nov 9, 2023
de6034b
Don't close moved file
Megamouse Nov 10, 2023
849f01a
Fix file_view::read_at
oltolm Nov 10, 2023
3287410
rsx: Fix vertex input validation failure
kd-11 Nov 15, 2023
6a4fa54
gl: Fix static sampler bindings
kd-11 Nov 20, 2023
964e28c
rsx: Always enable ROP output rounding if shader precision is higher …
kd-11 Nov 21, 2023
8c6f9d6
recording: initial audio recording
Megamouse Nov 6, 2022
57d6fb8
cellRec: use constant for block samples
Megamouse Nov 13, 2023
c3ac290
recording: fix default sample rate
Megamouse Nov 13, 2023
41f64f1
recording: use av_interleaved_write_frame
Megamouse Nov 13, 2023
9c19f0a
recording: fix warning
Megamouse Nov 13, 2023
2ca4bd2
recording: remove unused duration member variable
Megamouse Nov 14, 2023
28ed56b
cellRec: Don't present frames/samples if external audio/video is used
Megamouse Nov 14, 2023
634f30a
cellRec: implement audio encoding (no mixing yet)
Megamouse Nov 14, 2023
882132e
recording: decrease log spam
Megamouse Nov 15, 2023
e9b3f21
cellRec: implement audio mixing
Megamouse Nov 15, 2023
45432a2
recording: Fix flush. We want to clear the whole queue...
Megamouse Nov 15, 2023
91ab618
cellRec: fix internal video frame ringbuffer pts
Megamouse Nov 15, 2023
2c164f7
recording: improve pts accuracy and consistency
Megamouse Nov 15, 2023
8b8dd65
recording: cleanup audio config members
Megamouse Nov 15, 2023
d3e2a26
cellRec: fix member reset between recordings
Megamouse Nov 15, 2023
226e358
recording: fix subsequent recordings, reset sample counter to 0
Megamouse Nov 17, 2023
d041b95
recording: rename audio_sample to audio_frame
Megamouse Nov 21, 2023
5297463
recording: add h264/aac, better logging of output formats
Megamouse Oct 25, 2023
4eb0aaa
cellRec: fix downmix
Megamouse Nov 21, 2023
76847d2
cellRec: fix pausing and resuming
Megamouse Nov 22, 2023
522c49a
Qt: add trophy count column to trophy manager game list
Megamouse Nov 24, 2023
1d7c515
Change PPU/SPU Cache
Darkhost1999 Nov 23, 2023
d9e6a2b
Savestates: Compressed state files
elad335 Nov 15, 2023
b78378e
Savestates: Implement 'autostart off' mode for debugging
elad335 Nov 25, 2023
9a6b80c
Savestates: Fix optional_savestate_state use
elad335 Nov 25, 2023
629f0ac
Savestates: Add TAR and VM assert
elad335 Nov 25, 2023
f44dcbc
Savestates: Add errored state for compressed stream
elad335 Nov 25, 2023
5e4968b
Explicitly add qtsvg to freebsd
hcorion Nov 27, 2023
9a0a16c
Rewrite global zipping buffer function
elad335 Nov 27, 2023
6791488
vm: Minor optimization for memory serialization
elad335 Nov 27, 2023
baaf0c5
Savestates: Add basic statistics in log
elad335 Nov 28, 2023
efd6ed0
Fixup Firmware install
elad335 Nov 28, 2023
7a8d998
Savestates: Asynchronous compression
elad335 Nov 27, 2023
2ef255e
Fix file_view::read_at and file_view::get_stat
elad335 Nov 28, 2023
5795bc0
TAR: Improve logging
elad335 Nov 28, 2023
5667672
macOS CI: link ffmpeg after building it from source (#14843)
nastys Nov 28, 2023
cb8d35f
PPU Progress Dialog: Add "Applying PPU Code" stage
elad335 Nov 28, 2023
3145f16
SPU LLVM: Do not wait for Progress Dialog to clear before starting
elad335 Nov 28, 2023
b646896
serialization.hpp: Fix some warning
elad335 Nov 28, 2023
99dde5f
Qt: fix random segfaults when canceling batch operations
Megamouse Nov 25, 2023
67f3406
Qt: notify progress dialog cancelation when closing the game window
Megamouse Nov 25, 2023
81d5448
SPU: Fixup SPU Cache progress in first game boot
elad335 Nov 29, 2023
64dd58c
rsx: Code quality and readability improvements
kd-11 Nov 24, 2023
031affb
rsx: Remove unnecessary "else" clauses
kd-11 Nov 25, 2023
3df4e8d
fix Clang warnings
oltolm Nov 28, 2023
83fc730
Qt: use vector for camera video sink buffer
Megamouse Nov 22, 2023
072c141
Qt: implement hover pam in game list
Megamouse Nov 22, 2023
191fdd4
Qt 6.6.1
Megamouse Nov 24, 2023
ba72ce6
recording: optimize access to video recorder
Megamouse Nov 29, 2023
a17f4e0
cellRec: only access global video provider if necessary
Megamouse Nov 29, 2023
39be904
recording: use scoped_lock
Megamouse Nov 29, 2023
07a1599
audio: fix time stretching regression
Megamouse Nov 29, 2023
330d08d
recording: Implement audio recording for rsx audio
Megamouse Nov 30, 2023
8d7cfaf
Qt: force hover event handling for flow widget items
Megamouse Nov 30, 2023
4423239
Qt: Properly use ICON1.PAM from game data dir if available
Megamouse Dec 2, 2023
ad7de17
Qt: Remove default "Unknown" in GameInfo struct
Megamouse Dec 2, 2023
8663c14
PPU/sys_dbg: Implement self-modifying code
elad335 Dec 2, 2023
00fba47
Qt: only allow double leftclick in screenshot manager
Megamouse Dec 4, 2023
3b0880e
cellRec: Remove outdated frame size check
Megamouse Dec 5, 2023
c906784
Savestates: Fix compressed serialization handler deadlock
elad335 Dec 5, 2023
2479225
Mac CI: Install python before updating
hcorion Dec 6, 2023
922ca2a
rsx: Let 308a::color have a synchronization side-effect in strict mode
kd-11 Dec 8, 2023
312c9c3
rsx: Improve strict mode check in 308a::color
kd-11 Dec 8, 2023
e739d1e
asm.hpp: fix usage of _mm_prefetch
oltolm Dec 10, 2023
cb0cec9
Qt: Post Game-Installation Assistant
elad335 Dec 1, 2023
1a2cf94
macOS CI: use 7-Zip for artifacts (#14881)
nastys Dec 11, 2023
7775658
Update FAudio to 23.12
Megamouse Dec 6, 2023
1e7c222
Update curl to 8.5.0
Megamouse Dec 6, 2023
fc18361
curl: use native CA store instead of deploying cacert.pem
Megamouse Dec 6, 2023
e6b6190
Update Vulkan SDK to 1.3.268.0
Megamouse Dec 4, 2023
ed4834b
build/ci: Pick latest glslang from rpcs3 glslang fork
kd-11 Dec 11, 2023
2334a4f
build/ci: Fix glslang build on msvc
kd-11 Dec 11, 2023
9d33e05
windows/glslang: remove build dir after clean
Megamouse Dec 11, 2023
048fc07
sceNp/vm: Fix strings read, implement safe string reader
elad335 Dec 11, 2023
468a8ff
Qt: Cleanup game-install assistant pull request
elad335 Dec 11, 2023
678125a
Force sending a FIN packet on rpcn disconnect
RipleyTom Dec 13, 2023
eee35a2
Update soundtouch to 2.3.2
Megamouse Nov 30, 2023
2283b99
rsxaudio: fix ensure order
Megamouse Dec 11, 2023
5488114
input/evdev: handle flatness deadzone value
Megamouse Dec 11, 2023
a82e898
Fix initialization order for network_thread
RipleyTom Dec 14, 2023
b80558a
Trophy Manager: allow to lock/unlock trophies
Megamouse Nov 17, 2023
b14c1e3
Fix fxo dependencies
Megamouse Dec 14, 2023
1bbd24c
Start/Stop IPC when changing the config setting
Megamouse Dec 14, 2023
5be02e4
Correct the link of glslanglibs_mt.7z in BUILDING.md according to #14870
brian218 Dec 16, 2023
1577dfb
sys_usbd: Prevent sys_usbd_get_descriptor() from buffer overflow
brian218 Dec 16, 2023
1be2c7e
sys_usbd: Fix up sys_usbd_get_descriptor() error handling according t…
brian218 Dec 17, 2023
224854b
rsx: Avoid data loss in blit engine when WCB/WDB + RCB/RDB is active
kd-11 Dec 17, 2023
fe1d8ac
Update 7z to 23.01
Megamouse Dec 13, 2023
b3e7edd
update_manager: replace deprecated LookToRead2_Init nonsense with reg…
Megamouse Dec 13, 2023
06e1c9a
Update asmjit
Megamouse Dec 13, 2023
52bd9d4
Fix some warnings
Megamouse Dec 13, 2023
f87be27
Postpone thread launching on g_fxo->init
elad335 Dec 14, 2023
6b52def
Util/fixed_typemap.hpp: set unitialiazed data to trap values
elad335 Dec 14, 2023
a4964bd
Util/fixed_typemap.hpp: Fix thread-safety issue with init
elad335 Dec 15, 2023
20fa133
Remove some fxo->need calls
elad335 Dec 17, 2023
2fd367f
vm.h: Cleanup and fix some warnings
elad335 Dec 17, 2023
51a7758
Fix tcp_timeout_monitor abort
elad335 Dec 17, 2023
8be435f
Savestates: Fix pair serialization
elad335 Dec 18, 2023
afc19e0
Fix HLE sys_lwcond_signal_to
elad335 Dec 18, 2023
5971d6a
Fix some warnings
elad335 Dec 18, 2023
99e38c9
Do not allow running RPCS3 from Rar directories
Megamouse Dec 19, 2023
237612a
Qt: allow to use native styles
Megamouse Dec 19, 2023
8a498b9
Replace condition_variable with atomic_t
RipleyTom Dec 20, 2023
d02d2e0
Game Settings: Add an option to create game config using default sett…
elad335 Dec 19, 2023
3101f33
Fix sys_fs_fcntl default_sys_fs_container use
elad335 Dec 20, 2023
43b9feb
sceNpDrm: improve error handling of rap files
Megamouse Dec 19, 2023
8dff05c
overlays: move debug overlay to native overlay
Megamouse Dec 14, 2023
14ab70b
Fix warning
Megamouse Dec 19, 2023
ff67940
Fixup np_handler ctor
elad335 Dec 21, 2023
6dc93a2
Qt: use initial style as default style
Megamouse Dec 21, 2023
876aa62
Qt: use default colors for native styles
Megamouse Dec 22, 2023
859ba53
Fix nph and nt interderp
RipleyTom Dec 22, 2023
0d33955
Do not include profiling headers
kd-11 Dec 23, 2023
5ec0226
Remove destructor dependencies on nph
RipleyTom Dec 23, 2023
b01222a
Typemap: Set init to false after each individual destructor
Megamouse Dec 23, 2023
e06fc12
Use asmjit main repo
Megamouse Dec 25, 2023
acebfa6
rsx: De-spaghettify nv3089::image_in
kd-11 Dec 24, 2023
493aacf
rsx: Support DMA tiling in the CPU blit path
kd-11 Dec 24, 2023
63d85d2
rsx: Fix typo
kd-11 Dec 27, 2023
80614d2
Add savestate data validity asserts
elad335 Dec 25, 2023
70e8edc
Savestates: Fix audio_out_configuration initialization
elad335 Dec 28, 2023
dcc9fbe
Savestates/vm: rewrite memory saving for better compression
elad335 Dec 28, 2023
76c5021
Invalidate savestates
elad335 Dec 28, 2023
d9c20b0
Fix idm::allocate_id at fixed position
elad335 Dec 28, 2023
256804f
SPU LLVM: Fix savestates with LLVM
elad335 Dec 28, 2023
9dd5b9c
Suggest using SPU Savestates-Compatible Mode on failure to save
elad335 Dec 28, 2023
817ff45
Savestates: Save build version and creation time
elad335 Dec 28, 2023
d126bdc
SPU/Savestates: Remove reservation hack, allow its saving
elad335 Dec 29, 2023
6bf92d3
Qt/input: separate num keys from other keys
Megamouse Dec 29, 2023
b72bfaf
sys/cellGame: Fix hdd game dir name
Megamouse Dec 29, 2023
58de31d
rpcn 0.8
RipleyTom Apr 1, 2023
9e95d26
Fix sceNpManagerGetNetworkTime called before rpcn connection
RipleyTom Dec 29, 2023
ff444a0
Docs: Add clarifications regarding Visual Studio 2019 version require…
Tha14 Dec 30, 2023
931049d
msvc/debug: Pass c++ standard to Qt
Megamouse Dec 30, 2023
214d3c6
msvc/debug: remove outdated qtmaind.lib dependency
Megamouse Dec 30, 2023
10ae0aa
msvc/debug: set mainCRTStartup as entry point
Megamouse Dec 30, 2023
2a92da7
Fix display_length tag and add screenshot caption
Alexander-Wilms Dec 29, 2023
18a2719
Metainfo: Sort tags with jdAppStreamEdit
Alexander-Wilms Dec 29, 2023
49c1122
Metainfo: Add German translations and more URLs
Alexander-Wilms Dec 29, 2023
2aa9272
Metainfo: Update number of compatible games
Alexander-Wilms Dec 29, 2023
8c6d991
rsx: Avoid out of bounds write for tiled memory
kd-11 Dec 29, 2023
15a5299
rsx: Pick tiler/detiler according to actual block size
kd-11 Dec 29, 2023
b51f5f1
rsx: Fix detiler shader compilation
kd-11 Dec 29, 2023
c886d50
sceNp: fix size_t data types
Megamouse Dec 29, 2023
213f402
fix some warnings
Megamouse Dec 29, 2023
fdaacc3
fix more warnings
Megamouse Dec 30, 2023
598519b
rsx: remove unused param
Megamouse Dec 30, 2023
9b74d42
Update wolfssl to v5.6.6
Megamouse Dec 30, 2023
3d1caea
fix some more warnings
Megamouse Dec 30, 2023
833e7be
fixes
Megamouse Dec 30, 2023
ace34fa
HOTFIX for atomic wait
elad335 Dec 30, 2023
0eaa708
Update deploy-mac.sh - libjxl_cms.0.9.dylib
nastys Dec 31, 2023
24491aa
SPU LLVM: Minor fixup
elad335 Dec 29, 2023
df3b741
Savestates/TAR: Fix huge files handling in TAR serialization
elad335 Dec 29, 2023
11901b5
Compression: Improve async compression performance
elad335 Dec 29, 2023
1e42fc2
Compression: Fix infinite loop
elad335 Dec 29, 2023
9798720
Savestates/cellPad: Save old controller state
elad335 Dec 30, 2023
53b092d
Fix pad_state_notify_state_change
elad335 Dec 30, 2023
fe334f9
Move initialize_timebased_time call to a safer spot
elad335 Dec 31, 2023
a9ca1e0
Simplify lv2_timer_thread management
elad335 Dec 31, 2023
e315b60
Fix a corner case in lv2_timer_thread abort
elad335 Dec 31, 2023
7c1d035
Savestates: Rename DeferDeserialization, add some asserts
elad335 Dec 31, 2023
c277c3e
Add more debug info in serial_breathe_and_tag()
elad335 Dec 31, 2023
bf5c459
Utilities\BitField.h: Try to fix some warnings
elad335 Dec 31, 2023
7ac1969
PPUTranslator: Try to fix a regression
elad335 Dec 31, 2023
ca26750
Savestates: Fix g_fxo->init for types which use a pointer
elad335 Dec 31, 2023
2d46345
sys_spu: Fix warning and theoretical bug
elad335 Jan 1, 2024
b81e868
Savestates/vm: Improve saving performance
elad335 Jan 1, 2024
a99add5
cellPad: Fix LDD pads registration
elad335 Jan 1, 2024
069274f
Qt: Add build version, title, emulation state and date to fatal error…
elad335 Jan 1, 2024
a61a932
cellPad LDD fixup
elad335 Jan 1, 2024
6eec055
macOS CI: downgrade ffmpeg (#14987)
nastys Jan 1, 2024
9d185b8
rsx: Fix RSX tiling when using optimized DMA views
kd-11 Dec 31, 2023
a5d0cee
Warn on use of privileged port on Linux
RipleyTom Jan 1, 2024
4d5323e
sys: fix games.yml hdd paths
Megamouse Jan 1, 2024
a522567
Fix PPU progress dialog hint
elad335 Jan 1, 2024
dfdaa8a
Fix report_fatal_error duplicate messages
elad335 Jan 1, 2024
21245ad
Savestates: Experimental pads fix
elad335 Jan 1, 2024
973ab91
Improve Emulator::GetBdvdDir
elad335 Jan 2, 2024
afc0cb7
cellSearch: fix mounting of files
Megamouse Dec 31, 2023
fd300c7
cellSearch: mount paths in /dev_hdd0/.tmp/ instead of /,tmp/
Megamouse Dec 31, 2023
22db9cd
whitespace and format
Megamouse Jan 1, 2024
725477b
rpcs3_version: Bump to 0.0.30
AniLeo Dec 31, 2023
935a828
rsx: Add an option to force hardware MSAA resolve
kd-11 Jan 2, 2024
ca9ebfb
vk: Implement display output format correction
kd-11 Jan 4, 2024
a86b2b6
gl: Implement display output format correction
kd-11 Jan 4, 2024
d09f561
RPCN 0.9 (#15002)
RipleyTom Jan 5, 2024
42c566f
vk: Force GPU texture processing if the input is already GPU-resident…
kd-11 Jan 4, 2024
df15428
Fix sceNpBasicSetPresence when data is nullptr and size is 0
RipleyTom Jan 5, 2024
5c50134
Check room event callback has been set before calling it
RipleyTom Jan 5, 2024
0707e40
Impl sceNpBasicSendMessage
RipleyTom Jan 6, 2024
aebbbc2
Improve sceNpEula
RipleyTom Jan 5, 2024
32abb27
Add -Werror=implicit-fallthrough to cmake build
RipleyTom Jan 7, 2024
bcb792b
Misc NP fixes
RipleyTom Jan 7, 2024
24a8b87
sceNp: add missing check for roomSlotInfo
Megamouse Jan 9, 2024
c64dd30
sceNp: add missing withPassword check
Megamouse Jan 9, 2024
36e2c0d
sceNp: add missing roomPassword check
Megamouse Jan 9, 2024
b568c56
sceNp: don't return error if assignedReqId is null
Megamouse Jan 9, 2024
624e188
Fix games passing invalid npids
RipleyTom Jan 8, 2024
460a83c
Fix weird cmp in np_handler.cpp
RipleyTom Jan 8, 2024
049ffa8
Honk if you knew memset(nullptr, 0, 0) was UB
RipleyTom Jan 9, 2024
4719118
sys_fs: Fixed sys_fs_unlink()'s failing to delete files in dev_usbXXX
brian218 Dec 27, 2023
1f698c2
sys_fs: Prevented duplicate device mounting
brian218 Jan 7, 2024
0eeedfb
sys_fs: Improved get_device_root() path identifying security
brian218 Jan 7, 2024
671a77d
sys_ss: Corrected sys_ss_update_manager(0x6011) version data format
brian218 Jan 7, 2024
e2b85b0
sdl: log version
Megamouse Jan 2, 2024
929f48c
Update FAudio to 24.01
Megamouse Jan 2, 2024
71f8034
Windows: remove QtCore5Compat dependency
Megamouse Jan 7, 2024
f2a56ee
cellVideoExport: export movies to /video/ instead of /movie
Megamouse Jan 8, 2024
f2e9864
overlays: decrease log level
Megamouse Jan 8, 2024
01b55e8
audio_decoder: check for failed av_packet_alloc
Megamouse Jan 8, 2024
3eec6cd
audio_decoder: properly free packets
Megamouse Jan 8, 2024
d0e2b41
audio_decoder: improve logging
Megamouse Jan 8, 2024
65c8b3a
audio_decoder: ignore first invalid data error
Megamouse Jan 8, 2024
2c6b631
get_media_info: improve logging
Megamouse Jan 9, 2024
9e916c6
cellSearch: fix vfs music and video paths
Megamouse Jan 9, 2024
c2947cc
cellMusicDecode: fix random pop at the end of a stream
Megamouse Jan 9, 2024
59b1ecd
audio_decoder: fix more memleaks and dangling files
Megamouse Jan 9, 2024
8606237
cellMouse: silence some log spam
Megamouse Jan 9, 2024
eec2459
Merge branch 'master' into rebase_osx14
chotchki Jan 11, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 50 additions & 19 deletions .ci/build-mac.sh
Original file line number Diff line number Diff line change
@@ -1,21 +1,35 @@
#!/bin/sh -ex

export HOMEBREW_NO_AUTO_UPDATE=1
brew install -f --overwrite nasm ninja git p7zip ccache pipenv #create-dmg

#/usr/sbin/softwareupdate --install-rosetta --agree-to-license
arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
arch -x86_64 /usr/local/bin/brew install -f --overwrite python@3.12 || arch -x86_64 /usr/local/bin/brew link --overwrite python@3.12
arch -x86_64 /usr/local/bin/brew update
arch -x86_64 /usr/local/bin/brew uninstall -f --ignore-dependencies ffmpeg
arch -x86_64 /usr/local/bin/brew install -f --build-from-source ffmpeg@5
arch -x86_64 /usr/local/bin/brew reinstall -f --build-from-source gnutls freetype
arch -x86_64 /usr/local/bin/brew install llvm@16 glew cmake sdl2 vulkan-headers coreutils
arch -x86_64 /usr/local/bin/brew link -f llvm@16 ffmpeg@5

# moltenvk based on commit for 1.2.6 release
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/4ac0cfaca4c2505abe2fcbcc0ce5816572103a6c/Formula/m/molten-vk.rb
arch -x86_64 /usr/local/bin/brew install -f --overwrite ./molten-vk.rb
if [ "$(arch -x86_64 echo test)" = "test" ]; then
echo "Rosetta is installed or building on Intel"
else
echo "Installing Rosetta"
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
fi

if [ -z "$INSTALL_DEPS" ]; then
export INSTALL_DEPS="true"
fi

if [ "$INSTALL_DEPS" = "true" ] ; then
export HOMEBREW_NO_AUTO_UPDATE=1
brew -v || /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install -f --overwrite nasm ninja git p7zip create-dmg ccache pipenv

arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
arch -x86_64 /usr/local/bin/brew install -f --overwrite python@3.12 || arch -x86_64 /usr/local/bin/brew link --overwrite python@3.12
arch -x86_64 /usr/local/bin/brew update
arch -x86_64 /usr/local/bin/brew uninstall -f --ignore-dependencies ffmpeg
arch -x86_64 /usr/local/bin/brew install -f --build-from-source ffmpeg@5
arch -x86_64 /usr/local/bin/brew reinstall -f --build-from-source ffmpeg gnutls freetype jpeg-xl
arch -x86_64 /usr/local/bin/brew install llvm@16 glew cmake sdl2 vulkan-headers coreutils
arch -x86_64 /usr/local/bin/brew link -f llvm@16 ffmpeg@5

# moltenvk based on commit for 1.2.6 release
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/4ac0cfaca4c2505abe2fcbcc0ce5816572103a6c/Formula/m/molten-vk.rb
arch -x86_64 /usr/local/bin/brew install -f --overwrite ./molten-vk.rb
fi

#export MACOSX_DEPLOYMENT_TARGET=12.0
export CXX=clang++
export CC=clang
Expand All @@ -32,8 +46,13 @@ export WORKDIR;
WORKDIR="$(pwd)"

# Get Qt
if [ -z "$QT_VER" ]; then
export QT_VER="6.5.2"
fi

if [ ! -d "/tmp/Qt/$QT_VER" ]; then
mkdir -p "/tmp/Qt"
rm -rf qt-downloader
git clone https://github.com/engnr/qt-downloader.git
cd qt-downloader
git checkout f52efee0f18668c6d6de2dec0234b8c4bc54c597
Expand All @@ -49,15 +68,23 @@ ditto "/tmp/Qt/$QT_VER" "qt-downloader/$QT_VER"
export Qt6_DIR="$WORKDIR/qt-downloader/$QT_VER/clang_64/lib/cmake/Qt$QT_VER_MAIN"
export SDL2_DIR="$BREW_X64_PATH/opt/sdl2/lib/cmake/SDL2"

export PATH="$BREW_X64_PATH/opt/llvm@16/bin:$WORKDIR/qt-downloader/$QT_VER/clang_64/bin:$BREW_BIN:$BREW_SBIN:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin:$PATH"
export PATH="$WORKDIR/qt-downloader/$QT_VER/clang_64/bin:$BREW_BIN:$BREW_SBIN:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin:$PATH"

if [ "$USE_APPLE_CLANG" = "true" ]; then
echo "Building using Apple Clang"
else
echo "Building using Homebrew Clang"
export PATH="$BREW_X64_PATH/opt/llvm@16/bin:$PATH"
fi

export LDFLAGS="-L$BREW_X64_PATH/lib -Wl,-rpath,$BREW_X64_PATH/lib"
export CPPFLAGS="-I$BREW_X64_PATH/include -msse -msse2 -mcx16 -no-pie"
export LIBRARY_PATH="$BREW_X64_PATH/lib"
export LD_LIBRARY_PATH="$BREW_X64_PATH/lib"

export VULKAN_SDK
VULKAN_SDK="$BREW_X64_PATH/opt/molten-vk"
ln -s "$VULKAN_SDK/lib/libMoltenVK.dylib" "$VULKAN_SDK/lib/libvulkan.dylib"
ln -s "$VULKAN_SDK/lib/libMoltenVK.dylib" "$VULKAN_SDK/lib/libvulkan.dylib" || echo "Using existing libvulkan.dylib"
export VK_ICD_FILENAMES="$VULKAN_SDK/share/vulkan/icd.d/MoltenVK_icd.json"

export LLVM_DIR
Expand All @@ -69,7 +96,11 @@ git submodule -q update --init --depth=1 --jobs=8 $(awk '/path/ && !/ffmpeg/ &&
# 3rdparty fixes
sed -i '' "s/extern const double NSAppKitVersionNumber;/const double NSAppKitVersionNumber = 1343;/g" 3rdparty/hidapi/hidapi/mac/hid.c

mkdir build && cd build || exit 1
if [ "$CLEAN_BUILDDIR" = "true" ]; then
rm -rf build || echo "build directory not deleted"
fi

mkdir -p build && cd build || exit 1

"$BREW_X64_PATH/bin/cmake" .. \
-DUSE_SDL=ON \
Expand Down
4 changes: 4 additions & 0 deletions darwin/util/sysinfo_darwin.mm
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wold-style-cast"
#endif

#import <Foundation/Foundation.h>

namespace Darwin_Version
Expand Down
4 changes: 4 additions & 0 deletions rpcs3/display_sleep_control.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@
#include <windows.h>

#elif defined(__APPLE__)
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wold-style-cast"
#endif

#include <IOKit/pwr_mgt/IOPMLib.h>

static IOPMAssertionID s_pm_assertion = kIOPMNullAssertionID;
Expand Down
Loading