goto Usage
)
+set __ProcessorArch=%PROCESSOR_ARCHITEW6432%
+if "%__ProcessorArch%"=="" set __ProcessorArch=%PROCESSOR_ARCHITECTURE%
+
if %__BuildArchX64%==1 set __BuildArch=x64
if %__BuildArchX86%==1 (
set __BuildArch=x86
)
if %__BuildArchArm64%==1 (
set __BuildArch=arm64
- set __CrossArch=x64
+ if /i not "%__ProcessorArch%"=="ARM64" set __CrossArch=x64
)
set /A __TotalSpecifiedBuildType=__BuildTypeDebug + __BuildTypeChecked + __BuildTypeRelease
if %__SkipCrossArchNative% EQU 0 (
if %__BuildNative% EQU 1 (
if /i "%__BuildArch%"=="arm64" (
- set __BuildCrossArchNative=1
+ if defined __CrossArch set __BuildCrossArchNative=1
)
if /i "%__BuildArch%"=="arm" (
set __BuildCrossArchNative=1
)
if /i "%__BuildArch%" == "arm64" (
set __VCBuildArch=x86_arm64
- set ___CrossBuildDefine="-DCLR_CMAKE_CROSS_ARCH=1" "-DCLR_CMAKE_CROSS_HOST_ARCH=%__CrossArch%"
+ if defined __CrossArch (
+ set ___CrossBuildDefine="-DCLR_CMAKE_CROSS_ARCH=1" "-DCLR_CMAKE_CROSS_HOST_ARCH=%__CrossArch%"
+ )
)
echo %__MsgPrefix%Using environment: "%__VCToolsRoot%\vcvarsall.bat" !__VCBuildArch!
copy /B /Y "%__CoreClrArtifacts%\corehost\PDB\singlefilehost.pdb" "%__CMakeBinDir%/corehost/PDB/"
echo Embedding "%__CoreClrArtifacts%\mscordaccore.dll" into "%__CMakeBinDir%\corehost\singlefilehost.exe"
- if /i "%__BuildArch%" == "x64" (
+ if not exist "%__CoreClrArtifacts%\x64\dactabletools\InjectResource.exe" (
"%__CoreClrArtifacts%\dactabletools\InjectResource.exe" /bin:"%__CoreClrArtifacts%\mscordaccore.dll" /dll:"%__CMakeBinDir%\corehost\singlefilehost.exe" /name:MINIDUMP_EMBEDDED_AUXILIARY_PROVIDER
) else (
"%__CoreClrArtifacts%\x64\dactabletools\InjectResource.exe" /bin:"%__CoreClrArtifacts%\mscordaccore.dll" /dll:"%__CMakeBinDir%\corehost\singlefilehost.exe" /name:MINIDUMP_EMBEDDED_AUXILIARY_PROVIDER