diff --git a/include/catch_session.hpp b/include/catch_session.hpp index a9c33664..be51bef8 100644 --- a/include/catch_session.hpp +++ b/include/catch_session.hpp @@ -125,7 +125,7 @@ namespace Catch { } void showHelp( std::string const& processName ) { - Catch::cout() << "\nCatch v" << libraryVersion << "\n"; + Catch::cout() << "\nCatch v" << libraryVersion() << "\n"; m_cli.usage( Catch::cout(), processName ); Catch::cout() << "For more detail usage please see the project docs\n" << std::endl; diff --git a/include/internal/catch_version.h b/include/internal/catch_version.h index 1a79c5c5..09032d68 100644 --- a/include/internal/catch_version.h +++ b/include/internal/catch_version.h @@ -32,7 +32,7 @@ namespace Catch { void operator=( Version const& ); }; - extern Version libraryVersion; + inline Version libraryVersion(); } #endif // TWOBLUECUBES_CATCH_VERSION_H_INCLUDED diff --git a/include/internal/catch_version.hpp b/include/internal/catch_version.hpp index e8e2f764..2af86348 100644 --- a/include/internal/catch_version.hpp +++ b/include/internal/catch_version.hpp @@ -37,7 +37,10 @@ namespace Catch { return os; } - Version libraryVersion( 1, 8, 2, "", 0 ); + inline Version libraryVersion() { + static Version version(1, 8, 2, "", 0); + return version; + } } diff --git a/include/reporters/catch_reporter_console.hpp b/include/reporters/catch_reporter_console.hpp index 711d7fbe..fed97072 100644 --- a/include/reporters/catch_reporter_console.hpp +++ b/include/reporters/catch_reporter_console.hpp @@ -254,7 +254,7 @@ namespace Catch { stream << '\n' << getLineOfChars<'~'>() << '\n'; Colour colour( Colour::SecondaryText ); stream << currentTestRunInfo->name - << " is a Catch v" << libraryVersion << " host application.\n" + << " is a Catch v" << libraryVersion() << " host application.\n" << "Run with -? for options\n\n"; if( m_config->rngSeed() != 0 ) diff --git a/scripts/releaseCommon.py b/scripts/releaseCommon.py index 91a90628..c49f7461 100644 --- a/scripts/releaseCommon.py +++ b/scripts/releaseCommon.py @@ -7,7 +7,7 @@ import string from scriptCommon import catchPath -versionParser = re.compile( r'(\s*Version\slibraryVersion)\s*\(\s*(.*)\s*,\s*(.*)\s*,\s*(.*)\s*,\s*\"(.*)\"\s*,\s*(.*)\s*\).*' ) +versionParser = re.compile( r'(\s*static\sVersion\sversion)\s*\(\s*(.*)\s*,\s*(.*)\s*,\s*(.*)\s*,\s*\"(.*)\"\s*,\s*(.*)\s*\).*' ) rootPath = os.path.join( catchPath, 'include/' ) versionPath = os.path.join( rootPath, "internal/catch_version.hpp" ) readmePath = os.path.join( catchPath, "README.md" )