COMP: update lnInclude directories when building (issue #364)

- Could be related to interrupted builds.
  So if there are any parts of the build that rely on an explicit
  'wmakeLnInclude', make sure that the contents are properly updated.

--

ENH: improved feedback from top-level Allwmake

- Report which section (libraries, applications) is being built.

- Provide final summary of date, version, etc, which can be helpful
  for later diagnosis or record keeping.

- The -log=XXX option for Allwmake now accepts a directory name
  and automatically appends an appropriate log name.
  Eg,
      ./Allwmake -log=logs/  ->> logs/log.linux64GccDPInt32Opt

  The default name is built from the value of WM_OPTIONS.

--

BUG: shell not exiting properly in combination with -log option

- the use of 'tee' causes the shell to hang around.
  Added an explicit exit to catch this.

--

- Detecting the '-k' (-non-stop) option at the top-level Allwmake, which
  may improve robustness.

- Explicit continue-on-error for foamyMesh (as optional component)

- unify format of script messages for better readability

COMP: reduce warnings when building Pstream (old-style casts in openmpi)
This commit is contained in:
Mark Olesen
2016-12-22 11:26:29 +01:00
parent 5f811ac09d
commit 608bb5d83b
19 changed files with 121 additions and 124 deletions

View File

@ -71,13 +71,24 @@ do
# If called from wmake (to avoid recursion)
fromWmake=true
;;
-k | -non-stop)
# Non-stop compilation, ignoring errors
export WM_CONTINUE_ON_ERROR=true
continue # Permanently remove arg
;;
-l | -log)
optLog="log.${WM_OPTIONS:-Allwmake}"
continue # Permanently remove arg
;;
-log=*)
optLog="${arg##*=}"
[ -n "$optLog" ] || optLog="log.${WM_OPTIONS:-Allwmake}"
if [ -d "$optLog" ]
then
optLog="${optLog%/}/log.${WM_OPTIONS:-Allwmake}"
elif [ -z "$optLog" ]
then
optLog="log.${WM_OPTIONS:-Allwmake}"
fi
continue # Permanently remove arg
;;
-q | -queue)
@ -104,15 +115,21 @@ then
if [ -z "$optLog" ]
then
exec wmake -all $optQueue $*
exit $? # Unneeded, but just in case something went wrong
else
echo "logging wmake -all output to '$optLog'" 1>&2
exec wmake -all $optQueue $* 2>&1 | tee $optLog
echo "Logging wmake -all output to '$optLog'" 1>&2
echo 1>&2
exec wmake -all $optQueue $* 2>&1 | /usr/bin/tee $optLog
# Need to cleanup after the tee
rc=$? # Error code from tee (not wmake), but not entirely important
echo "Done logging to '$optLog'" 1>&2
exit $rc
fi
fi
#------------------------------------------------------------------------------
# If WM_CONTINUE_ON_ERROR not set activate the shell option "stop on error"
# Activate the shell option "stop on error" unless WM_CONTINUE_ON_ERROR is set
#------------------------------------------------------------------------------
if [ -z "${WM_CONTINUE_ON_ERROR}" ]