summaryrefslogtreecommitdiff
path: root/modules/VC12ProjectCreator.pm
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2013-10-29 12:31:11 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2013-10-29 12:31:11 +0000
commitdcdac2decdba4ef7f1c03f1db106a50abc68d705 (patch)
treee47ed19c2fe716c56ff67321ad774dc630105811 /modules/VC12ProjectCreator.pm
parentc83727329ac00f54a0ac2d990b2f4d5d44ed2e95 (diff)
downloadMPC-dcdac2decdba4ef7f1c03f1db106a50abc68d705.tar.gz
Tue Oct 29 12:30:07 UTC 2013 Johnny Willemsen <jwillemsen@remedy.nl>
* modules/VC12ProjectCreator.pm: * modules/VC12WorkspaceCreator.pm: * templates/vc12dll.mpt: * templates/vc12exe.mpt: * templates/vc12lib.mpt: * templates/vc12libexe.mpt: * templates/vc12platforms.mpt: Starter templates for vc12, needs some more work later, just now seperate templates and creators
Diffstat (limited to 'modules/VC12ProjectCreator.pm')
-rw-r--r--modules/VC12ProjectCreator.pm57
1 files changed, 57 insertions, 0 deletions
diff --git a/modules/VC12ProjectCreator.pm b/modules/VC12ProjectCreator.pm
new file mode 100644
index 00000000..528600ec
--- /dev/null
+++ b/modules/VC12ProjectCreator.pm
@@ -0,0 +1,57 @@
+package VC12ProjectCreator;
+
+# ************************************************************
+# Description : A VC12 Project Creator
+# Author : Johnny Willemsen
+# Create Date : 10/29/2013
+# $Id$
+# ************************************************************
+
+# ************************************************************
+# Pragmas
+# ************************************************************
+
+use strict;
+
+use VC10ProjectCreator;
+
+use vars qw(@ISA);
+@ISA = qw(VC10ProjectCreator);
+
+## NOTE: We call the constant as a function to support Perl 5.6.
+my %info = (Creator::cplusplus() => {'ext' => '.vcxproj',
+ 'dllexe' => 'vc12exe',
+ 'libexe' => 'vc12libexe',
+ 'dll' => 'vc12dll',
+ 'lib' => 'vc12lib',
+ 'template' => [ 'vc10', 'vc10filters' ],
+ },
+ );
+
+my %config = ('vcversion' => '12.00',
+ 'prversion' => '10.0.30319.1',
+ 'toolsversion' => '4.0',
+ 'targetframeworkversion' => '4.0',
+ 'xmlheader' => 1
+ );
+
+# ************************************************************
+# Subroutine Section
+# ************************************************************
+
+sub get_info_hash {
+ my($self, $key) = @_;
+
+ ## If we have the setting in our information map, the use it.
+ return $info{$key} if (defined $info{$key});
+
+ ## Otherwise, see if our parent type can take care of it.
+ return $self->SUPER::get_info_hash($key);
+}
+
+sub get_configurable {
+ my($self, $name) = @_;
+ return $config{$name};
+}
+
+1;