Files
pytorch/scripts/build_windows.bat
Karl Ostmo 4ba28deb6e Unify libtorch and libcaffe2 (#17783)
Summary:
This PR is an intermediate step toward the ultimate goal of eliminating "caffe2" in favor of "torch".  This PR moves all of the files that had constituted "libtorch.so" into the "libcaffe2.so" library, and wraps "libcaffe2.so" with a shell library named "libtorch.so".  This means that, for now, `caffe2/CMakeLists.txt` becomes a lot bigger, and `torch/CMakeLists.txt` becomes smaller.

The torch Python bindings (`torch_python.so`) still remain in `torch/CMakeLists.txt`.

The follow-up to this PR will rename references to `caffe2` to `torch`, and flatten the shell into one library.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/17783

Differential Revision: D15284178

Pulled By: kostmo

fbshipit-source-id: a08387d735ae20652527ced4e69fd75b8ff88b05
2019-05-10 09:50:53 -07:00

94 lines
2.1 KiB
Batchfile

:: #############################################################################
:: Example command to build on Windows.
:: #############################################################################
:: This script shows how one can build a Caffe2 binary for windows.
@echo off
setlocal
SET ORIGINAL_DIR=%cd%
SET CAFFE2_ROOT=%~dp0%..
if NOT DEFINED BUILD_BINARY (
set BUILD_BINARY=OFF
)
if NOT DEFINED BUILD_SHARED_LIBS (
set BUILD_SHARED_LIBS=OFF
)
IF NOT DEFINED BUILDING_WITH_TORCH_LIBS (
set BUILDING_WITH_TORCH_LIBS=OFF
)
if NOT DEFINED CAFFE2_STATIC_LINK_CUDA (
set CAFFE2_STATIC_LINK_CUDA=OFF
)
if NOT DEFINED CMAKE_BUILD_TYPE (
set CMAKE_BUILD_TYPE=Release
)
if NOT DEFINED ONNX_NAMESPACE (
set ONNX_NAMESPACE=onnx_c2
)
if NOT DEFINED TORCH_CUDA_ARCH_LIST (
set TORCH_CUDA_ARCH_LIST=5.0
)
if NOT DEFINED USE_CUDA (
set USE_CUDA=OFF
)
if NOT DEFINED USE_OBSERVERS (
set USE_OBSERVERS=OFF
)
if NOT DEFINED MSVC_Z7_OVERRIDE (
set MSVC_Z7_OVERRIDE=OFF
)
if NOT DEFINED CMAKE_GENERATOR (
if DEFINED APPVEYOR_BUILD_WORKER_IMAGE (
if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2017" (
set CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
) else if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2015" (
set CMAKE_GENERATOR="Visual Studio 14 2015 Win64"
) else (
echo "You made a programming error: unknown APPVEYOR_BUILD_WORKER_IMAGE:"
echo %APPVEYOR_BUILD_WORKER_IMAGE%
exit /b
)
) else (
:: In default we use win64 VS 2015.
:: Main reason is that currently, cuda 9 does not support VS 2017 newest
:: version. To use cuda you will have to use 2015.
set CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
)
)
:: Install pyyaml for Aten codegen
pip install pyyaml
echo CAFFE2_ROOT=%CAFFE2_ROOT%
echo CMAKE_GENERATOR=%CMAKE_GENERATOR%
echo CMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE%
:: Set up cmake. We will skip building the test files right now.
pushd %CAFFE2_ROOT%
python tools\build_libtorch.py || goto :label_error
popd
echo "Caffe2 built successfully"
cd %ORIGINAL_DIR%
endlocal
exit /b 0
:label_error
echo "Caffe2 building failed"
cd %ORIGINAL_DIR%
endlocal
exit /b 1