提交 ce16945c 编写于 作者: mysterywolf's avatar mysterywolf 提交者: mysterywolf

[kernel][version] 采用新的版本宏定义

版本控制规范:https://semver.org/

目前的版本子号不是很规范,其中RT_VERSION甚至和VS那边造成了冲突
```c
/* RT-Thread version information */
#define RT_VERSION                      4L              /**< major version number */
#define RT_SUBVERSION                   1L              /**< minor version number */
#define RT_REVISION                     1L              /**< revise version number */
```

参考ESP32:
```c
/** Major version number (X.x.x) */
#define ESP_ARDUINO_VERSION_MAJOR   2
/** Minor version number (x.X.x) */
#define ESP_ARDUINO_VERSION_MINOR   0
/** Patch version number (x.x.X) */
#define ESP_ARDUINO_VERSION_PATCH   3
```

建议改成:
```c
/* Major version number (X.x.x) */
#define RT_VERSION_MAJOR   4
/* Minor version number (x.X.x) */
#define RT_VERSION_MINOR   2
/* Patch version number (x.x.X) */
#define RT_VERSION_PATCH   0
```
上级 c75f52ff
...@@ -118,7 +118,7 @@ void slcd_demo_hook(void) ...@@ -118,7 +118,7 @@ void slcd_demo_hook(void)
/* Show RTT version. */ /* Show RTT version. */
{ {
LCDLIB_SetSymbol(SYMBOL_VERSION, 1); LCDLIB_SetSymbol(SYMBOL_VERSION, 1);
rt_snprintf(au8Str, sizeof(au8Str), "%d%02d%03d", RT_VERSION, RT_SUBVERSION, RT_REVISION); rt_snprintf(au8Str, sizeof(au8Str), "%d%02d%03d", RT_VERSION_MAJOR, RT_VERSION_MINOR, RT_VERSION_PATCH);
LCDLIB_Printf(ZONE_VER_DIGIT, &au8Str[0]); LCDLIB_Printf(ZONE_VER_DIGIT, &au8Str[0]);
LCDLIB_SetSymbol(SYMBOL_VER_DIG_P1, 1); LCDLIB_SetSymbol(SYMBOL_VER_DIG_P1, 1);
LCDLIB_SetSymbol(SYMBOL_VER_DIG_P2, 1); LCDLIB_SetSymbol(SYMBOL_VER_DIG_P2, 1);
......
...@@ -21,8 +21,6 @@ if rtconfig.CROSS_TOOL == 'msvc': ...@@ -21,8 +21,6 @@ if rtconfig.CROSS_TOOL == 'msvc':
'_CRT_NO_TIME_T', '_CRT_NO_TIME_T',
# disable deprecation of unsafe functions, such as strncpy # disable deprecation of unsafe functions, such as strncpy
'_CRT_SECURE_NO_WARNINGS', '_CRT_SECURE_NO_WARNINGS',
# RT_VESRION conflicts in winuser.h
'NORESOURCE',
# lean and mean for Windows.h, exclude winsock.h when include Windows.h # lean and mean for Windows.h, exclude winsock.h when include Windows.h
# avoid conlicts between sys/select.h, time.h, and winsock.h # avoid conlicts between sys/select.h, time.h, and winsock.h
# such as fd_set related, struct timeval... # such as fd_set related, struct timeval...
......
...@@ -12,10 +12,12 @@ ...@@ -12,10 +12,12 @@
#define __RT_LEGACY_H__ #define __RT_LEGACY_H__
#include <rtconfig.h> #include <rtconfig.h>
#include <rtdef.h>
/* rtlibc */ /* legacy version macros */
#include <stdint.h> #define RT_VERSION RT_VERSION_MAJOR /**< major version number */
#include <stddef.h> #define RT_SUBVERSION RT_VERSION_MINOR /**< minor version number */
#define RT_REVISION RT_VERSION_PATCH /**< revise version number */
/* IPC */ /* IPC */
#ifdef RT_USING_DEVICE_IPC #ifdef RT_USING_DEVICE_IPC
......
...@@ -238,9 +238,9 @@ static void check_netdev_internet_up_work(struct rt_work *work, void *work_data) ...@@ -238,9 +238,9 @@ static void check_netdev_internet_up_work(struct rt_work *work, void *work_data)
{ {
send_data[index + 1] = netdev->hwaddr[index] + moth_num; send_data[index + 1] = netdev->hwaddr[index] + moth_num;
} }
send_data[9] = RT_VERSION; send_data[9] = RT_VERSION_MAJOR;
send_data[10] = RT_SUBVERSION; send_data[10] = RT_VERSION_MINOR;
send_data[11] = RT_REVISION; send_data[11] = RT_VERSION_PATCH;
skt_ops->sendto(sockfd, send_data, SAL_INTERNET_BUFF_LEN, 0, skt_ops->sendto(sockfd, send_data, SAL_INTERNET_BUFF_LEN, 0,
(struct sockaddr *)&server_addr, sizeof(struct sockaddr)); (struct sockaddr *)&server_addr, sizeof(struct sockaddr));
......
...@@ -68,15 +68,15 @@ extern "C" { ...@@ -68,15 +68,15 @@ extern "C" {
/**@{*/ /**@{*/
/* RT-Thread version information */ /* RT-Thread version information */
#define RT_VERSION 5 /**< major version number */ #define RT_VERSION_MAJOR 5 /**< Major version number (X.x.x) */
#define RT_SUBVERSION 0 /**< minor version number */ #define RT_VERSION_MINOR 0 /**< Minor version number (x.X.x) */
#define RT_REVISION 0 /**< revise version number */ #define RT_VERSION_PATCH 0 /**< Patch version number (x.x.X) */
/* e.g. #if (RTTHREAD_VERSION >= RT_VERSION_CHECK(4, 1, 0) */ /* e.g. #if (RTTHREAD_VERSION >= RT_VERSION_CHECK(4, 1, 0) */
#define RT_VERSION_CHECK(major, minor, revise) ((major * 10000) + (minor * 100) + revise) #define RT_VERSION_CHECK(major, minor, revise) ((major * 10000) + (minor * 100) + revise)
/* RT-Thread version */ /* RT-Thread version */
#define RTTHREAD_VERSION RT_VERSION_CHECK(RT_VERSION, RT_SUBVERSION, RT_REVISION) #define RTTHREAD_VERSION RT_VERSION_CHECK(RT_VERSION_MAJOR, RT_VERSION_MINOR, RT_VERSION_PATCH)
/* RT-Thread basic data type definitions */ /* RT-Thread basic data type definitions */
......
...@@ -640,7 +640,7 @@ void rt_show_version(void) ...@@ -640,7 +640,7 @@ void rt_show_version(void)
rt_kprintf("\n \\ | /\n"); rt_kprintf("\n \\ | /\n");
rt_kprintf("- RT - Thread Operating System\n"); rt_kprintf("- RT - Thread Operating System\n");
rt_kprintf(" / | \\ %d.%d.%d build %s %s\n", rt_kprintf(" / | \\ %d.%d.%d build %s %s\n",
(rt_int32_t)RT_VERSION, (rt_int32_t)RT_SUBVERSION, (rt_int32_t)RT_REVISION, __DATE__, __TIME__); (rt_int32_t)RT_VERSION_MAJOR, (rt_int32_t)RT_VERSION_MINOR, (rt_int32_t)RT_VERSION_PATCH, __DATE__, __TIME__);
rt_kprintf(" 2006 - 2022 Copyright by RT-Thread team\n"); rt_kprintf(" 2006 - 2022 Copyright by RT-Thread team\n");
} }
RTM_EXPORT(rt_show_version); RTM_EXPORT(rt_show_version);
......
...@@ -968,11 +968,11 @@ def GetVersion(): ...@@ -968,11 +968,11 @@ def GetVersion():
prepcessor.process_contents(contents) prepcessor.process_contents(contents)
def_ns = prepcessor.cpp_namespace def_ns = prepcessor.cpp_namespace
version = int([ch for ch in def_ns['RT_VERSION'] if ch in '0123456789.']) version = int([ch for ch in def_ns['RT_VERSION_MAJOR'] if ch in '0123456789.'])
subversion = int([ch for ch in def_ns['RT_SUBVERSION'] if ch in '0123456789.']) subversion = int([ch for ch in def_ns['RT_VERSION_MINOR'] if ch in '0123456789.'])
if 'RT_REVISION' in def_ns: if 'RT_VERSION_PATCH' in def_ns:
revision = int([ch for ch in def_ns['RT_REVISION'] if ch in '0123456789.']) revision = int([ch for ch in def_ns['RT_VERSION_PATCH'] if ch in '0123456789.'])
return '%d.%d.%d' % (version, subversion, revision) return '%d.%d.%d' % (version, subversion, revision)
return '0.%d.%d' % (version, subversion) return '0.%d.%d' % (version, subversion)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册