Commit 886bbf01 authored by Xie XiuQi's avatar Xie XiuQi Committed by Wei Li
Browse files

kernel: add OPENEULER_VERSION_CODE to version.h

hulk inclusion
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I7LEXY

---------------------------------------------

Add OPENEULER_VERSION_CODE to version.h, so modules or applications
can identify the specific kernel version.

In most cases, the out-of-tree module needs to identify the release
version of the openEuler for interface adaptation. The existing
OPENEULER_VERSION() and OPENEULER_VERSION_CODE() cannot distinguish
between LTS versions and innovative versions. Therefore, a new macro
OPENEULER_LTS is introduced.

The version information is generated in "linux/version.h", as bellow:
include/generated/uapi/linux/version.h

```
 #define OPENEULER_LTS 0          // 1: LTS; 0: none LTS
 #define OPENEULER_MAJOR 9999     // OS Major version, 9999: none released
 #define OPENEULER_MINOR 0        // SP release version
 #define OPENEULER_VERSION(a,b) (((a) << 8) + (b))
 #define OPENEULER_VERSION_CODE 2559744
```

Use Makefile.oever to avoid future merge conflicts.

Link:https://gitee.com/openeuler/kernel/issues/I575IT
Link:https://gitee.com/openeuler/kernel/issues/I7761D
Link:https://gitee.com/openeuler/kernel/pulls/1442
Link:https://gitee.com/openeuler/kernel/pulls/1219
Link:https://gitee.com/openeuler/kernel/pulls/195


Signed-off-by: default avatarXie XiuQi <xiexiuqi@huawei.com>
Signed-off-by: default avatarWei Li <liwei391@huawei.com>
parent f9996385
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -1226,6 +1226,9 @@ uapi-asm-generic:
# Generate some files
# ---------------------------------------------------------------------------

# openEuler version variables
include $(srctree)/Makefile.oever

# KERNELRELEASE can change from a few different places, meaning version.h
# needs to be updated, so this check is forced on all builds

@@ -1250,7 +1253,13 @@ define filechk_version.h
	((c) > 255 ? 255 : (c)))';                                       \
	echo \#define LINUX_VERSION_MAJOR $(VERSION);                    \
	echo \#define LINUX_VERSION_PATCHLEVEL $(PATCHLEVEL);            \
	echo \#define LINUX_VERSION_SUBLEVEL $(SUBLEVEL)
	echo \#define LINUX_VERSION_SUBLEVEL $(SUBLEVEL);                \
	echo \#define OPENEULER_LTS $(OPENEULER_LTS);                    \
	echo \#define OPENEULER_MAJOR $(OPENEULER_MAJOR);                \
	echo \#define OPENEULER_MINOR $(OPENEULER_MINOR);                \
	echo '#define OPENEULER_VERSION(a,b) (((a) << 8) + (b))';        \
	echo \#define OPENEULER_VERSION_CODE $(shell                     \
	expr $(OPENEULER_MAJOR) \* 256 + $(OPENEULER_MINOR))
endef

$(version_h): PATCHLEVEL := $(or $(PATCHLEVEL), 0)

Makefile.oever

0 → 100644
+4 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
OPENEULER_LTS = 0
OPENEULER_MAJOR = 9999
OPENEULER_MINOR = 0