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.
97 lines
3.3 KiB
97 lines
3.3 KiB
@echo off
|
|
if defined _echo echo on
|
|
REM ------------------------------------------------------------------
|
|
REM
|
|
REM layout.cmd
|
|
REM Updates layout.inf for each sku with the sizes of the binaries
|
|
REM
|
|
REM Copyright (c) Microsoft Corporation. All rights reserved.
|
|
REM
|
|
REM ------------------------------------------------------------------
|
|
if defined _CPCMAGIC goto CPCBegin
|
|
perl -x "%~f0" %*
|
|
goto :EOF
|
|
#!perl
|
|
use strict;
|
|
use lib $ENV{RAZZLETOOLPATH} . "\\PostBuildScripts";
|
|
use lib $ENV{RAZZLETOOLPATH};
|
|
use PbuildEnv;
|
|
use ParseArgs;
|
|
|
|
sub Usage { print<<USAGE; exit(1) }
|
|
layout [-l <language>]
|
|
|
|
Updates layout.inf for each sku with the sizes of the binaries
|
|
USAGE
|
|
|
|
parseargs('?' => \&Usage);
|
|
|
|
|
|
# *** NEXT FEW LINES ARE TEMPLATE ***
|
|
$ENV{"_CPCMAGIC"}++;exit(system($0)>>8);
|
|
__END__
|
|
:CPCBegin
|
|
set _CPCMAGIC=
|
|
setlocal ENABLEDELAYEDEXPANSION ENABLEEXTENSIONS
|
|
REM *** BEGIN YOUR CMD SCRIPT BELOW ***
|
|
|
|
if exist %_NTPostBld%\build_logs\bindiff.txt (
|
|
findstr /ilc:"layout" %_NTPostBld%\build_logs\bindiff.txt
|
|
if /i NOT "!ErrorLevel!" == "0" (
|
|
call logmsg.cmd /t "Not running layout.cmd - layout has not changed"
|
|
goto end
|
|
)
|
|
)
|
|
|
|
REM set layouts=%_NTPostBld% %_NTPostBld%\perinf %_NTPostBld%\blainf %_NTPostBld%\sbsinf %_NTPostBld%\srvinf %_NTPostBld%\entinf %_NTPostBld%\dtcinf %_NTPostBld%\realsign %_NTPostBld%\perinf\realsign %_NTPostBld%\srvinf\realsign %_NTPostBld%\entinf\realsign %_NTPostBld%\dtcinf\realsign
|
|
|
|
set layouts=%_NTPostBld% %_NTPostBld%\realsign
|
|
|
|
perl %RazzleToolPath%\CkSku.pm -t:per -l:%lang%
|
|
if %errorlevel% EQU 0 (set layouts=%layouts% %_NTPostBld%\perinf %_NTPostBld%\perinf\realsign)
|
|
|
|
perl %RazzleToolPath%\CkSku.pm -t:bla -l:%lang%
|
|
if %errorlevel% EQU 0 (set layouts=%layouts% %_NTPostBld%\blainf %_NTPostBld%\blainf\realsign)
|
|
|
|
perl %RazzleToolPath%\CkSku.pm -t:sbs -l:%lang%
|
|
if %errorlevel% EQU 0 (set layouts=%layouts% %_NTPostBld%\sbsinf %_NTPostBld%\sbsinf\realsign)
|
|
|
|
perl %RazzleToolPath%\CkSku.pm -t:srv -l:%lang%
|
|
if %errorlevel% EQU 0 (set layouts=%layouts% %_NTPostBld%\srvinf %_NTPostBld%\srvinf\realsign)
|
|
|
|
perl %RazzleToolPath%\CkSku.pm -t:ads -l:%lang%
|
|
if %errorlevel% EQU 0 (set layouts=%layouts% %_NTPostBld%\entinf %_NTPostBld%\entinf\realsign)
|
|
|
|
perl %RazzleToolPath%\CkSku.pm -t:dtc -l:%lang%
|
|
if %errorlevel% EQU 0 (set layouts=%layouts% %_NTPostBld%\dtcinf %_NTPostBld%\dtcinf\realsign)
|
|
|
|
REM --------------------------------------------------
|
|
REM Call infsize for all the layout.infs
|
|
REM --------------------------------------------------
|
|
:CallInf
|
|
|
|
if exist %TEMP%\layout.err del %TEMP%\layout.err
|
|
if exist %TEMP%\infsize.tmp del %TEMP%\infsize.tmp
|
|
|
|
for %%a in (%layouts%) do (
|
|
echo Calling infsize for %%a\layout.inf>>%LogFile%
|
|
echo infsize for %%a >> %TEMP%\layout.err
|
|
call infsize.exe %TEMP%\infsize.tmp %%a %_NTPostBld% %_NTPostBld% | findstr "FATAL" >> %TEMP%\layout.err
|
|
)
|
|
|
|
REM --------------------------------------------------
|
|
REM Now fixup the oc infs with the information we just added to layout.inf
|
|
REM --------------------------------------------------
|
|
|
|
for %%a in (%layouts%) do (
|
|
echo Calling ocinf for %%a\sysoc.inf>>%LogFile%
|
|
echo ocinf for %%a >> %TEMP%\layout.err
|
|
call ocinf.exe -inf:%%a\sysoc.inf -layout:%%a\layout.inf >> %TEMP%\layout.err
|
|
)
|
|
|
|
echo Finished!! -- check %TEMP%\layout.err for errors
|
|
|
|
goto end
|
|
|
|
:end
|
|
seterror.exe "%errors%"& goto :EOF
|