mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-10-01 02:35:48 -04:00
Merge pull request #1974 from hunbernd/feature/msys2enhancements
[WIP] Improved msys2 build scripts
This commit is contained in:
commit
d1d4b47877
37
build_scripts/Windows-msys2/build/build-webui.bat
Normal file
37
build_scripts/Windows-msys2/build/build-webui.bat
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
@echo off
|
||||||
|
|
||||||
|
setlocal
|
||||||
|
|
||||||
|
:: Initialize environment
|
||||||
|
call "%~dp0..\env.bat"
|
||||||
|
if errorlevel 1 goto error_env
|
||||||
|
call "%EnvPath%\env.bat"
|
||||||
|
if errorlevel 1 goto error_env
|
||||||
|
call "%EnvPath%\env.bat"
|
||||||
|
if errorlevel 1 goto error_env
|
||||||
|
call "%EnvPath%\env-msys2.bat"
|
||||||
|
if errorlevel 1 goto error_env
|
||||||
|
|
||||||
|
:: Initialize base environment
|
||||||
|
call "%~dp0env-base.bat" %*
|
||||||
|
if errorlevel 2 exit /B 2
|
||||||
|
if errorlevel 1 goto error_env
|
||||||
|
|
||||||
|
:: Initialize environment
|
||||||
|
call "%~dp0env.bat" %*
|
||||||
|
if errorlevel 2 exit /B 2
|
||||||
|
if errorlevel 1 goto error_env
|
||||||
|
|
||||||
|
call "%~dp0..\tools\webui.bat"
|
||||||
|
|
||||||
|
:error
|
||||||
|
|
||||||
|
title %COMSPEC%
|
||||||
|
|
||||||
|
if errorlevel 1 echo.& echo Webui generation failed& echo.
|
||||||
|
exit /B %ERRORLEVEL%
|
||||||
|
|
||||||
|
:error_env
|
||||||
|
echo Failed to initialize environment.
|
||||||
|
endlocal
|
||||||
|
exit /B 1
|
@ -18,7 +18,7 @@ if errorlevel 2 exit /B 2
|
|||||||
if errorlevel 1 goto error_env
|
if errorlevel 1 goto error_env
|
||||||
|
|
||||||
:: Install needed things
|
:: Install needed things
|
||||||
%EnvMSYS2Cmd% "pacman --noconfirm --needed -S make git mingw-w64-%RsMSYS2Architecture%-toolchain mingw-w64-%RsMSYS2Architecture%-qt5 mingw-w64-%RsMSYS2Architecture%-miniupnpc mingw-w64-%RsMSYS2Architecture%-sqlcipher mingw-w64-%RsMSYS2Architecture%-libmicrohttpd mingw-w64-%RsMSYS2Architecture%-xapian-core mingw-w64-%RsMSYS2Architecture%-cmake mingw-w64-%RsMSYS2Architecture%-rapidjson"
|
%EnvMSYS2Cmd% "pacman --noconfirm --needed -S make git mingw-w64-%RsMSYS2Architecture%-toolchain mingw-w64-%RsMSYS2Architecture%-qt5 mingw-w64-%RsMSYS2Architecture%-miniupnpc mingw-w64-%RsMSYS2Architecture%-sqlcipher mingw-w64-%RsMSYS2Architecture%-xapian-core mingw-w64-%RsMSYS2Architecture%-cmake mingw-w64-%RsMSYS2Architecture%-rapidjson"
|
||||||
|
|
||||||
:: Plugins
|
:: Plugins
|
||||||
if "%ParamPlugins%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-speex mingw-w64-%RsMSYS2Architecture%-speexdsp mingw-w64-%RsMSYS2Architecture%-curl mingw-w64-%RsMSYS2Architecture%-libxslt mingw-w64-%RsMSYS2Architecture%-opencv mingw-w64-%RsMSYS2Architecture%-ffmpeg"
|
if "%ParamPlugins%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-speex mingw-w64-%RsMSYS2Architecture%-speexdsp mingw-w64-%RsMSYS2Architecture%-curl mingw-w64-%RsMSYS2Architecture%-libxslt mingw-w64-%RsMSYS2Architecture%-opencv mingw-w64-%RsMSYS2Architecture%-ffmpeg"
|
||||||
@ -52,6 +52,12 @@ set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=%RsBuildConfig%"
|
|||||||
if "%ParamAutologin%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_autologin"
|
if "%ParamAutologin%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_autologin"
|
||||||
if "%ParamPlugins%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=retroshare_plugins"
|
if "%ParamPlugins%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=retroshare_plugins"
|
||||||
|
|
||||||
|
:: Dump the active build config into a file
|
||||||
|
echo %RS_QMAKE_CONFIG% > buildinfo.txt
|
||||||
|
echo %RsBuildConfig% >> buildinfo.txt
|
||||||
|
echo %RsArchitecture% >> buildinfo.txt
|
||||||
|
echo Qt %QtVersion% >> buildinfo.txt
|
||||||
|
|
||||||
call "%ToolsPath%\msys2-path.bat" "%SourcePath%" MSYS2SourcePath
|
call "%ToolsPath%\msys2-path.bat" "%SourcePath%" MSYS2SourcePath
|
||||||
call "%ToolsPath%\msys2-path.bat" "%EnvMSYS2Path%" MSYS2EnvMSYS2Path
|
call "%ToolsPath%\msys2-path.bat" "%EnvMSYS2Path%" MSYS2EnvMSYS2Path
|
||||||
%EnvMSYS2Cmd% "qmake "%MSYS2SourcePath%/RetroShare.pro" -r -spec win32-g++ %RS_QMAKE_CONFIG%"
|
%EnvMSYS2Cmd% "qmake "%MSYS2SourcePath%/RetroShare.pro" -r -spec win32-g++ %RS_QMAKE_CONFIG%"
|
||||||
@ -65,6 +71,11 @@ title Build - %SourceName%-%RsBuildConfig% [make]
|
|||||||
|
|
||||||
%EnvMSYS2Cmd% "make -j %NUMBER_OF_PROCESSORS%"
|
%EnvMSYS2Cmd% "make -j %NUMBER_OF_PROCESSORS%"
|
||||||
|
|
||||||
|
:: Webui
|
||||||
|
if "%ParamWebui%"=="1" (
|
||||||
|
call "%~dp0..\tools\webui.bat"
|
||||||
|
)
|
||||||
|
|
||||||
:error
|
:error
|
||||||
popd
|
popd
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ set ParamDebug=0
|
|||||||
set ParamAutologin=0
|
set ParamAutologin=0
|
||||||
set ParamPlugins=0
|
set ParamPlugins=0
|
||||||
set ParamTor=0
|
set ParamTor=0
|
||||||
|
set ParamWebui=0
|
||||||
set RS_QMAKE_CONFIG=
|
set RS_QMAKE_CONFIG=
|
||||||
|
|
||||||
:parameter_loop
|
:parameter_loop
|
||||||
@ -25,6 +26,8 @@ if "%~1" NEQ "" (
|
|||||||
set ParamPlugins=1
|
set ParamPlugins=1
|
||||||
) else if "%%~a"=="tor" (
|
) else if "%%~a"=="tor" (
|
||||||
set ParamTor=1
|
set ParamTor=1
|
||||||
|
) else if "%%~a"=="webui" (
|
||||||
|
set ParamWebui=1
|
||||||
) else if "%%~a"=="CONFIG+" (
|
) else if "%%~a"=="CONFIG+" (
|
||||||
set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% %1
|
set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% %1
|
||||||
) else (
|
) else (
|
||||||
@ -75,12 +78,15 @@ if "%ParamTor%"=="1" (
|
|||||||
set RsType=
|
set RsType=
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if "%ParamWebui%"=="1" (
|
||||||
|
set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_jsonapi" "CONFIG+=rs_webui"
|
||||||
|
)
|
||||||
|
|
||||||
exit /B 0
|
exit /B 0
|
||||||
|
|
||||||
:usage
|
:usage
|
||||||
echo.
|
echo.
|
||||||
echo Usage: 32^|64 release^|debug [version autologin plugins]
|
echo Usage: 32^|64 release^|debug [version autologin plugins webui]
|
||||||
echo.
|
echo.
|
||||||
echo Mandatory parameter
|
echo Mandatory parameter
|
||||||
echo 32^|64 32-bit or 64-bit Version
|
echo 32^|64 32-bit or 64-bit Version
|
||||||
@ -89,6 +95,7 @@ echo.
|
|||||||
echo Optional parameter (need clean when changed)
|
echo Optional parameter (need clean when changed)
|
||||||
echo autologin Build with autologin
|
echo autologin Build with autologin
|
||||||
echo plugins Build plugins
|
echo plugins Build plugins
|
||||||
|
echo webui Enable JsonAPI and pack webui files
|
||||||
echo.
|
echo.
|
||||||
echo Parameter for pack
|
echo Parameter for pack
|
||||||
echo tor Pack tor version
|
echo tor Pack tor version
|
||||||
|
@ -20,6 +20,7 @@ set RsBuildPath=%BuildPath%\Qt-%QtVersion%-%RsArchitecture%-%RsBuildConfig%
|
|||||||
set RsDeployPath=%DeployPath%\Qt-%QtVersion%%RsType%-%RsArchitecture%-%RsBuildConfig%
|
set RsDeployPath=%DeployPath%\Qt-%QtVersion%%RsType%-%RsArchitecture%-%RsBuildConfig%
|
||||||
set RsPackPath=%DeployPath%
|
set RsPackPath=%DeployPath%
|
||||||
set RsArchiveAdd=
|
set RsArchiveAdd=
|
||||||
|
set RsWebuiPath=%RootPath%\%SourceName%-webui
|
||||||
|
|
||||||
if not exist "%~dp0env-mod.bat" goto no_mod
|
if not exist "%~dp0env-mod.bat" goto no_mod
|
||||||
call "%~dp0env-mod.bat"
|
call "%~dp0env-mod.bat"
|
||||||
|
@ -23,7 +23,7 @@ call "%ToolsPath%\find-in-path.bat" GitPath git.exe
|
|||||||
if "%GitPath%"=="" echo Git executable not found in PATH.& exit /B 1
|
if "%GitPath%"=="" echo Git executable not found in PATH.& exit /B 1
|
||||||
|
|
||||||
:: Get compiled revision
|
:: Get compiled revision
|
||||||
set GetRsVersion=%SourcePath%\build_scripts\Windows\tools\get-rs-version.bat
|
set GetRsVersion=%SourcePath%\build_scripts\Windows-msys2\tools\get-rs-version.bat
|
||||||
if not exist "%GetRsVersion%" (
|
if not exist "%GetRsVersion%" (
|
||||||
echo File not found
|
echo File not found
|
||||||
echo %GetRsVersion%
|
echo %GetRsVersion%
|
||||||
|
@ -17,6 +17,9 @@ call "%~dp0env.bat" %*
|
|||||||
if errorlevel 2 exit /B 2
|
if errorlevel 2 exit /B 2
|
||||||
if errorlevel 1 goto error_env
|
if errorlevel 1 goto error_env
|
||||||
|
|
||||||
|
:: Install ntldd
|
||||||
|
%EnvMSYS2Cmd% "pacman --noconfirm --needed -S make git mingw-w64-%RsMSYS2Architecture%-ntldd-git"
|
||||||
|
|
||||||
:: Remove deploy path
|
:: Remove deploy path
|
||||||
if exist "%RsDeployPath%" rmdir /S /Q "%RsDeployPath%"
|
if exist "%RsDeployPath%" rmdir /S /Q "%RsDeployPath%"
|
||||||
|
|
||||||
@ -24,7 +27,7 @@ if exist "%RsDeployPath%" rmdir /S /Q "%RsDeployPath%"
|
|||||||
if not exist "%RsBuildPath%\Makefile" echo Project is not compiled.& goto error
|
if not exist "%RsBuildPath%\Makefile" echo Project is not compiled.& goto error
|
||||||
|
|
||||||
:: Get compiled revision
|
:: Get compiled revision
|
||||||
set GetRsVersion=%SourcePath%\build_scripts\Windows\tools\get-rs-version.bat
|
set GetRsVersion=%SourcePath%\build_scripts\Windows-msys2\tools\get-rs-version.bat
|
||||||
if not exist "%GetRsVersion%" (
|
if not exist "%GetRsVersion%" (
|
||||||
%cecho% error "File not found"
|
%cecho% error "File not found"
|
||||||
echo %GetRsVersion%
|
echo %GetRsVersion%
|
||||||
@ -100,16 +103,13 @@ echo copy binaries
|
|||||||
copy "%RsBuildPath%\retroshare-gui\src\%RsBuildConfig%\RetroShare*.exe" "%RsDeployPath%" %Quite%
|
copy "%RsBuildPath%\retroshare-gui\src\%RsBuildConfig%\RetroShare*.exe" "%RsDeployPath%" %Quite%
|
||||||
copy "%RsBuildPath%\retroshare-nogui\src\%RsBuildConfig%\retroshare*-nogui.exe" "%RsDeployPath%" %Quite%
|
copy "%RsBuildPath%\retroshare-nogui\src\%RsBuildConfig%\retroshare*-nogui.exe" "%RsDeployPath%" %Quite%
|
||||||
copy "%RsBuildPath%\retroshare-service\src\%RsBuildConfig%\retroshare*-service.exe" "%RsDeployPath%" %Quite%
|
copy "%RsBuildPath%\retroshare-service\src\%RsBuildConfig%\retroshare*-service.exe" "%RsDeployPath%" %Quite%
|
||||||
|
copy "%RsBuildPath%\supportlibs\cmark\build\src\libcmark.dll" "%RsDeployPath%" %Quite%
|
||||||
|
|
||||||
echo copy extensions
|
echo copy extensions
|
||||||
for /D %%D in ("%RsBuildPath%\plugins\*") do (
|
for /D %%D in ("%RsBuildPath%\plugins\*") do (
|
||||||
call :copy_extension "%%D" "%RsDeployPath%\Data\%Extensions%"
|
call :copy_extension "%%D" "%RsDeployPath%\Data\%Extensions%"
|
||||||
call :copy_dependencies "%RsDeployPath%\Data\%Extensions%\%%~nxD.dll" "%RsDeployPath%"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
echo copy dependencies
|
|
||||||
call :copy_dependencies "%RsDeployPath%\retroshare.exe" "%RsDeployPath%"
|
|
||||||
|
|
||||||
echo copy Qt DLL's
|
echo copy Qt DLL's
|
||||||
copy "%RsMinGWPath%\bin\Qt%QtMainVersion1%Svg%QtMainVersion2%.dll" "%RsDeployPath%" %Quite%
|
copy "%RsMinGWPath%\bin\Qt%QtMainVersion1%Svg%QtMainVersion2%.dll" "%RsDeployPath%" %Quite%
|
||||||
|
|
||||||
@ -128,7 +128,9 @@ if exist "%QtSharePath%\plugins\styles\qwindowsvistastyle.dll" (
|
|||||||
|
|
||||||
copy "%QtSharePath%\plugins\imageformats\*.dll" "%RsDeployPath%\imageformats" %Quite%
|
copy "%QtSharePath%\plugins\imageformats\*.dll" "%RsDeployPath%\imageformats" %Quite%
|
||||||
del /Q "%RsDeployPath%\imageformats\*d?.dll" %Quite%
|
del /Q "%RsDeployPath%\imageformats\*d?.dll" %Quite%
|
||||||
for %%D in ("%RsDeployPath%\imageformats\*.dll") do (
|
|
||||||
|
echo copy dependencies
|
||||||
|
for /R "%RsDeployPath%" %%D in (*.dll, *.exe) do (
|
||||||
call :copy_dependencies "%%D" "%RsDeployPath%"
|
call :copy_dependencies "%%D" "%RsDeployPath%"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -161,10 +163,18 @@ copy "%SourcePath%\libbitdht\src\bitdht\bdboot.txt" "%RsDeployPath%" %Quite%
|
|||||||
echo copy changelog.txt
|
echo copy changelog.txt
|
||||||
copy "%SourcePath%\retroshare-gui\src\changelog.txt" "%RsDeployPath%" %Quite%
|
copy "%SourcePath%\retroshare-gui\src\changelog.txt" "%RsDeployPath%" %Quite%
|
||||||
|
|
||||||
if exist "%SourcePath%\libresapi\src\webui" (
|
echo copy buildinfo.txt
|
||||||
echo copy webui
|
copy "%RsBuildPath%\buildinfo.txt" "%RsDeployPath%" %Quite%
|
||||||
mkdir "%RsDeployPath%\webui"
|
|
||||||
xcopy /S "%SourcePath%\libresapi\src\webui" "%RsDeployPath%\webui" %Quite%
|
if "%ParamWebui%"=="1" (
|
||||||
|
if exist "%RsWebuiPath%\webui" (
|
||||||
|
echo copy webui
|
||||||
|
mkdir "%RsDeployPath%\webui"
|
||||||
|
xcopy /S "%RsWebuiPath%\webui" "%RsDeployPath%\webui" %Quite%
|
||||||
|
) else (
|
||||||
|
%cecho% error "Webui is enabled, but no webui data found at %RsWebuiPath%\webui"
|
||||||
|
goto error
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
if "%ParamTor%"=="1" (
|
if "%ParamTor%"=="1" (
|
||||||
@ -204,14 +214,11 @@ if exist "%~1\%RsBuildConfig%\%~n1.dll" (
|
|||||||
goto :EOF
|
goto :EOF
|
||||||
|
|
||||||
:copy_dependencies
|
:copy_dependencies
|
||||||
set CopyDependenciesCopiedSomething=0
|
for /F "usebackq" %%A in (`%ToolsPath%\depends.bat %1`) do (
|
||||||
for /F "usebackq" %%A in (`%ToolsPath%\depends.bat list %1`) do (
|
|
||||||
if not exist "%~2\%%A" (
|
if not exist "%~2\%%A" (
|
||||||
if exist "%RsMinGWPath%\bin\%%A" (
|
if exist "%RsMinGWPath%\bin\%%A" (
|
||||||
set CopyDependenciesCopiedSomething=1
|
|
||||||
copy "%RsMinGWPath%\bin\%%A" %2 %Quite%
|
copy "%RsMinGWPath%\bin\%%A" %2 %Quite%
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
if "%CopyDependenciesCopiedSomething%"=="1" goto copy_dependencies
|
|
||||||
goto :EOF
|
goto :EOF
|
||||||
|
2
build_scripts/Windows-msys2/env/env.bat
vendored
2
build_scripts/Windows-msys2/env/env.bat
vendored
@ -7,9 +7,7 @@ set EnvToolsPath=%EnvRootPath%\tools
|
|||||||
set EnvTempPath=%EnvRootPath%\tmp
|
set EnvTempPath=%EnvRootPath%\tmp
|
||||||
set EnvDownloadPath=%EnvRootPath%\download
|
set EnvDownloadPath=%EnvRootPath%\download
|
||||||
|
|
||||||
set EnvWgetExe=%EnvToolsPath%\wget.exe
|
|
||||||
set EnvSevenZipExe=%EnvToolsPath%\7z.exe
|
set EnvSevenZipExe=%EnvToolsPath%\7z.exe
|
||||||
set EnvDependsExe=%EnvToolsPath%\depends.exe
|
|
||||||
set EnvCEchoExe=%EnvToolsPath%\cecho.exe
|
set EnvCEchoExe=%EnvToolsPath%\cecho.exe
|
||||||
set cecho=call "%ToolsPath%\cecho.bat"
|
set cecho=call "%ToolsPath%\cecho.bat"
|
||||||
|
|
||||||
|
@ -6,22 +6,6 @@ set CEchoUrl=https://github.com/lordmulder/cecho/releases/download/2015-10-10/ce
|
|||||||
set CEchoInstall=cecho.2015-10-10.zip
|
set CEchoInstall=cecho.2015-10-10.zip
|
||||||
set SevenZipUrl=https://sourceforge.net/projects/sevenzip/files/7-Zip/18.05/7z1805.msi/download
|
set SevenZipUrl=https://sourceforge.net/projects/sevenzip/files/7-Zip/18.05/7z1805.msi/download
|
||||||
set SevenZipInstall=7z1805.msi
|
set SevenZipInstall=7z1805.msi
|
||||||
set WgetUrl=https://eternallybored.org/misc/wget/1.19.4/32/wget.exe
|
|
||||||
set WgetInstall=wget.exe
|
|
||||||
set DependsUrl=http://www.dependencywalker.com/depends22_x86.zip
|
|
||||||
set DependsInstall=depends22_x86.zip
|
|
||||||
set SigcheckInstall=Sigcheck.zip
|
|
||||||
set SigcheckUrl=https://download.sysinternals.com/files/%SigcheckInstall%
|
|
||||||
|
|
||||||
if not exist "%EnvToolsPath%\wget.exe" (
|
|
||||||
echo Download Wget installation
|
|
||||||
|
|
||||||
if not exist "%EnvDownloadPath%\%WgetInstall%" call "%ToolsPath%\winhttpjs.bat" %WgetUrl% -saveTo "%EnvDownloadPath%\%WgetInstall%"
|
|
||||||
if not exist "%EnvDownloadPath%\%WgetInstall%" %cecho% error "Cannot download Wget installation" & goto error
|
|
||||||
|
|
||||||
echo Copy Wget
|
|
||||||
copy "%EnvDownloadPath%\wget.exe" "%EnvToolsPath%"
|
|
||||||
)
|
|
||||||
|
|
||||||
if not exist "%EnvToolsPath%\7z.exe" (
|
if not exist "%EnvToolsPath%\7z.exe" (
|
||||||
call "%ToolsPath%\remove-dir.bat" "%EnvTempPath%"
|
call "%ToolsPath%\remove-dir.bat" "%EnvTempPath%"
|
||||||
@ -56,32 +40,6 @@ if not exist "%EnvToolsPath%\cecho.exe" (
|
|||||||
call "%ToolsPath%\remove-dir.bat" "%EnvTempPath%"
|
call "%ToolsPath%\remove-dir.bat" "%EnvTempPath%"
|
||||||
)
|
)
|
||||||
|
|
||||||
if not exist "%EnvToolsPath%\depends.exe" (
|
|
||||||
call "%ToolsPath%\remove-dir.bat" "%EnvTempPath%"
|
|
||||||
mkdir "%EnvTempPath%"
|
|
||||||
|
|
||||||
%cecho% info "Download Dependency Walker installation"
|
|
||||||
|
|
||||||
if not exist "%EnvDownloadPath%\%DependsInstall%" call "%ToolsPath%\winhttpjs.bat" %DependsUrl% -saveTo "%EnvDownloadPath%\%DependsInstall%"
|
|
||||||
if not exist "%EnvDownloadPath%\%DependsInstall%" %cecho% error "Cannot download Dependendy Walker installation" & goto error
|
|
||||||
|
|
||||||
%cecho% info "Unpack Dependency Walker"
|
|
||||||
"%EnvSevenZipExe%" x -o"%EnvTempPath%" "%EnvDownloadPath%\%DependsInstall%"
|
|
||||||
copy "%EnvTempPath%\*" "%EnvToolsPath%"
|
|
||||||
|
|
||||||
call "%ToolsPath%\remove-dir.bat" "%EnvTempPath%"
|
|
||||||
)
|
|
||||||
|
|
||||||
if not exist "%EnvToolsPath%\sigcheck.exe" (
|
|
||||||
%cecho% info "Download Sigcheck installation"
|
|
||||||
|
|
||||||
if not exist "%EnvDownloadPath%\%SigcheckInstall%" call "%ToolsPath%\download-file.bat" "%SigcheckUrl%" "%EnvDownloadPath%\%SigcheckInstall%"
|
|
||||||
if not exist "%EnvDownloadPath%\%SigcheckInstall%" %cecho% error "Cannot download Sigcheck installation" & goto error
|
|
||||||
|
|
||||||
%cecho% info "Unpack Sigcheck"
|
|
||||||
"%EnvSevenZipExe%" x -o"%EnvToolsPath%" "%EnvDownloadPath%\%SigcheckInstall%" sigcheck.exe
|
|
||||||
)
|
|
||||||
|
|
||||||
:exit
|
:exit
|
||||||
endlocal
|
endlocal
|
||||||
exit /B 0
|
exit /B 0
|
||||||
|
@ -1,40 +1,22 @@
|
|||||||
:: Usage:
|
:: Usage:
|
||||||
:: call depends.bat [list^|missing] file
|
:: call depends.bat file
|
||||||
|
|
||||||
if "%2"=="" (
|
if "%1"=="" (
|
||||||
echo Usage: %~nx0 [list^|missing] File
|
echo Usage: %~nx0 File
|
||||||
exit /B 1
|
exit /B 1
|
||||||
)
|
)
|
||||||
|
|
||||||
setlocal
|
setlocal
|
||||||
|
pushd %~dp1
|
||||||
|
|
||||||
if not exist "%EnvDependsExe%" echo depends.exe not found in %EnvToolsPath%.& exit /B 1
|
%EnvMSYS2Cmd% "ntldd --recursive $0 | cut -f1 -d"=" | awk '{$1=$1};1'" %~nx1 > %~sdp0depends.tmp
|
||||||
|
|
||||||
set CutPath=
|
for /F %%A in (%~sdp0depends.tmp) do (
|
||||||
call "%ToolsPath%\find-in-path.bat" CutPath cut.exe
|
echo %%~A
|
||||||
if "%CutPath%"=="" echo cut.exe not found in PATH.& exit /B 1
|
|
||||||
|
|
||||||
start /wait "" "%EnvDependsExe%" /c /oc:"%~dp0depends.tmp" %2
|
|
||||||
if "%1"=="missing" (
|
|
||||||
cut.exe --delimiter=, --fields=1,2 "%~dp0depends.tmp" >"%~dp0depends1.tmp"
|
|
||||||
for /F "tokens=1,2 delims=," %%A in (%~sdp0depends1.tmp) do (
|
|
||||||
if "%%A"=="?" (
|
|
||||||
echo %%~B
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
if "%1"=="list" (
|
|
||||||
cut.exe --delimiter=, --fields=2 "%~dp0depends.tmp" >"%~dp0depends1.tmp"
|
|
||||||
for /F "tokens=1 delims=," %%A in (%~sdp0depends1.tmp) do (
|
|
||||||
if "%%A" NEQ "Module" (
|
|
||||||
echo %%~A
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if exist "%~dp0depends.tmp" del /Q "%~dp0depends.tmp"
|
if exist "%~dp0depends.tmp" del /Q "%~dp0depends.tmp"
|
||||||
if exist "%~dp0depends1.tmp" del /Q "%~dp0depends1.tmp"
|
|
||||||
|
|
||||||
|
popd
|
||||||
endlocal
|
endlocal
|
||||||
exit /B 0
|
exit /B 0
|
@ -7,7 +7,6 @@ if "%~2"=="" (
|
|||||||
exit /B 1
|
exit /B 1
|
||||||
)
|
)
|
||||||
|
|
||||||
::"%EnvCurlExe%" -L -k "%~1" -o "%~2"
|
powershell -NoLogo -NoProfile -Command (New-Object System.Net.WebClient).DownloadFile(\""%~1\"", \""%~2\"")
|
||||||
"%EnvWgetExe%" --no-check-certificate --continue "%~1" --output-document="%~2"
|
|
||||||
|
|
||||||
exit /B %ERRORLEVEL%
|
exit /B %ERRORLEVEL%
|
||||||
|
@ -27,7 +27,7 @@ set VersionMinor=
|
|||||||
set VersionMini=
|
set VersionMini=
|
||||||
set VersionExtra=
|
set VersionExtra=
|
||||||
|
|
||||||
for /F "tokens=1,2,3,* delims=.-" %%A in ('%EnvToolsPath%\sigcheck.exe -nobanner -n %Executable%') do (
|
for /F "USEBACKQ tokens=1,2,3,* delims=.-" %%A in (`powershell -NoLogo -NoProfile -Command ^(Get-Item "%Executable%"^).VersionInfo.FileVersion`) do (
|
||||||
set VersionMajor=%%A
|
set VersionMajor=%%A
|
||||||
set VersionMinor=%%B
|
set VersionMinor=%%B
|
||||||
set VersionMini=%%C
|
set VersionMini=%%C
|
||||||
|
20
build_scripts/Windows-msys2/tools/webui.bat
Normal file
20
build_scripts/Windows-msys2/tools/webui.bat
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
setlocal
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo === webui
|
||||||
|
echo.
|
||||||
|
title Build webui
|
||||||
|
|
||||||
|
if not exist "%RsWebuiPath%" (
|
||||||
|
echo Checking out webui source into %RsWebuiPath%
|
||||||
|
%EnvMSYS2Cmd% "pacman --noconfirm --needed -S git"
|
||||||
|
git clone https://github.com/RetroShare/RSNewWebUI.git "%RsWebuiPath%"
|
||||||
|
) else (
|
||||||
|
echo Webui source found at %RsWebuiPath%
|
||||||
|
)
|
||||||
|
|
||||||
|
pushd "%RsWebuiPath%\webui-src\make-src"
|
||||||
|
%EnvMSYS2Cmd% "sh build.sh"
|
||||||
|
popd
|
||||||
|
|
||||||
|
endlocal
|
@ -1,584 +0,0 @@
|
|||||||
@if (@X) == (@Y) @end /* JScript comment
|
|
||||||
@echo off
|
|
||||||
|
|
||||||
rem :: the first argument is the script name as it will be used for proper help message
|
|
||||||
cscript //E:JScript //nologo "%~f0" "%~nx0" %*
|
|
||||||
|
|
||||||
exit /b %errorlevel%
|
|
||||||
|
|
||||||
@if (@X)==(@Y) @end JScript comment */
|
|
||||||
|
|
||||||
// used resources
|
|
||||||
|
|
||||||
// update 12.10.15
|
|
||||||
// osvikvi(https://github.com/osvikvi) has nodited that the -password option is not set , so this is fixed
|
|
||||||
|
|
||||||
//https://msdn.microsoft.com/en-us/library/windows/desktop/aa384058(v=vs.85).aspx
|
|
||||||
//https://msdn.microsoft.com/en-us/library/windows/desktop/aa384055(v=vs.85).aspx
|
|
||||||
//https://msdn.microsoft.com/en-us/library/windows/desktop/aa384059(v=vs.85).aspx
|
|
||||||
|
|
||||||
// global variables and constants
|
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------
|
|
||||||
// -- asynch requests not included --
|
|
||||||
// ----------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
//todo - save responceStream instead of responceBody !!
|
|
||||||
//todo - set all winthttp options ->//https://msdn.microsoft.com/en-us/library/windows/desktop/aa384108(v=vs.85).aspx
|
|
||||||
//todo - log all options
|
|
||||||
//todo - improve help message . eventual verbose option
|
|
||||||
|
|
||||||
|
|
||||||
var ARGS = WScript.Arguments;
|
|
||||||
var scriptName = ARGS.Item(0);
|
|
||||||
|
|
||||||
var url = "";
|
|
||||||
var saveTo = "";
|
|
||||||
|
|
||||||
var user = 0;
|
|
||||||
var pass = 0;
|
|
||||||
|
|
||||||
var proxy = 0;
|
|
||||||
var bypass = 0;
|
|
||||||
var proxy_user = 0;
|
|
||||||
var proxy_pass = 0;
|
|
||||||
|
|
||||||
var certificate = 0;
|
|
||||||
|
|
||||||
var force = true;
|
|
||||||
|
|
||||||
var body = "";
|
|
||||||
|
|
||||||
//ActiveX objects
|
|
||||||
var WinHTTPObj = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
|
|
||||||
var FileSystemObj = new ActiveXObject("Scripting.FileSystemObject");
|
|
||||||
var AdoDBObj = new ActiveXObject("ADODB.Stream");
|
|
||||||
|
|
||||||
// HttpRequest SetCredentials flags.
|
|
||||||
var proxy_settings = 0;
|
|
||||||
|
|
||||||
//
|
|
||||||
HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0;
|
|
||||||
HTTPREQUEST_SETCREDENTIALS_FOR_PROXY = 1;
|
|
||||||
|
|
||||||
//timeouts and their default values
|
|
||||||
var RESOLVE_TIMEOUT = 0;
|
|
||||||
var CONNECT_TIMEOUT = 90000;
|
|
||||||
var SEND_TIMEOUT = 90000;
|
|
||||||
var RECEIVE_TIMEOUT = 90000;
|
|
||||||
|
|
||||||
//HttpRequestMethod
|
|
||||||
var http_method = 'GET';
|
|
||||||
|
|
||||||
//header
|
|
||||||
var header_file = "";
|
|
||||||
|
|
||||||
//report
|
|
||||||
var reportfile = "";
|
|
||||||
|
|
||||||
//test-this:
|
|
||||||
var use_stream = false;
|
|
||||||
|
|
||||||
//autologon policy
|
|
||||||
var autologon_policy = 1; //0,1,2
|
|
||||||
|
|
||||||
|
|
||||||
//headers will be stored as multi-dimensional array
|
|
||||||
var headers = [];
|
|
||||||
|
|
||||||
//user-agent
|
|
||||||
var ua = "";
|
|
||||||
|
|
||||||
//escape URL
|
|
||||||
var escape = false;
|
|
||||||
|
|
||||||
function printHelp() {
|
|
||||||
WScript.Echo(scriptName + " - sends HTTP request and saves the request body as a file and/or a report of the sent request");
|
|
||||||
WScript.Echo(scriptName + " url [-force yes|no] [-user username -password password] [-proxy proxyserver:port] [-bypass bypass_list]");
|
|
||||||
WScript.Echo(" [-proxyuser proxy_username -proxypassword proxy_password] [-certificate certificateString]");
|
|
||||||
WScript.Echo(" [-method GET|POST|PATCH|DELETE|HEAD|OPTIONS|CONNECT]");
|
|
||||||
WScript.Echo(" [-saveTo file] - to print response to console use con");
|
|
||||||
|
|
||||||
WScript.Echo(" [-sendTimeout int(milliseconds)]");
|
|
||||||
WScript.Echo(" [-resolveTimeout int(milliseconds)]");
|
|
||||||
WScript.Echo(" [-connectTimeout int(milliseconds)]");
|
|
||||||
WScript.Echo(" [-receiveTimeout int(milliseconds)]");
|
|
||||||
|
|
||||||
WScript.Echo(" [-autologonPolicy 1|2|3]");
|
|
||||||
WScript.Echo(" [-proxySettings 1|2|3] (https://msdn.microsoft.com/en-us/library/windows/desktop/aa384059(v=vs.85).aspx)");
|
|
||||||
|
|
||||||
//header
|
|
||||||
WScript.Echo(" [-headers-file header_file]");
|
|
||||||
//reportfile
|
|
||||||
WScript.Echo(" [-reportfile reportfile]");
|
|
||||||
WScript.Echo(" [-ua user-agent]");
|
|
||||||
WScript.Echo(" [-ua-file user-agent-file]");
|
|
||||||
|
|
||||||
WScript.Echo(" [-escape yes|no]");
|
|
||||||
|
|
||||||
WScript.Echo(" [-body body-string]");
|
|
||||||
WScript.Echo(" [-body-file body-file]");
|
|
||||||
|
|
||||||
WScript.Echo("-force - decide to not or to overwrite if the local files exists");
|
|
||||||
|
|
||||||
WScript.Echo("proxyserver:port - the proxy server");
|
|
||||||
WScript.Echo("bypass- bypass list");
|
|
||||||
WScript.Echo("proxy_user , proxy_password - credentials for proxy server");
|
|
||||||
WScript.Echo("user , password - credentials for the server");
|
|
||||||
WScript.Echo("certificate - location of SSL certificate");
|
|
||||||
WScript.Echo("method - what HTTP method will be used.Default is GET");
|
|
||||||
WScript.Echo("saveTo - save the responce as binary file");
|
|
||||||
WScript.Echo(" ");
|
|
||||||
WScript.Echo("Header file should contain key:value pairs.Lines starting with \"#\" will be ignored.");
|
|
||||||
WScript.Echo("value should NOT be enclosed with quotes");
|
|
||||||
WScript.Echo(" ");
|
|
||||||
WScript.Echo("Examples:");
|
|
||||||
|
|
||||||
WScript.Echo(scriptName + " http://somelink.com/somefile.zip -saveTo c:\\somefile.zip -certificate \"LOCAL_MACHINE\\Personal\\My Middle-Tier Certificate\"");
|
|
||||||
WScript.Echo(scriptName + " http://somelink.com/something.html -method POST -certificate \"LOCAL_MACHINE\\Personal\\My Middle-Tier Certificate\" -header c:\\header_file -reportfile c:\\reportfile.txt");
|
|
||||||
WScript.Echo(scriptName + "\"http://somelink\" -method POST -header hdrs.txt -reportfile reportfile2.txt -saveTo responsefile2 -ua \"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36\" -body-file some.json");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
function parseArgs() {
|
|
||||||
//
|
|
||||||
if (ARGS.Length < 2) {
|
|
||||||
WScript.Echo("insufficient arguments");
|
|
||||||
printHelp();
|
|
||||||
WScript.Quit(43);
|
|
||||||
}
|
|
||||||
// !!!
|
|
||||||
url = ARGS.Item(1);
|
|
||||||
// !!!
|
|
||||||
if (ARGS.Length % 2 != 0) {
|
|
||||||
WScript.Echo("illegal arguments");
|
|
||||||
printHelp();
|
|
||||||
WScript.Quit(44);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var i = 2; i < ARGS.Length - 1; i = i + 2) {
|
|
||||||
var arg = ARGS.Item(i).toLowerCase();
|
|
||||||
var next = ARGS.Item(i + 1);
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
|
||||||
switch (arg) { // the try-catch is set mainly because of the parseInts
|
|
||||||
case "-force":
|
|
||||||
if (next == "no") {
|
|
||||||
force = false;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "-escape":
|
|
||||||
if (next == "yes") {
|
|
||||||
escape = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "-saveto":
|
|
||||||
saveTo = next;
|
|
||||||
break;
|
|
||||||
case "-user":
|
|
||||||
case "-u":
|
|
||||||
user = next;
|
|
||||||
break;
|
|
||||||
case "-pass":
|
|
||||||
case "-password":
|
|
||||||
case "-p":
|
|
||||||
pass = next;
|
|
||||||
break;
|
|
||||||
case "-proxy":
|
|
||||||
proxy = next;
|
|
||||||
break;
|
|
||||||
case "-bypass":
|
|
||||||
bypass = next;
|
|
||||||
break;
|
|
||||||
case "-proxyuser":
|
|
||||||
case "-pu":
|
|
||||||
proxy_user = next;
|
|
||||||
break;
|
|
||||||
case "-proxypassword":
|
|
||||||
case "-pp":
|
|
||||||
proxy_pass = next;
|
|
||||||
break;
|
|
||||||
case "-ua":
|
|
||||||
ua = next;
|
|
||||||
break;
|
|
||||||
case "-ua-file":
|
|
||||||
ua = readFile(next);
|
|
||||||
break;
|
|
||||||
case "-body":
|
|
||||||
body = next;
|
|
||||||
break;
|
|
||||||
case "-usestream":
|
|
||||||
//WScript.Echo("~~");
|
|
||||||
if (next.toLowerCase() === "yes") {
|
|
||||||
use_stream = true
|
|
||||||
};
|
|
||||||
break;
|
|
||||||
case "-body-file":
|
|
||||||
body = readFile(next);
|
|
||||||
break;
|
|
||||||
case "-certificate":
|
|
||||||
certificate = next;
|
|
||||||
break;
|
|
||||||
case "-method":
|
|
||||||
switch (next.toLowerCase()) {
|
|
||||||
case "post":
|
|
||||||
http_method = 'POST';
|
|
||||||
break;
|
|
||||||
case "get":
|
|
||||||
http_method = 'GET';
|
|
||||||
break;
|
|
||||||
case "head":
|
|
||||||
http_method = 'HEAD';
|
|
||||||
break;
|
|
||||||
case "put":
|
|
||||||
http_method = 'PUT';
|
|
||||||
break;
|
|
||||||
case "options":
|
|
||||||
http_method = 'OPTIONS';
|
|
||||||
break;
|
|
||||||
case "connect":
|
|
||||||
http_method = 'CONNECT';
|
|
||||||
break;
|
|
||||||
case "patch":
|
|
||||||
http_method = 'PATCH';
|
|
||||||
break;
|
|
||||||
case "delete":
|
|
||||||
http_method = 'DELETE';
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
WScript.Echo("Invalid http method passed " + next);
|
|
||||||
WScript.Echo("possible values are GET,POST,DELETE,PUT,CONNECT,PATCH,HEAD,OPTIONS");
|
|
||||||
WScript.Quit(1326);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "-headers-file":
|
|
||||||
case "-header":
|
|
||||||
headers = readPropFile(next);
|
|
||||||
break;
|
|
||||||
case "-reportfile":
|
|
||||||
reportfile = next;
|
|
||||||
break;
|
|
||||||
//timeouts
|
|
||||||
case "-sendtimeout":
|
|
||||||
SEND_TIMEOUT = parseInt(next);
|
|
||||||
break;
|
|
||||||
case "-connecttimeout":
|
|
||||||
CONNECT_TIMEOUT = parseint(next);
|
|
||||||
break;
|
|
||||||
case "-resolvetimeout":
|
|
||||||
RESOLVE_TIMEOUT = parseInt(next);
|
|
||||||
break;
|
|
||||||
case "-receivetimeout":
|
|
||||||
RECEIVE_TIMEOUT = parseInt(next);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "-autologonpolicy":
|
|
||||||
autologon_policy = parseInt(next);
|
|
||||||
if (autologon_policy > 2 || autologon_policy < 0) {
|
|
||||||
WScript.Echo("out of autologon policy range");
|
|
||||||
WScript.Quit(87);
|
|
||||||
};
|
|
||||||
break;
|
|
||||||
case "-proxysettings":
|
|
||||||
proxy_settings = parseInt(next);
|
|
||||||
if (proxy_settings > 2 || proxy_settings < 0) {
|
|
||||||
WScript.Echo("out of proxy settings range");
|
|
||||||
WScript.Quit(87);
|
|
||||||
};
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
WScript.Echo("Invalid command line switch: " + arg);
|
|
||||||
WScript.Quit(1405);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
WScript.Echo(err.message);
|
|
||||||
WScript.Quit(1348);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
stripTrailingSlash = function(path) {
|
|
||||||
while (path.substr(path.length - 1, path.length) == '\\') {
|
|
||||||
path = path.substr(0, path.length - 1);
|
|
||||||
}
|
|
||||||
return path;
|
|
||||||
}
|
|
||||||
|
|
||||||
function existsItem(path) {
|
|
||||||
return FileSystemObj.FolderExists(path) || FileSystemObj.FileExists(path);
|
|
||||||
}
|
|
||||||
|
|
||||||
function deleteItem(path) {
|
|
||||||
if (FileSystemObj.FileExists(path)) {
|
|
||||||
FileSystemObj.DeleteFile(path);
|
|
||||||
return true;
|
|
||||||
} else if (FileSystemObj.FolderExists(path)) {
|
|
||||||
FileSystemObj.DeleteFolder(stripTrailingSlash(path));
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//-------------------------------
|
|
||||||
//----------------------
|
|
||||||
//----------
|
|
||||||
//-----
|
|
||||||
//--
|
|
||||||
function request(url) {
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
WinHTTPObj.Open(http_method, url, false);
|
|
||||||
if (proxy != 0 && bypass != 0) {
|
|
||||||
WinHTTPObj.SetProxy(proxy_settings, proxy, bypass);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (proxy != 0) {
|
|
||||||
WinHTTPObj.SetProxy(proxy_settings, proxy);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (user != 0 && pass != 0) {
|
|
||||||
WinHTTPObj.SetCredentials(user, pass, HTTPREQUEST_SETCREDENTIALS_FOR_SERVER);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (proxy_user != 0 && proxy_pass != 0) {
|
|
||||||
WinHTTPObj.SetCredentials(proxy_user, proxy_pass, HTTPREQUEST_SETCREDENTIALS_FOR_PROXY);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (certificate != 0) {
|
|
||||||
WinHTTPObj.SetClientCertificate(certificate);
|
|
||||||
}
|
|
||||||
|
|
||||||
//set autologin policy
|
|
||||||
WinHTTPObj.SetAutoLogonPolicy(autologon_policy);
|
|
||||||
//set timeouts
|
|
||||||
WinHTTPObj.SetTimeouts(RESOLVE_TIMEOUT, CONNECT_TIMEOUT, SEND_TIMEOUT, RECEIVE_TIMEOUT);
|
|
||||||
|
|
||||||
if (headers.length !== 0) {
|
|
||||||
WScript.Echo("Sending with headers:");
|
|
||||||
for (var i = 0; i < headers.length; i++) {
|
|
||||||
WinHTTPObj.SetRequestHeader(headers[i][0], headers[i][1]);
|
|
||||||
WScript.Echo(headers[i][0] + ":" + headers[i][1]);
|
|
||||||
}
|
|
||||||
WScript.Echo("");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ua !== "") {
|
|
||||||
//user-agent option from:
|
|
||||||
//WinHttpRequestOption enumeration
|
|
||||||
// other options can be added like bellow
|
|
||||||
//https://msdn.microsoft.com/en-us/library/windows/desktop/aa384108(v=vs.85).aspx
|
|
||||||
WinHTTPObj.Option(0) = ua;
|
|
||||||
}
|
|
||||||
if (escape) {
|
|
||||||
WinHTTPObj.Option(3) = true;
|
|
||||||
}
|
|
||||||
if (trim(body) === "") {
|
|
||||||
WinHTTPObj.Send();
|
|
||||||
} else {
|
|
||||||
WinHTTPObj.Send(body);
|
|
||||||
}
|
|
||||||
|
|
||||||
var status = WinHTTPObj.Status
|
|
||||||
} catch (err) {
|
|
||||||
WScript.Echo(err.message);
|
|
||||||
WScript.Quit(666);
|
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////
|
|
||||||
// report //
|
|
||||||
////////////////////////
|
|
||||||
|
|
||||||
if (reportfile != "") {
|
|
||||||
|
|
||||||
//var report_string="";
|
|
||||||
var n = "\r\n";
|
|
||||||
var report_string = "Status:" + n;
|
|
||||||
report_string = report_string + " " + WinHTTPObj.Status;
|
|
||||||
report_string = report_string + " " + WinHTTPObj.StatusText + n;
|
|
||||||
report_string = report_string + " " + n;
|
|
||||||
report_string = report_string + "Response:" + n;
|
|
||||||
report_string = report_string + WinHTTPObj.ResponseText + n;
|
|
||||||
report_string = report_string + " " + n;
|
|
||||||
report_string = report_string + "Headers:" + n;
|
|
||||||
report_string = report_string + WinHTTPObj.GetAllResponseHeaders() + n;
|
|
||||||
|
|
||||||
WinHttpRequestOption_UserAgentString = 0; // Name of the user agent
|
|
||||||
WinHttpRequestOption_URL = 1; // Current URL
|
|
||||||
WinHttpRequestOption_URLCodePage = 2; // Code page
|
|
||||||
WinHttpRequestOption_EscapePercentInURL = 3; // Convert percents
|
|
||||||
// in the URL
|
|
||||||
// rest of the options can be seen and eventually added using this as reference
|
|
||||||
// https://msdn.microsoft.com/en-us/library/windows/desktop/aa384108(v=vs.85).aspx
|
|
||||||
|
|
||||||
report_string = report_string + "URL:" + n;
|
|
||||||
report_string = report_string + WinHTTPObj.Option(WinHttpRequestOption_URL) + n;
|
|
||||||
|
|
||||||
report_string = report_string + "URL Code Page:" + n;
|
|
||||||
report_string = report_string + WinHTTPObj.Option(WinHttpRequestOption_URLCodePage) + n;
|
|
||||||
|
|
||||||
report_string = report_string + "User Agent:" + n;
|
|
||||||
report_string = report_string + WinHTTPObj.Option(WinHttpRequestOption_UserAgentString) + n;
|
|
||||||
|
|
||||||
report_string = report_string + "Escapped URL:" + n;
|
|
||||||
report_string = report_string + WinHTTPObj.Option(WinHttpRequestOption_EscapePercentInURL) + n;
|
|
||||||
|
|
||||||
prepareateFile(force, reportfile);
|
|
||||||
|
|
||||||
WScript.Echo("Writing report to " + reportfile);
|
|
||||||
|
|
||||||
writeFile(reportfile, report_string);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (status) {
|
|
||||||
case 200:
|
|
||||||
WScript.Echo("Status: 200 OK");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
WScript.Echo("Status: " + status);
|
|
||||||
WScript.Echo("Status was not OK. More info -> https://en.wikipedia.org/wiki/List_of_HTTP_status_codes");
|
|
||||||
}
|
|
||||||
|
|
||||||
//if as binary
|
|
||||||
if (saveTo.toLowerCase() === "con") {
|
|
||||||
WScript.Echo(WinHTTPObj.ResponseText);
|
|
||||||
}
|
|
||||||
if (saveTo !== "" && saveTo.toLowerCase() !== "con") {
|
|
||||||
prepareateFile(force, saveTo);
|
|
||||||
try {
|
|
||||||
|
|
||||||
if (use_stream) {
|
|
||||||
writeBinFile(saveTo, WinHTTPObj.ResponseStream);
|
|
||||||
} else {
|
|
||||||
writeBinFile(saveTo, WinHTTPObj.ResponseBody);
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (err) {
|
|
||||||
WScript.Echo("Failed to save the file as binary.Attempt to save it as text");
|
|
||||||
AdoDBObj.Close();
|
|
||||||
prepareateFile(true, saveTo);
|
|
||||||
writeFile(saveTo, WinHTTPObj.ResponseText);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
WScript.Quit(status);
|
|
||||||
}
|
|
||||||
|
|
||||||
//--
|
|
||||||
//-----
|
|
||||||
//----------
|
|
||||||
//----------------------
|
|
||||||
//-------------------------------
|
|
||||||
|
|
||||||
function prepareateFile(force, file) {
|
|
||||||
if (force && existsItem(file)) {
|
|
||||||
if (!deleteItem(file)) {
|
|
||||||
WScript.Echo("Unable to delete " + file);
|
|
||||||
WScript.Quit(8);
|
|
||||||
}
|
|
||||||
} else if (existsItem(file)) {
|
|
||||||
WScript.Echo("Item " + file + " already exist");
|
|
||||||
WScript.Quit(9);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function writeBinFile(fileName, data) {
|
|
||||||
AdoDBObj.Type = 1;
|
|
||||||
AdoDBObj.Open();
|
|
||||||
AdoDBObj.Position = 0;
|
|
||||||
AdoDBObj.Write(data);
|
|
||||||
AdoDBObj.SaveToFile(fileName, 2);
|
|
||||||
AdoDBObj.Close();
|
|
||||||
}
|
|
||||||
|
|
||||||
function writeFile(fileName, data) {
|
|
||||||
AdoDBObj.Type = 2;
|
|
||||||
AdoDBObj.CharSet = "iso-8859-1";
|
|
||||||
AdoDBObj.Open();
|
|
||||||
AdoDBObj.Position = 0;
|
|
||||||
AdoDBObj.WriteText(data);
|
|
||||||
AdoDBObj.SaveToFile(fileName, 2);
|
|
||||||
AdoDBObj.Close();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function readFile(fileName) {
|
|
||||||
//check existence
|
|
||||||
try {
|
|
||||||
if (!FileSystemObj.FileExists(fileName)) {
|
|
||||||
WScript.Echo("file " + fileName + " does not exist!");
|
|
||||||
WScript.Quit(13);
|
|
||||||
}
|
|
||||||
if (FileSystemObj.GetFile(fileName).Size === 0) {
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
var fileR = FileSystemObj.OpenTextFile(fileName, 1);
|
|
||||||
var content = fileR.ReadAll();
|
|
||||||
fileR.Close();
|
|
||||||
return content;
|
|
||||||
} catch (err) {
|
|
||||||
WScript.Echo("Error while reading file: " + fileName);
|
|
||||||
WScript.Echo(err.message);
|
|
||||||
WScript.Echo("Will return empty string");
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function readPropFile(fileName) {
|
|
||||||
//check existence
|
|
||||||
resultArray = [];
|
|
||||||
if (!FileSystemObj.FileExists(fileName)) {
|
|
||||||
WScript.Echo("(headers)file " + fileName + " does not exist!");
|
|
||||||
WScript.Quit(15);
|
|
||||||
}
|
|
||||||
if (FileSystemObj.GetFile(fileName).Size === 0) {
|
|
||||||
return resultArray;
|
|
||||||
}
|
|
||||||
var fileR = FileSystemObj.OpenTextFile(fileName, 1);
|
|
||||||
var line = "";
|
|
||||||
var k = "";
|
|
||||||
var v = "";
|
|
||||||
var lineN = 0;
|
|
||||||
var index = 0;
|
|
||||||
try {
|
|
||||||
WScript.Echo("parsing headers form " + fileName + " property file ");
|
|
||||||
while (!fileR.AtEndOfStream) {
|
|
||||||
line = fileR.ReadLine();
|
|
||||||
lineN++;
|
|
||||||
index = line.indexOf(":");
|
|
||||||
if (line.indexOf("#") === 0 || trim(line) === "") {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if (index === -1 || index === line.length - 1 || index === 0) {
|
|
||||||
WScript.Echo("Invalid line " + lineN);
|
|
||||||
WScript.Quit(93);
|
|
||||||
}
|
|
||||||
k = trim(line.substring(0, index));
|
|
||||||
v = trim(line.substring(index + 1, line.length));
|
|
||||||
resultArray.push([k, v]);
|
|
||||||
}
|
|
||||||
fileR.Close();
|
|
||||||
return resultArray;
|
|
||||||
} catch (err) {
|
|
||||||
WScript.Echo("Error while reading headers file: " + fileName);
|
|
||||||
WScript.Echo(err.message);
|
|
||||||
WScript.Echo("Will return empty array");
|
|
||||||
return resultArray;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function trim(str) {
|
|
||||||
return str.replace(/^\s+/, '').replace(/\s+$/, '');
|
|
||||||
}
|
|
||||||
|
|
||||||
function main() {
|
|
||||||
parseArgs();
|
|
||||||
request(url);
|
|
||||||
}
|
|
||||||
main();
|
|
@ -870,7 +870,7 @@ rs_jsonapi {
|
|||||||
genrestbedheader.name = Generating restbed header.
|
genrestbedheader.name = Generating restbed header.
|
||||||
genrestbedheader.input = genrestbedlib.output
|
genrestbedheader.input = genrestbedlib.output
|
||||||
genrestbedheader.output = $${RESTBED_HEADER_FILE}
|
genrestbedheader.output = $${RESTBED_HEADER_FILE}
|
||||||
genrestbedheader.CONFIG += target_predeps combine no_link
|
genrestbedheader.CONFIG += target_predeps no_link
|
||||||
genrestbedheader.variable_out = HEADERS
|
genrestbedheader.variable_out = HEADERS
|
||||||
genrestbedheader.commands = cd $${RESTBED_BUILD_PATH} && $(MAKE) install
|
genrestbedheader.commands = cd $${RESTBED_BUILD_PATH} && $(MAKE) install
|
||||||
QMAKE_EXTRA_COMPILERS += genrestbedheader
|
QMAKE_EXTRA_COMPILERS += genrestbedheader
|
||||||
|
@ -1157,7 +1157,7 @@ void RshareSettings::setWebinterfaceEnabled(bool enabled)
|
|||||||
QString RshareSettings::getWebinterfaceFilesDirectory()
|
QString RshareSettings::getWebinterfaceFilesDirectory()
|
||||||
{
|
{
|
||||||
#ifdef WINDOWS_SYS
|
#ifdef WINDOWS_SYS
|
||||||
return valueFromGroup("Webinterface","directory","data/webui/").toString();
|
return valueFromGroup("Webinterface","directory","./webui/").toString();
|
||||||
#else
|
#else
|
||||||
return valueFromGroup("Webinterface","directory","/usr/share/retroshare/webui/").toString();
|
return valueFromGroup("Webinterface","directory","/usr/share/retroshare/webui/").toString();
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user