18c339a94Sopenharmony_ci/*
28c339a94Sopenharmony_ci* Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd.
38c339a94Sopenharmony_ci* Licensed under the Apache License, Version 2.0 (the "License");
48c339a94Sopenharmony_ci* you may not use this file except in compliance with the License.
58c339a94Sopenharmony_ci* You may obtain a copy of the License at
68c339a94Sopenharmony_ci*
78c339a94Sopenharmony_ci* http://www.apache.org/licenses/LICENSE-2.0
88c339a94Sopenharmony_ci*
98c339a94Sopenharmony_ci* Unless required by applicable law or agreed to in writing, software
108c339a94Sopenharmony_ci* distributed under the License is distributed on an "AS IS" BASIS,
118c339a94Sopenharmony_ci* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
128c339a94Sopenharmony_ci* See the License for the specific language governing permissions and
138c339a94Sopenharmony_ci* limitations under the License.
148c339a94Sopenharmony_ci*/
158c339a94Sopenharmony_ci
168c339a94Sopenharmony_ci@if "%DEBUG%" == "" @echo off
178c339a94Sopenharmony_ci@rem ##########################################################################
188c339a94Sopenharmony_ci@rem
198c339a94Sopenharmony_ci@rem  Hvigor startup script for Windows
208c339a94Sopenharmony_ci@rem
218c339a94Sopenharmony_ci@rem ##########################################################################
228c339a94Sopenharmony_ci
238c339a94Sopenharmony_ci@rem Set local scope for the variables with windows NT shell
248c339a94Sopenharmony_ciif "%OS%"=="Windows_NT" setlocal
258c339a94Sopenharmony_ci
268c339a94Sopenharmony_ciset DIRNAME=%~dp0
278c339a94Sopenharmony_ciif "%DIRNAME%" == "" set DIRNAME=.
288c339a94Sopenharmony_ciset APP_BASE_NAME=%~n0
298c339a94Sopenharmony_ciset APP_HOME=%DIRNAME%
308c339a94Sopenharmony_ci
318c339a94Sopenharmony_ci@rem Resolve any "." and ".." in APP_HOME to make it shorter.
328c339a94Sopenharmony_cifor %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
338c339a94Sopenharmony_ci
348c339a94Sopenharmony_ciset WRAPPER_MODULE_PATH=%APP_HOME%\hvigor\hvigor-wrapper.js
358c339a94Sopenharmony_ciset NODE_EXE=node.exe
368c339a94Sopenharmony_ci
378c339a94Sopenharmony_cigoto start
388c339a94Sopenharmony_ci
398c339a94Sopenharmony_ci:start
408c339a94Sopenharmony_ci@rem Find node.exe
418c339a94Sopenharmony_ciif defined NODE_HOME goto findNodeFromNodeHome
428c339a94Sopenharmony_ci
438c339a94Sopenharmony_ci%NODE_EXE% --version >NUL 2>&1
448c339a94Sopenharmony_ciif "%ERRORLEVEL%" == "0" goto execute
458c339a94Sopenharmony_ci
468c339a94Sopenharmony_ciecho.
478c339a94Sopenharmony_ciecho ERROR: NODE_HOME is not set and no 'node' command could be found in your PATH.
488c339a94Sopenharmony_ciecho.
498c339a94Sopenharmony_ciecho Please set the NODE_HOME variable in your environment to match the
508c339a94Sopenharmony_ciecho location of your NodeJs installation.
518c339a94Sopenharmony_ci
528c339a94Sopenharmony_cigoto fail
538c339a94Sopenharmony_ci
548c339a94Sopenharmony_ci:findNodeFromNodeHome
558c339a94Sopenharmony_ciset NODE_HOME=%NODE_HOME:"=%
568c339a94Sopenharmony_ciset NODE_EXE_PATH=%NODE_HOME%/%NODE_EXE%
578c339a94Sopenharmony_ci
588c339a94Sopenharmony_ciif exist "%NODE_EXE_PATH%" goto execute
598c339a94Sopenharmony_ciecho.
608c339a94Sopenharmony_ciecho ERROR: NODE_HOME is not set and no 'node' command could be found in your PATH.
618c339a94Sopenharmony_ciecho.
628c339a94Sopenharmony_ciecho Please set the NODE_HOME variable in your environment to match the
638c339a94Sopenharmony_ciecho location of your NodeJs installation.
648c339a94Sopenharmony_ci
658c339a94Sopenharmony_cigoto fail
668c339a94Sopenharmony_ci
678c339a94Sopenharmony_ci:execute
688c339a94Sopenharmony_ci@rem Execute hvigor
698c339a94Sopenharmony_ci"%NODE_EXE%" "%WRAPPER_MODULE_PATH%" %*
708c339a94Sopenharmony_ci
718c339a94Sopenharmony_ciif "%ERRORLEVEL%" == "0" goto hvigorwEnd
728c339a94Sopenharmony_ci
738c339a94Sopenharmony_ci:fail
748c339a94Sopenharmony_ciexit /b 1
758c339a94Sopenharmony_ci
768c339a94Sopenharmony_ci:hvigorwEnd
778c339a94Sopenharmony_ciif "%OS%" == "Windows_NT" endlocal
788c339a94Sopenharmony_ci
798c339a94Sopenharmony_ci:end
80