µOS++ IIIe Reference 7.0.0
The third edition of µOS++, a POSIX inspired open source framework, written in C++
Loading...
Searching...
No Matches
os-versions.h
Go to the documentation of this file.
1/*
2 * This file is part of the µOS++ project (https://micro-os-plus.github.io/).
3 * Copyright (c) 2016-2025 Liviu Ionescu. All rights reserved.
4 *
5 * Permission to use, copy, modify, and/or distribute this software
6 * for any purpose is hereby granted, under the terms of the MIT license.
7 *
8 * If a copy of the license was not distributed with this file, it can
9 * be obtained from https://opensource.org/licenses/mit.
10 */
11
12#ifndef CMSIS_PLUS_OS_VERSIONS_H_
13#define CMSIS_PLUS_OS_VERSIONS_H_
14
15// ----------------------------------------------------------------------------
16
17// According to Semantic Versioning 2.0.0 (http://semver.org),
18// given a version number MAJOR.MINOR.PATCH, increment the:
19//
20// MAJOR version when you make incompatible API changes,
21// MINOR version when you add functionality in a backwards-compatible manner,
22// PATCH version when you make backwards-compatible bug fixes,
23// PRE_RELEASE is a hyphen and a series of dot separated identifiers,
24// BUILD a plus sign and a series of dot separated identifiers.
25
26// ----------------------------------------------------------------------------
27
28#define OS_MACRO_SHARP(x) #x
29#define OS_MACRO_STRINGIFY(x) OS_MACRO_SHARP (x)
30
31// ----------------------------------------------------------------------------
32
33// µOS++ version.
34#define OS_INTEGER_RTOS_IMPL_VERSION_MAJOR 7
35#define OS_INTEGER_RTOS_IMPL_VERSION_MINOR 0
36#define OS_INTEGER_RTOS_IMPL_VERSION_PATCH 1
37#define OS_STRING_RTOS_IMPL_VERSION_PRE_RELEASE ""
38// #define OS_STRING_RTOS_IMPL_VERSION_PRE_RELEASE "-beta"
39#define OS_STRING_RTOS_IMPL_VERSION_BUILD ""
40
41#define OS_INTEGER_RTOS_IMPL_YEAR 2023
42#define OS_STRING_RTOS_IMPL_YEAR OS_MACRO_STRINGIFY (OS_INTEGER_RTOS_IMPL_YEAR)
43
44#define OS_STRING_RTOS_IMPL_VERSION \
45 OS_MACRO_STRINGIFY (OS_INTEGER_RTOS_IMPL_VERSION_MAJOR) \
46 "." OS_MACRO_STRINGIFY (OS_INTEGER_RTOS_IMPL_VERSION_MINOR) "." OS_MACRO_STRINGIFY ( \
47 OS_INTEGER_RTOS_IMPL_VERSION_PATCH) \
48 OS_STRING_RTOS_IMPL_VERSION_PRE_RELEASE \
49 OS_STRING_RTOS_IMPL_VERSION_BUILD
50
51// ----------------------------------------------------------------------------
52
65#define OS_USE_MICRO_OS_PLUS
66
86#if !defined(__APPLE__) && !defined(__linux__)
87#define OS_IS_CROSS_BUILD
88#if !defined(_GLIBCXX_HAS_GTHREADS)
89#define OS_HAS_STD_THREADS
90#endif
91#endif
92
97// ----------------------------------------------------------------------------
98
99#endif /* CMSIS_PLUS_OS_VERSIONS_H_ */