BUG: foamPackRelease detects wrong build information

- was taking from the current head instead from specified commit-ish

ENH: add -debian=NUM convenience option to foamPackRelease

STYLE: relocate compile begin/end messages

COMP: suppress more clang warnings (needed for boost)
This commit is contained in:
Mark Olesen
2021-11-03 22:21:19 +01:00
parent 50995706a6
commit 742a2c8a49
5 changed files with 50 additions and 22 deletions

View File

@ -8,7 +8,7 @@ wmake -check-dir "$WM_PROJECT_DIR" 2>/dev/null || {
} }
if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ] if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ]
then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments || \ then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments || \
echo "Argument parse error"; echo "Argument parse error"
else else
echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect" echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect"
echo " Check your OpenFOAM environment and installation" echo " Check your OpenFOAM environment and installation"
@ -34,12 +34,12 @@ else
fi fi
echo echo
echo "========================================" echo ========================================
date "+%Y-%m-%d %H:%M:%S %z" 2>/dev/null || echo "date is unknown" date "+%Y-%m-%d %H:%M:%S %z" 2>/dev/null || echo "date is unknown"
echo "Starting compile ${WM_PROJECT_DIR##*/} ${0##*/}" echo "Starting compile ${WM_PROJECT_DIR##*/} ${0##*/}"
echo " $WM_COMPILER ${WM_COMPILER_TYPE:-system} compiler" echo " $WM_COMPILER ${WM_COMPILER_TYPE:-system} compiler"
echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}" echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}"
echo "========================================" echo ========================================
echo echo
# Compile tools for wmake # Compile tools for wmake
@ -62,24 +62,21 @@ else
echo "Skip ThirdParty (no directory)" echo "Skip ThirdParty (no directory)"
fi fi
echo "========================================" # OpenFOAM libraries
echo "Compile OpenFOAM libraries"
echo
src/Allwmake $targetType $* src/Allwmake $targetType $*
echo "========================================" # OpenFOAM applications
echo "Compile OpenFOAM applications"
echo
applications/Allwmake $targetType $* applications/Allwmake $targetType $*
# Additional components/modules # Additional components/modules
if [ "$FOAM_MODULE_PREFIX" = false ] || [ "$FOAM_MODULE_PREFIX" = none ] if [ "$FOAM_MODULE_PREFIX" = false ] || [ "$FOAM_MODULE_PREFIX" = none ]
then then
echo "========================================" echo ========================================
echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})" echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})"
echo echo
elif [ -d "$WM_PROJECT_DIR/modules" ] else
then # Use wmake -all instead of Allwmake to allow for overrides
(cd "$WM_PROJECT_DIR/modules" 2>/dev/null && wmake -all) (cd "$WM_PROJECT_DIR/modules" 2>/dev/null && wmake -all)
fi fi
@ -93,7 +90,7 @@ _foamCountDirEntries()
# Some summary information # Some summary information
echo echo
date "+%Y-%m-%d %H:%M:%S %z" 2>/dev/null || echo "date is unknown" date "+%Y-%m-%d %H:%M:%S %z" 2>/dev/null || echo "date is unknown"
echo "========================================" echo ========================================
echo " ${WM_PROJECT_DIR##*/}" echo " ${WM_PROJECT_DIR##*/}"
echo " $WM_COMPILER ${WM_COMPILER_TYPE:-system} compiler" echo " $WM_COMPILER ${WM_COMPILER_TYPE:-system} compiler"
echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}" echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}"
@ -103,6 +100,6 @@ echo " patch = $(etc/openfoam -show-patch 2>/dev/null)"
echo " bin = $(_foamCountDirEntries "$FOAM_APPBIN") entries" echo " bin = $(_foamCountDirEntries "$FOAM_APPBIN") entries"
echo " lib = $(_foamCountDirEntries "$FOAM_LIBBIN") entries" echo " lib = $(_foamCountDirEntries "$FOAM_LIBBIN") entries"
echo echo
echo "========================================" echo ========================================
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -8,13 +8,17 @@ wmake -check-dir "$WM_PROJECT_DIR/applications" 2>/dev/null || {
} }
if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ] if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ]
then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments || \ then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments || \
echo "Argument parse error"; echo "Argument parse error"
else else
echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect" echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect"
echo " Check your OpenFOAM environment and installation" echo " Check your OpenFOAM environment and installation"
exit 1 exit 1
fi fi
echo ========================================
echo Compile OpenFOAM applications
echo ========================================
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
wmake -all $targetType solvers wmake -all $targetType solvers
@ -24,3 +28,9 @@ wmake -all $targetType utilities
## wmake -all $targetType tools ## wmake -all $targetType tools
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
echo ========================================
echo Done OpenFOAM applications
echo ========================================
#------------------------------------------------------------------------------

View File

