]> git.xonotic.org Git - xonotic/xonotic.git/blob - misc/tools/rsync-updater/update-to-autobuild.bat
Add yes/no dialogs to the update scripts, fixes #148
[xonotic/xonotic.git] / misc / tools / rsync-updater / update-to-autobuild.bat
1 @echo off\r
2 \r
3 if "%1" == "did-copy" goto copied\r
4 cd %~dp0\r
5 rmdir /s /q %TEMP%\xonotic-rsync-updater\r
6 mkdir %TEMP%\xonotic-rsync-updater\r
7 for %%f in (*.exe *.dll *.bat) do copy /b %%f %TEMP%\xonotic-rsync-updater\\r
8 %TEMP%\xonotic-rsync-updater\%~n0 did-copy\r
9 exit\r
10 \r
11 :copied\r
12 \r
13 set /p choice=This script will DELETE any custom files in the Xonotic folder. Do you want to continue [Y/N]?\r
14 if /i not "%choice%" == "Y" goto end\r
15 \r
16 set buildtype=release\r
17 if "%~n0" == "update-to-autobuild" set buildtype=autobuild\r
18 \r
19 set options=-Prtzil --executability --delete-after --delete-excluded --stats\r
20 \r
21 if exist Xonotic-low goto xonoticlow\r
22 if exist Xonotic-high goto xonotichigh\r
23 if exist ..\..\..\.git goto xonoticdatagit\r
24 if exist ..\..\..\data goto xonoticdata\r
25 goto xonotic\r
26 :xonoticlow\r
27         set url=rsync://beta.xonotic.org/%buildtype%-Xonotic-low/\r
28         set target=Xonotic-low/\r
29         goto endxonotic\r
30 :xonotichigh\r
31         set url=rsync://beta.xonotic.org/%buildtype%-Xonotic-high/\r
32         set target=Xonotic-high/\r
33         goto endxonotic\r
34 :xonoticdatagit\r
35         echo NOTE: this is a git repository download. Using the regular update method.\r
36         ..\..\..\all update\r
37         goto end\r
38 :xonoticdata\r
39         if exist ..\..\..\misc\tools\rsync-updater\rsync.exe goto xonoticdatarsync\r
40         echo FATAL: rsync not in misc\tools\rsync-updater. This update script cannot be used.\r
41         goto end\r
42 :xonoticdatarsync\r
43         set PATH=misc\tools\rsync-updater;%PATH%\r
44         cd ..\..\..\r
45         if exist data\xonotic-rsync-data-low.pk3 goto xonoticdatalow\r
46         if exist data\xonotic-*-data-low.pk3 goto xonoticdatalowfuzzy\r
47         if exist data\xonotic-rsync-data-high.pk3 goto xonoticdatahigh\r
48         if exist data\xonotic-*-data-high.pk3 goto xonoticdatahighfuzzy\r
49         if exist data\xonotic-rsync-data.pk3 goto xonoticdatanormal\r
50         if exist data\xonotic-*-data.pk3 goto xonoticdatanormalfuzzy\r
51         echo FATAL: unrecognized Xonotic build. This update script cannot be used.\r
52         goto end\r
53 :xonoticdatalow\r
54                 set url=rsync://beta.xonotic.org/%buildtype%-Xonotic-low/\r
55                 goto endxonoticdata\r
56 :xonoticdatalowfuzzy\r
57                 set url=rsync://beta.xonotic.org/%buildtype%-Xonotic-low/\r
58                 set options=%options% -y\r
59                 goto endxonoticdata\r
60 :xonoticdatahigh\r
61                 set url=rsync://beta.xonotic.org/%buildtype%-Xonotic-high/\r
62                 goto endxonoticdata\r
63 :xonoticdatahighfuzzy\r
64                 set url=rsync://beta.xonotic.org/%buildtype%-Xonotic-high/\r
65                 set options=%options% -y\r
66                 goto endxonoticdata\r
67 :xonoticdatanormal\r
68                 set url=rsync://beta.xonotic.org/%buildtype%-Xonotic/\r
69                 goto endxonoticdata\r
70 :xonoticdatanormalfuzzy\r
71                 set url=rsync://beta.xonotic.org/%buildtype%-Xonotic/\r
72                 set options=%options% -y\r
73                 goto endxonoticdata\r
74 :endxonoticdata\r
75         set target=./\r
76         goto endxonotic\r
77 :xonotic\r
78         set url=rsync://beta.xonotic.org/%buildtype%-Xonotic/\r
79         set target=Xonotic/\r
80         goto endxonotic\r
81 :endxonotic\r
82 \r
83 set excludes=\r
84 if not "%XONOTIC_INCLUDE_ALL%" == "" goto endbit\r
85 set excludes=%excludes% --exclude=/xonotic-linux*\r
86 set excludes=%excludes% --exclude=/xonotic-osx-*\r
87 set excludes=%excludes% --exclude=/Xonotic*.app\r
88 set excludes=%excludes% --exclude=/gmqcc/gmqcc.linux*\r
89 set excludes=%excludes% --exclude=/gmqcc/gmqcc.osx\r
90 \r
91 if "%ProgramFiles(x86)%" == "" goto bit32\r
92 :bit64\r
93         if not "%XONOTIC_INCLUDE_32BIT%" == "" goto endbit\r
94         set excludes=%excludes% --exclude=/xonotic-x86.exe\r
95         set excludes=%excludes% --exclude=/xonotic-x86-dedicated.exe\r
96         set excludes=%excludes% --exclude=/gmqcc/gmqcc.exe\r
97         set excludes=%excludes% --exclude=/bin32\r
98         set excludes=%excludes% --exclude=/*.dll\r
99         goto endbit\r
100 :bit32\r
101         set excludes=%excludes% --exclude=/xonotic.exe\r
102         set excludes=%excludes% --exclude=/xonotic-dedicated.exe\r
103         set excludes=%excludes% --exclude=/gmqcc/gmqcc-x64.exe\r
104         set excludes=%excludes% --exclude=/bin64\r
105         goto endbit\r
106 :endbit\r
107 \r
108 for %%f in (*.exe *.dll) do copy /b %%f %TEMP%\xonotic-rsync-updater\\r
109 %TEMP%\xonotic-rsync-updater\rsync %options% %excludes% %url% %target%\r
110 %TEMP%\xonotic-rsync-updater\chmod -R a+x %target%\r
111 \r
112 :end\r
113 pause\r
114 rmdir /s /q %TEMP%\xonotic-rsync-updater\r