summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsmile21prc <xiwe@microsoft.com>2017-08-17 10:42:22 -0700
committerGitHub <noreply@github.com>2017-08-17 10:42:22 -0700
commitb2b5fef27a4cb68571549f2e19660f39bd76467b (patch)
treeeb413e3bcf0b97ac2efaef54a872479da96ea4bc
parent6e01319382dff1a08412602df207a7d38ed61526 (diff)
downloadcoreclr-b2b5fef27a4cb68571549f2e19660f39bd76467b.tar.gz
coreclr-b2b5fef27a4cb68571549f2e19660f39bd76467b.tar.bz2
coreclr-b2b5fef27a4cb68571549f2e19660f39bd76467b.zip
Enable RedHat 6 in coreclr master (#13315)
* Enable RedHat 6 in coreclr master Enable RedHat 6 in coreclr master. This is identical as the approved PR to enable RedHat 6 in coreclr release/2.0.0: https://github.com/dotnet/coreclr/pull/13301 * Correct Rid to match /src/.nuget/dirs.props Correct Rid to match /src/.nuget/dirs.props * Update dockertag and add logic to detect RHEL6 in init-tools.sh Update dockertag and add logic to detect RHEL6 in init-tools.sh * Port changes from Release/2.0.0 to fix coreclr RHEL 6 official runs. Port changes from Release/2.0.0 to fix coreclr RHEL 6 official runs. * Remove empty quotes. Remove empty quotes.
-rwxr-xr-xbuild-packages.sh26
-rwxr-xr-xbuild.sh18
-rw-r--r--buildpipeline/DotNet-CoreClr-Trusted-Linux.json7
-rw-r--r--buildpipeline/pipelines.json51
-rwxr-xr-xinit-tools.sh8
-rw-r--r--tests/src/Common/build_against_pkg_dependencies/build_against_pkg_dependencies.csproj4
-rw-r--r--tests/src/Common/targeting_pack_ref/targeting_pack_ref.csproj4
-rw-r--r--tests/src/Common/test_dependencies/test_dependencies.csproj2
-rw-r--r--tests/src/Common/test_runtime/test_runtime.csproj2
9 files changed, 102 insertions, 20 deletions
diff --git a/build-packages.sh b/build-packages.sh
index a4184646d5..9b929715e9 100755
--- a/build-packages.sh
+++ b/build-packages.sh
@@ -10,6 +10,26 @@ usage()
exit 1
}
+initHostDistroRid()
+{
+ __HostDistroRid=""
+ if [ "$__HostOS" == "Linux" ]; then
+ if [ -e /etc/os-release ]; then
+ source /etc/os-release
+ __HostDistroRid="$ID.$VERSION_ID-$__Arch"
+ elif [ -e /etc/redhat-release ]; then
+ local redhatRelease=$(</etc/redhat-release)
+ if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then
+ __HostDistroRid="rhel.6-$__Arch"
+ fi
+ fi
+ fi
+
+ if [ "$__HostDistroRid" == "" ]; then
+ echo "WARNING: Can not determine runtime id for current distro."
+ fi
+}
+
__ProjectRoot="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
__IsPortableBuild=1
@@ -70,7 +90,7 @@ while :; do
__Arch=$(echo $1| cut -d'=' -f 2)
;;
- -PortableBuild=false)
+ -portablebuild=false)
unprocessedBuildArgs="$unprocessedBuildArgs $1"
__IsPortableBuild=0
;;
@@ -88,7 +108,9 @@ if [ $__IsPortableBuild == 1 ]; then
export __DistroRid="osx-$__Arch"
fi
else
- export __DistroRid="\${OSRid}-$__Arch"
+ # init the host distro name
+ initHostDistroRid
+ export __DistroRid="$__HostDistroRid"
fi
$__ProjectRoot/run.sh build-packages -Project=$__ProjectRoot/src/.nuget/packages.builds -DistroRid=$__DistroRid -UseSharedCompilation=false -BuildNugetPackage=false $unprocessedBuildArgs
diff --git a/build.sh b/build.sh
index 9927e319c6..c02b5b01bd 100755
--- a/build.sh
+++ b/build.sh
@@ -211,7 +211,7 @@ generate_event_logging_sources()
__PythonWarningFlags="$__PythonWarningFlags -Werror"
fi
-
+
if [[ $__SkipCoreCLR == 0 || $__ConfigureOnly == 1 ]]; then
echo "Laying out dynamically generated files consumed by the build system "
echo "Laying out dynamically generated Event Logging Test files"
@@ -360,8 +360,8 @@ build_cross_arch_component()
else
# not supported
return
- fi
-
+ fi
+
export __CMakeBinDir="$__CrossComponentBinDir"
export CROSSCOMPONENT=1
__IncludeTests=
@@ -377,8 +377,8 @@ build_cross_arch_component()
__ExtraCmakeArgs="-DCLR_CMAKE_TARGET_ARCH=$__BuildArch -DCLR_CMAKE_TARGET_OS=$__BuildOS -DCLR_CMAKE_PACKAGES_DIR=$__PackagesDir -DCLR_CMAKE_PGO_INSTRUMENT=$__PgoInstrument -DCLR_CMAKE_OPTDATA_VERSION=$__PgoOptDataVersion -DCLR_CMAKE_PGO_OPTIMIZE=$__PgoOptimize"
build_native $__SkipCrossArchBuild "$__CrossArch" "$__CrossCompIntermediatesDir" "$__ExtraCmakeArgs" "cross-architecture component"
-
- # restore ROOTFS_DIR, CROSSCOMPONENT, and CROSSCOMPILE
+
+ # restore ROOTFS_DIR, CROSSCOMPONENT, and CROSSCOMPILE
if [ -n "$TARGET_ROOTFS" ]; then
export ROOTFS_DIR="$TARGET_ROOTFS"
fi
@@ -398,7 +398,7 @@ isMSBuildOnNETCoreSupported()
if [ "$__HostOS" == "Linux" ]; then
__isMSBuildOnNETCoreSupported=1
# note: the RIDs below can use globbing patterns
- UNSUPPORTED_RIDS=("debian.9-x64" "ubuntu.17.04-x64" "alpine.3.6.*-x64" "rhel.6-x64" "")
+ UNSUPPORTED_RIDS=("debian.9-x64" "ubuntu.17.04-x64" "alpine.3.6.*-x64")
for UNSUPPORTED_RID in "${UNSUPPORTED_RIDS[@]}"
do
if [[ $__HostDistroRid == $UNSUPPORTED_RID ]]; then
@@ -477,10 +477,10 @@ build_CoreLib()
build_CoreLib_ni
elif [[ ( "$__HostArch" == "arm64" ) && ( "$__BuildArch" == "arm" ) ]]; then
build_CoreLib_ni
- else
+ else
exit 1
fi
- fi
+ fi
}
generate_NugetPackages()
@@ -700,7 +700,7 @@ while :; do
cross|-cross)
__CrossBuild=1
;;
-
+
-portablebuild=false)
__PortableBuild=0
;;
diff --git a/buildpipeline/DotNet-CoreClr-Trusted-Linux.json b/buildpipeline/DotNet-CoreClr-Trusted-Linux.json
index fc68378991..b20c7db895 100644
--- a/buildpipeline/DotNet-CoreClr-Trusted-Linux.json
+++ b/buildpipeline/DotNet-CoreClr-Trusted-Linux.json
@@ -121,7 +121,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs) ./build.sh $(PB_BuildType) $(Architecture) skipnuget -skiprestore stripSymbols -OfficialBuildId=$(OfficialBuildId) -- /flp:\"v=diag\"",
+ "arguments": "run --rm $(DockerCommonRunArgs) ./build.sh $(PB_BuildType) $(Architecture) skipnuget -skiprestore stripSymbols -OfficialBuildId=$(OfficialBuildId) $(PB_AdditionalBuildArgs) -- /flp:\"v=diag\"",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -139,7 +139,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -- /p:OfficialBuildId=$(OfficialBuildId)",
+ "arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) $(PB_AdditionalBuildArgs) -- /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -369,6 +369,9 @@
},
"PB_CleanAgent": {
"value": "true"
+ },
+ "PB_AdditionalBuildArgs": {
+ "value":""
}
},
"demands": [
diff --git a/buildpipeline/pipelines.json b/buildpipeline/pipelines.json
index 01fd417b80..46b647ea84 100644
--- a/buildpipeline/pipelines.json
+++ b/buildpipeline/pipelines.json
@@ -24,6 +24,20 @@
}
},
{
+ "Name": "DotNet-CoreClr-Trusted-Linux",
+ "Parameters": {
+ "DockerTag": "centos-6-c8c9b08-20174310104313",
+ "Rid": "rhel.6",
+ "PB_AdditionalBuildArgs": "-portablebuild=false"
+ },
+ "ReportingParameters": {
+ "OperatingSystem": "RedHat6",
+ "Type": "build/product/",
+ "Architecture": "x64",
+ "PB_BuildType": null
+ }
+ },
+ {
"Name": "DotNet-CoreClr-Trusted-Mac",
"Parameters": {
"Rid": "osx"
@@ -460,7 +474,42 @@
"Type": "build/product/",
"PB_BuildType": "Release"
}
- }
+ },
+ {
+ "Name": "Dotnet-CoreClr-Trusted-BuildTests",
+ "Parameters": {
+ "HelixJobType": "test/functional/cli/",
+ "TargetsWindows": "false",
+ "Rid": "rhel.6-x64",
+ "TargetQueues": "redhat.69.amd64",
+ "TestContainerSuffix": "rhel6",
+ "TargetsNonWindowsArg": "TargetsNonWindows "
+ },
+ "ReportingParameters": {
+ "OperatingSystem": "RedHat6",
+ "SubType": "Build-Tests",
+ "Type": "build/product/",
+ "PB_BuildType": "Release"
+ }
+ },
+ {
+ "Name": "Dotnet-CoreClr-Trusted-BuildTests",
+ "Parameters": {
+ "HelixJobType": "test/functional/r2r/cli/",
+ "TargetsWindows": "false",
+ "Rid": "rhel.6-x64",
+ "TargetQueues": "redhat.69.amd64",
+ "TestContainerSuffix": "rhel6-r2r",
+ "CrossgenArg": "Crossgen ",
+ "TargetsNonWindowsArg": "TargetsNonWindows "
+ },
+ "ReportingParameters": {
+ "OperatingSystem": "RedHat6",
+ "SubType": "Build-Tests-R2R",
+ "Type": "build/product/",
+ "PB_BuildType": "Release"
+ }
+ }
],
"DependsOn": [
"Trusted-All-Release"
diff --git a/init-tools.sh b/init-tools.sh
index eb68c2e59e..4ec011d48d 100755
--- a/init-tools.sh
+++ b/init-tools.sh
@@ -37,6 +37,14 @@ if [ -z "$__DOTNET_PKG" ]; then
Linux)
__DOTNET_PKG=dotnet-dev-linux-x64
OS=Linux
+
+ if [ -e /etc/redhat-release ]; then
+ redhatRelease=$(</etc/redhat-release)
+ if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then
+ __DOTNET_PKG=dotnet-dev-rhel.6-x64
+ fi
+ fi
+
;;
*)
diff --git a/tests/src/Common/build_against_pkg_dependencies/build_against_pkg_dependencies.csproj b/tests/src/Common/build_against_pkg_dependencies/build_against_pkg_dependencies.csproj
index 088528579a..e61cb44e9b 100644
--- a/tests/src/Common/build_against_pkg_dependencies/build_against_pkg_dependencies.csproj
+++ b/tests/src/Common/build_against_pkg_dependencies/build_against_pkg_dependencies.csproj
@@ -28,11 +28,11 @@
<TargetFramework>netcoreapp2.1</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8</PackageTargetFallback>
- <RuntimeIdentifiers>win-arm;win-x64;win-x86;win7-x86;win7-x64;win10-arm64;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;osx-x64;centos.7-x64;rhel.7-x64;debian.8-x64;fedora.24-x64;opensuse.42.1-x64;linux-x64</RuntimeIdentifiers>
+ <RuntimeIdentifiers>win-arm;win-x64;win-x86;win7-x86;win7-x64;win10-arm64;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;osx-x64;centos.7-x64;rhel.6-x64;rhel.7-x64;debian.8-x64;fedora.24-x64;opensuse.42.1-x64;linux-x64</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
- DependsOnTargets="ResolveReferences" />
+ DependsOnTargets="ResolveReferences" />
</Project>
diff --git a/tests/src/Common/targeting_pack_ref/targeting_pack_ref.csproj b/tests/src/Common/targeting_pack_ref/targeting_pack_ref.csproj
index a7828fedff..1cbc5ef238 100644
--- a/tests/src/Common/targeting_pack_ref/targeting_pack_ref.csproj
+++ b/tests/src/Common/targeting_pack_ref/targeting_pack_ref.csproj
@@ -16,11 +16,11 @@
<TargetFramework>netcoreapp1.1</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
- <RuntimeIdentifiers>win-arm;win7-x86;win7-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;centos.7-x64;rhel.7-x64;debian.8-x64;fedora.24-x64</RuntimeIdentifiers>
+ <RuntimeIdentifiers>win-arm;win7-x86;win7-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;centos.7-x64;rhel.6-x64;rhel.7-x64;debian.8-x64;fedora.24-x64</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
- DependsOnTargets="ResolveReferences" />
+ DependsOnTargets="ResolveReferences" />
</Project>
diff --git a/tests/src/Common/test_dependencies/test_dependencies.csproj b/tests/src/Common/test_dependencies/test_dependencies.csproj
index cf1576a0f4..9ff057e387 100644
--- a/tests/src/Common/test_dependencies/test_dependencies.csproj
+++ b/tests/src/Common/test_dependencies/test_dependencies.csproj
@@ -27,7 +27,7 @@
<TargetFramework>netcoreapp2.1</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;netcoreapp1.1;portable-net45+win8</PackageTargetFallback>
- <RuntimeIdentifiers>win-arm;win-x64;win-x86;win7-x86;win7-x64;win-arm64;win-arm;win7-arm64;win7-arm;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;osx-x64;centos.7-x64;rhel.7-x64;debian.8-x64;fedora.24-x64;linux-x64</RuntimeIdentifiers>
+ <RuntimeIdentifiers>win-arm;win-x64;win-x86;win7-x86;win7-x64;win-arm64;win-arm;win7-arm64;win7-arm;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;osx-x64;centos.7-x64;rhel.6-x64;rhel.7-x64;debian.8-x64;fedora.24-x64;linux-x64</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
diff --git a/tests/src/Common/test_runtime/test_runtime.csproj b/tests/src/Common/test_runtime/test_runtime.csproj
index 5838715850..facaf926a8 100644
--- a/tests/src/Common/test_runtime/test_runtime.csproj
+++ b/tests/src/Common/test_runtime/test_runtime.csproj
@@ -30,7 +30,7 @@
<TargetFramework>netcoreapp2.1</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
- <RuntimeIdentifiers>win-arm;win-x64;win-x86;win7-x86;win7-x64;win-arm64;win-arm;win7-arm64;win7-arm;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;osx-x64;centos.7-x64;rhel.7-x64;debian.8-x64;fedora.24-x64;linux-x64</RuntimeIdentifiers>
+ <RuntimeIdentifiers>win-arm;win-x64;win-x86;win7-x86;win7-x64;win-arm64;win-arm;win7-arm64;win7-arm;ubuntu.14.04-x64;ubuntu.16.04-x64;ubuntu.16.10-x64;osx.10.12-x64;osx-x64;centos.7-x64;rhel.6-x64;rhel.7-x64;debian.8-x64;fedora.24-x64;linux-x64</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>