Subversion Repositories gelsvn

Rev

Rev 107 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 107 Rev 217
1
package VC8ProjectCreator;
1
package VC8ProjectCreator;
2
 
2
 
3
# ************************************************************
3
# ************************************************************
4
# Description   : A VC8 Project Creator
4
# Description   : A VC8 Project Creator
5
# Author        : Johnny Willemsen
5
# Author        : Johnny Willemsen
6
# Create Date   : 4/21/2004
6
# Create Date   : 4/21/2004
7
# ************************************************************
7
# ************************************************************
8
 
8
 
9
# ************************************************************
9
# ************************************************************
10
# Pragmas
10
# Pragmas
11
# ************************************************************
11
# ************************************************************
12
 
12
 
13
use strict;
13
use strict;
14
 
14
 
15
use VC7ProjectCreator;
15
use VC7ProjectCreator;
16
 
16
 
17
use vars qw(@ISA);
17
use vars qw(@ISA);
18
@ISA = qw(VC7ProjectCreator);
18
@ISA = qw(VC7ProjectCreator);
19
 
19
 
20
my(%info) = ('cplusplus' => {'ext'      => '.vcproj',
20
my(%info) = ('cplusplus' => {'ext'      => '.vcproj',
21
                             'dllexe'   => 'vc8exe',
21
                             'dllexe'   => 'vc8exe',
22
                             'libexe'   => 'vc8libexe',
22
                             'libexe'   => 'vc8libexe',
23
                             'dll'      => 'vc8dll',
23
                             'dll'      => 'vc8dll',
24
                             'lib'      => 'vc8lib',
24
                             'lib'      => 'vc8lib',
25
                             'template' => 'vc8',
25
                             'template' => 'vc8',
26
                            },
26
                            },
-
 
27
             'csharp' => {'ext'      => '.csproj',
-
 
28
                          'dllexe'   => 'vc8csharp',
-
 
29
                          'libexe'   => 'vc8csharp',
-
 
30
                          'dll'      => 'vc8csharp',
-
 
31
                          'lib'      => 'vc8csharp',
-
 
32
                          'template' => 'vc8csharp',
-
 
33
                         },
27
            );
34
            );
28
 
35
 
-
 
36
my(%config) = ('vcversion' => '8.00',
-
 
37
              );
-
 
38
 
29
# ************************************************************
39
# ************************************************************
30
# Subroutine Section
40
# Subroutine Section
31
# ************************************************************
41
# ************************************************************
32
 
42
 
-
 
43
sub post_file_creation {
-
 
44
  my($self) = shift;
-
 
45
  my($file) = shift;
-
 
46
 
-
 
47
  ## VC8 stores information in a .user file that may conflict
-
 
48
  ## with information stored in the project file.  If we have
-
 
49
  ## created a new project file, we will remove the corresponding
-
 
50
  ## .user file to avoid strange conflicts.
-
 
51
  unlink("$file.user");
-
 
52
}
-
 
53
 
33
sub get_configurable {
54
sub get_configurable {
34
  my($self)   = shift;
55
  my($self)   = shift;
35
  my($name)   = shift;
56
  my($name)   = shift;
36
  my(%config) = ('vcversion' => '8.00',
-
 
37
                );
-
 
38
  return $config{$name};
57
  return $config{$name};
39
}
58
}
40
 
59
 
41
sub get_info_hash {
60
sub get_info_hash {
42
  my($self) = shift;
61
  my($self) = shift;
43
  my($key)  = shift;
62
  my($key)  = shift;
44
 
63
 
45
  if (defined $info{$key})  {
64
  if (defined $info{$key})  {
46
    return $info{$key};
65
    return $info{$key};
47
  }
66
  }
48
  return $self->SUPER::get_info_hash($key);
67
  return $self->SUPER::get_info_hash($key);
49
}
68
}
-
 
69
 
-
 
70
sub translate_value {
-
 
71
  my($self) = shift;
-
 
72
  my($key)  = shift;
-
 
73
  my($val)  = shift;
-
 
74
 
-
 
75
  if ($key eq 'platform' && $val eq 'AnyCPU') {
-
 
76
    ## Microsoft uses AnyCPU in the project file, but
-
 
77
    ## uses Any CPU in the solution file.
-
 
78
    $val = 'Any CPU';
-
 
79
  }
-
 
80
 
-
 
81
  return $self->SUPER::translate_value($key, $val);
-
 
82
}
50
 
83
 
51
1;
84
1;
52
 
85