From 414e4dd026800cfca89767f7c8185f79506f2709 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=89=E9=B8=AD=E8=9B=8B?= Date: Sat, 8 Jun 2024 02:09:14 +0800 Subject: [PATCH] add build script for appveyor --- Build/setup_build.cmd | 2 +- Build/setup_build_for_appveyor.cmd | 54 ++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 Build/setup_build_for_appveyor.cmd diff --git a/Build/setup_build.cmd b/Build/setup_build.cmd index 9477c35b..7c0e8125 100644 --- a/Build/setup_build.cmd +++ b/Build/setup_build.cmd @@ -1,5 +1,5 @@ cd /d %~dp0 -rd /s /q dist +if exist dist rd /s /q dist mkdir dist\BetterGI @echo [prepare compiler] diff --git a/Build/setup_build_for_appveyor.cmd b/Build/setup_build_for_appveyor.cmd new file mode 100644 index 00000000..b7156f96 --- /dev/null +++ b/Build/setup_build_for_appveyor.cmd @@ -0,0 +1,54 @@ +cd /d %~dp0 +if exist dist rd /s /q dist +mkdir dist\BetterGI + +@echo [prepare compiler] +for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath`) do set "path=%path%;%%i\MSBuild\Current\Bin;%%i\Common7\IDE" + +@echo [prepare version] +cd /d ..\BetterGenshinImpact\Core\Config +set "script=Get-Content 'Global.cs' ^| Select-String -Pattern 'Version.*\"(.*)\"' ^| ForEach-Object { $_.Matches.Groups[1].Value }" + +for /f "usebackq delims=" %%i in (`powershell -NoLogo -NoProfile -Command ^"%script%^"`) do set version=%%i + +echo currnet version is %version% + +if "%b%"=="" ( + set "b=%version%" +) + +set "tmpfolder=%~dp0dist\BetterGI" +set "archiveFile=BetterGI_v%b%.7z" +set "setupFile=BetterGI_Setup_v%b%.exe" + +echo [build app using vs2022] +cd /d %~dp0 +rd /s /q ..\BetterGenshinImpact\bin\x64\Release\net7.0-windows10.0.22621.0\publish\win-x64\ +cd ..\ +dotnet publish -c Release -p:PublishProfile=FolderProfile + +echo [pack app using 7z] +cd /d %~dp0 +cd /d ..\BetterGenshinImpact\bin\x64\Release\net7.0-windows10.0.22621.0\publish\win-x64\ +xcopy * "%tmpfolder%" /E /C /I /Y +cd /d %~dp0 +del /f /q %tmpfolder%\*.lib +del /f /q %tmpfolder%\*ffmpeg*.dll +MicaSetup.Tools\7-Zip\7z a publish.7z %tmpfolder%\ -t7z -mx=5 -mf=BCJ2 -r -y +copy /y publish.7z .\MicaSetup\Resources\Setups\publish.7z +if exist "%zipFile%" ( del /f /q "%zipfile%" ) +rename publish.7z %archiveFile% + +@echo [build uninst using vs2022] +msbuild MicaSetup\MicaSetup.Uninst.csproj /t:Rebuild /p:Configuration=Release /p:DeployOnBuild=true /p:PublishProfile=FolderProfile /restore + +@echo [build setup using vs2022] +copy /y .\MicaSetup\bin\Release\net472\MicaSetup.exe .\MicaSetup\Resources\Setups\Uninst.exe +msbuild MicaSetup\MicaSetup.csproj /t:Build /p:Configuration=Release /p:DeployOnBuild=true /p:PublishProfile=FolderProfile /restore + +@echo [finish] +del /f /q MicaSetup.exe +copy /y .\MicaSetup\bin\Release\net472\MicaSetup.exe .\ +rename MicaSetup.exe %setupFile% +rd /s /q dist\BetterGI +