forked from AmpScm/AnkhSVN
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgh-version-setup.cmd
48 lines (37 loc) · 1.48 KB
/
gh-version-setup.cmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
@echo off
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
SET CACHE=%0\..\gh.cache.bat
SET RSPFILE=%0\..\msbuild-version.rsp
SET CURD=%0\..
echo @echo off > %CACHE%
pushd %0\..
FOR /F "usebackq" %%i in (`git rev-parse HEAD`) do (
SET GIT_SHA=%%i
)
popd
set ANKHSVN_MAJOR=2
set ANKHSVN_MINOR=9
set ANKHSVN_PATCH=%1
echo Prepare building AnkhSVN %ANKHSVN_MAJOR%.%ANKHSVN_MINOR%.%ANKHSVN_PATCH%
(
echo SET ANKHSVN_MAJOR=%ANKHSVN_MAJOR%
echo SET ANKHSVN_MINOR=%ANKHSVN_MINOR%
echo SET ANKHSVN_PATCH=%ANKHSVN_PATCH%
echo SET GIT_SHA=%GIT_SHA%
) >> %CACHE%
SET ANKHSVN_VER=%ANKHSVN_MAJOR%.%ANKHSVN_MINOR%.%ANKHSVN_PATCH%
(
echo /p:ForceAssemblyVersion=%ANKHSVN_MAJOR%.%ANKHSVN_MINOR%.%ANKHSVN_PATCH%
echo /p:ForceAssemblyInformationalVersion=%ANKHSVN_MAJOR%.%ANKHSVN_MINOR%.%ANKHSVN_PATCH%-%GIT_SHA%
echo /p:ForceAssemblyCompany="AnkhSVN Project, powered by AmpScm, QQn & GitHub"
echo /p:ForceAssemblyCopyright="Apache 2.0 licensed. See https://github.com/AmpScm/AnkhSVN"
echo /p:ForceAssemblyConfiguration=Release-%GIT_SHA%
echo /p:BuildBotBuild=true
echo /p:RestoreForce=true
) > %RSPFILE%
call :xmlpoke %CURD%\..\..\src\Ankh.Package\x86\source.extension.VsixManifest //vsx:Metadata/vsx:Identity/@Version "%ANKHSVN_VER%"
call :xmlpoke %CURD%\..\..\src\Ankh.Package\x64\source.extension.VsixManifest //vsx:Metadata/vsx:Identity/@Version "%ANKHSVN_VER%"
goto :eof
:xmlpoke
msbuild /nologo /v:m %CURD%\xmlpoke.build "/p:File=%1" "/p:XPath=%2" "/p:Value=%3" || exit /B 1
exit /B 0