summaryrefslogtreecommitdiff
path: root/build.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh80
1 files changed, 67 insertions, 13 deletions
diff --git a/build.sh b/build.sh
index 4268c76e78..b5876738e6 100755
--- a/build.sh
+++ b/build.sh
@@ -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
}
@@ -132,10 +174,6 @@ if test -f scripts/update_version_files.py ; then
end_section UpdateVer
fi
-# Now retrieve the version for use in the version manager
-# First three parts only, $revision will be appended automatically.
-build_viewer_update_version_manager_version=`python scripts/get_version.py --viewer-version | sed 's/\.[0-9]*$//'`
-
if [ -z "$AUTOBUILD" ]
then
export autobuild_dir="$here/../../../autobuild/bin/"
@@ -176,10 +214,10 @@ eval "$("$AUTOBUILD" source_environment)"
# dump environment variables for debugging
env|sort
+check_for "Before 'autobuild install'" ${build_dir}/packages/dictionaries
-# Install packages.
-"$AUTOBUILD" install --skip-license-check
+check_for "After 'autobuild install'" ${build_dir}/packages/dictionaries
# Now run the build
succeeded=true
build_processes=
@@ -195,10 +233,14 @@ do
begin_section "Do$variant"
build_dir=`build_dir_$arch $variant`
build_dir_stubs="$build_dir/win_setup/$variant"
+
+ begin_section "PreClean"
rm -rf "$build_dir"
+ end_section "PreClean"
+
mkdir -p "$build_dir"
mkdir -p "$build_dir/tmp"
- #export TMP="$build_dir/tmp"
+
if pre_build "$variant" "$build_dir" >> "$build_log" 2>&1
then
if $build_link_parallel
@@ -209,7 +251,7 @@ do
end_section BuildParallel
else
begin_section "Build$variant"
- build "$variant" "$build_dir" 2>&1 | tee -a "$build_log" | grep --line-buffered "^##teamcity"
+ build "$variant" "$build_dir" 2>&1 | tee -a "$build_log" | sed -n 's/^ *\(##teamcity.*\)/\1/p'
if `cat "$build_dir/build_ok"`
then
echo so far so good.
@@ -238,7 +280,7 @@ then
begin_section "Build$variant"
build_dir=`build_dir_$arch $variant`
build_dir_stubs="$build_dir/win_setup/$variant"
- tee -a $build_log < "$build_dir/build.log" | grep --line-buffered "^##teamcity"
+ tee -a $build_log < "$build_dir/build.log" | sed -n 's/^ *\(##teamcity.*\)/\1/p'
if `cat "$build_dir/build_ok"`
then
echo so far so good.
@@ -268,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