Subversion Repositories gelsvn

Rev

Rev 107 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
107 bj 1
package VC8ProjectCreator;
2
 
3
# ************************************************************
4
# Description   : A VC8 Project Creator
5
# Author        : Johnny Willemsen
6
# Create Date   : 4/21/2004
7
# ************************************************************
8
 
9
# ************************************************************
10
# Pragmas
11
# ************************************************************
12
 
13
use strict;
14
 
15
use VC7ProjectCreator;
16
 
17
use vars qw(@ISA);
18
@ISA = qw(VC7ProjectCreator);
19
 
20
my(%info) = ('cplusplus' => {'ext'      => '.vcproj',
21
                             'dllexe'   => 'vc8exe',
22
                             'libexe'   => 'vc8libexe',
23
                             'dll'      => 'vc8dll',
24
                             'lib'      => 'vc8lib',
25
                             'template' => 'vc8',
26
                            },
217 bj 27
             'csharp' => {'ext'      => '.csproj',
28
                          'dllexe'   => 'vc8csharp',
29
                          'libexe'   => 'vc8csharp',
30
                          'dll'      => 'vc8csharp',
31
                          'lib'      => 'vc8csharp',
32
                          'template' => 'vc8csharp',
33
                         },
107 bj 34
            );
35
 
217 bj 36
my(%config) = ('vcversion' => '8.00',
37
              );
38
 
107 bj 39
# ************************************************************
40
# Subroutine Section
41
# ************************************************************
42
 
217 bj 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
 
107 bj 54
sub get_configurable {
55
  my($self)   = shift;
56
  my($name)   = shift;
57
  return $config{$name};
58
}
59
 
60
sub get_info_hash {
61
  my($self) = shift;
62
  my($key)  = shift;
63
 
64
  if (defined $info{$key})  {
65
    return $info{$key};
66
  }
67
  return $self->SUPER::get_info_hash($key);
68
}
69
 
217 bj 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
}
83
 
107 bj 84
1;