summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.cmd18
-rwxr-xr-xbuild.sh14
2 files changed, 23 insertions, 9 deletions
diff --git a/build.cmd b/build.cmd
index 9d0f0eb3bc..cc0345489d 100644
--- a/build.cmd
+++ b/build.cmd
@@ -91,6 +91,7 @@ set __BuildCoreLib=1
set __BuildSOS=1
set __BuildNative=1
set __BuildCrossArchNative=0
+set __SkipCrossArchNative=0
set __BuildTests=1
set __BuildPackages=1
set __BuildNativeCoreLib=1
@@ -176,6 +177,7 @@ if /i "%1" == "-configureonly" (set __ConfigureOnly=1&set __BuildNative=1&
if /i "%1" == "-skipconfigure" (set __SkipConfigure=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "-skipmscorlib" (set __BuildCoreLib=0&set __BuildNativeCoreLib=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "-skipnative" (set __BuildNative=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
+if /i "%1" == "-skipcrossarchnative" (set __SkipCrossArchNative=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "-skiptests" (set __BuildTests=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "-skipbuildpackages" (set __BuildPackages=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "-skiprestoreoptdata" (set __RestoreOptData=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
@@ -204,6 +206,7 @@ if /i "%1" == "configureonly" (set __ConfigureOnly=1&set __BuildNative=1&s
if /i "%1" == "skipconfigure" (set __SkipConfigure=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "skipmscorlib" (set __BuildCoreLib=0&set __BuildNativeCoreLib=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "skipnative" (set __BuildNative=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
+if /i "%1" == "skipcrossarchnative" (set __SkipCrossArchNative=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "skiptests" (set __BuildTests=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "skipbuildpackages" (set __BuildPackages=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "skiprestoreoptdata" (set __RestoreOptData=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
@@ -281,12 +284,14 @@ if %__EnforcePgo%==1 (
REM Determine if this is a cross-arch build. Only do cross-arch build if we're also building native.
-if %__BuildNative% EQU 1 (
- if /i "%__BuildArch%"=="arm64" (
- set __BuildCrossArchNative=1
- )
- if /i "%__BuildArch%"=="arm" (
- set __BuildCrossArchNative=1
+if %__SkipCrossArchNative% EQU 0 (
+ if %__BuildNative% EQU 1 (
+ if /i "%__BuildArch%"=="arm64" (
+ set __BuildCrossArchNative=1
+ )
+ if /i "%__BuildArch%"=="arm" (
+ set __BuildCrossArchNative=1
+ )
)
)
@@ -1015,6 +1020,7 @@ echo -configureonly: skip all builds; only run CMake ^(default: CMake and builds
echo -skipconfigure: skip CMake ^(default: CMake is run^)
echo -skipmscorlib: skip building System.Private.CoreLib ^(default: System.Private.CoreLib is built^).
echo -skipnative: skip building native components ^(default: native components are built^).
+echo -skipcrossarchnative: skip building cross-architecture native components ^(default: components are built^).
echo -skiptests: skip building tests ^(default: tests are built^).
echo -skipbuildpackages: skip building nuget packages ^(default: packages are built^).
echo -skiprestoreoptdata: skip restoring optimization data used by profile-based optimizations.
diff --git a/build.sh b/build.sh
index 0b3859c1ef..72d0456db2 100755
--- a/build.sh
+++ b/build.sh
@@ -25,7 +25,7 @@ export PYTHON
usage()
{
- echo "Usage: $0 [BuildArch] [BuildType] [-verbose] [-coverage] [-cross] [-clangx.y] [-ninja] [-configureonly] [-skipconfigure] [-skipnative] [-skipmanaged] [-skipmscorlib] [-skiptests] [-stripsymbols] [-ignorewarnings] [-cmakeargs] [-bindir]"
+ echo "Usage: $0 [BuildArch] [BuildType] [-verbose] [-coverage] [-cross] [-clangx.y] [-ninja] [-configureonly] [-skipconfigure] [-skipnative] [-skipcrossarchnative] [-skipmanaged] [-skipmscorlib] [-skiptests] [-stripsymbols] [-ignorewarnings] [-cmakeargs] [-bindir]"
echo "BuildArch can be: -x64, -x86, -arm, -armel, -arm64"
echo "BuildType can be: -debug, -checked, -release"
echo "-coverage - optional argument to enable code coverage build (currently supported only for Linux and OSX)."
@@ -39,6 +39,7 @@ usage()
echo "-configureonly - do not perform any builds; just configure the build."
echo "-skipconfigure - skip build configuration."
echo "-skipnative - do not build native components."
+ echo "-skipcrossarchnative - do not build cross-architecture native components."
echo "-skipmanaged - do not build managed components."
echo "-skipmscorlib - do not build mscorlib.dll."
echo "-skiptests - skip the tests in the 'tests' subdirectory."
@@ -660,6 +661,7 @@ __SkipManaged=0
__SkipRestore=""
__SkipNuget=0
__SkipCoreCLR=0
+__SkipCrossArchNative=0
__SkipMSCorLib=0
__SkipRestoreOptData=0
__SkipCrossgen=0
@@ -842,6 +844,10 @@ while :; do
__SkipCoreCLR=1
;;
+ skipcrossarchnative|-skipcrossarchnative)
+ __SkipCrossArchNative=1
+ ;;
+
skipmanaged|-skipmanaged)
__SkipManaged=1
;;
@@ -1062,8 +1068,10 @@ fi
build_native $__SkipCoreCLR "$__BuildArch" "$__IntermediatesDir" "$__ExtraCmakeArgs" "CoreCLR component"
# Build cross-architecture components
-if [[ $__CrossBuild == 1 ]]; then
- build_cross_architecture_components
+if [ $__SkipCrossArchNative != 1 ]; then
+ if [[ $__CrossBuild == 1 ]]; then
+ build_cross_architecture_components
+ fi
fi
# Build System.Private.CoreLib.