mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.2 KiB
95 lines
2.2 KiB
@echo off
|
|
setlocal EnableDelayedExpansion
|
|
|
|
REM Parse the command line
|
|
set BuildPlatform=
|
|
set Language=
|
|
:SwitchLoop
|
|
for %%a in (./ .- .) do if ".%1." == "%%a?." goto :Usage
|
|
if "%1" == "" goto :EndSwitchLoop
|
|
for /f "tokens=1,2 delims=:" %%a in ('echo %1') do (
|
|
set Switch=%%a
|
|
set Arg=%%b
|
|
for %%c in (./ .-) do (
|
|
if ".!Switch!." == "%%cp." (set BuildPlatform=!Arg!&&goto :ShiftArg)
|
|
if ".!Switch!." == "%%cl." (set Language=!Arg!&&goto :ShiftArg)
|
|
)
|
|
)
|
|
REM if we got here, we had an unrecognized option
|
|
goto :Usage
|
|
|
|
:ShiftArg
|
|
shift
|
|
goto :SwitchLoop
|
|
:EndSwitchLoop
|
|
|
|
REM validate cmdline args
|
|
if not defined BuildPlatform goto :Usage
|
|
if not defined Language set Language=usa
|
|
|
|
REM set local vars
|
|
for %%a in (%0) do set SCRIPT_NAME=%%~na
|
|
if not defined LOGFILE set LOGFILE=%SCRIPT_NAME%.log
|
|
|
|
REM now do the dirty work
|
|
REM first, look for the relrules file
|
|
if not defined RazzleToolPath (
|
|
echo RazzleToolPath is not defined, exiting.
|
|
goto :ErrEnd
|
|
)
|
|
if not exist %RazzleToolPath%\PostBuildScripts\relrules.%_BuildBranch% (
|
|
echo No RelRules file found for this branch.
|
|
goto :ErrEnd
|
|
)
|
|
|
|
REM if we're here, we have a relrules file
|
|
set ReadMe=
|
|
set ReleaseServers=
|
|
for /f "tokens=1,3*" %%a in (%RazzleToolPath%\PostBuildScripts\relrules.%_BuildBranch%) do (
|
|
if "%%b" == "" set ReadMe=
|
|
if "!ReadMe!" == "TRUE" (
|
|
if /i "%%b" == "%Language%," set ReleaseServers=%%c
|
|
) else (
|
|
if "%%a" == "%BuildPlatform%:" (
|
|
set ReadMe=TRUE
|
|
) else (
|
|
set ReadMe=
|
|
)
|
|
)
|
|
)
|
|
REM now, if releaseservers is defined, we found everything we need
|
|
REM if not, this language/archtype is not archived.
|
|
if not defined ReleaseServers (
|
|
echo This archtype / language is not archived.
|
|
goto :ErrEnd
|
|
)
|
|
|
|
echo This language / archtype is archived.
|
|
|
|
goto :End
|
|
|
|
:Usage
|
|
|
|
echo.
|
|
echo %0 ^<-p:archtype^>
|
|
echo.
|
|
echo -p:archtype perform query for build platform and type "archtype"
|
|
echo e.g. ia64chk or amd64fre
|
|
echo.
|
|
echo %0 will check if the specified archtype is archived for this branch.
|
|
echo if so, it will set the exit code to zero. if not, it will set the
|
|
echo exit code to non-zero.
|
|
echo.
|
|
|
|
goto :ErrEnd
|
|
|
|
|
|
|
|
:End
|
|
endlocal
|
|
goto :EOF
|
|
|
|
|
|
:ErrEnd
|
|
endlocal
|
|
seterror.exe 1
|