@ -59,6 +59,7 @@ options:
-with-api=NUM Specify alternative api value for packaging -with-api=NUM Specify alternative api value for packaging
-tgz, -xz, -zstd Alias for -compress=tgz, -compress=xz, -compress=zstd -tgz, -xz, -zstd Alias for -compress=tgz, -compress=xz, -compress=zstd
-debian Auto (debian) naming with -no-prefix, -xz -debian Auto (debian) naming with -no-prefix, -xz
-debian=NUM Auto (debian) naming with specified debian patch value
-debian=NAME Short-cut for -name=NAME.orig, -no-prefix, -xz -debian=NAME Short-cut for -name=NAME.orig, -no-prefix, -xz
-help Print help -help Print help
@ -119,8 +120,8 @@ do
-h | -help*) -h | -help*)
printHelp printHelp
;; ;;
-debian) -debian | -debian=[0-9]*)
tarName="debian" # Special placeholder tarName="$1" # Leave as special placeholder
prefixDir=false # No prefix directory prefixDir=false # No prefix directory
: "${compress:=xz}" # Default 'xz' compression : "${compress:=xz}" # Default 'xz' compression
;; ;;
@ -273,8 +274,8 @@ patch="$(git --git-dir="$gitbase/.git" show "$sha1" | sed -ne s/^patch=//p)"
[ -n "$api" ] || die "Could resolve api value" [ -n "$api" ] || die "Could resolve api value"
: "${patch:=0}" # Treat missing patch number as '0' : "${patch:=0}" # Treat missing patch number as '0'
# Determine the BUILD information from git, as per `wmake -build-info` # Determine BUILD information from git, as per `wmake -build-info` but for given HEAD
build="$(git --git-dir="$gitbase/.git" log -1 --date=short --format='%h=%ad' 2>/dev/null|sed 's/-//g;s/=/-/')" build="$(git --git-dir="$gitbase/.git" log -1 --date=short --format='%h=%ad' "$head" 2>/dev/null|sed 's/-//g;s/=/-/')"
echo "Detected api, patch, build as '$api', '$patch', '$build'" 1>&2 echo "Detected api, patch, build as '$api', '$patch', '$build'" 1>&2
if [ -n "$packageApi" ] if [ -n "$packageApi" ]
@ -300,7 +301,7 @@ then
fi fi
case "$tarName" in case "$tarName" in
(debian) (-debian)
tarName="openfoam_${packageApi}" tarName="openfoam_${packageApi}"
if [ "$withPatchNum" = false ] if [ "$withPatchNum" = false ]
@ -313,6 +314,10 @@ case "$tarName" in
tarName="${tarName}.orig" # Append .orig tarName="${tarName}.orig" # Append .orig
;; ;;
(-debian=[0-9]*)
tarName="openfoam_${packageApi}.${tarName#*=}.orig"
;;
('') ('')
tarName="OpenFOAM-v${packageApi}" tarName="OpenFOAM-v${packageApi}"
if [ "$withSource" = false ] if [ "$withSource" = false ]

View File

@ -8,13 +8,17 @@ wmake -check-dir "$WM_PROJECT_DIR/src" 2>/dev/null || {
} }
if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ] if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ]
then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments || \ then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments || \
echo "Argument parse error"; echo "Argument parse error"
else else
echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect" echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect"
echo " Check your OpenFOAM environment and installation" echo " Check your OpenFOAM environment and installation"
exit 1 exit 1
fi fi
echo ========================================
echo Compile OpenFOAM libraries
echo ========================================
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
wmakeLnInclude -u OpenFOAM wmakeLnInclude -u OpenFOAM
@ -129,3 +133,9 @@ dynamicFaMesh/Allwmake $targetType $*
wmake $targetType thermophysicalModels/thermophysicalPropertiesFvPatchFields/liquidProperties wmake $targetType thermophysicalModels/thermophysicalPropertiesFvPatchFields/liquidProperties
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
echo ========================================
echo Done OpenFOAM libraries
echo ========================================
#------------------------------------------------------------------------------

View File

@ -18,9 +18,15 @@ c++WARN = \
-Wno-unknown-warning-option \ -Wno-unknown-warning-option \
$(FOAM_EXTRA_CXXFLAGS) $(FOAM_EXTRA_CXXFLAGS)
# Many extra warnings from boost
c++LESSWARN = \ c++LESSWARN = \
-Wno-old-style-cast -Wno-unused-local-typedefs \ -Wno-old-style-cast -Wno-unused-local-typedefs \
-Wno-tautological-undefined-compare -Wno-shift-negative-value \ -Wno-tautological-undefined-compare -Wno-shift-negative-value \
-Wno-null-pointer-arithmetic -Wno-null-pointer-arithmetic \
-Wno-null-pointer-subtraction \
-Wno-unknown-warning-option \
-Wno-deprecated-copy-with-user-provided-copy \
-Wno-tautological-overlap-compare \
-Wno-#pragma-messages
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------