package BCB2007WorkspaceCreator; # ************************************************************ # Description : A BCB2007 Workspace Creator # Author : Johnny Willemsen # Create Date : 14/12/2005 # ************************************************************ # ************************************************************ # Pragmas # ************************************************************ use strict; use BCB2007ProjectCreator; use BorlandPropertyBase; use WinWorkspaceBase; use WorkspaceCreator; use vars qw(@ISA); @ISA = qw(BorlandPropertyBase WinWorkspaceBase WorkspaceCreator); # ************************************************************ # Subroutine Section # ************************************************************ sub crlf { #my $self = shift; return "\n"; } sub compare_output { #my $self = shift; return 1; } sub workspace_file_extension { #my $self = shift; return '.groupproj'; } sub pre_workspace { my($self, $fh) = @_; my $crlf = $self->crlf(); ## This identifies it as a Borland C++Builder 2007 file print $fh '', $crlf; ## Optionally print the workspace comment # $self->print_workspace_comment($fh, # '', $crlf, # '', # $crlf); } sub write_comps { my($self, $fh) = @_; my $crlf = $self->crlf(); my $project_info = $self->get_project_info(); my @projects = $self->sort_dependencies($self->get_projects(), 0); ## Print GUID and personality information print $fh ' ', $crlf, ' {1946f85e-487f-46b6-8e41-159cd446db35}', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' Default.Personality', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf; ## Print the project targets foreach my $project (@projects) { my $name = $$project_info{$project}->[ProjectCreator::PROJECT_NAME]; print $fh ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf; } ## Print the target build order print $fh ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, ' ', $crlf, '', $crlf; } 1;