mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2024-11-28 22:52:38 +00:00
Internal: more updates to the build toolchain...
This commit is contained in:
parent
ed3233736b
commit
84886d10ba
6 changed files with 89 additions and 46 deletions
Binary file not shown.
|
@ -174,7 +174,7 @@ IF NOT EXIST "Build\Plugins\VisplaneExplorer.dll" GOTO FILEFAIL
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Creating changelog...
|
ECHO Creating changelog...
|
||||||
ECHO.
|
ECHO.
|
||||||
ChangelogMaker.exe "GIT_Build\Changelog.xml" "Build" "MaxED" %REVISIONNUMBER%
|
ChangelogMaker.exe "GIT_Build\Changelog.xml" "Build" "m-x-d>MaxED" %REVISIONNUMBER%
|
||||||
IF %ERRORLEVEL% NEQ 0 GOTO LOGFAIL
|
IF %ERRORLEVEL% NEQ 0 GOTO LOGFAIL
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
|
@ -167,7 +167,7 @@ IF NOT EXIST "Build\Plugins\VisplaneExplorer.dll" GOTO FILEFAIL
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Creating changelog...
|
ECHO Creating changelog...
|
||||||
ECHO.
|
ECHO.
|
||||||
ChangelogMaker.exe "Release\Changelog.xml" "Build" "MaxED" %REVISIONNUMBER%
|
ChangelogMaker.exe "Release\Changelog.xml" "Build" "m-x-d>MaxED" %REVISIONNUMBER%
|
||||||
IF %ERRORLEVEL% NEQ 0 GOTO LOGFAIL
|
IF %ERRORLEVEL% NEQ 0 GOTO LOGFAIL
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
28
README.md
28
README.md
|
@ -1,20 +1,16 @@
|
||||||
System requirements:
|
**System requirements:**
|
||||||
• 2.4 GHz CPU or faster (multi-core recommended).
|
- 2.4 GHz CPU or faster (multi-core recommended).
|
||||||
• Windows XP, Vista, 7, 8 or 10.
|
- Windows XP, Vista, 7, 8 or 10.
|
||||||
• Graphics card with Pixel Shader model 2.0 support.
|
- Graphics card with Pixel Shader model 2.0 support.
|
||||||
|
|
||||||
Required software:
|
**Required software:**
|
||||||
• Microsoft .Net Framework 3.5 (http://www.microsoft.com/download/en/details.aspx?id=25150).
|
- Microsoft .Net Framework 3.5 (http://www.microsoft.com/download/en/details.aspx?id=25150).
|
||||||
• DirectX 9.0 Runtime (https://www.microsoft.com/en-us/download/details.aspx?id=35&44F86079-8679-400C-BFF2-9CA5F2BCBDFC=1).
|
- DirectX 9.0 Runtime (https://www.microsoft.com/en-us/download/details.aspx?id=35&44F86079-8679-400C-BFF2-9CA5F2BCBDFC=1).
|
||||||
|
|
||||||
Official thread at ZDoom.org:
|
**Links:**
|
||||||
• http://forum.zdoom.org/viewtopic.php?f=3&t=32392
|
- [Official thread at ZDoom.org](http://forum.zdoom.org/viewtopic.php?f=3&t=32392)
|
||||||
|
- [Unofficial thread at iddqd.ru (in russian)](http://i.iddqd.ru/viewtopic.php?t=522)
|
||||||
|
- [Git builds at DRDTeam.org](http://devbuilds.drdteam.org/doombuilder2-gzdb/)
|
||||||
|
|
||||||
Unofficial thread at iddqd.ru (in russian):
|
More detailed info can be found in the **editor documentation** (Refmanual.chm).
|
||||||
• http://i.iddqd.ru/viewtopic.php?t=522
|
|
||||||
|
|
||||||
Git builds at DRDTeam.org:
|
|
||||||
• http://devbuilds.drdteam.org/doombuilder2-gzdb/
|
|
||||||
|
|
||||||
More detailed info can be found in the editor documentation (Refmanual.chm).
|
|
||||||
|
|
||||||
|
|
|
@ -1441,12 +1441,33 @@
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<PreBuildEvent>
|
<PreBuildEvent>
|
||||||
</PreBuildEvent>
|
</PreBuildEvent>
|
||||||
<PostBuildEvent>if exist "%25VS140COMNTOOLS%25" call "%25VS140COMNTOOLS%25vsvars32.bat"
|
<PostBuildEvent>if exist "%25VS140COMNTOOLS%25" goto tools140
|
||||||
else if exist "%25VS120COMNTOOLS%25" call "%25VS120COMNTOOLS%25vsvars32.bat"
|
if exist "%25VS120COMNTOOLS%25" goto tools120
|
||||||
else if exist "%25VS110COMNTOOLS%25" call "%25VS110COMNTOOLS%25vsvars32.bat"
|
if exist "%25VS110COMNTOOLS%25" goto tools110
|
||||||
else if exist "%25VS100COMNTOOLS%25" call "%25VS100COMNTOOLS%25vsvars32.bat"
|
if exist "%25VS100COMNTOOLS%25" goto tools100
|
||||||
else if exist "%25VS90COMNTOOLS%25" call "%25VS90COMNTOOLS%25vsvars32.bat"
|
if exist "%25VS90COMNTOOLS%25" goto tools90
|
||||||
|
|
||||||
|
:tools140
|
||||||
|
call "%25VS140COMNTOOLS%25vsvars32.bat"
|
||||||
|
goto end
|
||||||
|
|
||||||
|
:tools120
|
||||||
|
call "%25VS120COMNTOOLS%25vsvars32.bat"
|
||||||
|
goto end
|
||||||
|
|
||||||
|
:tools110
|
||||||
|
call "%25VS110COMNTOOLS%25vsvars32.bat"
|
||||||
|
goto end
|
||||||
|
|
||||||
|
:tools100
|
||||||
|
call "%25VS100COMNTOOLS%25vsvars32.bat"
|
||||||
|
goto end
|
||||||
|
|
||||||
|
:tools90
|
||||||
|
call "%25VS90COMNTOOLS%25vsvars32.bat"
|
||||||
|
goto end
|
||||||
|
|
||||||
|
:end
|
||||||
editbin.exe /NOLOGO /LARGEADDRESSAWARE "$(TargetPath)"</PostBuildEvent>
|
editbin.exe /NOLOGO /LARGEADDRESSAWARE "$(TargetPath)"</PostBuildEvent>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>
|
</Project>
|
|
@ -1,6 +1,7 @@
|
||||||
#region ======================== Namespaces
|
#region ======================== Namespaces
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Xml;
|
using System.Xml;
|
||||||
|
@ -21,25 +22,41 @@ namespace mxd.ChangelogMaker
|
||||||
|
|
||||||
static int Main(string[] args)
|
static int Main(string[] args)
|
||||||
{
|
{
|
||||||
Console.WriteLine("Changelog Maker v02 by MaxED");
|
Console.WriteLine("Changelog Maker v03 by MaxED");
|
||||||
if(args.Length != 4)
|
if(args.Length != 4)
|
||||||
{
|
{
|
||||||
return Fail("USAGE: ChangelogMaker.exe input output author revision_number\n" +
|
return Fail("USAGE: ChangelogMaker.exe input output author revision_number\n" +
|
||||||
"input: xml file generated by 'svn log --xml' command\n" +
|
"input: xml file generated by MakeRelese.bat\\MakeGITRelese.bat\n" +
|
||||||
"output: directory to store Changelog.txt in\n" +
|
"output: directory to store Changelog.txt in\n" +
|
||||||
"author: commit author\n" +
|
"renameauthor: commit authors rename scheme. For example, \"m-x-d>MaxED|biwa>Boris\"\n" +
|
||||||
"revision_number: latest revision number", 1);
|
"revision_number: latest revision number", 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
string input = args[0];
|
string input = args[0];
|
||||||
string output = args[1];
|
string output = args[1];
|
||||||
string author = args[2];
|
string renameauthor = args[2]; // m-x-d>MaxED|biwa>Boris
|
||||||
int revnum;
|
int revnum;
|
||||||
if(!int.TryParse(args[3], out revnum)) return Fail("Unable to parse revision number from string '" + revnum + "'.", 4);
|
if(!int.TryParse(args[3], out revnum)) return Fail("Unable to parse revision number from string '" + revnum + "'.", 4);
|
||||||
|
|
||||||
if(!File.Exists(input)) return Fail("Input file '" + input + "' does not exist.", 2);
|
if(!File.Exists(input)) return Fail("Input file '" + input + "' does not exist.", 2);
|
||||||
if(!Directory.Exists(output)) return Fail("Output folder '" + output + "' does not exist.", 3);
|
if(!Directory.Exists(output)) return Fail("Output folder '" + output + "' does not exist.", 3);
|
||||||
|
|
||||||
|
// Create author rename array, because git log can't decide how to call me...
|
||||||
|
Dictionary<string, string> authorrename = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||||
|
string[] parts = renameauthor.Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
|
||||||
|
foreach(string ren in parts)
|
||||||
|
{
|
||||||
|
string[] rename = ren.Split(new[] { '>' }, StringSplitOptions.RemoveEmptyEntries);
|
||||||
|
if(rename.Length == 2 && !string.IsNullOrEmpty(rename[0].Trim()) && !string.IsNullOrEmpty(rename[1].Trim()))
|
||||||
|
{
|
||||||
|
authorrename[rename[0].Trim()] = rename[1].Trim();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Console.WriteLine("Invalid rename scheme: \"" + ren + "\"");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//Replace bracket placeholders, because git log command doesn't escape xml-unfriendly chars like < or >...
|
//Replace bracket placeholders, because git log command doesn't escape xml-unfriendly chars like < or >...
|
||||||
string inputtext = File.ReadAllText(input);
|
string inputtext = File.ReadAllText(input);
|
||||||
inputtext = inputtext.Replace("<", "<").Replace(">", ">").Replace("&", "&").Replace("[OB]", "<").Replace("[CB]", ">");
|
inputtext = inputtext.Replace("<", "<").Replace(">", ">").Replace("&", "&").Replace("[OB]", "<").Replace("[CB]", ">");
|
||||||
|
@ -51,6 +68,7 @@ namespace mxd.ChangelogMaker
|
||||||
}
|
}
|
||||||
|
|
||||||
StringBuilder result = new StringBuilder(1000);
|
StringBuilder result = new StringBuilder(1000);
|
||||||
|
char[] messagetrim = {' ', '\r', '\n' };
|
||||||
foreach(XmlNode node in log.ChildNodes)
|
foreach(XmlNode node in log.ChildNodes)
|
||||||
{
|
{
|
||||||
if(node.ChildNodes.Count == 0) continue;
|
if(node.ChildNodes.Count == 0) continue;
|
||||||
|
@ -60,7 +78,7 @@ namespace mxd.ChangelogMaker
|
||||||
string commit = (logentry.Attributes != null ? logentry.Attributes.GetNamedItem("commit").Value : "unknown");
|
string commit = (logentry.Attributes != null ? logentry.Attributes.GetNamedItem("commit").Value : "unknown");
|
||||||
DateTime date = DateTime.Now;
|
DateTime date = DateTime.Now;
|
||||||
string message = string.Empty;
|
string message = string.Empty;
|
||||||
bool skip = false;
|
string author = string.Empty;
|
||||||
|
|
||||||
// Add revision info...
|
// Add revision info...
|
||||||
if(logentry.Attributes != null)
|
if(logentry.Attributes != null)
|
||||||
|
@ -75,7 +93,15 @@ namespace mxd.ChangelogMaker
|
||||||
switch(value.Name)
|
switch(value.Name)
|
||||||
{
|
{
|
||||||
case "author":
|
case "author":
|
||||||
if(value.InnerText != author) skip = true;
|
if(authorrename.ContainsKey(value.InnerText))
|
||||||
|
{
|
||||||
|
author = authorrename[value.InnerText];
|
||||||
|
value.InnerText = author; // save author
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
author = value.InnerText;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "date":
|
case "date":
|
||||||
|
@ -83,27 +109,27 @@ namespace mxd.ChangelogMaker
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "msg":
|
case "msg":
|
||||||
message = value.InnerText;
|
message = value.InnerText.Trim(messagetrim);
|
||||||
|
value.InnerText = message; // also save trimmed message
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!skip)
|
result.Append("R" + revnum)
|
||||||
{
|
.Append(" | ")
|
||||||
result.Append("R" + revnum)
|
.Append(commit)
|
||||||
.Append(" | ")
|
.Append(" | ")
|
||||||
.Append(commit)
|
.Append(author)
|
||||||
.Append(" | ")
|
.Append(" | ")
|
||||||
.Append(date.ToShortDateString())
|
.Append(date.ToShortDateString())
|
||||||
.Append(", ")
|
.Append(", ")
|
||||||
.Append(date.ToShortTimeString())
|
.Append(date.ToShortTimeString())
|
||||||
.Append(Environment.NewLine)
|
.Append(Environment.NewLine)
|
||||||
.AppendLine(SEPARATOR)
|
.AppendLine(SEPARATOR)
|
||||||
.Append(message)
|
.Append(message)
|
||||||
.Append(Environment.NewLine)
|
.Append(Environment.NewLine)
|
||||||
.Append(Environment.NewLine)
|
.Append(Environment.NewLine)
|
||||||
.Append(Environment.NewLine);
|
.Append(Environment.NewLine);
|
||||||
}
|
|
||||||
|
|
||||||
// Decrease revision number...
|
// Decrease revision number...
|
||||||
revnum--;
|
revnum--;
|
||||||
|
|
Loading…
Reference in a new issue