diff options
author | Tor Lillqvist <tlillqvist@suse.com> | 2011-10-03 10:29:58 +0300 |
---|---|---|
committer | Tor Lillqvist <tlillqvist@suse.com> | 2011-10-03 10:37:34 +0300 |
commit | 6e1a8ad89ef08da2b92ac38a8ee1a625eef3b527 (patch) | |
tree | ffd8bb0cf638b71d9a19f4b24c0bd5772c29766f /solenv/bin/modules | |
parent | c8a12c166245bac6fedfee86eae7f8266a333992 (diff) |
Bin Hamburg "build server" and BSCLIENT stuff
Diffstat (limited to 'solenv/bin/modules')
-rw-r--r-- | solenv/bin/modules/installer/control.pm | 3 | ||||
-rw-r--r-- | solenv/bin/modules/packager/work.pm | 155 |
2 files changed, 0 insertions, 158 deletions
diff --git a/solenv/bin/modules/installer/control.pm b/solenv/bin/modules/installer/control.pm index 316bf175bcc2..a2504e1aefe1 100644 --- a/solenv/bin/modules/installer/control.pm +++ b/solenv/bin/modules/installer/control.pm @@ -565,9 +565,6 @@ sub check_updatepack push(@installer::globals::globallogfileinfo, $infoline); $infoline = "Failed to create directory $directory\n"; push(@installer::globals::globallogfileinfo, $infoline); - if ( defined $ENV{'BSCLIENT'} && ( uc $ENV{'BSCLIENT'} eq 'TRUE' ) ) { - installer::exiter::exit_program("ERROR: No write access to SHIPDRIVE allthough BSCLIENT is set.", "check_updatepack"); - } } } else diff --git a/solenv/bin/modules/packager/work.pm b/solenv/bin/modules/packager/work.pm index f84ae22355f4..e18b6fb5127d 100644 --- a/solenv/bin/modules/packager/work.pm +++ b/solenv/bin/modules/packager/work.pm @@ -162,159 +162,4 @@ sub execute_system_calls } } -############################################################## -# Starting the build server with the generated system calls -############################################################## - -sub start_build_server -{ - my ( $targets ) = @_; - - # preparing the directory structure - - my $prj = $ENV{PRJ}; # for example ".."; - my $platform = $ENV{INPATH}; # wntmsci10.pro, unxsols4.pro - my $platformpath = $prj . $packager::globals::separator . $platform; - if ( ! -d $platformpath ) { packager::files::create_directory($miscpath); } - my $miscpath = $platformpath . $packager::globals::separator . "misc"; - if ( ! -d $miscpath ) { packager::files::create_directory($miscpath); } - $miscpath = $miscpath . $packager::globals::separator . "temp"; - if ( -d $miscpath ) { packager::files::remove_complete_directory($miscpath); } # removing old files ! - if ( ! -d $miscpath ) { packager::files::create_directory($miscpath); } - - my $prjroot = ".." . $packager::globals::separator . ".." . $packager::globals::separator . ".." . $packager::globals::separator . ".."; # platform/misc/temp/uniquetempdir - - my $makefilepath = $prj . $packager::globals::separator . "util" . $packager::globals::separator . "makefile.mk"; - - if ( ! $ENV{'PRJNAME'} ) { packager::exiter::exit_program("ERROR: Environment variable PRJNAME not set!", "do_broadcast"); } - my $prjname = $ENV{PRJNAME}; - - my $pkgformat = $ENV{PKGFORMAT}; - - my $prjdep = $prjname . "\\" . "util"; # always windows like path - my @targetdirs; - my @targetlines = (); - # iterating over all targets - for ( my $i = 0; $i <= $#{$targets}; $i++ ) - { - my $target = ${$targets}[$i]; - my $tempdir = $miscpath . $packager::globals::separator . $target; - $tempdir = packager::files::create_unique_directory ($tempdir); - @targetlines=(); - push( @targetlines, "\ngenerated_target : $target\n\n"); # to be included into the makefile.mk - - if ( defined $pkgformat ) { - push( @targetlines, "\n$target : ".'$$@{$(PKGFORMAT:^".")}'."\n\n"); # to be included into the makefile.mk - } - - generate_makefile($tempdir, $makefilepath, $prjroot, $target, \@targetlines); - - do_broadcast($tempdir, $prjname, $prj, $platform, $prjdep); - push @targetdirs, $tempdir; - } -} - -############################################################## -# Generating the makefile in the temporary directory -############################################################## - -sub generate_makefile -{ - my ( $tempdir, $makefilepath, $prjroot, $target, $targetlines_ref ) = @_; - - my $makefile = packager::files::read_file($makefilepath); - - my @targetlines = (); - push( @targetlines, @{$targetlines_ref}); # to be included into the makefile.mk - - $prjroot = $prjroot . "\n"; - - my $uniquename = $tempdir; - get_filename_from_path(\$uniquename); - $uniquename = $uniquename . "\n"; - - my $counter = 0; - my $increase = 1; - - for ( my $i = 0; $i <= $#{$makefile}; $i++ ) - { - if ( ${$makefile}[$i] =~ /^\s*TARGET\s*=.*/ ) { ${$makefile}[$i] = "TARGET=" . $uniquename; } # setting the new project root - - if ( ${$makefile}[$i] =~ /^\s*PRJ\s*=.*/ ) { ${$makefile}[$i] = "PRJ=" . $prjroot; } # setting the new project root - - if ( ${$makefile}[$i] =~ /^\s*\.INCLUDE[\t ]*:[\t ]*target.mk[\t ]*$/ ) { $increase = 0; } # no more increase of the counter - - if ( $increase ) { $counter++; } - } - - splice(@{$makefile}, $counter, 0, @targetlines); # including the new target lines at position $counter - - my $newmakefilepath = $tempdir . $packager::globals::separator . "makefile.mk"; - packager::files::save_file($newmakefilepath, $makefile); -} - -############################################################## -# Generating the broadcasts for the build server -############################################################## - -sub do_broadcast -{ - use File::Temp; - - my ( $tempdir, $prjname, $prj, $platform, $prjdep ) = @_; - - # Syntax: cmd_bcst -s 18 "Version;Environment;Project;Verzeichnis;Restriction[;Abhaengigkeit1][;Abhaengigkeit n]..." - # Example: cmd_bcst -s 18 "SRC680;wntmsci10.pro;instsetoo_native;;instsetoo_native\bla1;instsetoo_native\util" - - if ( ! $ENV{'WORK_STAMP'} ) { packager::exiter::exit_program("ERROR: Environment variable WORK_STAMP not set!", "do_broadcast"); } - my $workstamp = $ENV{WORK_STAMP}; - - my $prjdir = $tempdir; - $prjdir =~ s/$prj/$prjname/; - $prjdir =~ s/\//\\/g; # convert to windows path syntax - - my $tempfiledir = $ENV{TMP}; - $tempfiledir = $tempdir if ( ! defined $tempfiledir ); - my ( $tmpfile_handle, $tmpfile_name ) = mkstemp( $tempfiledir . $packager::globals::separator . "packagerXXXXX"); - if ( ! $tmpfile_handle ) { - packager::exiter::exit_program("ERROR: Couldn't open temporary file \"$tmpfile_name\"!", "do_broadcast"); - } - print $tmpfile_handle "\"$workstamp;$platform;$prjname;$prjdir;nobase;$prjdep\""; - print "to tmpfile: \"$workstamp;$platform;$prjname;$prjdir;nobase;$prjdep\"\n"; - close $tmpfile_handle; - my $returnvalue = system("cmd_bcst -s 18 \@$tmpfile_name"); - print "cmd_bcst -s 18 \@$tmpfile_name\n"; - unlink "$tmpfile_name"; - - if ( $returnvalue ) # an error occurred - { - if (!($packager::globals::ignoreerrors)) { packager::exiter::exit_program("ERROR: Packing not successful!", "do_broadcast"); } - } -} - -############################################################## -# Returning the name of file or directory from complete path -############################################################## - -sub get_filename_from_path -{ - my ($longfilenameref) = @_; - - if ( $packager::globals::isunix ) - { - if ( $$longfilenameref =~ /^.*\/(\S.+\S?)/ ) - { - $$longfilenameref = $1; - } - } - - if ( $packager::globals::iswin ) - { - if ( $$longfilenameref =~ /^.*\\(\S.+\S?)/ ) - { - $$longfilenameref = $1; - } - } -} - 1; |