52 lines
1.4 KiB
Haxe
52 lines
1.4 KiB
Haxe
import sys.io.File;
|
|
|
|
class Write
|
|
{
|
|
public static function main()
|
|
{
|
|
var args = Sys.args();
|
|
var buildNumber = Std.parseInt(args[0]);
|
|
if (buildNumber<1 || buildNumber==null)
|
|
throw "Usage: Write buildNumber";
|
|
|
|
|
|
var jsonFile = "haxelib.json";
|
|
var lines = File.getContent(jsonFile).split("\n");
|
|
var idx = 0;
|
|
var versionMatch = ~/(.*"version"\s*:\s*")(.*)(".*)/;
|
|
var found = false;
|
|
var newVersion = "";
|
|
while(idx<lines.length)
|
|
{
|
|
if (versionMatch.match(lines[idx]))
|
|
{
|
|
var parts = versionMatch.matched(2).split(".");
|
|
if (parts.length==3)
|
|
parts[2] = buildNumber+"";
|
|
else
|
|
parts.push(buildNumber+"");
|
|
newVersion = parts.join(".");
|
|
lines[idx]=versionMatch.matched(1) + newVersion + versionMatch.matched(3);
|
|
found = true;
|
|
break;
|
|
}
|
|
idx++;
|
|
}
|
|
if (!found)
|
|
throw "Could not find version in " + jsonFile;
|
|
|
|
File.saveContent(jsonFile, lines.join("\n") );
|
|
|
|
var writeVersionFilename = "include/HxcppVersion.h";
|
|
var define = "HXCPP_VERSION";
|
|
var lines = [
|
|
'#ifndef $define',
|
|
'#define $define "$newVersion"',
|
|
'#endif'
|
|
];
|
|
File.saveContent( writeVersionFilename, lines.join("\n") );
|
|
|
|
Sys.println("hxcpp_release=" + newVersion );
|
|
}
|
|
}
|