加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
openEuler-runtime-8.patch 11.84 KB
一键复制 编辑 原始数据 按行查看 历史
Wang Kui 提交于 2024-07-26 09:53 . add dotnet-8
diff --git a/Directory.Build.props b/Directory.Build.props
index 3c8246c8967..b753c25896b 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -3,6 +3,7 @@
<!-- For non-SDK projects that import this file and then import Microsoft.Common.props,
tell Microsoft.Common.props not to import Directory.Build.props again. -->
<ImportDirectoryBuildProps>false</ImportDirectoryBuildProps>
+ <UpdateRuntimeFiles>true</UpdateRuntimeFiles>
<!-- Used to determine if we should build some packages only once across multiple official build legs.
For offline builds we still set OfficialBuildId but we need to build all the packages for a single
leg only, so we also take DotNetBuildFromSource into account. -->
diff --git a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json b/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json
index 085cb7b518f..c61db5ef70d 100644
--- a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json
+++ b/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json
@@ -1,4 +1,223 @@
{
+ "openEuler": [
+ "openEuler",
+ "linux",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler-arm64": [
+ "openEuler-arm64",
+ "openEuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler-x64": [
+ "openEuler-x64",
+ "openEuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.22.03-x64": [
+ "openEuler.22.03-x64",
+ "openEuler.22.03",
+ "openEuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.22.03-arm64": [
+ "openEuler.22.03-arm64",
+ "openEuler.22.03",
+ "openEuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.22-x64": [
+ "openEuler.22.03-x64",
+ "openEuler.22.03",
+ "openEuler.22-x64",
+ "openEuler.22",
+ "openEuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.22-arm64": [
+ "openEuler.22.03-arm64",
+ "openEuler.22.03",
+ "openEuler.22-arm64",
+ "openEuler.22",
+ "openEuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.22.03-x64": [
+ "openeuler.22.03-x64",
+ "openeuler.22.03",
+ "openeuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.22.03-arm64": [
+ "openeuler.22.03-arm64",
+ "openeuler.22.03",
+ "openeuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.22-x64": [
+ "openeuler.22.03-x64",
+ "openeuler.22.03",
+ "openeuler.22-x64",
+ "openeuler.22",
+ "openeuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.22-arm64": [
+ "openeuler.22.03-arm64",
+ "openeuler.22.03",
+ "openeuler.22-arm64",
+ "openeuler.22",
+ "openeuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.20.03-x64": [
+ "openEuler.20.03-x64",
+ "openEuler.20.03",
+ "openEuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.20.03-arm64": [
+ "openEuler.20.03-arm64",
+ "openEuler.20.03",
+ "openEuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.20-x64": [
+ "openEuler.20.03-x64",
+ "openEuler.20.03",
+ "openEuler.20-x64",
+ "openEuler.20",
+ "openEuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openEuler.20-arm64": [
+ "openEuler.20.03-arm64",
+ "openEuler.20.03",
+ "openEuler.20-arm64",
+ "openEuler.20",
+ "openEuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.20.03-x64": [
+ "openeuler.20.03-x64",
+ "openeuler.20.03",
+ "openeuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.20.03-arm64": [
+ "openeuler.20.03-arm64",
+ "openeuler.20.03",
+ "openeuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.20-x64": [
+ "openeuler.20.03-x64",
+ "openeuler.20.03",
+ "openeuler.20-x64",
+ "openeuler.20",
+ "openeuler",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "openeuler.20-arm64": [
+ "openeuler.20.03-arm64",
+ "openeuler.20.03",
+ "openeuler.20-arm64",
+ "openeuler.20",
+ "openeuler",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
"alpine": [
"alpine",
"linux-musl",
diff --git a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json b/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json
index 16c038598af..a4eb8d2705c 100644
--- a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json
+++ b/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json
@@ -1,5 +1,209 @@
{
"runtimes": {
+ "openEuler.22.03": {
+ "#import": [
+ "linux",
+ "openEuler",
+ "openEuler.22.03"
+ ]
+ },
+ "openEuler.22.03-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openEuler",
+ "openEuler.22.03",
+ "openEuler.22.03-arm64"
+ ]
+ },
+ "openEuler.22.03-x64": {
+ "#import": [
+ "linux-x64",
+ "openEuler",
+ "openEuler.22.03",
+ "openEuler.22.03-x64"
+ ]
+ },
+ "openEuler.22": {
+ "#import": [
+ "linux",
+ "openEuler",
+ "openEuler.22.03",
+ "openEuler.22"
+ ]
+ },
+ "openEuler.22-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openEuler",
+ "openEuler.22",
+ "openEuler.22-arm64",
+ "openEuler.22.03",
+ "openEuler.22.03-x64"
+ ]
+ },
+ "openEuler.22-x64": {
+ "#import": [
+ "linux-x64",
+ "openEuler",
+ "openEuler.22",
+ "openEuler.22-x64",
+ "openEuler.22.03",
+ "openEuler.22.03-x64"
+ ]
+ },
+ "openeuler.22.03": {
+ "#import": [
+ "linux",
+ "openeuler",
+ "openeuler.22.03"
+ ]
+ },
+ "openeuler.22.03-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openeuler",
+ "openeuler.22.03",
+ "openeuler.22.03-arm64"
+ ]
+ },
+ "openeuler.22.03-x64": {
+ "#import": [
+ "linux-x64",
+ "openeuler",
+ "openeuler.22.03",
+ "openeuler.22.03-x64"
+ ]
+ },
+ "openeuler.22": {
+ "#import": [
+ "linux",
+ "openeuler",
+ "openeuler.22.03",
+ "openeuler.22"
+ ]
+ },
+ "openeuler.22-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openeuler",
+ "openeuler.22",
+ "openeuler.22-arm64",
+ "openeuler.22.03",
+ "openeuler.22.03-x64"
+ ]
+ },
+ "openeuler.22-x64": {
+ "#import": [
+ "linux-x64",
+ "openeuler",
+ "openeuler.22",
+ "openeuler.22-x64",
+ "openeuler.22.03",
+ "openeuler.22.03-x64"
+ ]
+ },
+ "openEuler.20.03": {
+ "#import": [
+ "linux",
+ "openEuler",
+ "openEuler.20.03"
+ ]
+ },
+ "openEuler.20.03-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openEuler",
+ "openEuler.20.03",
+ "openEuler.20.03-arm64"
+ ]
+ },
+ "openEuler.20.03-x64": {
+ "#import": [
+ "linux-x64",
+ "openEuler",
+ "openEuler.20.03",
+ "openEuler.20.03-x64"
+ ]
+ },
+ "openEuler.20": {
+ "#import": [
+ "linux",
+ "openEuler",
+ "openEuler.20.03",
+ "openEuler.20"
+ ]
+ },
+ "openEuler.20-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openEuler",
+ "openEuler.20",
+ "openEuler.20-arm64",
+ "openEuler.20.03",
+ "openEuler.20.03-x64"
+ ]
+ },
+ "openEuler.20-x64": {
+ "#import": [
+ "linux-x64",
+ "openEuler",
+ "openEuler.20",
+ "openEuler.20-x64",
+ "openEuler.20.03",
+ "openEuler.20.03-x64"
+ ]
+ },
+ "openeuler.20.03": {
+ "#import": [
+ "linux",
+ "openeuler",
+ "openeuler.20.03"
+ ]
+ },
+ "openeuler.20.03-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openeuler",
+ "openeuler.20.03",
+ "openeuler.20.03-arm64"
+ ]
+ },
+ "openeuler.20.03-x64": {
+ "#import": [
+ "linux-x64",
+ "openeuler",
+ "openeuler.20.03",
+ "openeuler.20.03-x64"
+ ]
+ },
+ "openeuler.20": {
+ "#import": [
+ "linux",
+ "openeuler",
+ "openeuler.20.03",
+ "openeuler.20"
+ ]
+ },
+ "openeuler.20-arm64": {
+ "#import": [
+ "linux-arm64",
+ "openeuler",
+ "openeuler.20",
+ "openeuler.20-arm64",
+ "openeuler.20.03",
+ "openeuler.20.03-x64"
+ ]
+ },
+ "openeuler.20-x64": {
+ "#import": [
+ "linux-x64",
+ "openeuler",
+ "openeuler.20",
+ "openeuler.20-x64",
+ "openeuler.20.03",
+ "openeuler.20.03-x64"
+ ]
+ },
"alpine": {
"#import": [
"linux-musl"
diff --git a/src/libraries/Microsoft.NETCore.Platforms/src/runtimeGroups.props b/src/libraries/Microsoft.NETCore.Platforms/src/runtimeGroups.props
index 05bdf782326..d2992625d59 100644
--- a/src/libraries/Microsoft.NETCore.Platforms/src/runtimeGroups.props
+++ b/src/libraries/Microsoft.NETCore.Platforms/src/runtimeGroups.props
@@ -1,6 +1,21 @@
<Project>
<ItemGroup>
+ <RuntimeGroup Include="openEuler">
+ <Parent>linux</Parent>
+ <Architectures>x64;arm64</Architectures>
+ <Versions>20;20.03;22;22.03</Versions>
+ <ApplyVersionsToParent>false</ApplyVersionsToParent>
+ <TreatVersionsAsCompatible>false</TreatVersionsAsCompatible>
+ </RuntimeGroup>
+ <RuntimeGroup Include="openeuler">
+ <Parent>linux</Parent>
+ <Architectures>x64;arm64</Architectures>
+ <Versions>20;20.03;22;22.03</Versions>
+ <ApplyVersionsToParent>false</ApplyVersionsToParent>
+ <TreatVersionsAsCompatible>false</TreatVersionsAsCompatible>
+ </RuntimeGroup>
+
<RuntimeGroup Include="unix">
<Parent>any</Parent>
<Architectures>x64;x86;arm;armv6;armel;arm64;loongarch64;mips64;s390x;ppc64le;riscv64</Architectures>
diff --git a/src/native/corehost/hostmisc/pal.unix.cpp b/src/native/corehost/hostmisc/pal.unix.cpp
index 34520aefd73..695acb595d9 100644
--- a/src/native/corehost/hostmisc/pal.unix.cpp
+++ b/src/native/corehost/hostmisc/pal.unix.cpp
@@ -767,6 +767,8 @@ pal::string_t normalize_linux_rid(pal::string_t rid)
pal::string_t rhelPrefix(_X("rhel."));
pal::string_t alpinePrefix(_X("alpine."));
pal::string_t rockyPrefix(_X("rocky."));
+ pal::string_t oEPrefix(_X("openEuler."));
+ pal::string_t oePrefix(_X("openeuler."));
size_t lastVersionSeparatorIndex = std::string::npos;
if (rid.compare(0, rhelPrefix.length(), rhelPrefix) == 0)
@@ -785,6 +787,14 @@ pal::string_t normalize_linux_rid(pal::string_t rid)
{
lastVersionSeparatorIndex = rid.find(_X("."), rockyPrefix.length());
}
+ else if (rid.compare(0, oePrefix.length(), oePrefix) == 0)
+ {
+ lastVersionSeparatorIndex = rid.find(_X("."), oePrefix.length());
+ }
+ else if (rid.compare(0, oEPrefix.length(), oEPrefix) == 0)
+ {
+ lastVersionSeparatorIndex = rid.find(_X("."), oEPrefix.length());
+ }
if (lastVersionSeparatorIndex != std::string::npos)
{
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化