Subversion Repositories gelsvn

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
68 bj 1
package VC7ProjectCreator;
2
 
3
# ************************************************************
4
# Description   : A VC7 Project Creator
5
# Author        : Chad Elliott
6
# Create Date   : 4/23/2002
7
# ************************************************************
8
 
9
# ************************************************************
10
# Pragmas
11
# ************************************************************
12
 
13
use strict;
14
 
15
use GUID;
16
use ProjectCreator;
17
use VCProjectBase;
18
 
19
use vars qw(@ISA);
20
@ISA = qw(VCProjectBase ProjectCreator);
21
 
22
# ************************************************************
23
# Data Section
24
# ************************************************************
25
 
26
my(%info) = ('cplusplus' => {'ext'      => '.vcproj',
27
                             'dllexe'   => 'vc7exe',
28
                             'libexe'   => 'vc7libexe',
29
                             'dll'      => 'vc7dll',
30
                             'lib'      => 'vc7lib',
31
                             'template' => 'vc7',
32
                            },
33
             'csharp'    => {'ext'      => '.csproj',
34
                             'dllexe'   => 'vc7csharp',
35
                             'libexe'   => 'vc7csharp',
36
                             'dll'      => 'vc7csharp',
37
                             'lib'      => 'vc7csharp',
38
                             'template' => 'vc7csharp',
39
                            },
40
             'vb'        => {'ext'      => '.vbproj',
41
                             'dllexe'   => 'vc7vb',
42
                             'libexe'   => 'vc7vb',
43
                             'dll'      => 'vc7vb',
44
                             'lib'      => 'vc7vb',
45
                             'template' => 'vc7vb',
46
                            },
47
            );
48
 
49
# ************************************************************
50
# Subroutine Section
51
# ************************************************************
52
 
53
sub get_quote_symbol {
54
  #my($self) = shift;
55
  return '"';
56
}
57
 
58
 
59
sub get_gt_symbol {
60
  #my($self) = shift;
61
  return '>';
62
}
63
 
64
 
65
sub get_lt_symbol {
66
  #my($self) = shift;
67
  return '<';
68
}
69
 
70
 
71
sub get_and_symbol {
72
  #my($self) = shift;
73
  return '&&';
74
}
75
 
76
 
77
sub get_configurable {
78
  my($self)   = shift;
79
  my($name)   = shift;
80
  my(%config) = ('vcversion'    => '7.00',
81
                 'forloopscope' => 'TRUE',
82
                );
83
  return $config{$name};
84
}
85
 
86
 
87
sub fill_value {
88
  my($self)  = shift;
89
  my($name)  = shift;
90
  my($value) = undef;
91
 
92
  if ($name eq 'guid') {
93
    my($guid) = new GUID();
94
    $value = $guid->generate($self->project_file_name(),
95
                             $self->{'current_input'},
96
                             $self->getcwd());
97
  }
98
  else {
99
    $value = $self->get_configurable($name);
100
  }
101
  return $value;
102
}
103
 
104
 
105
sub project_file_extension {
106
  my($self) = shift;
107
  return $info{$self->get_language()}->{'ext'};
108
}
109
 
110
 
111
sub get_dll_exe_template_input_file {
112
  my($self) = shift;
113
  return $info{$self->get_language()}->{'dllexe'};
114
}
115
 
116
 
117
sub get_lib_exe_template_input_file {
118
  my($self) = shift;
119
  return $info{$self->get_language()}->{'libexe'};
120
}
121
 
122
 
123
sub get_dll_template_input_file {
124
  my($self) = shift;
125
  return $info{$self->get_language()}->{'dll'};
126
}
127
 
128
 
129
sub get_lib_template_input_file {
130
  my($self) = shift;
131
  return $info{$self->get_language()}->{'lib'};
132
}
133
 
134
 
135
sub get_template {
136
  my($self) = shift;
137
  return $info{$self->get_language()}->{'template'};
138
}
139
 
140
 
141
1;