This commit is contained in:
Megamouse 2025-07-13 08:59:53 +02:00
parent 67a4b020fc
commit e1461067eb
3 changed files with 29 additions and 12 deletions

View file

@ -19,6 +19,7 @@ if (-not $clangBuiltinsLibPath) {
Write-Error "Could not find clang_rt.builtins-x86_64.lib in LLVM installation."
exit 1
}
function Get-ShortPath([string]$path) {
$fso = New-Object -ComObject Scripting.FileSystemObject
return $fso.GetFolder($path).ShortPath
@ -53,8 +54,9 @@ Write-Host "Found mt.exe at: $mtExePath"
$VcpkgRoot="$(Get-Location)/vcpkg"
$VcpkgTriplet=$env:VCPKG_TRIPLET
$VcpkgInclude="$VcpkgRoot/installed/$VcpkgTriplet/include"
$VcpkgLib="$VcpkgRoot/installed/$VcpkgTriplet/lib"
$VcpkgInstall="$VcpkgRoot/installed/$VcpkgTriplet"
$VcpkgInclude="$VcpkgInstall/include"
$VcpkgLib="$VcpkgInstall/lib"
# Configure git safe directory
Write-Host "Configuring git safe directory"
@ -97,6 +99,7 @@ Write-Host "Running CMake configuration"
-DCMAKE_MT="$mtExePath" `
-DUSE_NATIVE_INSTRUCTIONS=OFF `
-DUSE_PRECOMPILED_HEADERS=OFF `
-DVCPKG_INSTALL_DIR="$VcpkgInstall" `
-DVCPKG_TARGET_TRIPLET="$VcpkgTriplet" `
-DFFMPEG_INCLUDE_DIR="$VcpkgInclude" `
-DFFMPEG_LIBAVCODEC="$VcpkgLib/avcodec.lib" `
@ -133,7 +136,3 @@ Write-Host "Build succeeded"
# Go back to root directory
Set-Location ..
Write-Host "Returned to root directory: $(Get-Location)"
# Deploy if build succeeded
Write-Host "Running deployment script"
& .ci/deploy-windows-clang-cl.sh x86_64

View file

@ -488,12 +488,15 @@ jobs:
powershell -ExecutionPolicy Bypass -File .ci/build-windows-clang-cl.ps1
- name: Save build Ccache
if: github.ref == 'refs/heads/master'
if: always()
uses: actions/cache/save@main
with:
path: ${{ env.CCACHE_DIR }}
key: ${{ steps.restore-build-ccache.outputs.cache-primary-key }}
- name: Deploy RPCS3
run: .ci/deploy-windows-clang-cl.sh x86_64
- name: Upload artifacts
uses: actions/upload-artifact@main
with:

View file

@ -156,11 +156,26 @@ if (NOT ANDROID)
add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/bin/Icons $<TARGET_FILE_DIR:rpcs3>/Icons
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/bin/GuiConfigs $<TARGET_FILE_DIR:rpcs3>/GuiConfigs
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/bin/test $<TARGET_FILE_DIR:rpcs3>/test
COMMAND "${WINDEPLOYQT_EXECUTABLE}" --no-compiler-runtime --no-opengl-sw --no-patchqt
--no-translations --no-system-d3d-compiler --no-system-dxc-compiler --no-quick-import
--plugindir "$<IF:$<CXX_COMPILER_ID:MSVC>,$<TARGET_FILE_DIR:rpcs3>/plugins,$<TARGET_FILE_DIR:rpcs3>/share/qt6/plugins>"
--verbose 0 "$<TARGET_FILE:rpcs3>")
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/bin/test $<TARGET_FILE_DIR:rpcs3>/test)
if(MSVC AND CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
message(STATUS "Using clang-cl: copying Qt DLLs from vcpkg manually")
set(QT_DLLS Qt6Core.dll Qt6Gui.dll Qt6Widgets.dll Qt6Concurrent.dll Qt6Multimedia.dll Qt6MultimediaWidgets.dll Qt6Svg.dll Qt6SvgWidgets.dll)
foreach(dll IN LISTS QT_DLLS)
add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${VCPKG_INSTALL_DIR}/bin/${dll}"
"$<TARGET_FILE_DIR:rpcs3>/${dll}")
endforeach()
else()
message(STATUS "Using windeployqt")
add_custom_command(TARGET rpcs3 POST_BUILD
COMMAND "${WINDEPLOYQT_EXECUTABLE}" --no-compiler-runtime --no-opengl-sw --no-patchqt
--no-translations --no-system-d3d-compiler --no-system-dxc-compiler --no-quick-import
--plugindir "$<TARGET_FILE_DIR:rpcs3>/qt6/plugins"
--verbose 0 "$<TARGET_FILE:rpcs3>")
endif()
endif()
# Unix installation