mirror of
https://github.com/curl/curl.git
synced 2024-11-21 01:16:58 +08:00
projects: Improve Windows perl detection in batch scripts
- Determine if perl is in the user's PATH by running perl.exe. Prior to this change detection was done by checking the PATH for perl/ but that did not work in all cases (eg git install includes perl but not in perl/ path). Bug: https://github.com/curl/curl/pull/2865 Reported-by: Daniel Jeliński
This commit is contained in:
parent
b676b66f4d
commit
220cd241cd
@ -153,26 +153,21 @@ rem ***************************************************************************
|
||||
rem Check we have Visual Studio installed
|
||||
if not exist "%ABS_VC_PATH%" goto novc
|
||||
|
||||
|
||||
if not defined PERL_PATH (
|
||||
rem Check we have Perl in our path
|
||||
rem using !! below as %% was having \Microsoft was unexpected error.
|
||||
echo !PATH! | findstr /I /C:"\Perl" 1>nul
|
||||
if errorlevel 1 (
|
||||
rem It isn't so check we have it installed and set the path if it is
|
||||
if exist "%SystemDrive%\Perl" (
|
||||
set "PATH=%SystemDrive%\Perl\bin;%PATH%"
|
||||
) else (
|
||||
if exist "%SystemDrive%\Perl64" (
|
||||
set "PATH=%SystemDrive%\Perl64\bin;%PATH%"
|
||||
) else (
|
||||
|
||||
|
||||
|
||||
goto noperl
|
||||
)
|
||||
)
|
||||
)
|
||||
rem Check we have Perl in our path
|
||||
perl --version <NUL 1>NUL 2>&1
|
||||
if errorlevel 1 (
|
||||
rem It isn't so check we have it installed and set the path if it is
|
||||
if exist "%SystemDrive%\Perl" (
|
||||
set "PATH=%SystemDrive%\Perl\bin;%PATH%"
|
||||
) else (
|
||||
if exist "%SystemDrive%\Perl64" (
|
||||
set "PATH=%SystemDrive%\Perl64\bin;%PATH%"
|
||||
) else (
|
||||
goto noperl
|
||||
)
|
||||
)
|
||||
)
|
||||
) else (
|
||||
set "PATH=%PERL_PATH%\Perl\bin;%PATH%"
|
||||
)
|
||||
|
@ -73,7 +73,7 @@ rem ***************************************************************************
|
||||
|
||||
:prerequisites
|
||||
rem Check we have Perl in our path
|
||||
echo %PATH% | findstr /I /C:"\Perl" 1>nul
|
||||
perl --version <NUL 1>NUL 2>&1
|
||||
if errorlevel 1 (
|
||||
rem It isn't so check we have it installed and set the path if it is
|
||||
if exist "%SystemDrive%\Perl" (
|
||||
|
Loading…
Reference in New Issue
Block a user