buildframework/helium/hlm.bat
changeset 620 ad8ffc8e1982
parent 590 360bd6b35136
child 629 541af5ee3ed9
equal deleted inserted replaced
585:238f4cb8391f 620:ad8ffc8e1982
     1 @echo off
     1 @echo off
     2 
     2 
     3 rem
     3 rem if not defined HELIUM_HOME set HELIUM_HOME=%~dp0..\..\..\helium
     4 rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     5 rem All rights reserved.
       
     6 rem This component and the accompanying materials are made available
       
     7 rem under the terms of the License "Eclipse Public License v1.0"
       
     8 rem which accompanies this distribution, and is available
       
     9 rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
    10 rem
       
    11 rem Initial Contributors:
       
    12 rem Nokia Corporation - initial contribution.
       
    13 rem
       
    14 rem Contributors:
       
    15 rem
       
    16 rem Description: 
       
    17 rem
       
    18 
     4 
    19 setlocal
     5 helium\hlm.bat %*
    20 
     6 
    21 REM Set the Helium location
       
    22 REM Make sure the path is not ending with a backslash!
       
    23 if not defined HELIUM_HOME (
       
    24 	set HELIUM_HOME_TEMP=%~dp0
       
    25 )
       
    26 if not defined HELIUM_HOME (
       
    27 	set HELIUM_HOME=%HELIUM_HOME_TEMP:~0,-1%
       
    28 )
       
    29 
       
    30 rem Loading runtime environment tools
       
    31 if exist "%HELIUM_HOME%\runtime\runtime_env.bat" (
       
    32 call %HELIUM_HOME%\runtime\runtime_env.bat
       
    33 ) 
       
    34 
       
    35 if not exist "%HELIUM_HOME%\extensions\nokia\distribution.policy.S60" ( 
       
    36 set HLM_SUBCON=1
       
    37 set HLM_DISABLE_INTERNAL_DATA=1
       
    38 )
       
    39 
       
    40 
       
    41 REM Configure Java
       
    42 if not defined JAVA_6_HOME (
       
    43 set TESTED_JAVA=C:\Apps\j2sdk_1.6.0_02
       
    44 ) ELSE  set TESTED_JAVA=%JAVA_6_HOME%
       
    45 if exist "%TESTED_JAVA%" (set JAVA_HOME=%TESTED_JAVA%)
       
    46 if not exist "%JAVA_HOME%" ( echo *** Java cannot be found & goto :errorstop )
       
    47 
       
    48 REM Needed by python logging
       
    49 set PID=1
       
    50 perl "%HELIUM_HOME%\tools\common\bin\getppid.pl" > %TEMP%\%USERNAME%pid.txt
       
    51 set /p PID=< %TEMP%\%USERNAME%pid.txt
       
    52 
       
    53 REM Configure Apache Ant
       
    54 set TESTED_ANT=C:\APPS\ant_1.7
       
    55 if exist "%TESTED_ANT%" (set ANT_HOME=%TESTED_ANT%)
       
    56 if not exist "%ANT_HOME%" ( echo *** Ant cannot be found & goto :errorstop )
       
    57 if not defined ANT_OPTS (
       
    58 	set ANT_OPTS=-Xmx896M -Dlog4j.configuration=com/nokia/log4j.xml
       
    59 )
       
    60 
       
    61 set SIGNALING_ANT_ARGS= -Dant.executor.class=com.nokia.helium.core.ant.HeliumExecutor
       
    62 set LOGGING_ANT_ARGS= -listener com.nokia.helium.logger.ant.listener.StatusAndLogListener
       
    63 REM -listener com.nokia.helium.logger.ant.listener.StatusAndLogListener
       
    64 set DIAMONDS_ANT_ARGS= -listener com.nokia.helium.diamonds.ant.HeliumListener
       
    65 
       
    66 if not defined HLM_DISABLE_INTERNAL_DATA (
       
    67 set INTERNAL_DATA_ANT_ARGS= -listener com.nokia.helium.internaldata.ant.listener.Listener
       
    68 echo Internal data listening enabled.
       
    69 )
       
    70 
       
    71 
       
    72 REM Configure listener to generate target times csv file.
       
    73 REM **Note: Comment below line if you want to skip the target times csv file generation
       
    74 set TARGET_TIMES_GENERATOR= -listener com.nokia.helium.core.ant.listener.TargetTimesLogGeneratorListener
       
    75 
       
    76 
       
    77 if not defined ANT_ARGS (
       
    78 set ANT_ARGS=-lib "%HELIUM_HOME%\extensions\nokia\external\antlibs" -lib "%HELIUM_HOME%\extensions\nokia\external\helium-nokia-antlib\bin" -lib "%HELIUM_HOME%\external\helium-antlib\bin" -lib "%HELIUM_HOME%\tools\common\java\lib" -lib "%HELIUM_HOME%\external\antlibs" -logger com.nokia.ant.HeliumLogger  %DIAMONDS_ANT_ARGS% %INTERNAL_DATA_ANT_ARGS% %SIGNALING_ANT_ARGS% %LOGGING_ANT_ARGS% %TARGET_TIMES_GENERATOR%
       
    79 )
       
    80 
       
    81 REM Shall we impose the EPOCROOT?
       
    82 if not defined EPOCROOT (
       
    83 set EPOCROOT=\
       
    84 )
       
    85 
       
    86 REM Symbian Build area path related settings
       
    87 set PATH=%PATH%;%EPOCROOT%epoc32\tools;%EPOCROOT%epoc32\gcc\bin;%EPOCROOT%epoc32\tools\build;%EPOCROOT%epoc32\rombuild
       
    88 
       
    89 set PATH=%PATH%;%HELIUM_HOME%\extensions\nokia\external\unxutils
       
    90 set PATH=%PATH%;%HELIUM_HOME%\extensions\nokia\external\Subversion\bin
       
    91 set PATH=%PATH%;%HELIUM_HOME%\extensions\nokia\external\graphviz\bin
       
    92 
       
    93 for /f "tokens=2" %%a in ('"python -V 2>&1"') do (set pythonversion=%%a)
       
    94 for /f "tokens=1-2 delims=." %%a in ("%pythonversion%") do (set pythonversion=%%a.%%b)
       
    95 
       
    96 set PYTHONPATH=%PYTHONPATH%;%HELIUM_HOME%\external\python\lib\%pythonversion%;%HELIUM_HOME%\external\python\lib\common;%HELIUM_HOME%\external\helium-antlib\python\pythoncore\lib;%HELIUM_HOME%\tools\common\python\scripts
       
    97 set PYTHONPATH=%PYTHONPATH%;%HELIUM_HOME%\extensions\nokia\external\python\lib\%pythonversion%
       
    98 set PYTHONPATH=%PYTHONPATH%;%HELIUM_HOME%\extensions\nokia\tools\common\python\lib;%HELIUM_HOME%\extensions\nokia\external\helium-nokia-antlib\python;%HELIUM_HOME%\extensions\nokia\external\helium-nokia-antlib\python\pythonnokia\lib;%SBS_HOME%\python
       
    99 set PERL5LIB=%HELIUM_HOME%\tools\common\packages
       
   100 set COPYCMD=/y
       
   101 
       
   102 REM Should be done that SYMSEE?
       
   103 set PATH=%PATH%;C:\APPS\ctc
       
   104 
       
   105 REM Nokia specific
       
   106 set HOME=h:\
       
   107 set ARMROOT=\
       
   108 
       
   109 
       
   110 REM Manage RVCT switching.
       
   111 if defined HLM_RVCT_VERSION (
       
   112 if not exist "C:\APPS\rvct%HLM_RVCT_VERSION%\rvctcmdprompt.bat" ( echo *** "C:\APPS\rvct%HLM_RVCT_VERSION%\rvctcmdprompt.bat" cannot be found & goto :errorstop )
       
   113 call "C:\APPS\rvct%HLM_RVCT_VERSION%\rvctcmdprompt.bat" > nul
       
   114 )
       
   115 TITLE Helium
       
   116 
       
   117 if not exist "%HELIUM_HOME%\external\helium-antlib\bin\helium-checktools.jar" (
       
   118 echo *** Error: helium-checktools.jar not found 
       
   119 goto errorstop
       
   120 )
       
   121 
       
   122 REM call java -cp "%HELIUM_HOME%\external\helium-antlib\bin\helium-checktools.jar" com.nokia.helium.checktools.HeliumToolsCheckerMain -config "%HELIUM_HOME%\config\helium.basic.tools.config"
       
   123 REM if "%ERRORLEVEL%" neq "0" (goto errorstop)
       
   124 
       
   125 REM Call the Helium generated batch file if it exists
       
   126 REM This must match with the cache.dir property in helium.ant.xml
       
   127 if defined JOB_ID  (
       
   128 	set HELIUM_CACHE_DIR=%TEMP%\helium\%USERNAME%\%JOB_ID%
       
   129 )ELSE set HELIUM_CACHE_DIR=%TEMP%\helium\%USERNAME%
       
   130 
       
   131 if not exist %HELIUM_CACHE_DIR% (
       
   132 md %HELIUM_CACHE_DIR%
       
   133 )
       
   134 
       
   135 REM pass cache dir to a property for log4j log file
       
   136 if defined ANT_OPTS (
       
   137 	set ANT_OPTS=%ANT_OPTS% -Dlog4j.cache.dir=%HELIUM_CACHE_DIR% -Dpython.path=%PYTHONPATH%;%HELIUM_HOME%\external\python\lib\2.5\jython-2.5-py2.5.egg
       
   138 )
       
   139 
       
   140 call "%HELIUM_HOME%\precompile_py.bat" > %HELIUM_CACHE_DIR%\precompile_output.txt 
       
   141 
       
   142 call ant -Dhelium.dir="%HELIUM_HOME%" -Dcache.dir="%HELIUM_CACHE_DIR%" %*
       
   143 
       
   144 endlocal
       
   145 goto :eof
       
   146 
       
   147 :errorstop
       
   148 @echo *** Build aborted with error
       
   149 exit /b 1
       
   150 
       
   151