Skip to content

Commit

Permalink
Rocky Linux support (#59178)
Browse files Browse the repository at this point in the history
* Rocky Linux support

* Remove references to Rocky Linux minor version 8.4
  • Loading branch information
N3WWN authored Oct 5, 2021
1 parent 83b1453 commit ec15b53
Show file tree
Hide file tree
Showing 5 changed files with 189 additions and 3 deletions.
2 changes: 1 addition & 1 deletion eng/native/init-distro-rid.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ initNonPortableDistroRid()
# We have forced __PortableBuild=0. This is because -portablebuld
# has been passed as false.
if (( isPortable == 0 )); then
if [ "${ID}" = "rhel" ]; then
if [ "${ID}" = "rhel" || "${ID}" = "rocky" ]; then
# remove the last version digit
VERSION_ID="${VERSION_ID%.*}"
fi
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5730,6 +5730,122 @@
"any",
"base"
],
"rocky": [
"rocky",
"rhel",
"linux",
"unix",
"any",
"base"
],
"rocky-arm64": [
"rocky-arm64",
"rocky",
"rhel-arm64",
"rhel",
"linux-arm64",
"linux",
"unix-arm64",
"unix",
"any",
"base"
],
"rocky-x64": [
"rocky-x64",
"rocky",
"rhel-x64",
"rhel",
"linux-x64",
"linux",
"unix-x64",
"unix",
"any",
"base"
],
"rocky.8": [
"rocky.8",
"rocky",
"rhel.8",
"rhel",
"linux",
"unix",
"any",
"base"
],
"rocky.8-arm64": [
"rocky.8-arm64",
"rocky.8",
"rocky-arm64",
"rhel.8-arm64",
"rocky",
"rhel.8",
"rhel-arm64",
"rhel",
"linux-arm64",
"linux",
"unix-arm64",
"unix",
"any",
"base"
],
"rocky.8-x64": [
"rocky.8-x64",
"rocky.8",
"rocky-x64",
"rhel.8-x64",
"rocky",
"rhel.8",
"rhel-x64",
"rhel",
"linux-x64",
"linux",
"unix-x64",
"unix",
"any",
"base"
],
"rocky.9": [
"rocky.9",
"rocky",
"rhel.9",
"rhel",
"linux",
"unix",
"any",
"base"
],
"rocky.9-arm64": [
"rocky.9-arm64",
"rocky.9",
"rocky-arm64",
"rhel.9-arm64",
"rocky",
"rhel.9",
"rhel-arm64",
"rhel",
"linux-arm64",
"linux",
"unix-arm64",
"unix",
"any",
"base"
],
"rocky.9-x64": [
"rocky.9-x64",
"rocky.9",
"rocky-x64",
"rhel.9-x64",
"rocky",
"rhel.9",
"rhel-x64",
"rhel",
"linux-x64",
"linux",
"unix-x64",
"unix",
"any",
"base"
],
"sles": [
"sles",
"linux",
Expand Down Expand Up @@ -8638,4 +8754,4 @@
"any",
"base"
]
}
}
59 changes: 58 additions & 1 deletion src/libraries/Microsoft.NETCore.Platforms/src/runtime.json
Original file line number Diff line number Diff line change
Expand Up @@ -2334,6 +2334,63 @@
"rhel-x64"
]
},
"rocky": {
"#import": [
"rhel"
]
},
"rocky-arm64": {
"#import": [
"rocky",
"rhel-arm64"
]
},
"rocky-x64": {
"#import": [
"rocky",
"rhel-x64"
]
},
"rocky.8": {
"#import": [
"rocky",
"rhel.8"
]
},
"rocky.8-arm64": {
"#import": [
"rocky.8",
"rocky-arm64",
"rhel.8-arm64"
]
},
"rocky.8-x64": {
"#import": [
"rocky.8",
"rocky-x64",
"rhel.8-x64"
]
},
"rocky.9": {
"#import": [
"rocky",
"rhel.9"
]
},
"rocky.9-arm64": {
"#import": [
"rocky.9",
"rocky-arm64",
"rhel.9-arm64"
]
},
"rocky.9-x64": {
"#import": [
"rocky.9",
"rocky-x64",
"rhel.9-x64"
]
},
"sles": {
"#import": [
"linux"
Expand Down Expand Up @@ -3686,4 +3743,4 @@
]
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,14 @@
<Versions>9</Versions>
</RuntimeGroup>

<RuntimeGroup Include="rocky">
<Parent>rhel</Parent>
<Architectures>x64;arm64</Architectures>
<Versions>8;9</Versions>
<ApplyVersionsToParent>true</ApplyVersionsToParent>
<TreatVersionsAsCompatible>false</TreatVersionsAsCompatible>
</RuntimeGroup>

<RuntimeGroup Include="sles">
<Parent>linux</Parent>
<Architectures>x64</Architectures>
Expand Down
5 changes: 5 additions & 0 deletions src/native/corehost/hostmisc/pal.unix.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -698,6 +698,7 @@ 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."));
size_t lastVersionSeparatorIndex = std::string::npos;

if (rid.compare(0, rhelPrefix.length(), rhelPrefix) == 0)
Expand All @@ -712,6 +713,10 @@ pal::string_t normalize_linux_rid(pal::string_t rid)
lastVersionSeparatorIndex = rid.find(_X("."), secondVersionSeparatorIndex + 1);
}
}
else if (rid.compare(0, rockyPrefix.length(), rockyPrefix) == 0)
{
lastVersionSeparatorIndex = rid.find(_X("."), rockyPrefix.length());
}

if (lastVersionSeparatorIndex != std::string::npos)
{
Expand Down

0 comments on commit ec15b53

Please sign in to comment.