Generate version.c in MSVC project
This commit is contained in:
parent
ae03cdfc34
commit
d1426c61c5
64
project/msvc/generateversion.vbs
Normal file
64
project/msvc/generateversion.vbs
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
' VBScript to retrieve GIT "revision" and generate version.c
|
||||||
|
' Copyright 2018 Thomas Bernard
|
||||||
|
Set WshShell = CreateObject("WScript.Shell")
|
||||||
|
Set FSO = CreateObject("Scripting.FileSystemObject")
|
||||||
|
versionfile = "..\..\src\version.c"
|
||||||
|
|
||||||
|
On Error Resume Next
|
||||||
|
|
||||||
|
Function GetRevision()
|
||||||
|
GetRevision = "unknown"
|
||||||
|
Err.Clear
|
||||||
|
Set oExec = WshShell.Exec("git rev-list --count 1af8c74f53110e349d8f0d19b14599281913f71f..")
|
||||||
|
If Err.Number = 0 Then
|
||||||
|
' Wait till the application is finished ...
|
||||||
|
Do While oExec.Status = 0
|
||||||
|
Loop
|
||||||
|
If oExec.ExitCode = 0 Then
|
||||||
|
GetRevision = oExec.StdOut.ReadLine()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Function GetBranch()
|
||||||
|
GetBranch = "unknown"
|
||||||
|
Err.Clear
|
||||||
|
Set oExec = WshShell.Exec("git rev-parse --abbrev-ref HEAD")
|
||||||
|
If Err.Number = 0 Then
|
||||||
|
' Wait till the application is finished ...
|
||||||
|
Do While oExec.Status = 0
|
||||||
|
Loop
|
||||||
|
If oExec.ExitCode = 0 Then
|
||||||
|
GetBranch = oExec.StdOut.ReadLine()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End Function
|
||||||
|
|
||||||
|
GIT_REVISION = GetRevision()
|
||||||
|
GIT_BRANCH = GetBranch()
|
||||||
|
'Wscript.Echo "GIT_REVISION=" & GIT_REVISION & Chr(13) & Chr(10) & "GIT_BRANCH=" & GIT_BRANCH
|
||||||
|
revision = GIT_REVISION
|
||||||
|
If GIT_BRANCH <> "unknown" And GIT_BRANCH <> "master" Then
|
||||||
|
revision = revision & "-" & GIT_BRANCH
|
||||||
|
End If
|
||||||
|
'Wscript.Echo revision
|
||||||
|
|
||||||
|
NeedWrite = True
|
||||||
|
Err.Clear
|
||||||
|
Set f = FSO.OpenTextFile(versionfile, 1, False) ' 1 = Read
|
||||||
|
If Err.Number = 0 Then
|
||||||
|
line = f.ReadLine
|
||||||
|
i = InStr(line, Chr(34)) + 1
|
||||||
|
j = InStr(i, line, Chr(34))
|
||||||
|
oldrevision = Mid(line, i, j - i)
|
||||||
|
If revision = oldrevision Then
|
||||||
|
NeedWrite = False
|
||||||
|
End If
|
||||||
|
f.Close
|
||||||
|
End If
|
||||||
|
|
||||||
|
If NeedWrite Then
|
||||||
|
Set f = FSO.OpenTextFile(versionfile, 2, True) ' 2 = Write
|
||||||
|
f.WriteLine "char SVN_revision[]=" & Chr(34) & revision & Chr(34) & ";"
|
||||||
|
f.Close
|
||||||
|
End If
|
||||||
53
project/msvc/generateversion.vcxproj
Normal file
53
project/msvc/generateversion.vcxproj
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{056D84A3-08C5-4A2A-A24B-D2E6D00D9552}</ProjectGuid>
|
||||||
|
<Keyword>MakeFileProj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Makefile</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Makefile</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<NMakeBuildCommandLine>generateversion.vbs</NMakeBuildCommandLine>
|
||||||
|
<NMakeOutput>..\..\src\version.c</NMakeOutput>
|
||||||
|
<NMakeCleanCommandLine>del ..\..\src\version.c</NMakeCleanCommandLine>
|
||||||
|
<NMakePreprocessorDefinitions>WIN32;_DEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<NMakeBuildCommandLine>generateversion.vbs</NMakeBuildCommandLine>
|
||||||
|
<NMakeOutput>..\..\src\version.c</NMakeOutput>
|
||||||
|
<NMakeCleanCommandLine>del ..\..\src\version.c</NMakeCleanCommandLine>
|
||||||
|
<NMakePreprocessorDefinitions>WIN32;NDEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
17
project/msvc/generateversion.vcxproj.filters
Normal file
17
project/msvc/generateversion.vcxproj.filters
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup>
|
||||||
|
<Filter Include="Fichiers sources">
|
||||||
|
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||||
|
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Fichiers d%27en-tête">
|
||||||
|
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||||
|
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Fichiers de ressources">
|
||||||
|
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||||
|
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||||
|
</Filter>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
@ -2,6 +2,11 @@
|
|||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||||
# Visual C++ Express 2010
|
# Visual C++ Express 2010
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grafx2", "grafx2.vcxproj", "{2C23F950-9403-4871-848E-7E98BE9BD565}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grafx2", "grafx2.vcxproj", "{2C23F950-9403-4871-848E-7E98BE9BD565}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
{056D84A3-08C5-4A2A-A24B-D2E6D00D9552} = {056D84A3-08C5-4A2A-A24B-D2E6D00D9552}
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generateversion", "generateversion.vcxproj", "{056D84A3-08C5-4A2A-A24B-D2E6D00D9552}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
@ -13,6 +18,10 @@ Global
|
|||||||
{2C23F950-9403-4871-848E-7E98BE9BD565}.Debug|Win32.Build.0 = Debug|Win32
|
{2C23F950-9403-4871-848E-7E98BE9BD565}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{2C23F950-9403-4871-848E-7E98BE9BD565}.Release|Win32.ActiveCfg = Release|Win32
|
{2C23F950-9403-4871-848E-7E98BE9BD565}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{2C23F950-9403-4871-848E-7E98BE9BD565}.Release|Win32.Build.0 = Release|Win32
|
{2C23F950-9403-4871-848E-7E98BE9BD565}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{056D84A3-08C5-4A2A-A24B-D2E6D00D9552}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{056D84A3-08C5-4A2A-A24B-D2E6D00D9552}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{056D84A3-08C5-4A2A-A24B-D2E6D00D9552}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{056D84A3-08C5-4A2A-A24B-D2E6D00D9552}.Release|Win32.Build.0 = Release|Win32
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|||||||
@ -194,6 +194,7 @@
|
|||||||
<ClCompile Include="..\..\src\tiles.c" />
|
<ClCompile Include="..\..\src\tiles.c" />
|
||||||
<ClCompile Include="..\..\src\transform.c" />
|
<ClCompile Include="..\..\src\transform.c" />
|
||||||
<ClCompile Include="..\..\src\unicode.c" />
|
<ClCompile Include="..\..\src\unicode.c" />
|
||||||
|
<ClCompile Include="..\..\src\version.c" />
|
||||||
<ClCompile Include="..\..\src\windows.c" />
|
<ClCompile Include="..\..\src\windows.c" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
|||||||
@ -337,5 +337,8 @@
|
|||||||
<ClCompile Include="..\..\src\unicode.c">
|
<ClCompile Include="..\..\src\unicode.c">
|
||||||
<Filter>Fichiers sources</Filter>
|
<Filter>Fichiers sources</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\version.c">
|
||||||
|
<Filter>Fichiers sources</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@ -63,10 +63,7 @@
|
|||||||
#include "factory.h"
|
#include "factory.h"
|
||||||
|
|
||||||
extern char Program_version[]; // generated in pversion.c
|
extern char Program_version[]; // generated in pversion.c
|
||||||
extern char SVN_revision[]; // generated in pversion.c
|
extern char SVN_revision[]; // generated in version.c
|
||||||
#ifdef _MSC_VER//TODO TEMP
|
|
||||||
#define SVN_revision "MSC_0000"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Recherche un raccourci clavier:
|
// Recherche un raccourci clavier:
|
||||||
word * Shortcut(word shortcut_number)
|
word * Shortcut(word shortcut_number)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user