summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsrc/build/hwpf/prcd_compile.tcl26
-rwxr-xr-xsrc/build/hwpf/prcd_server.tcl26
2 files changed, 27 insertions, 25 deletions
diff --git a/src/build/hwpf/prcd_compile.tcl b/src/build/hwpf/prcd_compile.tcl
index 0815ea46b..a53972972 100755
--- a/src/build/hwpf/prcd_compile.tcl
+++ b/src/build/hwpf/prcd_compile.tcl
@@ -261,9 +261,7 @@ proc start_patch_server_on_fsp { fspip fsppassword } {
# MAIN
# ------------------------
set userid $::env(USER)
-set home $::env(HOME)
-set domain [exec hostname -d]
-set version "1.4"
+set version "1.5"
set files [list]
set directories [list]
@@ -289,7 +287,8 @@ foreach arg $argv {
-o { set state outputflag }
-n { set newfiles 1 }
-k { set keepsandbox 1 }
- -*h* { puts {prcd_compile.tcl [--help] [-f <fipslevel> | -d <drivername>] [-o <ouput dir> ] [-n] [ <filename> | -D <directory] }
+ -O { set noretrieve 1 }
+ -*h* { puts {prcd_compile.tcl [--help] [-f <fipslevel> | -d <drivername>] [-o <ouput dir> | -O ] [-n] [ <filename> | -D <directory>] }
puts {}
puts {For existing files, this only supports *.{c,C,h,H,initfile,xml} files in the following hostboot directory trees: }
puts { src/usr/hwpf/hwp }
@@ -297,16 +296,12 @@ foreach arg $argv {
puts {}
puts {The files can either be in the local current working directory, or in a local sub-directory mirroring the hostboot tree. }
puts {}
- puts {examples }
- puts {> prcd_compile.tcl -d hb0216a_1307.810 -o ./output fapiTestHwp.C fapiTestHwp.C sample.initfile}
- puts {> prcd_compile.tcl -d hb0216a_1307.810 -o ./output/ proc_cen_framelock.C }
- puts {> prcd_compile.tcl -f b0211a_1307.810 -o output dmi_training/proc_cen_framelock/proc_cen_framelock.H }
- puts {}
puts {Without the -n parameter, the file MUST be an existing files in the hostboot sandbox.}
puts {If they are not found in the sandbox, an error will be returned.}
puts {}
- puts {On success, files from the img/ directory (*.bin *.syms and hbotStringFile) }
- puts {will be placed in the output directory. }
+ puts {if -O is not specified, on success, image and pnor files will be placed in the output directory. }
+ puts {The -o parameter is optional. The default is the current working directory. }
+ puts {If instead the -O parameter is specified, no image or pnor files are returned. }
puts {}
puts {With the -n parameter, the files are assumed to be for a NEW HWP and will be checked to see}
puts {if they compile - no binary image files will be returned.}
@@ -321,6 +316,11 @@ foreach arg $argv {
puts {The -d and -o parameters are optional. Default for -d is the master level of code }
puts {and default for -o is the current working directory }
puts {}
+ puts {examples }
+ puts {> prcd_compile.tcl -d hb0216a_1307.810 -o ./output fapiTestHwp.C fapiTestHwp.C sample.initfile}
+ puts {> prcd_compile.tcl -d hb0216a_1307.810 -o ./output/ proc_cen_framelock.C }
+ puts {> prcd_compile.tcl -f b0211a_1307.810 -o output dmi_training/proc_cen_framelock/proc_cen_framelock.H }
+ puts {}
puts "Version: $version"
puts {}
exit
@@ -475,7 +475,9 @@ if {[info exists newfiles]} {
# Generate compile, retrieve, and complete directives
##########################################################
lappend cmds ":HWP_COMPILE"
- lappend cmds ":HWP_RETRIEVE"
+ if { ![info exists noretrieve] } {
+ lappend cmds ":HWP_RETRIEVE"
+ }
lappend cmds ":HWP_DONE"
}
diff --git a/src/build/hwpf/prcd_server.tcl b/src/build/hwpf/prcd_server.tcl
index 84aa371b0..a86414608 100755
--- a/src/build/hwpf/prcd_server.tcl
+++ b/src/build/hwpf/prcd_server.tcl
@@ -29,7 +29,8 @@ exec tclsh "$0" "$@"
# Based on if_server.tcl by Doug Gilbert
-set version "1.4"
+set PNOR_version "1.4"
+set version "1.5"
############################################################################
# Accept is called when a new client request comes in
@@ -39,6 +40,12 @@ set version "1.4"
proc Accept { sock addr port} {
global socklist
global log
+ global keepsandbox
+ global fulldirectory
+
+ # reset some per-connection variables that don't always get sent
+ set keepsandbox 0
+ set fulldirectory 0
puts "[clock format [clock seconds]]: Accept $sock from $addr port $port"
puts $log "$port: [clock format [clock seconds]]: Accept $sock from $addr port $port"
@@ -530,14 +537,7 @@ proc SendSandbox { sock git_sh} {
puts $git_sh "echo $fips_dir > src/build/citest/etc/bbuild;"
}
- puts $git_sh "source env.bash;\
- make -j4;"
-
- # hack for now. need to point to 'current' version of hb, not built, since
- # older versions doesn't support the new fipssetup command.
- # when this is ready merge, i'll copy the corrected 'hb' into the hostboot
- # projects directory.
- puts $git_sh "rm -f hb;ln -s /gsa/ausgsa/home/h/o/hortonb/hb2/src/build/tools/hb;"
+ puts $git_sh "source env.bash; BUILD_MINIMAL=1 make -j4;"
puts $git_sh "export SANDBOXROOT=`pwd`; export SANDBOXNAME=prcd_fsp;\
echo \"./hb fipssetup && ./hb prime\" > hbdo; chmod +x hbdo;\
@@ -601,7 +601,7 @@ proc SendSandboxNew { sock git_sh} {
# Start Compile
##################################################################
set newdir src/usr/hwpf/hwp/mss_new
- puts $git_sh "source env.bash; make -j4; make -C $newdir"
+ puts $git_sh "source env.bash; BUILD_MINIMAL=1 make -j4; make -C $newdir"
##################################################################
# tell the workon shell to terminate
@@ -652,7 +652,7 @@ proc SendSandboxNew { sock git_sh} {
# client. Note: Everything from stderr gets returned
##################################################################
-set explist [list {^make.*Error.*} {ERROR:.*} {error:.*} {^IfScrub..E>.*} {^Parse Error.*} {^Error.*} ]
+set explist [list {^make.*Error.*} {ERROR:.*} {error:.*} {^IfScrub..E>.*} {^Parse Error.*} {^Error.*} {^exception caught.*} ]
##################################################################
## This event catches the output of the sandbox when the pipe become readable
@@ -740,7 +740,7 @@ proc SendObjFiles { sock obj_dir } {
##################################################################
proc SendPnorFiles { sock obj_dir } {
global log
- global version
+ global PNOR_version
global client_version
set pnor_files {}
@@ -750,7 +750,7 @@ proc SendPnorFiles { sock obj_dir } {
puts $sock "ERROR: Needed image files not found in $obj_dir"
puts $log "$sock: Needed image files not found in $obj_dir"
} else {
- if { $client_version < $version } {
+ if { $client_version < $PNOR_version } {
# client can't handle PNOR_FILE type, so just send the files
# back and they'll get put into the <outputdir>
SendFiles "OBJ_FILE" $sock $pnor_files
OpenPOWER on IntegriCloud