Generate GUID for VS2010 apps
diff --git a/scripts/data_files/vs2010-app-template.vcxproj b/scripts/data_files/vs2010-app-template.vcxproj
index 7433cd3..9e2b47a 100644
--- a/scripts/data_files/vs2010-app-template.vcxproj
+++ b/scripts/data_files/vs2010-app-template.vcxproj
@@ -27,7 +27,7 @@
</ProjectReference>
</ItemGroup>
<PropertyGroup Label="Globals">
- <ProjectGuid>{54880004-9AA2-434D-A2F0-7F59D6F1536A}</ProjectGuid>
+ <ProjectGuid><GUID></ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace><APPNAME></RootNamespace>
</PropertyGroup>
diff --git a/scripts/update_vs_apps.pl b/scripts/update_vs_apps.pl
index 5f2f944..76fc59f 100755
--- a/scripts/update_vs_apps.pl
+++ b/scripts/update_vs_apps.pl
@@ -8,6 +8,7 @@
use warnings;
use strict;
+use Digest::MD5 'md5_hex';
my $vs6_dir = "visualc/VS6";
my $vs6_ext = "dsp";
@@ -81,15 +82,26 @@
return $content;
}
+sub gen_app_guid {
+ my ($path) = @_;
+
+ my $guid = md5_hex( "PolarSSL:$path" );
+ $guid =~ s/(.{8})(.{4})(.{4})(.{4})(.{12})/\U{$1-$2-$3-$4-$5}/;
+
+ return $guid;
+}
+
sub gen_app {
my ($path, $template, $dir, $ext) = @_;
+ my $guid = gen_app_guid( $path );
$path =~ s!/!\\!g;
(my $appname = $path) =~ s/.*\\//;
my $content = $template;
$content =~ s/<PATHNAME>/$path/g;
$content =~ s/<APPNAME>/$appname/g;
+ $content =~ s/<GUID>/$guid/g;
open my $app_fh, '>', "$dir/$appname.$ext";
print $app_fh $content;