| @echo off |
| :: Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| :: Use of this source code is governed by a BSD-style license that can be |
| :: found in the LICENSE file. |
| |
| setlocal |
| |
| set THISDIR=%~dp0 |
| set TOOL_NAME="unknown" |
| |
| :: Get the tool name and put it into TOOL_NAME {{{1 |
| :: NB: SHIFT command doesn't modify %* |
| :PARSE_ARGS_LOOP |
| if %1 == () GOTO:TOOLNAME_NOT_FOUND |
| if %1 == --tool GOTO:TOOLNAME_FOUND |
| SHIFT |
| goto :PARSE_ARGS_LOOP |
| |
| :TOOLNAME_NOT_FOUND |
| echo "Please specify a tool (e.g. drmemory) by using --tool flag" |
| exit /B 1 |
| |
| :TOOLNAME_FOUND |
| SHIFT |
| set TOOL_NAME=%1 |
| :: }}} |
| if "%TOOL_NAME%" == "drmemory" GOTO :SETUP_DRMEMORY |
| if "%TOOL_NAME%" == "drmemory_light" GOTO :SETUP_DRMEMORY |
| if "%TOOL_NAME%" == "drmemory_full" GOTO :SETUP_DRMEMORY |
| if "%TOOL_NAME%" == "drmemory_pattern" GOTO :SETUP_DRMEMORY |
| echo "Unknown tool: `%TOOL_NAME%`! Only drmemory is supported right now" |
| exit /B 1 |
| |
| :SETUP_DRMEMORY |
| :: Set up DRMEMORY_COMMAND to invoke Dr. Memory {{{1 |
| set DRMEMORY_PATH=%THISDIR%..\..\third_party\drmemory |
| set DRMEMORY_SFX=%DRMEMORY_PATH%\drmemory-windows-sfx.exe |
| if EXIST %DRMEMORY_SFX% GOTO DRMEMORY_BINARY_OK |
| echo "Can't find Dr. Memory executables." |
| echo "See http://www.chromium.org/developers/how-tos/using-valgrind/dr-memory" |
| echo "for the instructions on how to get them." |
| exit /B 1 |
| |
| :DRMEMORY_BINARY_OK |
| %DRMEMORY_SFX% -o%DRMEMORY_PATH%\unpacked -y |
| set DRMEMORY_COMMAND=%DRMEMORY_PATH%\unpacked\bin\drmemory.exe |
| :: }}} |
| goto :RUN_TESTS |
| |
| :RUN_TESTS |
| set PYTHONPATH=%THISDIR%../python/google |
| set RUNNING_ON_VALGRIND=yes |
| python %THISDIR%/chrome_tests.py %* |