| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- $ErrorActionPreference = "Stop"
- [Console]::OutputEncoding = [System.Text.Encoding]::UTF8
- $OpenSSLDir = "C:\Program Files\OpenSSL-Win64"
- $OpenSSLLibDir = "C:\Program Files\OpenSSL-Win64\lib\VC\x64\MT"
- $OpenSSLIncludeDir = "C:\Program Files\OpenSSL-Win64\include"
- Write-Host "Checking OpenSSL at: $OpenSSLDir"
- if (Test-Path $OpenSSLDir) {
- Write-Host "[OK] OpenSSL found" -ForegroundColor Green
- } else {
- Write-Host "[ERROR] OpenSSL not found at: $OpenSSLDir" -ForegroundColor Red
- exit 1
- }
- $libcryptoPath = "$OpenSSLLibDir\libcrypto_static.lib"
- $libsslPath = "$OpenSSLLibDir\libssl_static.lib"
- if ((Test-Path $libcryptoPath) -and (Test-Path $libsslPath)) {
- Write-Host "[OK] OpenSSL static libraries found" -ForegroundColor Green
- } else {
- Write-Host "[ERROR] OpenSSL static libraries not found" -ForegroundColor Red
- exit 1
- }
- # Backup original lib files and replace with static versions
- $backupDir = "$OpenSSLLibDir\backup"
- New-Item -ItemType Directory -Force -Path $backupDir | Out-Null
- Copy-Item "$OpenSSLLibDir\libcrypto.lib" "$backupDir\" -Force -ErrorAction SilentlyContinue
- Copy-Item "$OpenSSLLibDir\libssl.lib" "$backupDir\" -Force -ErrorAction SilentlyContinue
- Copy-Item "$OpenSSLLibDir\libcrypto_static.lib" "$OpenSSLLibDir\libcrypto.lib" -Force
- Copy-Item "$OpenSSLLibDir\libssl_static.lib" "$OpenSSLLibDir\libssl.lib" -Force
- Write-Host "[OK] Replaced lib files with static versions" -ForegroundColor Green
- # Clean OpenSSL build cache for fresh build
- Write-Host "Cleaning OpenSSL build cache..." -ForegroundColor Yellow
- $targetDir = "d:\code\steam\client-tauri\src-tauri\target"
- Remove-Item "$targetDir\release\build\openssl-sys*" -Recurse -Force -ErrorAction SilentlyContinue
- Remove-Item "$targetDir\release\deps\openssl*" -Recurse -Force -ErrorAction SilentlyContinue
- $env:OPENSSL_DIR = $OpenSSLDir
- $env:OPENSSL_LIB_DIR = $OpenSSLLibDir
- $env:OPENSSL_INCLUDE_DIR = $OpenSSLIncludeDir
- $env:OPENSSL_STATIC = "1"
- $env:RUSTFLAGS = "-C target-feature=+crt-static"
- Write-Host ""
- Write-Host "========================================" -ForegroundColor Cyan
- Write-Host "OpenSSL static linking configured" -ForegroundColor Cyan
- Write-Host "OPENSSL_DIR: $env:OPENSSL_DIR"
- Write-Host "OPENSSL_LIB_DIR: $env:OPENSSL_LIB_DIR"
- Write-Host "OPENSSL_STATIC: $env:OPENSSL_STATIC"
- Write-Host "========================================" -ForegroundColor Cyan
- $env:DEFAULT_BACKEND_API_URL = "http://125.122.32.114:9000"
- $env:TAURI_DEVTOOLS = "1"
- Write-Host ""
- Write-Host "Building SteamSH (with DevTools)..." -ForegroundColor Cyan
- Set-Location "d:\code\steam\client-tauri"
- npm run tauri build
- # Restore original lib files
- if (Test-Path "$backupDir\libcrypto.lib") {
- Copy-Item "$backupDir\libcrypto.lib" "$OpenSSLLibDir\" -Force
- Copy-Item "$backupDir\libssl.lib" "$OpenSSLLibDir\" -Force
- }
- Remove-Item $backupDir -Recurse -Force -ErrorAction SilentlyContinue
- Write-Host ""
- Write-Host "========================================" -ForegroundColor Green
- Write-Host "Build completed!" -ForegroundColor Green
- Write-Host "DevTools exe: d:\code\steam\client-tauri\src-tauri\target\release\steamSH.exe" -ForegroundColor Green
- Write-Host "========================================" -ForegroundColor Green
|