Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions protobuf-definitions/make_for_win.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
rem variables

rem GRPC-TOOLS required. Install with `nuget install Grpc.Tools`.
rem Then un-comment and replace [DIRECTORY] with location of files.
rem For example, on Windows, you might have something like:
rem set COMPILER=Grpc.Tools.1.14.1/tools/windows_x64

set SRC_DIR=proto\mlagents\envs\communicator_objects
set DST_DIR_C=..\UnitySDK\Assets\ML-Agents\Scripts\CommunicatorObjects
set DST_DIR_P=..\ml-agents
set PROTO_PATH=proto

set PYTHON_PACKAGE=mlagents\envs\communicator_objects

rem clean
rd /s /q %DST_DIR_C%
rd /s /q %DST_DIR_P%\%PYTHON_PACKAGE%
mkdir %DST_DIR_C%
mkdir %DST_DIR_P%\%PYTHON_PACKAGE%

rem generate proto objects in python and C#

for %%i in (%SRC_DIR%\*.proto) do (
protoc --proto_path=proto --csharp_out=%DST_DIR_C% %%i
protoc --proto_path=proto --python_out=%DST_DIR_P% %%i
)

rem grpc

set GRPC=unity_to_external.proto

%COMPILER%\protoc --proto_path=proto --csharp_out %DST_DIR_C% --grpc_out %DST_DIR_C% %SRC_DIR%\%GRPC% --plugin=protoc-gen-grpc=%COMPILER%\grpc_csharp_plugin.exe
python3 -m grpc_tools.protoc --proto_path=proto --python_out=%DST_DIR_P% --grpc_python_out=%DST_DIR_P% %SRC_DIR%\%GRPC%

rem Generate the init file for the python module
rem rm -f $DST_DIR_P/$PYTHON_PACKAGE/__init__.py
setlocal enabledelayedexpansion
for %%i in (%DST_DIR_P%\%PYTHON_PACKAGE%\*.py) do (
set FILE=%%~ni
rem echo from .$(basename $FILE) import * >> $DST_DIR_P/$PYTHON_PACKAGE/__init__.py
echo from .!FILE! import * >> %DST_DIR_P%\%PYTHON_PACKAGE%\__init__.py
)