From b5f06a38333ff923208be3e6b4a34ac8d52439ea Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@Germany> Date: Thu, 18 Dec 2008 19:54:13 +0100 Subject: [PATCH] use git describe for header version, but use existing wmake framework --- src/Allwmake | 3 +++ src/OpenFOAM/db/IOobject/IOobjectI.H | 13 +++++++++++-- src/OpenFOAM/global/global.C | 0 wmake/rules/General/version | 11 ++++++++++- 4 files changed, 24 insertions(+), 3 deletions(-) delete mode 100644 src/OpenFOAM/global/global.C diff --git a/src/Allwmake b/src/Allwmake index 35b8f55b886..c451cff8dd5 100755 --- a/src/Allwmake +++ b/src/Allwmake @@ -2,6 +2,9 @@ cd ${0%/*} || exit 1 # run from this directory set -x +# force update of Foam::FOAMversion string (git tag or $WM_PROJECT_VERSION) +/bin/rm -f OpenFOAM/Make/$WM_OPTIONS/global.? 2>/dev/null + wmakeLnInclude -f OpenFOAM wmakeLnInclude -f OSspecific/$WM_OS Pstream/Allwmake diff --git a/src/OpenFOAM/db/IOobject/IOobjectI.H b/src/OpenFOAM/db/IOobject/IOobjectI.H index 90b78aabfc5..3d8331e0224 100644 --- a/src/OpenFOAM/db/IOobject/IOobjectI.H +++ b/src/OpenFOAM/db/IOobject/IOobjectI.H @@ -31,13 +31,22 @@ License template<class Stream> inline void Foam::IOobject::writeBanner(Stream& os, bool noHint) { - static bool spacesSet = false; + static bool spacesSet(false); static char spaces[40]; if (!spacesSet) { memset(spaces, ' ', 40); - spaces[38 - strlen(Foam::FOAMversion)] = '\0'; + + size_t len = strlen(Foam::FOAMversion); + if (len < 38) + { + spaces[38 - len] = '\0'; + } + else + { + spaces[0] = '\0'; + } spacesSet = true; } diff --git a/src/OpenFOAM/global/global.C b/src/OpenFOAM/global/global.C deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/wmake/rules/General/version b/wmake/rules/General/version index 805eb585613..e1f0bc6387a 100644 --- a/wmake/rules/General/version +++ b/wmake/rules/General/version @@ -1,6 +1,15 @@ .SUFFIXES: .Cver -Cvertoo = sed s/WM_PROJECT_VERSION/\"$(WM_PROJECT_VERSION)\"/ $$SOURCE > $*.C ; $(CC) $(c++FLAGS) -c $*.C -o $@ +# +# update version string from git, or just use the WM_PROJECT_VERSION +# note: could also add --abbrev=32 for maximum resolution +# +Cvertoo = \ + sed s/WM_PROJECT_VERSION/\"$(shell \ + git describe --always --tags 2>/dev/null || \ + echo $(WM_PROJECT_VERSION) \ + )\"/ $$SOURCE > $*.C; \ + $(CC) $(c++FLAGS) -c $*.C -o $@ .Cver.dep: $(MAKE_DEP) -- GitLab