xref: /aosp_15_r20/external/pytorch/scripts/build_windows.bat (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1:: #############################################################################
2:: Example command to build on Windows.
3:: #############################################################################
4
5:: This script shows how one can build a Caffe2 binary for windows.
6
7@echo off
8setlocal
9
10SET ORIGINAL_DIR=%cd%
11SET CAFFE2_ROOT=%~dp0%..
12
13if NOT DEFINED BUILD_BINARY (
14  set BUILD_BINARY=OFF
15)
16
17if NOT DEFINED BUILD_SHARED_LIBS (
18  :: On CI, we test with BUILD_SHARED_LIBS=OFF.
19  :: By default, it will be BUILD_SHARED_LIBS=ON.
20  if NOT DEFINED BUILD_ENVIRONMENT (
21    set BUILD_SHARED_LIBS=OFF
22  )
23)
24
25if NOT DEFINED CAFFE2_STATIC_LINK_CUDA (
26  set CAFFE2_STATIC_LINK_CUDA=OFF
27)
28
29if NOT DEFINED CMAKE_BUILD_TYPE (
30  set CMAKE_BUILD_TYPE=Release
31)
32
33if NOT DEFINED ONNX_NAMESPACE (
34  set ONNX_NAMESPACE=onnx_c2
35)
36
37if NOT DEFINED TORCH_CUDA_ARCH_LIST (
38  set TORCH_CUDA_ARCH_LIST=5.0
39)
40
41if NOT DEFINED USE_CUDA (
42  set USE_CUDA=OFF
43)
44
45if NOT DEFINED USE_OBSERVERS (
46  set USE_OBSERVERS=OFF
47)
48
49if NOT DEFINED MSVC_Z7_OVERRIDE (
50  set MSVC_Z7_OVERRIDE=OFF
51)
52
53if NOT DEFINED CMAKE_GENERATOR (
54  set CMAKE_GENERATOR=Ninja
55)
56
57set CMAKE_VERBOSE_MAKEFILE=1
58
59:: Install pyyaml for Aten codegen
60pip install pyyaml ninja
61
62echo CAFFE2_ROOT=%CAFFE2_ROOT%
63echo CMAKE_GENERATOR=%CMAKE_GENERATOR%
64echo CMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE%
65
66:: Set up cmake. We will skip building the test files right now.
67pushd %CAFFE2_ROOT%
68python tools\build_libtorch.py || goto :label_error
69popd
70
71echo "Caffe2 built successfully"
72cd %ORIGINAL_DIR%
73endlocal
74exit /b 0
75
76:label_error
77echo "Caffe2 building failed"
78cd %ORIGINAL_DIR%
79endlocal
80exit /b 1
81