mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-20 02:40:03 +02:00
35 lines
1.6 KiB
C
Executable File
35 lines
1.6 KiB
C
Executable File
#ifndef @PROJECT_NAME_UPPER@_VERSION_H_
|
|
#define @PROJECT_NAME_UPPER@_VERSION_H_
|
|
|
|
/// project version as major.minor.patch string
|
|
#define @PROJECT_NAME_UPPER@_VERSION "@PROJECT_VERSION@"
|
|
/// project version as integer: major * 10000 + minor * 100 + patch
|
|
#define @PROJECT_NAME_UPPER@_VERSION_INT @PROJECT_VERSION_INT@
|
|
#define @PROJECT_NAME_UPPER@_VERSION_MAJOR @PACKAGE_VERSION_MAJOR@
|
|
#define @PROJECT_NAME_UPPER@_VERSION_MINOR @PACKAGE_VERSION_MINOR@
|
|
#define @PROJECT_NAME_UPPER@_VERSION_PATCH @PACKAGE_VERSION_PATCH@
|
|
/// package version as string, possibly with git commit: v1.2.3+4+g56789abc
|
|
#define @PROJECT_NAME_UPPER@_PACKAGE_VERSION "@PACKAGE_VERSION@"
|
|
|
|
///runtime versions, where the above values are linked into a lib and therefore reflect the version
|
|
///of the library itself (not the version of the header at compile time of the user code)
|
|
const char* @PROJECT_NAME@_runtime_project_version();
|
|
const char* @PROJECT_NAME@_runtime_package_version();
|
|
int @PROJECT_NAME@_runtime_version_int();
|
|
int @PROJECT_NAME@_runtime_version_major();
|
|
int @PROJECT_NAME@_runtime_version_minor();
|
|
int @PROJECT_NAME@_runtime_version_patch();
|
|
|
|
///Check consistency of runtime vs compile-time version number. I.e. the header used
|
|
///for compilation was from the same version as the linked library.
|
|
inline bool @PROJECT_NAME@_check_version_consistency(bool major_minor_only)
|
|
{
|
|
return @PROJECT_NAME@_runtime_version_major() == @PROJECT_NAME_UPPER@_VERSION_MAJOR &&
|
|
@PROJECT_NAME@_runtime_version_minor() == @PROJECT_NAME_UPPER@_VERSION_MINOR &&
|
|
(major_minor_only ||
|
|
@PROJECT_NAME@_runtime_version_patch() == @PROJECT_NAME_UPPER@_VERSION_PATCH);
|
|
}
|
|
|
|
|
|
#endif
|