diff options
Diffstat (limited to 'build.sh')
-rwxr-xr-x | build.sh | 70 |
1 files changed, 61 insertions, 9 deletions
@@ -15,6 +15,12 @@ # * The basic convention is that the build name can be mapped onto a mercurial URL, # which is also used as the "branch" name. +check_for() +{ + if [ -e "$2" ]; then found_dict='FOUND'; else found_dict='MISSING'; fi + echo "$1 ${found_dict} '$2' " 1>&2 +} + build_dir_Darwin() { echo build-darwin-i386 @@ -59,6 +65,8 @@ pre_build() && [ -r "$master_message_template_checkout/message_template.msg" ] \ && template_verifier_master_url="-DTEMPLATE_VERIFIER_MASTER_URL=file://$master_message_template_checkout/message_template.msg" + check_for "Before 'autobuild configure'" ${build_dir}/packages/dictionaries + "$AUTOBUILD" configure -c $variant -- \ -DPACKAGE:BOOL=ON \ -DRELEASE_CRASH_REPORTING:BOOL=ON \ @@ -67,7 +75,33 @@ pre_build() -DGRID:STRING="\"$viewer_grid\"" \ -DLL_TESTS:BOOL="$run_tests" \ -DTEMPLATE_VERIFIER_OPTIONS:STRING="$template_verifier_options" $template_verifier_master_url - end_section "Pre$variant" + + check_for "After 'autobuild configure'" ${build_dir}/packages/dictionaries + + end_section "Pre$variant" +} + +package_llphysicsextensions_tpv() +{ + begin_section "PhysicsExtensions_TPV" + tpv_status=0 + if [ "$variant" = "Release" ] + then + llpetpvcfg=$build_dir/packages/llphysicsextensions/autobuild-tpv.xml + "$AUTOBUILD" build --verbose --config-file $llpetpvcfg -c Tpv + + # capture the package file name for use in upload later... + PKGTMP=`mktemp -t pgktpv.XXXXXX` + trap "rm $PKGTMP* 2>/dev/null" 0 + "$AUTOBUILD" package --verbose --config-file $llpetpvcfg > $PKGTMP + tpv_status=$? + sed -n -e 's/^wrote *//p' $PKGTMP > $build_dir/llphysicsextensions_package + else + echo "Do not provide llphysicsextensions_tpv for $variant" + llphysicsextensions_package="" + fi + end_section "PhysicsExtensions_TPV" + return $tpv_status } build() @@ -76,13 +110,21 @@ build() if $build_viewer then begin_section "Viewer$variant" - if "$AUTOBUILD" build --no-configure -c $variant + check_for "Before 'autobuild build'" ${build_dir}/packages/dictionaries + + "$AUTOBUILD" build --no-configure -c $variant + viewer_build_ok=$? + end_section "Viewer$variant" + package_llphysicsextensions_tpv + tpvlib_build_ok=$? + if [ $viewer_build_ok -eq 0 -a $tpvlib_build_ok -eq 0 ] then echo true >"$build_dir"/build_ok else echo false >"$build_dir"/build_ok fi - end_section "Viewer$variant" + check_for "After 'autobuild configure'" ${build_dir}/packages/dictionaries + fi } @@ -172,7 +214,10 @@ eval "$("$AUTOBUILD" source_environment)" # dump environment variables for debugging env|sort +check_for "Before 'autobuild install'" ${build_dir}/packages/dictionaries + +check_for "After 'autobuild install'" ${build_dir}/packages/dictionaries # Now run the build succeeded=true build_processes= @@ -196,11 +241,6 @@ do mkdir -p "$build_dir" mkdir -p "$build_dir/tmp" - # Install packages. - begin_section "AutobuildInstall" - "$AUTOBUILD" install --verbose --skip-license-check - end_section "AutobuildInstall" - if pre_build "$variant" "$build_dir" >> "$build_log" 2>&1 then if $build_link_parallel @@ -270,13 +310,25 @@ then upload_item quicklink "$package" binary/octet-stream [ -f summary.json ] && upload_item installer summary.json text/plain - # Upload crash reporter files. case "$last_built_variant" in Release) + # Upload crash reporter files for symbolfile in $symbolfiles do upload_item symbolfile "$build_dir/$symbolfile" binary/octet-stream done + + # Upload the llphysicsextensions_tpv package, if one was produced + if [ -r "$build_dir/llphysicsextensions_package" ] + then + llphysicsextensions_package=$(cat $build_dir/llphysicsextensions_package) + upload_item private_artifact "$llphysicsextensions_package" binary/octet-stream + else + echo "No llphysicsextensions_package" + fi + ;; + *) + echo "Skipping mapfile for $last_built_variant" ;; esac |