Subversion Repositories gelsvn

Rev

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

Rev 217 Rev 259
1
package BMakeProjectCreator;
1
package BMakeProjectCreator;
2
 
2
 
3
# ************************************************************
3
# ************************************************************
4
# Description   : A BMake Project Creator
4
# Description   : A BMake Project Creator
5
# Author        : Chad Elliott
5
# Author        : Chad Elliott
6
# Create Date   : 2/03/2004
6
# Create Date   : 2/03/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 ProjectCreator;
15
use ProjectCreator;
16
use WinProjectBase;
16
use WinProjectBase;
17
use MakeProjectBase;
17
use MakeProjectBase;
18
 
18
 
19
use vars qw(@ISA);
19
use vars qw(@ISA);
20
@ISA = qw(MakeProjectBase WinProjectBase ProjectCreator);
20
@ISA = qw(MakeProjectBase WinProjectBase ProjectCreator);
21
 
21
 
22
# ************************************************************
22
# ************************************************************
23
# Subroutine Section
23
# Subroutine Section
24
# ************************************************************
24
# ************************************************************
25
 
25
 
26
sub fill_value {
26
sub fill_value {
27
  my($self)  = shift;
27
  my($self)  = shift;
28
  my($name)  = shift;
28
  my($name)  = shift;
29
  my($value) = undef;
29
  my($value) = undef;
30
  my(%names) = ('cppdir' => 'source_files',
30
  my(%names) = ('cppdir' => 'source_files',
31
                'rcdir'  => 'resource_files',
31
                'rcdir'  => 'resource_files',
32
               );
32
               );
33
 
33
 
34
  if (defined $names{$name}) {
34
  if (defined $names{$name}) {
35
    my(%dirnames) = ('.' => 1);
35
    my(%dirnames) = ('.' => 1);
36
    foreach my $file ($self->get_component_list($names{$name}, 1)) {
36
    foreach my $file ($self->get_component_list($names{$name}, 1)) {
37
      my($dirname) = $self->mpc_dirname($file);
37
      my($dirname) = $self->mpc_dirname($file);
38
      if ($dirname eq '') {
38
      if ($dirname eq '') {
39
        $dirname = '.';
39
        $dirname = '.';
40
      }
40
      }
41
      else {
41
      else {
42
        $dirname =~ s/\//\\/g;
42
        $dirname =~ s/\//\\/g;
43
      }
43
      }
44
      $dirnames{$dirname} = 1;
44
      $dirnames{$dirname} = 1;
45
    }
45
    }
46
 
46
 
47
    ## Sort the directories to ensure that '.' comes first
47
    ## Sort the directories to ensure that '.' comes first
48
    $value = join(';', sort keys %dirnames);
48
    $value = join(';', sort keys %dirnames);
49
  }
49
  }
50
 
50
 
51
  return $value;
51
  return $value;
52
}
52
}
53
 
53
 
54
 
54
 
55
sub get_and_symbol {
55
sub get_and_symbol {
56
  #my($self) = shift;
56
  #my($self) = shift;
57
  return '&$(__TRICK_BORLAND_MAKE__)&';
57
  return '&$(__TRICK_BORLAND_MAKE__)&';
58
}
58
}
59
 
59
 
60
sub project_file_extension {
60
sub project_file_extension {
61
  #my($self) = shift;
61
  #my($self) = shift;
62
  return '.bmak';
62
  return '.bmak';
63
}
63
}
64
 
64
 
65
 
65
 
66
sub get_dll_exe_template_input_file {
66
sub get_dll_exe_template_input_file {
67
  #my($self) = shift;
67
  #my($self) = shift;
68
  return 'bmakedllexe';
68
  return 'bmakedllexe';
69
}
69
}
70
 
70
 
71
 
71
 
72
sub get_lib_exe_template_input_file {
72
sub get_lib_exe_template_input_file {
73
  #my($self) = shift;
73
  #my($self) = shift;
74
  return 'bmakelibexe';
74
  return 'bmakelibexe';
75
}
75
}
76
 
76
 
77
 
77
 
78
sub get_lib_template_input_file {
78
sub get_lib_template_input_file {
79
  #my($self) = shift;
79
  #my($self) = shift;
80
  return 'bmakelib';
80
  return 'bmakelib';
81
}
81
}
82
 
82
 
83
 
83
 
84
sub get_dll_template_input_file {
84
sub get_dll_template_input_file {
85
  #my($self) = shift;
85
  #my($self) = shift;
86
  return 'bmakedll';
86
  return 'bmakedll';
87
}
87
}
88
 
88
 
89
 
89
 
90
1;
90
1;
91
 
91