mirror of
https://github.com/xushoucai/RTL8710_SDK_GCC_VERSION.git
synced 2024-11-21 20:14:16 +00:00
1d3357d3b0
including cross compilation of the installation, compile, link, run, debug, and so on. SDK implementation of the function: 1, WiFi connection settings (including AP mode and STA mode). 2, peripheral resource control (including GPIO, SPI, UART, IIC, etc.). 3, the user uses the sample method.
144 lines
3.6 KiB
Batchfile
144 lines
3.6 KiB
Batchfile
@echo off
|
|
setlocal enableDelayedExpansion
|
|
|
|
REM patch files to sdk (for customer)
|
|
REM Owen Chiu
|
|
|
|
echo ... patch files to sdk ...
|
|
|
|
set FILE_LIST=patch_list
|
|
set SDK_PATH=..\..
|
|
set UNZIP_PATH=unzip_tmp
|
|
|
|
echo Please drag in the patch file you want to use:
|
|
set /p PATCH_PATH=
|
|
|
|
if NOT "%PATCH_PATH:~-4%" == ".zip" (
|
|
echo Not zip file
|
|
pause
|
|
exit /b
|
|
)
|
|
|
|
if exist %UNZIP_PATH% rmdir %UNZIP_PATH% /s/q
|
|
mkdir %UNZIP_PATH%
|
|
|
|
call :getFileName %PATCH_PATH:~0,-4% PATCH_NAME
|
|
|
|
REM unzip patch file
|
|
echo Unzip %PATCH_NAME%
|
|
call :genUnzipScript
|
|
CScript _unzip.vbs %PATCH_PATH% %UNZIP_PATH%
|
|
|
|
if NOT exist %UNZIP_PATH%\%FILE_LIST% (
|
|
echo patch_list not included in the patch file, cannot use auto patch
|
|
if exist %UNZIP_PATH% rmdir %UNZIP_PATH% /s/q
|
|
del _unzip.vbs /q
|
|
pause
|
|
exit /b
|
|
)
|
|
|
|
for /f "skip=1 delims=" %%i in (%UNZIP_PATH%\%FILE_LIST%) do (
|
|
set line=%%i
|
|
if "!line:~-1!" == "\" (
|
|
REM is directory
|
|
call :getFileName !line:~0,-1! DIR_NAME
|
|
xcopy "%UNZIP_PATH%\!DIR_NAME!\*.*" "%SDK_PATH%\%%i" /e/y
|
|
) else (
|
|
REM is file
|
|
call :getFileName !line! FILE_NAME
|
|
call :getPrefix %%i PREFIX_PATH
|
|
xcopy "%UNZIP_PATH%\!FILE_NAME!" "%SDK_PATH%\!PREFIX_PATH!\" /y
|
|
)
|
|
)
|
|
|
|
if exist %UNZIP_PATH% rmdir %UNZIP_PATH% /s/q
|
|
del _unzip.vbs /q
|
|
echo.
|
|
echo Patch %PATCH_NAME% done
|
|
pause
|
|
exit /b
|
|
|
|
:genUnzipScript
|
|
echo Set objArgs = WScript.Arguments > _unzip.vbs
|
|
echo ZipFile=objArgs(0) >> _unzip.vbs
|
|
echo ExtractTo=objArgs(1)>> _unzip.vbs
|
|
echo Set fso = CreateObject("Scripting.FileSystemObject") >> _unzip.vbs
|
|
echo If NOT fso.FolderExists(ExtractTo) Then >> _unzip.vbs
|
|
echo fso.CreateFolder(ExtractTo) >> _unzip.vbs
|
|
echo End If >> _unzip.vbs
|
|
echo set objShell = CreateObject("Shell.Application") >> _unzip.vbs
|
|
echo set FilesInZip=objShell.NameSpace(ZipFile).items >> _unzip.vbs
|
|
echo objShell.NameSpace(fso.GetAbsolutePathName(ExtractTo)).CopyHere(FilesInZip) >> _unzip.vbs
|
|
echo Set fso = Nothing >> _unzip.vbs
|
|
echo Set objShell = Nothing >> _unzip.vbs
|
|
goto :eof
|
|
|
|
:getPrefix
|
|
set str=%1
|
|
call :lastindexof "%str%" "\"
|
|
set /a lastindex=!errorlevel!
|
|
set %2=!str:~0,%lastindex%!
|
|
goto :eof
|
|
|
|
:getFileName
|
|
set str=%1
|
|
call :lastindexof "%str%" "\"
|
|
set /a lastindex=!errorlevel!+1
|
|
set %2=!str:~%lastindex%!
|
|
goto :eof
|
|
|
|
:lastindexof [%1 - string ; %2 - find last index of ; %3 - if defined will store the result in variable with same name]
|
|
setlocal enableDelayedExpansion
|
|
|
|
|
|
set "str=%~1"
|
|
set "splitter=%~2"
|
|
|
|
set LF=^
|
|
|
|
|
|
REM ** Two empty lines are required
|
|
echo off
|
|
for %%L in ("!LF!") DO (
|
|
for /f "delims=" %%R in ("!splitter!") do (
|
|
set "var=!str:%%R=%%L!"
|
|
)
|
|
)
|
|
|
|
for /f delims^=^" %%P in ("!var!") DO (
|
|
set "last_part=%%~P"
|
|
)
|
|
|
|
if "!last_part!" equ "" if "%~3" NEQ "" (
|
|
echo "not contained" >2
|
|
endlocal
|
|
set %~3=-1
|
|
exit
|
|
) else (
|
|
echo "not contained" >2
|
|
endlocal
|
|
echo -1
|
|
)
|
|
setlocal DisableDelayedExpansion
|
|
|
|
set ^"\n=^^^%LF%%LF%^%LF%%LF%^^"
|
|
set $strLen=for /L %%n in (1 1 2) do if %%n==2 (%\n%
|
|
for /F "tokens=1,2 delims=, " %%1 in ("!argv!") do (%\n%
|
|
set "str=A!%%~2!"%\n%
|
|
set "len=0"%\n%
|
|
for /l %%A in (12,-1,0) do (%\n%
|
|
set /a "len|=1<<%%A"%\n%
|
|
for %%B in (!len!) do if "!str:~%%B,1!"=="" set /a "len&=~1<<%%A"%\n%
|
|
)%\n%
|
|
for %%v in (!len!) do endlocal^&if "%%~b" neq "" (set "%%~1=%%v") else echo %%v%\n%
|
|
) %\n%
|
|
) ELSE setlocal enableDelayedExpansion ^& set argv=,
|
|
|
|
|
|
%$strlen% strlen,str
|
|
%$strlen% plen,last_part
|
|
%$strlen% slen,splitter
|
|
|
|
set /a lio=strlen-plen-slen
|
|
REM endlocal & if "%~3" NEQ "" (set %~3=%lio%) else echo %lio%
|
|
exit /b %lio%
|