diff --git a/build_scripts/Windows-msys2/.gitignore b/build_scripts/Windows-msys2/.gitignore
new file mode 100644
index 000000000..a7b500b79
--- /dev/null
+++ b/build_scripts/Windows-msys2/.gitignore
@@ -0,0 +1 @@
+/build/env-mod.bat
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/build-tor.bat b/build_scripts/Windows-msys2/build-tor.bat
index 2f81e098c..aa2b4ea06 100644
--- a/build_scripts/Windows-msys2/build-tor.bat
+++ b/build_scripts/Windows-msys2/build-tor.bat
@@ -9,11 +9,11 @@ call "%EnvPath%\env.bat"
if errorlevel 1 goto error_env
%cecho% info "Build %SourceName%"
-call "%~dp0build\build.bat" 32 release tor autologin plugins
+call "%~dp0build\build.bat" 64 release tor autologin "CONFIG+=rs_use_native_dialogs"
if errorlevel 1 %cecho% error "Failed to build %SourceName%." & exit /B %ERRORLEVEL%
%cecho% info "Pack %SourceName%"
-call "%~dp0build\pack.bat" 32 release tor
+call "%~dp0build\pack.bat" 64 release tor autologin "CONFIG+=rs_use_native_dialogs"
if errorlevel 1 %cecho% error "Failed to pack %SourceName%." & exit /B %ERRORLEVEL%
exit /B 0
diff --git a/build_scripts/Windows-msys2/build.bat b/build_scripts/Windows-msys2/build.bat
index 42c4b557d..529a1350f 100644
--- a/build_scripts/Windows-msys2/build.bat
+++ b/build_scripts/Windows-msys2/build.bat
@@ -9,11 +9,11 @@ call "%EnvPath%\env.bat"
if errorlevel 1 goto error_env
%cecho% info "Build %SourceName%"
-call "%~dp0build\build.bat" 32 release autologin plugins
+call "%~dp0build\build.bat" 64 release autologin "CONFIG+=rs_use_native_dialogs"
if errorlevel 1 %cecho% error "Failed to build %SourceName%." & exit /B %ERRORLEVEL%
%cecho% info "Pack %SourceName%"
-call "%~dp0build\pack.bat" 32 release
+call "%~dp0build\pack.bat" 64 release autologin "CONFIG+=rs_use_native_dialogs"
if errorlevel 1 %cecho% error "Failed to pack %SourceName%." & exit /B %ERRORLEVEL%
exit /B 0
diff --git a/build_scripts/Windows-msys2/build/build-installer.bat b/build_scripts/Windows-msys2/build/build-installer.bat
new file mode 100644
index 000000000..192b2d025
--- /dev/null
+++ b/build_scripts/Windows-msys2/build/build-installer.bat
@@ -0,0 +1,67 @@
+@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-msys2.bat"
+if errorlevel 1 goto error_env
+
+:: Initialize environment
+call "%~dp0env.bat" %*
+if errorlevel 2 exit /B 2
+if errorlevel 1 goto error_env
+
+if not "%ParamNoupdate%"=="1" (
+ :: Install NSIS
+ %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-nsis"
+)
+
+:: Check deployment
+if not exist "%RsDeployPath%\retroshare.exe" echo Project is not deployed. Run pack.bat first! & goto error
+
+:: Get compiled revision
+set GetRsVersion=%SourcePath%\build_scripts\Windows-msys2\tools\get-rs-version.bat
+if not exist "%GetRsVersion%" (
+ %cecho% error "File not found"
+ echo %GetRsVersion%
+ goto error
+)
+
+:: Get compiled version
+call "%GetRsVersion%" "%RsDeployPath%\retroshare.exe" RsVersion
+if errorlevel 1 %cecho% error "Revision not found."& goto error
+if "%RsVersion.Extra%"=="" %cecho% error "Extra number not found".& goto error
+
+:: Build defines for script
+set NSIS_PARAM=
+
+set NSIS_PARAM=%NSIS_PARAM% /DDEPLOYDIR="%RsDeployPath%"
+set NSIS_PARAM=%NSIS_PARAM% /DOUTDIR="%RsPackPath%"
+set NSIS_PARAM=%NSIS_PARAM% /DINSTALLERADD="%RsArchiveAdd%"
+set NSIS_PARAM=%NSIS_PARAM% /DARCHITECTURE="%RsArchitecture%"
+set NSIS_PARAM=%NSIS_PARAM% /DREVISION=%RsVersion.Extra%
+
+set QtMainVersion=%QtVersion:~0,1%
+
+:: Create installer
+echo %path%
+rem makensis %NSIS_PARAM% "%SourcePath%\build_scripts\Windows-msys2\installer\retroshare-Qt%QtMainVersion%.nsi"
+rem pushd "%SourcePath%\build_scripts\Windows-msys2\installer"
+rem %EnvMSYS2Cmd% "makensis $0 retroshare-Qt%QtMainVersion%.nsi" "%NSIS_PARAM%"
+rem popd
+"%RsMinGWPath%\bin\makensis" %NSIS_PARAM% "%SourcePath%\build_scripts\Windows-msys2\installer\retroshare-Qt%QtMainVersion%.nsi"
+
+exit /B %ERRORLEVEL%
+
+:error
+endlocal
+exit /B 1
+
+:error_env
+echo Failed to initialize environment.
+endlocal
+exit /B 1
diff --git a/build_scripts/Windows-msys2/build/build-webui.bat b/build_scripts/Windows-msys2/build/build-webui.bat
index d561235c1..d226a9604 100644
--- a/build_scripts/Windows-msys2/build/build-webui.bat
+++ b/build_scripts/Windows-msys2/build/build-webui.bat
@@ -7,8 +7,6 @@ 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
diff --git a/build_scripts/Windows-msys2/build/build.bat b/build_scripts/Windows-msys2/build/build.bat
index 8ca2f6f1f..4d366f28c 100644
--- a/build_scripts/Windows-msys2/build/build.bat
+++ b/build_scripts/Windows-msys2/build/build.bat
@@ -7,8 +7,6 @@ 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
@@ -17,11 +15,22 @@ call "%~dp0env-base.bat" %*
if errorlevel 2 exit /B 2
if errorlevel 1 goto error_env
-:: 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%-xapian-core mingw-w64-%RsMSYS2Architecture%-cmake mingw-w64-%RsMSYS2Architecture%-rapidjson"
+if not "%ParamNoupdate%"=="1" (
+ :: 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%-cmake mingw-w64-%RsMSYS2Architecture%-rapidjson"
-:: 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"
+ :: Webui
+ if "%ParamWebui%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-doxygen"
+
+ :: 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"
+
+ :: Clang
+ if "%ParamClang%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-clang"
+
+ :: Indexing
+ if "%ParamIndexing%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-xapian-core mingw-w64-%RsMSYS2Architecture%-libvorbis mingw-w64-%RsMSYS2Architecture%-flac mingw-w64-%RsMSYS2Architecture%-taglib"
+)
:: Initialize environment
call "%~dp0env.bat" %*
@@ -57,10 +66,15 @@ echo %RS_QMAKE_CONFIG% > buildinfo.txt
echo %RsBuildConfig% >> buildinfo.txt
echo %RsArchitecture% >> buildinfo.txt
echo Qt %QtVersion% >> buildinfo.txt
+echo %RsCompiler% >> buildinfo.txt
call "%ToolsPath%\msys2-path.bat" "%SourcePath%" MSYS2SourcePath
call "%ToolsPath%\msys2-path.bat" "%EnvMSYS2Path%" MSYS2EnvMSYS2Path
-%EnvMSYS2Cmd% "qmake "%MSYS2SourcePath%/RetroShare.pro" -r -spec win32-g++ %RS_QMAKE_CONFIG%"
+if "%ParamClang%"=="1" (
+ %EnvMSYS2Cmd% "qmake "%MSYS2SourcePath%/RetroShare.pro" -r -spec win32-clang-g++ %RS_QMAKE_CONFIG%"
+) else (
+ %EnvMSYS2Cmd% "qmake "%MSYS2SourcePath%/RetroShare.pro" -r -spec win32-g++ %RS_QMAKE_CONFIG%"
+)
if errorlevel 1 goto error
echo.
@@ -69,7 +83,8 @@ echo.
title Build - %SourceName%-%RsBuildConfig% [make]
-%EnvMSYS2Cmd% "make -j %NUMBER_OF_PROCESSORS%"
+%EnvMSYS2Cmd% "make -j %CoreCount%"
+if errorlevel 1 goto error
:: Webui
if "%ParamWebui%"=="1" (
diff --git a/build_scripts/Windows-msys2/build/env-base.bat b/build_scripts/Windows-msys2/build/env-base.bat
index 8f80e8681..9d9fa5379 100644
--- a/build_scripts/Windows-msys2/build/env-base.bat
+++ b/build_scripts/Windows-msys2/build/env-base.bat
@@ -7,6 +7,10 @@ set ParamAutologin=0
set ParamPlugins=0
set ParamTor=0
set ParamWebui=0
+set ParamClang=0
+set ParamIndexing=0
+set ParamNoupdate=0
+set CoreCount=%NUMBER_OF_PROCESSORS%
set RS_QMAKE_CONFIG=
:parameter_loop
@@ -28,6 +32,14 @@ if "%~1" NEQ "" (
set ParamTor=1
) else if "%%~a"=="webui" (
set ParamWebui=1
+ ) else if "%%~a"=="singlethread" (
+ set CoreCount=1
+ ) else if "%%~a"=="clang" (
+ set ParamClang=1
+ ) else if "%%~a"=="indexing" (
+ set ParamIndexing=1
+ ) else if "%%~a"=="noupdate" (
+ set ParamNoupdate=1
) else if "%%~a"=="CONFIG+" (
set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% %1
) else (
@@ -58,6 +70,12 @@ if "%Param64%"=="1" (
set RsMSYS2Architecture=x86_64
)
+if "%ParamClang%"=="1" (
+ set RsCompiler=Clang
+) else (
+ set RsCompiler=GCC
+)
+
if "%RsBit%"=="" goto :usage
if "%ParamRelease%"=="1" (
@@ -82,11 +100,15 @@ if "%ParamWebui%"=="1" (
set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_jsonapi" "CONFIG+=rs_webui"
)
+if "%ParamIndexing%"=="1" (
+ set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_deep_channels_index" "CONFIG+=rs_deep_files_index" "CONFIG+=rs_deep_files_index_ogg" "CONFIG+=rs_deep_files_index_flac" "CONFIG+=rs_deep_files_index_taglib"
+)
+
exit /B 0
:usage
echo.
-echo Usage: 32^|64 release^|debug [version autologin plugins webui]
+echo Usage: 32^|64 release^|debug [autologin plugins webui singlethread clang indexing noupdate] ["CONFIG+=..."]
echo.
echo Mandatory parameter
echo 32^|64 32-bit or 64-bit Version
@@ -96,6 +118,11 @@ echo Optional parameter (need clean when changed)
echo autologin Build with autologin
echo plugins Build plugins
echo webui Enable JsonAPI and pack webui files
+echo singlethread Use only 1 thread for building
+echo clang Use clang compiler instead of GCC
+echo indexing Build with deep channel and file indexing support
+echo noupdate Skip updating the libraries
+echo "CONFIG+=..." Enable some extra features, you can find the almost complete list in retroshare.pri
echo.
echo Parameter for pack
echo tor Pack tor version
diff --git a/build_scripts/Windows-msys2/build/env.bat b/build_scripts/Windows-msys2/build/env.bat
index 8443d6218..bfe2afeba 100644
--- a/build_scripts/Windows-msys2/build/env.bat
+++ b/build_scripts/Windows-msys2/build/env.bat
@@ -16,8 +16,8 @@ if "%QtVersion%"=="" %cecho% error "Cannot get Qt version." & exit /B 1
set RsMinGWPath=%EnvMSYS2BasePath%\mingw%RsBit%
-set RsBuildPath=%BuildPath%\Qt-%QtVersion%-%RsArchitecture%-%RsBuildConfig%
-set RsDeployPath=%DeployPath%\Qt-%QtVersion%%RsType%-%RsArchitecture%-%RsBuildConfig%
+set RsBuildPath=%BuildPath%\Qt-%QtVersion%-%RsArchitecture%-%RsCompiler%-%RsBuildConfig%
+set RsDeployPath=%DeployPath%\Qt-%QtVersion%%RsType%-%RsArchitecture%-%RsCompiler%-%RsBuildConfig%
set RsPackPath=%DeployPath%
set RsArchiveAdd=
set RsWebuiPath=%RootPath%\%SourceName%-webui
diff --git a/build_scripts/Windows-msys2/build/git-log.bat b/build_scripts/Windows-msys2/build/git-log.bat
index 010ff190b..f221bc871 100644
--- a/build_scripts/Windows-msys2/build/git-log.bat
+++ b/build_scripts/Windows-msys2/build/git-log.bat
@@ -1,118 +1,43 @@
@echo off
+setlocal enabledelayedexpansion
-setlocal
-
-set NoAsk=
-if "%~2"=="no-ask" set NoAsk=1
-
-:: 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-msys2.bat"
-if errorlevel 1 goto error_env
-
-call "%~dp0env.bat" %*
-if errorlevel 2 exit /B 2
-if errorlevel 1 goto error_env
-
-:: Check git executable
-set GitPath=
-call "%ToolsPath%\find-in-path.bat" GitPath git.exe
-if "%GitPath%"=="" echo Git executable not found in PATH.& exit /B 1
-
-:: Get compiled revision
-set GetRsVersion=%SourcePath%\build_scripts\Windows-msys2\tools\get-rs-version.bat
-if not exist "%GetRsVersion%" (
- echo File not found
- echo %GetRsVersion%
+if "%~2"=="" (
+ echo.
+ echo Parameter error.
+ echo Usage git-log sourcepath outputfile
exit /B 1
)
-call "%GetRsVersion%" RS_REVISION_STRING RsRevision
-if "%RsRevision%"=="" echo Revision not found.& exit /B 1
+set logfile=%~2
+copy nul %logfile% > nul
-:: Get compiled version
-call "%GetRsVersion%" RS_REVISION_STRING RsRevision
-if "%RsRevision%"=="" echo Revision not found.& exit /B 1
+pushd %~1
-call "%GetRsVersion%" RS_MAJOR_VERSION RsMajorVersion
-if "%RsMajorVersion%"=="" echo Major version not found.& exit /B 1
-
-call "%GetRsVersion%" RS_MINOR_VERSION RsMinorVersion
-if "%RsMinorVersion%"=="" echo Minor version not found.& exit /B 1
-
-call "%GetRsVersion%" RS_BUILD_NUMBER RsBuildNumber
-if "%RsBuildNumber%"=="" echo Build number not found.& exit /B 1
-
-call "%GetRsVersion%" RS_BUILD_NUMBER_ADD RsBuildNumberAdd
-
-set RsVersion=%RsMajorVersion%.%RsMinorVersion%.%RsBuildNumber%%RsBuildNumberAdd%
-
-:: Check WMIC is available
-wmic.exe alias /? >nul 2>&1 || echo WMIC is not available.&& exit /B 1
-
-:: Use WMIC to retrieve date in format YYYYMMDD
-set RsDate=
-for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set RsDate=%%I
-set RsDate=%RsDate:~0,4%%RsDate:~4,2%%RsDate:~6,2%
-
-:: Get last revision
-set RsLastRefFile=%BuildPath%\Qt-%QtVersion%%RsType%-%RsBuildConfig%-LastRef.txt
-set RsLastRef=
-if exist "%RsLastRefFile%" set /P RsLastRef=<"%RsLastRefFile%"
-
-if "%NoAsk%"=="1" goto no_ask_for_last_revision
-if not "%RsLastRef%"=="" echo Last Revision was %RsLastRef%
-set /P RsLastRefInput=Last Revision:
-if "%RsLastRefInput%" NEQ "" set RsLastRef=%RsLastRefInput%
-:no_ask_for_last_revision
-
-:: Get current revision
-pushd "%SourcePath%"
-call "%ToolsPath%\get-git-ref.bat" RsRef
-popd
-
-if errorlevel 1 exit /B 1
-if "%RsRef%"=="" echo Cannot get git revision.& exit /B 1
-
-echo.
-echo Creating log from %RsLastRef%
-echo to %RsRef%
-
-if "%NoAsk%"=="1" goto no_confirm
-choice /M "Do you want to proceed?"
-if %errorlevel%==2 exit /B 1
-:no_confirm
-
-if "%RsBuildConfig%" NEQ "release" (
- set RsGitLog=%DeployPath%\RetroShare-%RsVersion%-Windows-Portable-%RsDate%-%RsRevision%-Qt-%QtVersion%%RsType%-msys2%RsArchiveAdd%-%RsBuildConfig%.txt
-) else (
- set RsGitLog=%DeployPath%\RetroShare-%RsVersion%-Windows-Portable-%RsDate%-%RsRevision%-Qt-%QtVersion%%RsType%-msys2%RsArchiveAdd%.txt
-)
-
-title %SourceName%-%RsBuildConfig% [git log]
-
-pushd "%SourcePath%"
-if "%RsLastRef%"=="" (
- git log %RsRef% >"%RsGitLog%"
-) else (
- if "%RsLastRef%"=="%RsRef%" (
- git log %RsRef% --max-count=1 >"%RsGitLog%"
+set last=HEAD
+for /f %%t in ('git tag --sort=-taggerdate --merged ^| findstr v') do (
+ echo generating changelog for !last!..%%t
+ echo ----------------------------------------------- >> %logfile%
+ if !last! neq HEAD (
+ git tag -n !last! >> %logfile%
) else (
- git log %RsLastRef%..%RsRef% >"%RsGitLog%"
+ echo HEAD >> %logfile%
)
+ rem echo !last! ---^> %%t >> %logfile%
+ echo ----------------------------------------------- >> %logfile%
+ echo. >> %logfile%
+ git log %%t..!last! --no-merges "--pretty=format:%%h %%ai %%<(10,trunc)%%an %%s" >> %logfile%
+ echo. >> %logfile%
+ echo. >> %logfile%
+ set last=%%t
)
+
+echo generating changelog for %last%
+echo ----------------------------------------------- >> %logfile%
+git tag -n %last% >> %logfile%
+echo ----------------------------------------------- >> %logfile%
+echo. >> %logfile%
+git log %last% --no-merges "--pretty=format:%%h %%ai %%<(10,trunc)%%an %%s" >> %logfile%
+
popd
-title %COMSPEC%
-
-echo %RsRef%>"%RsLastRefFile%"
-
-exit /B %ERRORLEVEL%
-
-:error_env
-echo Failed to initialize environment.
-endlocal
-exit /B 1
+endlocal enabledelayedexpansion
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/build/pack.bat b/build_scripts/Windows-msys2/build/pack.bat
index e759b7980..4c12ed7c0 100644
--- a/build_scripts/Windows-msys2/build/pack.bat
+++ b/build_scripts/Windows-msys2/build/pack.bat
@@ -17,8 +17,15 @@ call "%~dp0env.bat" %*
if errorlevel 2 exit /B 2
if errorlevel 1 goto error_env
-:: Install ntldd
-%EnvMSYS2Cmd% "pacman --noconfirm --needed -S make git mingw-w64-%RsMSYS2Architecture%-ntldd-git"
+if not "%ParamNoupdate%"=="1" (
+ :: Install ntldd
+ %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-ntldd-git"
+
+ :: Install tor
+ if "%ParamTor%"=="1" (
+ %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-tor"
+ )
+)
:: Remove deploy path
if exist "%RsDeployPath%" rmdir /S /Q "%RsDeployPath%"
@@ -53,14 +60,6 @@ set RsDate=
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set RsDate=%%I
set RsDate=%RsDate:~0,4%%RsDate:~4,2%%RsDate:~6,2%
-if "%ParamTor%"=="1" (
- :: Check for tor executable
- if not exist "%EnvDownloadPath%\tor\Tor\tor.exe" (
- %cecho% error "Tor binary not found. Please download Tor Expert Bundle from\nhttps://www.torproject.org/download/download.html.en\nand unpack to\n%EnvDownloadPath:\=\\%\\tor"
- goto error
- )
-)
-
set QtMainVersion=%QtVersion:~0,1%
set QtSharePath=%RsMinGWPath%\share\qt%QtMainVersion%\
@@ -72,9 +71,9 @@ if "%QtMainVersion%"=="4" set QtMainVersion2=4
if "%QtMainVersion%"=="5" set QtMainVersion1=5
if "%RsBuildConfig%" NEQ "release" (
- set Archive=%RsPackPath%\RetroShare-%RsVersion%-Windows-Portable-%RsDate%-%RsVersion.Extra%-Qt-%QtVersion%-msys2%RsType%%RsArchiveAdd%-%RsBuildConfig%.7z
+ set Archive=%RsPackPath%\RetroShare-%RsVersion%-Windows-Portable-%RsDate%-%RsVersion.Extra%-%RsArchitecture%-msys2%RsType%%RsArchiveAdd%-%RsBuildConfig%.7z
) else (
- set Archive=%RsPackPath%\RetroShare-%RsVersion%-Windows-Portable-%RsDate%-%RsVersion.Extra%-Qt-%QtVersion%-msys2%RsType%%RsArchiveAdd%.7z
+ set Archive=%RsPackPath%\RetroShare-%RsVersion%-Windows-Portable-%RsDate%-%RsVersion.Extra%-%RsArchitecture%-msys2%RsType%%RsArchiveAdd%.7z
)
if exist "%Archive%" del /Q "%Archive%"
@@ -96,6 +95,7 @@ mkdir "%RsDeployPath%\qss"
mkdir "%RsDeployPath%\stylesheets"
mkdir "%RsDeployPath%\sounds"
mkdir "%RsDeployPath%\translations"
+mkdir "%RsDeployPath%\license"
copy nul "%RsDeployPath%\portable" %Quite%
@@ -121,7 +121,7 @@ if "%QtMainVersion%"=="5" (
)
if exist "%QtSharePath%\plugins\styles\qwindowsvistastyle.dll" (
- echo Copy styles
+ echo copy styles
mkdir "%RsDeployPath%\styles" %Quite%
copy "%QtSharePath%\plugins\styles\qwindowsvistastyle.dll" "%RsDeployPath%\styles" %Quite%
)
@@ -129,6 +129,12 @@ if exist "%QtSharePath%\plugins\styles\qwindowsvistastyle.dll" (
copy "%QtSharePath%\plugins\imageformats\*.dll" "%RsDeployPath%\imageformats" %Quite%
del /Q "%RsDeployPath%\imageformats\*d?.dll" %Quite%
+if "%ParamTor%"=="1" (
+ echo copy tor
+ copy "%RsMinGWPath%\bin\tor.exe" "%RsDeployPath%" %Quite%
+ copy "%RsMinGWPath%\bin\tor-gencert.exe" "%RsDeployPath%" %Quite%
+)
+
echo copy dependencies
for /R "%RsDeployPath%" %%D in (*.dll, *.exe) do (
call :copy_dependencies "%%D" "%RsDeployPath%"
@@ -146,6 +152,9 @@ rmdir /S /Q "%RsDeployPath%\stylesheets\__MACOSX__Bubble" %Quite%
echo copy sounds
xcopy /S "%SourcePath%\retroshare-gui\src\sounds" "%RsDeployPath%\sounds" %Quite%
+echo copy license
+xcopy /S "%SourcePath%\retroshare-gui\src\license" "%RsDeployPath%\license" %Quite%
+
echo copy translation
copy "%SourcePath%\retroshare-gui\src\translations\qt_tr.qm" "%RsDeployPath%\translations" %Quite%
copy "%QtSharePath%\translations\qt_*.qm" "%RsDeployPath%\translations" %Quite%
@@ -160,8 +169,8 @@ if "%QtMainVersion%"=="5" (
echo copy bdboot.txt
copy "%SourcePath%\libbitdht\src\bitdht\bdboot.txt" "%RsDeployPath%" %Quite%
-echo copy changelog.txt
-copy "%SourcePath%\retroshare-gui\src\changelog.txt" "%RsDeployPath%" %Quite%
+echo generate changelog.txt
+call call "%~dp0\git-log.bat" "%SourcePath%" "%RsDeployPath%\changelog.txt"
echo copy buildinfo.txt
copy "%RsBuildPath%\buildinfo.txt" "%RsDeployPath%" %Quite%
@@ -177,11 +186,6 @@ if "%ParamWebui%"=="1" (
)
)
-if "%ParamTor%"=="1" (
- echo copy tor
- echo n | copy /-y "%EnvDownloadPath%\tor\Tor\*.*" "%RsDeployPath%" %Quite%
-)
-
rem pack files
title Pack - %SourceName%%RsType%-%RsBuildConfig% [pack files]
diff --git a/build_scripts/Windows-msys2/installer/HeaderImage.bmp b/build_scripts/Windows-msys2/installer/HeaderImage.bmp
new file mode 100644
index 000000000..5c55265cd
Binary files /dev/null and b/build_scripts/Windows-msys2/installer/HeaderImage.bmp differ
diff --git a/build_scripts/Windows-msys2/installer/HeaderImageEmpty.bmp b/build_scripts/Windows-msys2/installer/HeaderImageEmpty.bmp
new file mode 100644
index 000000000..f0f0f1b32
Binary files /dev/null and b/build_scripts/Windows-msys2/installer/HeaderImageEmpty.bmp differ
diff --git a/build_scripts/Windows-msys2/installer/ifexist.nsh b/build_scripts/Windows-msys2/installer/ifexist.nsh
new file mode 100644
index 000000000..3f391c898
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/ifexist.nsh
@@ -0,0 +1,15 @@
+; See http://nsis.sourceforge.net/Check_if_a_file_exists_at_compile_time for documentation
+!macro !defineifexist _VAR_NAME _FILE_NAME
+ !tempfile _TEMPFILE
+ !ifdef NSIS_WIN32_MAKENSIS
+ ; Windows - cmd.exe
+ !system 'if exist "${_FILE_NAME}" echo !define ${_VAR_NAME} > "${_TEMPFILE}"'
+ !else
+ ; Posix - sh
+ !system 'if [ -e "${_FILE_NAME}" ]; then echo "!define ${_VAR_NAME}" > "${_TEMPFILE}"; fi'
+ !endif
+ !include '${_TEMPFILE}'
+ !delfile '${_TEMPFILE}'
+ !undef _TEMPFILE
+!macroend
+!define !defineifexist "!insertmacro !defineifexist"
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ca_ES.nsh b/build_scripts/Windows-msys2/installer/lang/ca_ES.nsh
new file mode 100644
index 000000000..acb11b5a4
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ca_ES.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Instal·la ${APPNAME} i els components necessaris."
+!insertmacro LANG_STRING Section_Data "Pells"
+!insertmacro LANG_STRING Section_Data_Desc "Instal·la pells."
+!insertmacro LANG_STRING Section_Shortcuts "Icones d'accés directe"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Afegir icones d'accés directe."
+!insertmacro LANG_STRING Section_StartMenu "Icona del menú d'inici"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Afegir icona en el menú d'inici"
+!insertmacro LANG_STRING Section_Desktop "Icona d'escriptori"
+!insertmacro LANG_STRING Section_Desktop_Desc "Afegir icona a l'escriptori"
+!insertmacro LANG_STRING Section_QuickLaunch "Icona de la barra ràpida d'accés"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Afegir icona a la barra ràpida d'accés"
+!insertmacro LANG_STRING Section_Plugins "Complements opcionals"
+!insertmacro LANG_STRING Section_Plugins_Desc "Components opcionals per afegir funcionalitat."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "LectorFonts"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Instal·lar complement LectorFonts."
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "NúvolEnllaços"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Instal·lar complement NúvolEnllaços."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VeuIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Instal·lar complement VeuIP."
+!insertmacro LANG_STRING Section_AutoStart "Posada en marxa automàtica"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Autoengegar al arrencar."
+!insertmacro LANG_STRING Page_InstallMode "Mode instal·lació"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Escull com vols instal·lar ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "Instal·lació e&stàndard"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Instal·la ${APPNAME} per la sessió d'usuari actual."
+!insertmacro LANG_STRING Page_InstallMode_Portable "Instal·lació &portable."
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "En mode portable les dades de configuració s'emmagatzemen a la carpeta d'aplicació i no s'escriu informació al registre del sistema."
+!insertmacro LANG_STRING Link_Uninstall "Desinstal·lar."
diff --git a/build_scripts/Windows-msys2/installer/lang/de.nsh b/build_scripts/Windows-msys2/installer/lang/de.nsh
new file mode 100644
index 000000000..c5323f523
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/de.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Installiert ${APPNAME} und die benötigten Komponenten."
+!insertmacro LANG_STRING Section_Data "Skins"
+!insertmacro LANG_STRING Section_Data_Desc "Skins installieren."
+!insertmacro LANG_STRING Section_Shortcuts "Verknüpfungssymbole"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Verküpfungssymbole hinzufügen."
+!insertmacro LANG_STRING Section_StartMenu "Startmenüsymbol"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Fügt Symbol zum Startmenü hinzu."
+!insertmacro LANG_STRING Section_Desktop "Desktopsymbol"
+!insertmacro LANG_STRING Section_Desktop_Desc "Fügt Symbol zum Desktop hinzu."
+!insertmacro LANG_STRING Section_QuickLaunch "Schnellstartsymbol"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Fügt Symbol zur Schnellstartleiste hinzu."
+!insertmacro LANG_STRING Section_Plugins "Optionale Plug-ins"
+!insertmacro LANG_STRING Section_Plugins_Desc "Optionale Plug-ins zum Erweitern der Funktionalität."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Installiert das Plug-in Feedreader."
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "Verknüpfungswolke"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Installiert das Plug-in Verknüpfungswolke."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Installiert das Plug-in VOIP"
+!insertmacro LANG_STRING Section_AutoStart "Automatischer Programmstart"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Beim Start automatisch ausführen."
+!insertmacro LANG_STRING Page_InstallMode "Installationsmodus"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Wähle wie du ${APPNAME} installieren willst."
+!insertmacro LANG_STRING Page_InstallMode_Standard "&Standardinstallation"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Installiere ${APPNAME} für den derzeitigen Benutzer dieses Geräts."
+!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable Installation"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "Im portablen Modus werden alle Konfigurationsdaten im Verzeichnis der Anwendung gespeichert und keine Informationen in der Registry abgelegt."
+!insertmacro LANG_STRING Link_Uninstall "Deinstallieren"
diff --git a/build_scripts/Windows-msys2/installer/lang/en.nsh b/build_scripts/Windows-msys2/installer/lang/en.nsh
new file mode 100644
index 000000000..a1bbc783c
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/en.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Installs ${APPNAME} and required components."
+!insertmacro LANG_STRING Section_Data "Skins"
+!insertmacro LANG_STRING Section_Data_Desc "Installs skins."
+!insertmacro LANG_STRING Section_Shortcuts "Shortcut icons"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Adds shortcut icons."
+!insertmacro LANG_STRING Section_StartMenu "Start Menu icon"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Adds icon to start menu."
+!insertmacro LANG_STRING Section_Desktop "Desktop icon"
+!insertmacro LANG_STRING Section_Desktop_Desc "Adds icon to desktop."
+!insertmacro LANG_STRING Section_QuickLaunch "Quick Launch icon"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Adds icon to Quick Launch toolbar."
+!insertmacro LANG_STRING Section_Plugins "Optional plugins"
+!insertmacro LANG_STRING Section_Plugins_Desc "Optional plugins to extend functionality."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Installs plugin FeedReader."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Installs plugin VOIP."
+;!insertmacro LANG_STRING Section_Link "File Association"
+;!insertmacro LANG_STRING Section_Link_Desc "Associate ${APPNAME} with .pqi file extension."
+!insertmacro LANG_STRING Section_AutoStart "Auto Startup"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Auto-Run at startup."
+!insertmacro LANG_STRING Page_InstallMode "Installation Mode"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Choose how you want to install ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "&Standard installation"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Install ${APPNAME} for the current user of this machine."
+!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable installation"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "In portable mode all configuration data is stored in the application folder and no information is written to the registry."
+!insertmacro LANG_STRING Link_Uninstall "Uninstall"
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/es.nsh b/build_scripts/Windows-msys2/installer/lang/es.nsh
new file mode 100644
index 000000000..68900ec62
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/es.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Instala ${APPNAME} y los componentes requeridos."
+!insertmacro LANG_STRING Section_Data "Coberturas (skins)"
+!insertmacro LANG_STRING Section_Data_Desc "Instalar coberturas"
+!insertmacro LANG_STRING Section_Shortcuts "Iconos de accesos directos"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Añade iconos de accesos directos."
+!insertmacro LANG_STRING Section_StartMenu "Icono de menú de inicio"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Añade icono al menú de inicio."
+!insertmacro LANG_STRING Section_Desktop "Icono del escritorio"
+!insertmacro LANG_STRING Section_Desktop_Desc "Añade icono al escritorio"
+!insertmacro LANG_STRING Section_QuickLaunch "Icono de inicio rápido"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Añade icono a la Barra de Inicio Rápido"
+!insertmacro LANG_STRING Section_Plugins "Complementos opcionales"
+!insertmacro LANG_STRING Section_Plugins_Desc "Complementos opcionales para expandir la funcionalidad."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Instala el complemento FeedReader."
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Instala el complemento LinksCloud."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Instala el complemento VOIP"
+!insertmacro LANG_STRING Section_AutoStart "Auto iniciar"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Auto-ejecutar al incio."
+!insertmacro LANG_STRING Page_InstallMode "Modo de instalación"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Elija cómo quiere instalar ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "Instalación &Estándar"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Instalar ${APPNAME} para el usuario actual de esta máquina."
+!insertmacro LANG_STRING Page_InstallMode_Portable "Instalación &Portable"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "En modo portable, todos los datos de configuración se almacenan en la carpeta de la aplicación y no se escribe ninguna información en el registro."
+!insertmacro LANG_STRING Link_Uninstall "Desinstalar"
diff --git a/build_scripts/Windows-msys2/installer/lang/fr.nsh b/build_scripts/Windows-msys2/installer/lang/fr.nsh
new file mode 100644
index 000000000..d4c797833
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/fr.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Installe ${APPNAME} et les composants requis."
+!insertmacro LANG_STRING Section_Data "Habillages"
+!insertmacro LANG_STRING Section_Data_Desc "Installe des habillages."
+!insertmacro LANG_STRING Section_Shortcuts "Icônes de raccourci"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Ajoute les icônes de raccourci."
+!insertmacro LANG_STRING Section_StartMenu "Icône de menu démarrage"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Ajoute l'icône au menu démarrer."
+!insertmacro LANG_STRING Section_Desktop "Icônes de bureau"
+!insertmacro LANG_STRING Section_Desktop_Desc "Ajoute l'icône sur le bureau."
+!insertmacro LANG_STRING Section_QuickLaunch "Icône de lancement rapide"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Ajoute une icône à la barre d'outils de lancement rapide."
+!insertmacro LANG_STRING Section_Plugins "Plug-ins optionnels"
+!insertmacro LANG_STRING Section_Plugins_Desc "Plug-ins optionnels destinés à étendre les fonctionnalités."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Installe le plug-in FeedReader."
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Installe le plug-in LinksCloud."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Installe le plug-in VOIP."
+!insertmacro LANG_STRING Section_AutoStart "Démarrage automatique"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Démarrage automatique au démarrage."
+!insertmacro LANG_STRING Page_InstallMode "Mode d'installation"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Choisissez comment vous voulez installer ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "&Installation standard"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Installer ${APPNAME} pour l'utilisateur actuel de cette machine."
+!insertmacro LANG_STRING Page_InstallMode_Portable "&Installation portable"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "En mode portable toutes les données de configuration sont stockées dans le dossier de l'application et aucune information n'est écrite dans la base de registre."
+!insertmacro LANG_STRING Link_Uninstall "Désinstaller"
diff --git a/build_scripts/Windows-msys2/installer/lang/pl.nsh b/build_scripts/Windows-msys2/installer/lang/pl.nsh
new file mode 100644
index 000000000..9f6d4305e
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/pl.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Instaluje ${APPNAME} oraz wymagane komponenty."
+!insertmacro LANG_STRING Section_Data "Skórki"
+!insertmacro LANG_STRING Section_Data_Desc "Instaluje skórki."
+!insertmacro LANG_STRING Section_Shortcuts "Ikony skrótów"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Dodaje skróty ikon."
+!insertmacro LANG_STRING Section_StartMenu "Start Menu icon"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Dodaje ikonę do menu start."
+!insertmacro LANG_STRING Section_Desktop "Ikona na pulpicie"
+!insertmacro LANG_STRING Section_Desktop_Desc "Dodawanie ikony na pulpicie"
+!insertmacro LANG_STRING Section_QuickLaunch "Ikona szybkiego uruchamiania"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Dodaje ikonę do paska Szybkiego Uruchamiania."
+!insertmacro LANG_STRING Section_Plugins "Wtyczki opcjonalne"
+!insertmacro LANG_STRING Section_Plugins_Desc "Wtyczki opcjonalne rozszerzające funkcjonalność."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Instaluje wtyczki FeedReader"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Instaluje wtyczki LinksCloud."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Instaluje wtyczki VOIP."
+!insertmacro LANG_STRING Section_AutoStart "Auto Startup"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Automatyczne uruchamianie przy starcie."
+!insertmacro LANG_STRING Page_InstallMode "Tryb instalacji"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Wybierz jak chcesz zainstalować ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "&Standardowa instalacja"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Zainstaluj ${APPNAME} dla bieżącego użytkownika tej maszyny."
+!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable installation"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "W trybie przenośnym wszystkie dane konfiguracyjne są przechowywane w folderze aplikacji i nie są zapisywane w rejestrze."
+!insertmacro LANG_STRING Link_Uninstall "Odinstaluj"
diff --git a/build_scripts/Windows-msys2/installer/lang/ru.nsh b/build_scripts/Windows-msys2/installer/lang/ru.nsh
new file mode 100644
index 000000000..09c578cb8
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ru.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Установка ${APPNAME} и необходимых компонентов."
+!insertmacro LANG_STRING Section_Data "Оболочки"
+!insertmacro LANG_STRING Section_Data_Desc "Установка оболочек."
+!insertmacro LANG_STRING Section_Shortcuts "Ярлыки"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Добавление ярлыков."
+!insertmacro LANG_STRING Section_StartMenu "Ярлык в меню Пуск"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Добавление ярлыка в меню Пуск."
+!insertmacro LANG_STRING Section_Desktop "Ярлык на рабочем столе"
+!insertmacro LANG_STRING Section_Desktop_Desc "Добавление ярлыка на рабочий стол."
+!insertmacro LANG_STRING Section_QuickLaunch "Ярлык в панели быстрого запуска"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Добавление ярлыка на панель быстрого запуска."
+!insertmacro LANG_STRING Section_Plugins "Дополнительные плагины"
+!insertmacro LANG_STRING Section_Plugins_Desc "Дополнительные плагины для расширения функциональности."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader – RSS-агрегатор"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Установка плагина FeedReader."
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud – Облако ссылок"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Установка плагина LinksCloud."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VoIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Установка плагина VoIP."
+!insertmacro LANG_STRING Section_AutoStart "Автозапуск"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Автозапуск при загрузке системы."
+!insertmacro LANG_STRING Page_InstallMode "Режим установки"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Выберите метод установки ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "Стандартная установка"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Установка ${APPNAME} для текущего пользователя компьютера."
+!insertmacro LANG_STRING Page_InstallMode_Portable "Портативная установка"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "В режиме портативной установки все конфигурационные файлы сохраняются в папку приложения и в системный реестр не записывается никакой информации."
+!insertmacro LANG_STRING Link_Uninstall "Удаление программы"
diff --git a/build_scripts/Windows-msys2/installer/lang/tr.nsh b/build_scripts/Windows-msys2/installer/lang/tr.nsh
new file mode 100644
index 000000000..f893ac076
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/tr.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "${APPNAME} ve gerekli bileşenleri kurar."
+!insertmacro LANG_STRING Section_Data "Temalar"
+!insertmacro LANG_STRING Section_Data_Desc "Tema yükleyin."
+!insertmacro LANG_STRING Section_Shortcuts "Kısayol simgeleri"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "Kısayol simgesi ekleyin."
+!insertmacro LANG_STRING Section_StartMenu "Başlat Menüsü simgesi"
+!insertmacro LANG_STRING Section_StartMenu_Desc "Başlat menüsüne simge ekleyin."
+!insertmacro LANG_STRING Section_Desktop "Masaüstü simgesi"
+!insertmacro LANG_STRING Section_Desktop_Desc "Masaüstüne simge ekleyin."
+!insertmacro LANG_STRING Section_QuickLaunch "Hızlı Başlat simgesi"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "Hızlı Başlat araç çubuğuna simge ekleyin."
+!insertmacro LANG_STRING Section_Plugins "İsteğe bağlı eklentiler"
+!insertmacro LANG_STRING Section_Plugins_Desc "İşlevselliği artırmak için isteğe bağlı eklentiler."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "AkışOkuyucu"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "AkışOkuyucu eklentisini yükleyin."
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "BağlantıBulutu"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "BağlantıBulutu eklentisini yükleyin."
+!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "VOIP eklentisini yükleyin."
+!insertmacro LANG_STRING Section_AutoStart "Otomatik Başlat"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Açılışta otomatik başlatın."
+!insertmacro LANG_STRING Page_InstallMode "Kurulum Yöntemi"
+!insertmacro LANG_STRING Page_InstallMode_Desc "${APPNAME} kurulum şeklini seçin"
+!insertmacro LANG_STRING Page_InstallMode_Standard "&Normal kurulum"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "${APPNAME} yalnızca şimdiki kullanıcı için kurulsun."
+!insertmacro LANG_STRING Page_InstallMode_Portable "&Taşınabilir kurulum"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "Taşınabilir kipte tüm ayarlar uygulama klasörüne depolanır ve kayıt defterine hiçbir bilgi yazılmaz."
+!insertmacro LANG_STRING Link_Uninstall "Kaldırın"
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/ca_ES.ts b/build_scripts/Windows-msys2/installer/lang/ts/ca_ES.ts
new file mode 100644
index 000000000..add40b909
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/ca_ES.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ Instal·la ${APPNAME} i els components necessaris.
+
+
+
+ Section_Data
+
+
+ Pells
+
+
+
+ Section_Data_Desc
+
+
+ Instal·la pells.
+
+
+
+ Section_Shortcuts
+
+
+ Icones d'accés directe
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Afegir icones d'accés directe.
+
+
+
+ Section_StartMenu
+
+
+ Icona del menú d'inici
+
+
+
+ Section_StartMenu_Desc
+
+
+ Afegir icona en el menú d'inici
+
+
+
+ Section_Desktop
+
+
+ Icona d'escriptori
+
+
+
+ Section_Desktop_Desc
+
+
+ Afegir icona a l'escriptori
+
+
+
+ Section_QuickLaunch
+
+
+ Icona de la barra ràpida d'accés
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Afegir icona a la barra ràpida d'accés
+
+
+
+ Section_Plugins
+
+
+ Complements opcionals
+
+
+
+ Section_Plugins_Desc
+
+
+ Components opcionals per afegir funcionalitat.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ LectorFonts
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ Instal·lar complement LectorFonts.
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ NúvolEnllaços
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ Instal·lar complement NúvolEnllaços.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VeuIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ Instal·lar complement VeuIP.
+
+
+
+ Section_AutoStart
+
+
+ Posada en marxa automàtica
+
+
+
+ Section_AutoStart_Desc
+
+
+ Autoengegar al arrencar.
+
+
+
+ Page_InstallMode
+
+
+ Mode instal·lació
+
+
+
+ Page_InstallMode_Desc
+
+
+ Escull com vols instal·lar ${APPNAME}.
+
+
+
+ Page_InstallMode_Standard
+
+
+ Instal·lació e&stàndard
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ Instal·la ${APPNAME} per la sessió d'usuari actual.
+
+
+
+ Page_InstallMode_Portable
+
+
+ Instal·lació &portable.
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ En mode portable les dades de configuració s'emmagatzemen a la carpeta d'aplicació i no s'escriu informació al registre del sistema.
+
+
+
+ Link_Uninstall
+
+
+ Desinstal·lar.
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/convert_from_ts.bat b/build_scripts/Windows-msys2/installer/lang/ts/convert_from_ts.bat
new file mode 100644
index 000000000..d514256e1
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/convert_from_ts.bat
@@ -0,0 +1,27 @@
+@echo off
+
+:: Very simple conversion from *.ts to *.nsh using xslt
+
+pushd "%~dp0"
+
+if "%1"=="" (
+ for %%F in (*.ts) do if "%%F" NEQ "en.ts" call :convert %%~nF
+ goto :exit
+)
+
+call :convert %1
+
+:exit
+popd
+
+goto :EOF
+
+:convert
+if not exist "%~1.ts" (
+ echo File "%~1.ts" not found.
+ goto :EOF
+)
+
+echo %~1
+
+"%~dp0xsltproc.exe" --output "%~dp0..\%~1.nsh" "%~dp0convert_from_ts.xsl" "%~1.ts"
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/convert_from_ts.xsl b/build_scripts/Windows-msys2/installer/lang/ts/convert_from_ts.xsl
new file mode 100644
index 000000000..a376fe691
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/convert_from_ts.xsl
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+ !insertmacro LANG_STRING
+
+ "
+
+
+
+
+ "
+
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/convert_to_ts.bat b/build_scripts/Windows-msys2/installer/lang/ts/convert_to_ts.bat
new file mode 100644
index 000000000..9235d6bab
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/convert_to_ts.bat
@@ -0,0 +1,50 @@
+@echo off
+
+:: Very simple conversion from *.nsh to *.ts
+
+setlocal
+
+set Language=en
+if "%1" NEQ "" set Language=%1
+
+set InputFile=%~dp0..\%Language%.nsh
+set OutputFile=%~dp0%Language%.ts
+
+if not exist "%InputFile%" (
+ echo File %InputFile% not found.
+ goto :exit
+)
+
+echo ^ >"%OutputFile%"
+echo ^ >>"%OutputFile%"
+echo ^ >>"%OutputFile%"
+
+for /F "tokens=1,2,3,*" %%A in (%InputFile%) do if "%%A"=="!insertmacro" call :context %%C %%D
+
+echo ^ >>"%OutputFile%"
+
+:exit
+endlocal
+goto :EOF
+
+:context
+
+setlocal EnableDelayedExpansion
+
+:: Simple replace of & to &
+set Text=%2
+set Text=%Text:&=^&%
+set Text=%Text:~1,-1%
+
+echo !Text!
+
+echo ^ >>"%OutputFile%"
+echo ^%~1^ >>"%OutputFile%"
+echo ^ >>"%OutputFile%"
+echo ^ >>"%OutputFile%"
+echo ^^ >>"%OutputFile%"
+echo ^ >>"%OutputFile%"
+echo ^ >>"%OutputFile%"
+
+endlocal
+goto :EOF
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/de.ts b/build_scripts/Windows-msys2/installer/lang/ts/de.ts
new file mode 100644
index 000000000..4469c6818
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/de.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ Installiert ${APPNAME} und die benötigten Komponenten.
+
+
+
+ Section_Data
+
+
+ Skins
+
+
+
+ Section_Data_Desc
+
+
+ Skins installieren.
+
+
+
+ Section_Shortcuts
+
+
+ Verknüpfungssymbole
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Verküpfungssymbole hinzufügen.
+
+
+
+ Section_StartMenu
+
+
+ Startmenüsymbol
+
+
+
+ Section_StartMenu_Desc
+
+
+ Fügt Symbol zum Startmenü hinzu.
+
+
+
+ Section_Desktop
+
+
+ Desktopsymbol
+
+
+
+ Section_Desktop_Desc
+
+
+ Fügt Symbol zum Desktop hinzu.
+
+
+
+ Section_QuickLaunch
+
+
+ Schnellstartsymbol
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Fügt Symbol zur Schnellstartleiste hinzu.
+
+
+
+ Section_Plugins
+
+
+ Optionale Plug-ins
+
+
+
+ Section_Plugins_Desc
+
+
+ Optionale Plug-ins zum Erweitern der Funktionalität.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ FeedReader
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ Installiert das Plug-in Feedreader.
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ Verknüpfungswolke
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ Installiert das Plug-in Verknüpfungswolke.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VOIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ Installiert das Plug-in VOIP
+
+
+
+ Section_AutoStart
+
+
+ Automatischer Programmstart
+
+
+
+ Section_AutoStart_Desc
+
+
+ Beim Start automatisch ausführen.
+
+
+
+ Page_InstallMode
+
+
+ Installationsmodus
+
+
+
+ Page_InstallMode_Desc
+
+
+ Wähle wie du ${APPNAME} installieren willst.
+
+
+
+ Page_InstallMode_Standard
+
+
+ &Standardinstallation
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ Installiere ${APPNAME} für den derzeitigen Benutzer dieses Geräts.
+
+
+
+ Page_InstallMode_Portable
+
+
+ &Portable Installation
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ Im portablen Modus werden alle Konfigurationsdaten im Verzeichnis der Anwendung gespeichert und keine Informationen in der Registry abgelegt.
+
+
+
+ Link_Uninstall
+
+
+ Deinstallieren
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/en.ts b/build_scripts/Windows-msys2/installer/lang/ts/en.ts
new file mode 100644
index 000000000..800157426
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/en.ts
@@ -0,0 +1,186 @@
+
+
+
+
+ Section_Main_Desc
+
+
+
+
+
+
+ Section_Data
+
+
+
+
+
+
+ Section_Data_Desc
+
+
+
+
+
+
+ Section_Shortcuts
+
+
+
+
+
+
+ Section_Shortcuts_Desc
+
+
+
+
+
+
+ Section_StartMenu
+
+
+
+
+
+
+ Section_StartMenu_Desc
+
+
+
+
+
+
+ Section_Desktop
+
+
+
+
+
+
+ Section_Desktop_Desc
+
+
+
+
+
+
+ Section_QuickLaunch
+
+
+
+
+
+
+ Section_QuickLaunch_Desc
+
+
+
+
+
+
+ Section_Plugins
+
+
+
+
+
+
+ Section_Plugins_Desc
+
+
+
+
+
+
+ Section_Plugin_FeedReader
+
+
+
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+
+
+
+
+ Section_Plugin_VOIP
+
+
+
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+
+
+
+
+ Section_AutoStart
+
+
+
+
+
+
+ Section_AutoStart_Desc
+
+
+
+
+
+
+ Page_InstallMode
+
+
+
+
+
+
+ Page_InstallMode_Desc
+
+
+
+
+
+
+ Page_InstallMode_Standard
+
+
+
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+
+
+
+
+ Page_InstallMode_Portable
+
+
+
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+
+
+
+
+ Link_Uninstall
+
+
+
+
+
+
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/es.ts b/build_scripts/Windows-msys2/installer/lang/ts/es.ts
new file mode 100644
index 000000000..dab920294
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/es.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ Instala ${APPNAME} y los componentes requeridos.
+
+
+
+ Section_Data
+
+
+ Coberturas (skins)
+
+
+
+ Section_Data_Desc
+
+
+ Instalar coberturas
+
+
+
+ Section_Shortcuts
+
+
+ Iconos de accesos directos
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Añade iconos de accesos directos.
+
+
+
+ Section_StartMenu
+
+
+ Icono de menú de inicio
+
+
+
+ Section_StartMenu_Desc
+
+
+ Añade icono al menú de inicio.
+
+
+
+ Section_Desktop
+
+
+ Icono del escritorio
+
+
+
+ Section_Desktop_Desc
+
+
+ Añade icono al escritorio
+
+
+
+ Section_QuickLaunch
+
+
+ Icono de inicio rápido
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Añade icono a la Barra de Inicio Rápido
+
+
+
+ Section_Plugins
+
+
+ Complementos opcionales
+
+
+
+ Section_Plugins_Desc
+
+
+ Complementos opcionales para expandir la funcionalidad.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ FeedReader
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ Instala el complemento FeedReader.
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ LinksCloud
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ Instala el complemento LinksCloud.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VOIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ Instala el complemento VOIP
+
+
+
+ Section_AutoStart
+
+
+ Auto iniciar
+
+
+
+ Section_AutoStart_Desc
+
+
+ Auto-ejecutar al incio.
+
+
+
+ Page_InstallMode
+
+
+ Modo de instalación
+
+
+
+ Page_InstallMode_Desc
+
+
+ Elija cómo quiere instalar ${APPNAME}.
+
+
+
+ Page_InstallMode_Standard
+
+
+ Instalación &Estándar
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ Instalar ${APPNAME} para el usuario actual de esta máquina.
+
+
+
+ Page_InstallMode_Portable
+
+
+ Instalación &Portable
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ En modo portable, todos los datos de configuración se almacenan en la carpeta de la aplicación y no se escribe ninguna información en el registro.
+
+
+
+ Link_Uninstall
+
+
+ Desinstalar
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/fr.ts b/build_scripts/Windows-msys2/installer/lang/ts/fr.ts
new file mode 100644
index 000000000..6ba710f7d
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/fr.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ Installe ${APPNAME} et les composants requis.
+
+
+
+ Section_Data
+
+
+ Habillages
+
+
+
+ Section_Data_Desc
+
+
+ Installe des habillages.
+
+
+
+ Section_Shortcuts
+
+
+ Icônes de raccourci
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Ajoute les icônes de raccourci.
+
+
+
+ Section_StartMenu
+
+
+ Icône de menu démarrage
+
+
+
+ Section_StartMenu_Desc
+
+
+ Ajoute l'icône au menu démarrer.
+
+
+
+ Section_Desktop
+
+
+ Icônes de bureau
+
+
+
+ Section_Desktop_Desc
+
+
+ Ajoute l'icône sur le bureau.
+
+
+
+ Section_QuickLaunch
+
+
+ Icône de lancement rapide
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Ajoute une icône à la barre d'outils de lancement rapide.
+
+
+
+ Section_Plugins
+
+
+ Plug-ins optionnels
+
+
+
+ Section_Plugins_Desc
+
+
+ Plug-ins optionnels destinés à étendre les fonctionnalités.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ FeedReader
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ Installe le plug-in FeedReader.
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ LinksCloud
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ Installe le plug-in LinksCloud.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VOIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ Installe le plug-in VOIP.
+
+
+
+ Section_AutoStart
+
+
+ Démarrage automatique
+
+
+
+ Section_AutoStart_Desc
+
+
+ Démarrage automatique au démarrage.
+
+
+
+ Page_InstallMode
+
+
+ Mode d'installation
+
+
+
+ Page_InstallMode_Desc
+
+
+ Choisissez comment vous voulez installer ${APPNAME}.
+
+
+
+ Page_InstallMode_Standard
+
+
+ &Installation standard
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ Installer ${APPNAME} pour l'utilisateur actuel de cette machine.
+
+
+
+ Page_InstallMode_Portable
+
+
+ &Installation portable
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ En mode portable toutes les données de configuration sont stockées dans le dossier de l'application et aucune information n'est écrite dans la base de registre.
+
+
+
+ Link_Uninstall
+
+
+ Désinstaller
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/pl.ts b/build_scripts/Windows-msys2/installer/lang/ts/pl.ts
new file mode 100644
index 000000000..deb56164f
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/pl.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ Instaluje ${APPNAME} oraz wymagane komponenty.
+
+
+
+ Section_Data
+
+
+ Skórki
+
+
+
+ Section_Data_Desc
+
+
+ Instaluje skórki.
+
+
+
+ Section_Shortcuts
+
+
+ Ikony skrótów
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Dodaje skróty ikon.
+
+
+
+ Section_StartMenu
+
+
+
+
+
+
+ Section_StartMenu_Desc
+
+
+ Dodaje ikonę do menu start.
+
+
+
+ Section_Desktop
+
+
+ Ikona na pulpicie
+
+
+
+ Section_Desktop_Desc
+
+
+ Dodawanie ikony na pulpicie
+
+
+
+ Section_QuickLaunch
+
+
+ Ikona szybkiego uruchamiania
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Dodaje ikonę do paska Szybkiego Uruchamiania.
+
+
+
+ Section_Plugins
+
+
+ Wtyczki opcjonalne
+
+
+
+ Section_Plugins_Desc
+
+
+ Wtyczki opcjonalne rozszerzające funkcjonalność.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ FeedReader
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ Instaluje wtyczki FeedReader
+
+
+
+ Section_Plugin_LinksCloud
+
+
+
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ Instaluje wtyczki LinksCloud.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VOIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ Instaluje wtyczki VOIP.
+
+
+
+ Section_AutoStart
+
+
+
+
+
+
+ Section_AutoStart_Desc
+
+
+ Automatyczne uruchamianie przy starcie.
+
+
+
+ Page_InstallMode
+
+
+ Tryb instalacji
+
+
+
+ Page_InstallMode_Desc
+
+
+ Wybierz jak chcesz zainstalować ${APPNAME}.
+
+
+
+ Page_InstallMode_Standard
+
+
+ &Standardowa instalacja
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ Zainstaluj ${APPNAME} dla bieżącego użytkownika tej maszyny.
+
+
+
+ Page_InstallMode_Portable
+
+
+
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ W trybie przenośnym wszystkie dane konfiguracyjne są przechowywane w folderze aplikacji i nie są zapisywane w rejestrze.
+
+
+
+ Link_Uninstall
+
+
+ Odinstaluj
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/ru.ts b/build_scripts/Windows-msys2/installer/lang/ts/ru.ts
new file mode 100644
index 000000000..3c29f3955
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/ru.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ Установка ${APPNAME} и необходимых компонентов.
+
+
+
+ Section_Data
+
+
+ Оболочки
+
+
+
+ Section_Data_Desc
+
+
+ Установка оболочек.
+
+
+
+ Section_Shortcuts
+
+
+ Ярлыки
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Добавление ярлыков.
+
+
+
+ Section_StartMenu
+
+
+ Ярлык в меню Пуск
+
+
+
+ Section_StartMenu_Desc
+
+
+ Добавление ярлыка в меню Пуск.
+
+
+
+ Section_Desktop
+
+
+ Ярлык на рабочем столе
+
+
+
+ Section_Desktop_Desc
+
+
+ Добавление ярлыка на рабочий стол.
+
+
+
+ Section_QuickLaunch
+
+
+ Ярлык в панели быстрого запуска
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Добавление ярлыка на панель быстрого запуска.
+
+
+
+ Section_Plugins
+
+
+ Дополнительные плагины
+
+
+
+ Section_Plugins_Desc
+
+
+ Дополнительные плагины для расширения функциональности.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ FeedReader – RSS-агрегатор
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ Установка плагина FeedReader.
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ LinksCloud – Облако ссылок
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ Установка плагина LinksCloud.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VoIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ Установка плагина VoIP.
+
+
+
+ Section_AutoStart
+
+
+ Автозапуск
+
+
+
+ Section_AutoStart_Desc
+
+
+ Автозапуск при загрузке системы.
+
+
+
+ Page_InstallMode
+
+
+ Режим установки
+
+
+
+ Page_InstallMode_Desc
+
+
+ Выберите метод установки ${APPNAME}.
+
+
+
+ Page_InstallMode_Standard
+
+
+ Стандартная установка
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ Установка ${APPNAME} для текущего пользователя компьютера.
+
+
+
+ Page_InstallMode_Portable
+
+
+ Портативная установка
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ В режиме портативной установки все конфигурационные файлы сохраняются в папку приложения и в системный реестр не записывается никакой информации.
+
+
+
+ Link_Uninstall
+
+
+ Удаление программы
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/tr.ts b/build_scripts/Windows-msys2/installer/lang/ts/tr.ts
new file mode 100644
index 000000000..d67961d59
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/tr.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+ ${APPNAME}
+
+
+
+ Section_Main_Desc
+
+
+ ${APPNAME} ve gerekli bileşenleri kurar.
+
+
+
+ Section_Data
+
+
+ Temalar
+
+
+
+ Section_Data_Desc
+
+
+ Tema yükleyin.
+
+
+
+ Section_Shortcuts
+
+
+ Kısayol simgeleri
+
+
+
+ Section_Shortcuts_Desc
+
+
+ Kısayol simgesi ekleyin.
+
+
+
+ Section_StartMenu
+
+
+ Başlat Menüsü simgesi
+
+
+
+ Section_StartMenu_Desc
+
+
+ Başlat menüsüne simge ekleyin.
+
+
+
+ Section_Desktop
+
+
+ Masaüstü simgesi
+
+
+
+ Section_Desktop_Desc
+
+
+ Masaüstüne simge ekleyin.
+
+
+
+ Section_QuickLaunch
+
+
+ Hızlı Başlat simgesi
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ Hızlı Başlat araç çubuğuna simge ekleyin.
+
+
+
+ Section_Plugins
+
+
+ İsteğe bağlı eklentiler
+
+
+
+ Section_Plugins_Desc
+
+
+ İşlevselliği artırmak için isteğe bağlı eklentiler.
+
+
+
+ Section_Plugin_FeedReader
+
+
+ AkışOkuyucu
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ AkışOkuyucu eklentisini yükleyin.
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ BağlantıBulutu
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ BağlantıBulutu eklentisini yükleyin.
+
+
+
+ Section_Plugin_VOIP
+
+
+ VOIP
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ VOIP eklentisini yükleyin.
+
+
+
+ Section_AutoStart
+
+
+ Otomatik Başlat
+
+
+
+ Section_AutoStart_Desc
+
+
+ Açılışta otomatik başlatın.
+
+
+
+ Page_InstallMode
+
+
+ Kurulum Yöntemi
+
+
+
+ Page_InstallMode_Desc
+
+
+ ${APPNAME} kurulum şeklini seçin
+
+
+
+ Page_InstallMode_Standard
+
+
+ &Normal kurulum
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+ ${APPNAME} yalnızca şimdiki kullanıcı için kurulsun.
+
+
+
+ Page_InstallMode_Portable
+
+
+ &Taşınabilir kurulum
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+ Taşınabilir kipte tüm ayarlar uygulama klasörüne depolanır ve kayıt defterine hiçbir bilgi yazılmaz.
+
+
+
+ Link_Uninstall
+
+
+ Kaldırın
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/xsltproc.exe b/build_scripts/Windows-msys2/installer/lang/ts/xsltproc.exe
new file mode 100644
index 000000000..79c250892
Binary files /dev/null and b/build_scripts/Windows-msys2/installer/lang/ts/xsltproc.exe differ
diff --git a/build_scripts/Windows-msys2/installer/lang/ts/zh_CN.ts b/build_scripts/Windows-msys2/installer/lang/ts/zh_CN.ts
new file mode 100644
index 000000000..30c992601
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/ts/zh_CN.ts
@@ -0,0 +1,205 @@
+
+
+ Section_Main
+
+
+
+
+
+
+ Section_Main_Desc
+
+
+
+
+
+
+ Section_Data
+
+
+ 皮肤
+
+
+
+ Section_Data_Desc
+
+
+ 安装皮肤
+
+
+
+ Section_Shortcuts
+
+
+ 快捷方式图标
+
+
+
+ Section_Shortcuts_Desc
+
+
+ 添加快捷方式图标
+
+
+
+ Section_StartMenu
+
+
+ 开始菜单图标
+
+
+
+ Section_StartMenu_Desc
+
+
+ 添加图标至开始菜单
+
+
+
+ Section_Desktop
+
+
+ 桌面图标
+
+
+
+ Section_Desktop_Desc
+
+
+ 添加图标至桌面
+
+
+
+ Section_QuickLaunch
+
+
+ 快速启动栏图标
+
+
+
+ Section_QuickLaunch_Desc
+
+
+ 添加图标至快速启动栏
+
+
+
+ Section_Plugins
+
+
+
+
+
+
+ Section_Plugins_Desc
+
+
+
+
+
+
+ Section_Plugin_FeedReader
+
+
+ RSS订阅
+
+
+
+ Section_Plugin_FeedReader_Desc
+
+
+ 安装RSS订阅插件
+
+
+
+ Section_Plugin_LinksCloud
+
+
+ LinksCloud
+
+
+
+ Section_Plugin_LinksCloud_Desc
+
+
+ 安装插件LinksCloud
+
+
+
+ Section_Plugin_VOIP
+
+
+ 语音
+
+
+
+ Section_Plugin_VOIP_Desc
+
+
+ 安装语音插件
+
+
+
+ Section_AutoStart
+
+
+
+
+
+
+ Section_AutoStart_Desc
+
+
+
+
+
+
+ Page_InstallMode
+
+
+ 安装模式
+
+
+
+ Page_InstallMode_Desc
+
+
+
+
+
+
+ Page_InstallMode_Standard
+
+
+
+
+
+
+ Page_InstallMode_Standard_Desc
+
+
+
+
+
+
+ Page_InstallMode_Portable
+
+
+
+
+
+
+ Page_InstallMode_Portable_Desc
+
+
+
+
+
+
+ Link_Uninstall
+
+
+ 卸载
+
+
+
\ No newline at end of file
diff --git a/build_scripts/Windows-msys2/installer/lang/zh_CN.nsh b/build_scripts/Windows-msys2/installer/lang/zh_CN.nsh
new file mode 100644
index 000000000..1075f7a1a
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/lang/zh_CN.nsh
@@ -0,0 +1,29 @@
+!insertmacro LANG_STRING Section_Main "${APPNAME}"
+!insertmacro LANG_STRING Section_Main_Desc "Installs ${APPNAME} and required components."
+!insertmacro LANG_STRING Section_Data "皮肤"
+!insertmacro LANG_STRING Section_Data_Desc "安装皮肤"
+!insertmacro LANG_STRING Section_Shortcuts "快捷方式图标"
+!insertmacro LANG_STRING Section_Shortcuts_Desc "添加快捷方式图标"
+!insertmacro LANG_STRING Section_StartMenu "开始菜单图标"
+!insertmacro LANG_STRING Section_StartMenu_Desc "添加图标至开始菜单"
+!insertmacro LANG_STRING Section_Desktop "桌面图标"
+!insertmacro LANG_STRING Section_Desktop_Desc "添加图标至桌面"
+!insertmacro LANG_STRING Section_QuickLaunch "快速启动栏图标"
+!insertmacro LANG_STRING Section_QuickLaunch_Desc "添加图标至快速启动栏"
+!insertmacro LANG_STRING Section_Plugins "Optional plugins"
+!insertmacro LANG_STRING Section_Plugins_Desc "Optional plugins to extend functionality."
+!insertmacro LANG_STRING Section_Plugin_FeedReader "RSS订阅"
+!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "安装RSS订阅插件"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
+!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "安装插件LinksCloud"
+!insertmacro LANG_STRING Section_Plugin_VOIP "语音"
+!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "安装语音插件"
+!insertmacro LANG_STRING Section_AutoStart "Auto Startup"
+!insertmacro LANG_STRING Section_AutoStart_Desc "Auto-Run at startup."
+!insertmacro LANG_STRING Page_InstallMode "安装模式"
+!insertmacro LANG_STRING Page_InstallMode_Desc "Choose how you want to install ${APPNAME}."
+!insertmacro LANG_STRING Page_InstallMode_Standard "&Standard installation"
+!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Install ${APPNAME} for the current user of this machine."
+!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable installation"
+!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "In portable mode all configuration data is stored in the application folder and no information is written to the registry."
+!insertmacro LANG_STRING Link_Uninstall "卸载"
diff --git a/build_scripts/Windows-msys2/installer/retroshare-Qt5.nsi b/build_scripts/Windows-msys2/installer/retroshare-Qt5.nsi
new file mode 100644
index 000000000..b30300634
--- /dev/null
+++ b/build_scripts/Windows-msys2/installer/retroshare-Qt5.nsi
@@ -0,0 +1,445 @@
+; Script generated with the Venis Install Wizard & modified by defnax
+; Reworked by Thunder
+; Adapted to msys2 and 64 bit by anmo
+
+!include ifexist.nsh
+!include x64.nsh
+
+# Needed defines
+;!define REVISION ""
+;!define DEPLOYDIR ""
+;!define ARCHITECTURE ""
+
+# Optional defines
+;!define OUTDIR ""
+;!define INSTALLERADD ""
+
+# Check needed defines
+!ifndef DEPLOYDIR
+!error "DEPLOYDIR is not defined"
+!endif
+!ifndef ARCHITECTURE
+!error "ARCHITECTURE is not defined"
+!endif
+
+# Check optional defines
+!ifdef OUTDIR
+!define OUTDIR_ "${OUTDIR}\"
+!else
+!define OUTDIR ""
+!define OUTDIR_ ""
+!endif
+
+!ifndef INSTALLERADD
+!define INSTALLERADD ""
+!endif
+
+# Source directory
+!define SOURCEDIR "..\..\.."
+
+# Get version from executable
+!GetDllVersion "${DEPLOYDIR}\retroshare.exe" VERSION_
+!define VERSION ${VERSION_1}.${VERSION_2}.${VERSION_3}
+;!define REVISION ${VERSION_4}
+
+# Check version
+!ifndef REVISION
+!error "REVISION is not defined"
+!endif
+
+# Date
+!define /date Date "%Y%m%d"
+
+# Detect tor
+${!defineifexist} TOR_EXISTS "${DEPLOYDIR}\tor.exe"
+!ifdef TOR_EXISTS
+!define RSTYPE "-tor"
+!else
+!define RSTYPE ""
+!endif
+
+# Application name and version
+!define APPNAME "RetroShare"
+!define APPNAMEANDVERSION "${APPNAME} ${VERSION}"
+!define PUBLISHER "RetroShare Team"
+
+# Install path
+!define INSTDIR_PORTABLE "$Desktop\${APPNAME}"
+
+!define DATADIR_NORMAL "$APPDATA\${APPNAME}"
+!define DATADIR_PORTABLE "$INSTDIR\Data"
+
+# Main Install settings
+Name "${APPNAMEANDVERSION}"
+InstallDirRegKey HKLM "Software\${APPNAME}" ""
+OutFile "${OUTDIR_}RetroShare-${VERSION}-${Date}-${REVISION}-${ARCHITECTURE}${RSTYPE}${INSTALLERADD}-setup.exe"
+BrandingText "${APPNAMEANDVERSION}"
+RequestExecutionlevel highest
+# Use compression
+SetCompressor /SOLID LZMA
+
+# Global variables
+Var PortableMode
+Var InstDirNormal
+Var InstDirPortable
+Var DataDir
+Var StyleSheetDir
+
+# Modern interface settings
+!include Sections.nsh
+!include nsDialogs.nsh
+!include "MUI.nsh"
+
+# Interface Settings
+!define MUI_ABORTWARNING
+!define MUI_HEADERIMAGE
+!define MUI_HEADERIMAGE_BITMAP "${SOURCEDIR}\build_scripts\Windows-msys2\installer\HeaderImage.bmp"
+;!define MUI_WELCOMEFINISHPAGE_BITMAP "...bmp"
+
+# MUI defines
+!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
+!define MUI_FINISHPAGE_NOAUTOCLOSE
+!define MUI_LICENSEPAGE_RADIOBUTTONS
+!define MUI_COMPONENTSPAGE_SMALLDESC
+!define MUI_FINISHPAGE_LINK "Visit the RetroShare forum for the latest news and support"
+!define MUI_FINISHPAGE_LINK_LOCATION "http://retroshare.sourceforge.net/forum/"
+!define MUI_FINISHPAGE_RUN "$INSTDIR\retroshare.exe"
+!define MUI_FINISHPAGE_SHOWREADME $INSTDIR\changelog.txt
+!define MUI_FINISHPAGE_SHOWREADME_TEXT changelog.txt
+!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
+!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
+!define MUI_UNFINISHPAGE_NOAUTOCLOSE
+;!define MUI_LANGDLL_REGISTRY_ROOT HKLM
+;!define MUI_LANGDLL_REGISTRY_KEY ${REGKEY}
+;!define MUI_LANGDLL_REGISTRY_VALUENAME InstallerLanguage
+
+# Defines the un-/installer logo of RetroShare
+!insertmacro MUI_DEFAULT MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange.bmp"
+!insertmacro MUI_DEFAULT MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange-uninstall.bmp"
+
+# Installer pages
+!insertmacro MUI_PAGE_WELCOME
+!insertmacro MUI_PAGE_LICENSE "$(myLicenseData)"
+Page Custom PortableModePageCreate PortableModePageLeave
+!define MUI_PAGE_CUSTOMFUNCTION_LEAVE dir_leave
+!insertmacro MUI_PAGE_DIRECTORY
+!insertmacro MUI_PAGE_COMPONENTS
+!insertmacro MUI_PAGE_INSTFILES
+!insertmacro MUI_PAGE_FINISH
+!insertmacro MUI_UNPAGE_CONFIRM
+!insertmacro MUI_UNPAGE_INSTFILES
+
+# Set languages (first is default language)
+!insertmacro MUI_RESERVEFILE_LANGDLL
+
+# Installer languages
+!define MUI_LANGDLL_ALLLANGUAGES
+
+# Translations
+!macro LANG_LOAD LANGUAGE LANGCODE LANGID LICENCEFILE
+ !insertmacro MUI_LANGUAGE "${LANGUAGE}"
+; !verbose off
+ !define LANG "${LANGUAGE}"
+ !include "lang\${LANGCODE}.nsh"
+ LangString LANGUAGEID "${LANG_${LANG}}" "1031"
+ LicenseLangString myLicenseData ${LANGCODE} ${LICENCEFILE}
+; !verbose on
+ !undef LANG
+!macroend
+
+!macro LANG_STRING NAME VALUE
+ LangString "${NAME}" "${LANG_${LANG}}" "${VALUE}"
+!macroend
+
+!insertmacro LANG_LOAD "English" "en" "1033" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
+!insertmacro LANG_LOAD "French" "fr" "1036" "${SOURCEDIR}\retroshare-gui\src\license\license-FR.txt"
+!insertmacro LANG_LOAD "German" "de" "1031" "${SOURCEDIR}\retroshare-gui\src\license\license-GER.txt"
+!insertmacro LANG_LOAD "Turkish" "tr" "1055" "${SOURCEDIR}\retroshare-gui\src\license\license-TR.txt"
+!insertmacro LANG_LOAD "SimpChinese" "zh_CN" "2052" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
+!insertmacro LANG_LOAD "Polish" "pl" "1045" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
+!insertmacro LANG_LOAD "Spanish" "es" "1034" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
+!insertmacro LANG_LOAD "Russian" "ru" "1049" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
+!insertmacro LANG_LOAD "Catalan" "ca_ES" "1027" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
+
+LicenseData $(myLicenseData)
+
+# Main binaries
+Section $(Section_Main) Section_Main
+ ;Set Section required
+ SectionIn RO
+
+ ; Set Section properties
+ SetOverwrite on
+
+ ; Clears previous error logs
+; Delete "$INSTDIR\*.log"
+
+ SetOutPath "$INSTDIR"
+ File /r /x Data /x stylesheets /x qss /x portable "${DEPLOYDIR}\*.*"
+SectionEnd
+
+# Plugins
+${!defineifexist} PLUGIN_FEEDREADER_EXISTS "${DEPLOYDIR}\Data\extensions6\FeedReader.dll"
+${!defineifexist} PLUGIN_VOIP_EXISTS "${DEPLOYDIR}\Data\extensions6\VOIP.dll"
+
+!ifdef PLUGIN_FEEDREADER_EXISTS
+!define /ifndef PLUGIN_EXISTS
+!endif
+!ifdef PLUGIN_VOIP_EXISTS
+!define /ifndef PLUGIN_EXISTS
+!endif
+
+!ifdef PLUGIN_EXISTS
+ SectionGroup $(Section_Plugins) Section_Plugins
+ !ifdef PLUGIN_FEEDREADER_EXISTS
+ Section $(Section_Plugin_FeedReader) Section_Plugin_FeedReader
+ SetOutPath "$DataDir\extensions6"
+ File "${DEPLOYDIR}\Data\extensions6\FeedReader.dll"
+ SectionEnd
+ !endif
+
+ !ifdef PLUGIN_VOIP_EXISTS
+ Section $(Section_Plugin_VOIP) Section_Plugin_VOIP
+ SetOutPath "$DataDir\extensions6"
+ File "${DEPLOYDIR}\Data\extensions6\VOIP.dll"
+ SectionEnd
+ !endif
+ SectionGroupEnd
+!endif
+
+# Data (Styles)
+Section $(Section_Data) Section_Data
+ ; Set Section properties
+ SetOverwrite on
+
+ ; Chat style
+ SetOutPath "$StyleSheetDir\stylesheets"
+ File /r "${DEPLOYDIR}\stylesheets\*.*"
+
+ ; Stylesheets
+ SetOutPath "$INSTDIR\qss"
+ File /r "${DEPLOYDIR}\qss\*.*"
+SectionEnd
+
+;Section $(Section_Link) Section_Link
+ ; Delete any existing keys
+
+ ; Write the file association
+; WriteRegStr HKCR .pqi "" retroshare
+; WriteRegStr HKCR retroshare "" "PQI File"
+; WriteRegBin HKCR retroshare EditFlags 00000100
+; WriteRegStr HKCR "retroshare\shell" "" open
+; WriteRegStr HKCR "retroshare\shell\open\command" "" `"$INSTDIR\retroshare.exe" "%1"`
+;SectionEnd
+
+# Shortcuts
+SectionGroup $(Section_Shortcuts) Section_Shortcuts
+Section $(Section_StartMenu) Section_StartMenu
+ SetOutPath "$INSTDIR"
+ CreateDirectory "$SMPROGRAMS\${APPNAME}"
+ CreateShortCut "$SMPROGRAMS\${APPNAME}\$(Link_Uninstall).lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
+ CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME}.lnk" "$INSTDIR\retroshare.exe" "" "$INSTDIR\retroshare.exe" 0
+SectionEnd
+
+Section $(Section_Desktop) Section_Desktop
+ CreateShortCut "$DESKTOP\${APPNAME}.lnk" "$INSTDIR\retroshare.exe" "" "$INSTDIR\retroshare.exe" 0
+SectionEnd
+
+Section $(Section_QuickLaunch) Section_QuickLaunch
+ CreateShortCut "$QUICKLAUNCH\${APPNAME}.lnk" "$INSTDIR\retroshare.exe" "" "$INSTDIR\retroshare.exe" 0
+SectionEnd
+SectionGroupEnd
+
+Section $(Section_AutoStart) Section_AutoStart
+ WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "RetroShare" "$INSTDIR\retroshare.exe -m"
+SectionEnd
+
+;Section $(Section_AutoStart) Section_AutoStart
+; CreateShortCut "$SMSTARTUP\${APPNAME}.lnk" "$INSTDIR\retroshare.exe" "" "$INSTDIR\retroshare.exe -m" 0
+;SectionEnd
+
+Section -FinishSection
+ ${If} $PortableMode = 0
+ WriteRegStr HKLM "Software\${APPNAME}" "" "$INSTDIR"
+ WriteRegStr HKLM "Software\${APPNAME}" "Version" "${VERSION}"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayName" "${APPNAME}"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayVersion" "${VERSION}"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayIcon" "$INSTDIR\retroshare.exe"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "Publisher" "${PUBLISHER}"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "NoModify" "1"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "NoRepair" "1"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "UninstallString" "$INSTDIR\uninstall.exe"
+ WriteUninstaller "$INSTDIR\uninstall.exe"
+ ${Else}
+ ; Create the file the application uses to detect portable mode
+ FileOpen $0 "$INSTDIR\portable" w
+ FileClose $0
+ ${EndIf}
+SectionEnd
+
+# Descriptions
+!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Main} $(Section_Main_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Data} $(Section_Data_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Shortcuts} $(Section_Shortcuts_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_StartMenu} $(Section_StartMenu_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Desktop} $(Section_Desktop_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_QuickLaunch} $(Section_QuickLaunch_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugins} $(Section_Plugins_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugin_FeedReader} $(Section_Plugin_FeedReader_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugin_VOIP} $(Section_Plugin_VOIP_Desc)
+; !insertmacro MUI_DESCRIPTION_TEXT ${Section_Link} $(Section_Link_Desc)
+ !insertmacro MUI_DESCRIPTION_TEXT ${Section_AutoStart} $(Section_AutoStart_Desc)
+!insertmacro MUI_FUNCTION_DESCRIPTION_END
+
+# Uninstall
+Section "Uninstall"
+ ; Remove file association registry keys
+; DeleteRegKey HKCR .pqi
+ DeleteRegKey HKCR RetroShare
+
+ ; Remove program/uninstall regsitry keys
+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}"
+ DeleteRegKey HKLM SOFTWARE\${APPNAME}
+
+ DeleteRegValue HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "RetroShare"
+
+ ; Remove shortcuts, if any
+ Delete "$SMPROGRAMS\${APPNAME}\*.*"
+
+ ; Remove desktop shortcut
+ Delete "$DESKTOP\${APPNAME}.lnk"
+
+ ; Remove Quicklaunch shortcut
+ Delete "$QUICKLAUNCH\${APPNAME}.lnk"
+
+ ; Remove Autstart
+ Delete "$SMSTARTUP\${APPNAME}.lnk"
+
+ ; Remove directories used
+ RMDir "$SMPROGRAMS\${APPNAME}"
+ RMDir /r "$INSTDIR"
+
+ ; Don't remove the directory, otherwise
+ ; we lose the XPGP keys.
+ ; Should make this an option though...
+ RMDir /r "${DATADIR_NORMAL}\extensions6"
+ RMDir /r "${DATADIR_NORMAL}\stylesheets"
+SectionEnd
+
+Function .onInit
+; source: https://stackoverflow.com/questions/19374453/nsis-installer-define-installer-and-system-x32-x64
+ ${If} ${RunningX64}
+ ${If} ${ARCHITECTURE} == "x64"
+ StrCpy $InstDirNormal "$PROGRAMFILES64\${APPNAME}"
+ ${Else}
+ StrCpy $InstDirNormal "$PROGRAMFILES32\${APPNAME}"
+ ${Endif}
+ ${Else}
+ ${If} ${ARCHITECTURE} == "x64"
+ MessageBox MB_ICONSTOP "You cannot install the 64 bit version on a 32 bit system!"
+ Quit
+ ${Else}
+ StrCpy $InstDirNormal "$PROGRAMFILES\${APPNAME}"
+ ${Endif}
+ ${EndIf}
+
+ StrCpy $InstDirPortable "${INSTDIR_PORTABLE}"
+
+ StrCpy $PortableMode 0
+ StrCpy $INSTDIR "$InstDirNormal"
+ StrCpy $DataDir "${DATADIR_NORMAL}"
+
+ InitPluginsDir
+ Push $R1
+ File /oname=$PLUGINSDIR\spltmp.bmp "${SOURCEDIR}\retroshare-gui\src\gui\images\logo\logo_splash.png"
+ advsplash::show 1200 1000 1000 -1 $PLUGINSDIR\spltmp
+ Pop $R1
+ Pop $R1
+ !insertmacro MUI_LANGDLL_DISPLAY
+FunctionEnd
+
+# Installation mode
+
+Function RequireAdmin
+ UserInfo::GetAccountType
+ Pop $8
+ ${If} $8 != "admin"
+ MessageBox MB_ICONSTOP "You need administrator rights to install ${APPNAME}"
+ SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
+ Abort
+ ${EndIf}
+FunctionEnd
+
+Function SetModeDestinationFromInstdir
+ ${If} $PortableMode = 0
+ StrCpy $InstDirNormal $INSTDIR
+ ${Else}
+ StrCpy $InstDirPortable $INSTDIR
+ ${EndIf}
+FunctionEnd
+
+Function PortableModePageCreate
+ Call SetModeDestinationFromInstdir ; If the user clicks BACK on the directory page we will remember their mode specific directory
+ !insertmacro MUI_HEADER_TEXT $(Page_InstallMode) $(Page_InstallMode_Desc)
+ nsDialogs::Create 1018
+ Pop $0
+ ${NSD_CreateRadioButton} 5u 25u -10u 8u $(Page_InstallMode_Standard)
+ Pop $1
+ ${NSD_CreateLabel} 18u 40u -10u 24u $(Page_InstallMode_Standard_Desc)
+ Pop $0
+ ${NSD_CreateRadioButton} 5u 75u -10u 8u $(Page_InstallMode_Portable)
+ Pop $2
+ ${NSD_CreateLabel} 18u 90u -10u 24u $(Page_InstallMode_Portable_Desc)
+ Pop $0
+ ${If} $PortableMode = 0
+ SendMessage $1 ${BM_SETCHECK} ${BST_CHECKED} 0
+ ${Else}
+ SendMessage $2 ${BM_SETCHECK} ${BST_CHECKED} 0
+ ${EndIf}
+ nsDialogs::Show
+FunctionEnd
+
+Function PortableModePageLeave
+ ${NSD_GetState} $1 $0
+ ${If} $0 <> ${BST_UNCHECKED}
+ StrCpy $PortableMode 0
+ StrCpy $INSTDIR $InstDirNormal
+ Call RequireAdmin
+ ; Enable sections
+ SectionSetText ${Section_Shortcuts} $(Section_Shortcuts)
+ SectionSetText ${Section_StartMenu} $(Section_StartMenu)
+ SectionSetText ${Section_Desktop} $(Section_Desktop)
+ SectionSetText ${Section_QuickLaunch} $(Section_QuickLaunch)
+ SectionSetText ${Section_AutoStart} $(Section_AutoStart)
+ !insertmacro SelectSection ${Section_Shortcuts}
+ !insertmacro SelectSection ${Section_AutoStart}
+ !insertmacro SelectSection ${Section_StartMenu}
+ !insertmacro SelectSection ${Section_Desktop}
+ !insertmacro SelectSection ${Section_QuickLaunch}
+ ${Else}
+ StrCpy $PortableMode 1
+ StrCpy $INSTDIR $InstDirPortable
+ ; Disable sections
+ !insertmacro UnselectSection ${Section_Shortcuts}
+ !insertmacro UnselectSection ${Section_AutoStart}
+ !insertmacro UnselectSection ${Section_StartMenu}
+ !insertmacro UnselectSection ${Section_Desktop}
+ !insertmacro UnselectSection ${Section_QuickLaunch}
+ SectionSetText ${Section_Shortcuts} ""
+ SectionSetText ${Section_StartMenu} ""
+ SectionSetText ${Section_Desktop} ""
+ SectionSetText ${Section_QuickLaunch} ""
+ SectionSetText ${Section_AutoStart} ""
+ ${EndIf}
+FunctionEnd
+
+Function dir_leave
+ ${If} $PortableMode = 0
+ StrCpy $DataDir "${DATADIR_NORMAL}"
+ StrCpy $StyleSheetDir $DataDir
+ ${Else}
+ StrCpy $DataDir "${DATADIR_PORTABLE}"
+ StrCpy $StyleSheetDir $INSTDIR
+ ${EndIf}
+FunctionEnd
diff --git a/build_scripts/Windows-msys2/readme.md b/build_scripts/Windows-msys2/readme.md
new file mode 100644
index 000000000..26ea3675e
--- /dev/null
+++ b/build_scripts/Windows-msys2/readme.md
@@ -0,0 +1,83 @@
+# Compilation on Windows
+
+The preferred build method on Windows is by using MSYS2 which is a collection
+of packages providing unix-like tools to build native Windows software.
+
+This guide contains information about how to setup your build environment in an automated way by scripts.
+If you prefer to setup your environment manually, check this guide:
+[WindowsMSys2_InstallGuide.md](WindowsMSys2_InstallGuide.md)
+
+You have to clone this repository (with [git for windows](https://gitforwindows.org/)) to a local folder, then start it in a terminal.
+
+
+## Automatic building
+
+Run the following script:
+
+ \build_scripts\Windows-msys2\build.bat
+
+It will install all neccessary tools to build RetrosShare, and build it with the default configuration.
+
+After the script is finished, you can find the resulting .7z package here:
+
+ -msys2\deploy\
+
+## Advanced building
+
+You can specifiy extra build options if you use the scripts under:
+
+ \build_scripts\Windows-msys2\build\
+
+You have to specify the build options after each command.
+
+Run the scripts in this order:
+1. build.bat: builds RetroShare
+2. pack.bat: makes a .7z archive with all the needed files to run the program
+3. build-installer: makes a self extracting installer (optional)
+
+### Build options
+
+**Always delete the build artifacts folder if you enable or disable extra features after the build command: <sourcefolder>-msys2\deploy\builds**
+
+* Mandatory
+ * 32 or 64: 32 or 64 bit version
+ * release or debug: normally you would like to use the release option
+* Extra features (optional)
+ * autologin: enable autologin
+ * plugins: build plugins
+ * webui: enable remoting features and pack webui files
+ * indexing: build with deep channel and file indexing support
+ * tor: include tor in the package
+ * "CONFIG+=..." enable other extra compile time features, you can find the almost complete list in file *<sourcefolder>\retroshare.pri*
+* For fixing compile problems (optional)
+ * singlethread: use only 1 thread for building, slow but useful if you don't find the error message in the console
+ * clang: use clang compiler instead of GCC
+ * noupdate: skip the msys2 update step, sometimes some msys2 packages are broken, you can manually switch back to the older package, and this option will prevent updating to the broken version again
+
+Example:
+
+```batch
+build.bat 64 release autologin webui "CONFIG+=rs_use_native_dialogs" "CONFIG+=rs_gui_cmark"
+pack.bat 64 release autologin webui tor
+build-installer.bat 64 release autologin
+```
+
+## Troubleshooting
+* Run the command again, sometimes it works the second time, specially if it complains about *restbed* during bulding
+* Delete the build artifacts: *<sourcefolder>-msys2\deploy\builds*
+* Update msys2 manually:
+ 1. Open the terminal: *<sourcefolder>-msys2\msys2\msys64\msys2.exe*
+ 2. pacman -Sy
+ 3. pacman -Su
+ 4. Close the terminal
+ 5. Jump to 1. until it doesn't find more updates
+* Start with a clean path environment variable, run *<sourcefolder>\build_scripts\Windows-msys2\start-clean-env.bat*, you will get a terminal with cleaned path
+
+## Updating webui
+
+The sripts don't update the webui source code automatically once it is schecked out.
+You have to do it manually with your favourite git client.
+
+You can find the webui sorce code here:
+
+ -webui
diff --git a/build_scripts/Windows-msys2/start-clean-env.bat b/build_scripts/Windows-msys2/start-clean-env.bat
new file mode 100644
index 000000000..1c6d46295
--- /dev/null
+++ b/build_scripts/Windows-msys2/start-clean-env.bat
@@ -0,0 +1,7 @@
+setlocal
+
+set path=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0
+cd build\
+cmd
+
+endlocal
diff --git a/build_scripts/Windows-msys2/tools/webui.bat b/build_scripts/Windows-msys2/tools/webui.bat
index f39da666a..b7af01e53 100644
--- a/build_scripts/Windows-msys2/tools/webui.bat
+++ b/build_scripts/Windows-msys2/tools/webui.bat
@@ -7,7 +7,9 @@ title Build webui
if not exist "%RsWebuiPath%" (
echo Checking out webui source into %RsWebuiPath%
- %EnvMSYS2Cmd% "pacman --noconfirm --needed -S git"
+ if not "%ParamNoupdate%"=="1" (
+ %EnvMSYS2Cmd% "pacman --noconfirm --needed -S git"
+ )
git clone https://github.com/RetroShare/RSNewWebUI.git "%RsWebuiPath%"
) else (
echo Webui source found at %RsWebuiPath%
diff --git a/libbitdht/src/util/bdnet.cc b/libbitdht/src/util/bdnet.cc
index 4c5f681a6..ba8c33553 100644
--- a/libbitdht/src/util/bdnet.cc
+++ b/libbitdht/src/util/bdnet.cc
@@ -285,12 +285,6 @@ int sleep(unsigned int sec)
}
#endif
-int usleep(unsigned int usec)
-{
- Sleep(usec / 1000);
- return 0;
-}
-
/********************************** WINDOWS/UNIX SPECIFIC PART ******************/
#else // UNIX
diff --git a/libbitdht/src/util/bdnet.h b/libbitdht/src/util/bdnet.h
index 639a2ed1a..89ecfa710 100644
--- a/libbitdht/src/util/bdnet.h
+++ b/libbitdht/src/util/bdnet.h
@@ -159,7 +159,6 @@ int bdnet_w2u_errno(int error);
#ifndef __MINGW64_VERSION_MAJOR
int sleep(unsigned int sec);
#endif
-int usleep(unsigned int usec);
#endif // END of WINDOWS defines.
/********************************** WINDOWS/UNIX SPECIFIC PART ******************/
diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro
index 837c1f715..3277f8208 100644
--- a/libretroshare/src/libretroshare.pro
+++ b/libretroshare/src/libretroshare.pro
@@ -238,7 +238,7 @@ win32-x-g++ {
}
################################# Windows ##########################################
-win32-g++ {
+win32-g++|win32-clang-g++ {
QMAKE_CC = $${QMAKE_CXX}
OBJECTS_DIR = temp/obj
MOC_DIR = temp/moc
@@ -852,7 +852,7 @@ rs_jsonapi {
no_rs_cross_compiling {
DUMMYRESTBEDINPUT = FORCE
CMAKE_GENERATOR_OVERRIDE=""
- win32-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\""
+ win32-g++|win32-clang-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\""
genrestbedlib.name = Generating librestbed.
genrestbedlib.input = DUMMYRESTBEDINPUT
genrestbedlib.output = $$clean_path($${RESTBED_BUILD_PATH}/librestbed.a)
@@ -869,6 +869,7 @@ rs_jsonapi {
mkdir -p $${RESTBED_BUILD_PATH} && cd $${RESTBED_BUILD_PATH} && \
cmake \
-DCMAKE_CXX_COMPILER=$$QMAKE_CXX \
+ \"-DCMAKE_CXX_FLAGS=$${QMAKE_CXXFLAGS}\" \
$${CMAKE_GENERATOR_OVERRIDE} -DBUILD_SSL=OFF \
-DCMAKE_INSTALL_PREFIX=. -B. \
-H$$shell_path($${RESTBED_SRC_PATH}) && \
@@ -949,7 +950,7 @@ rs_broadcast_discovery {
no_rs_cross_compiling {
DUMMYQMAKECOMPILERINPUT = FORCE
CMAKE_GENERATOR_OVERRIDE=""
- win32-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\""
+ win32-g++|win32-clang-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\""
udpdiscoverycpplib.name = Generating libudp-discovery.a.
udpdiscoverycpplib.input = DUMMYQMAKECOMPILERINPUT
udpdiscoverycpplib.output = $$clean_path($${UDP_DISCOVERY_BUILD_PATH}/libudp-discovery.a)
@@ -963,6 +964,7 @@ rs_broadcast_discovery {
cd $${UDP_DISCOVERY_BUILD_PATH} && \
cmake -DCMAKE_C_COMPILER=$$fixQmakeCC($$QMAKE_CC) \
-DCMAKE_CXX_COMPILER=$$QMAKE_CXX \
+ \"-DCMAKE_CXX_FLAGS=$${QMAKE_CXXFLAGS}\" \
$${CMAKE_GENERATOR_OVERRIDE} \
-DBUILD_EXAMPLE=OFF -DBUILD_TOOL=OFF \
-DCMAKE_INSTALL_PREFIX=. -B. \
diff --git a/libretroshare/src/use_libretroshare.pri b/libretroshare/src/use_libretroshare.pri
index eb7a4e470..5f291b29c 100644
--- a/libretroshare/src/use_libretroshare.pri
+++ b/libretroshare/src/use_libretroshare.pri
@@ -46,7 +46,7 @@ rs_jsonapi {
LIBS *= -L$$clean_path($${RESTBED_BUILD_PATH}/) -lrestbed
} else:sLibs *= restbed
- win32-g++:dLibs *= wsock32
+ win32-g++|win32-clang-g++:dLibs *= wsock32
}
linux-* {
@@ -55,7 +55,7 @@ linux-* {
rs_deep_channels_index | rs_deep_files_index {
mLibs += xapian
- win32-g++:mLibs += rpcrt4
+ win32-g++|win32-clang-g++:mLibs += rpcrt4
}
rs_deep_files_index_ogg {
@@ -81,7 +81,7 @@ rs_broadcast_discovery {
LIBS *= -L$$clean_path($${UDP_DISCOVERY_BUILD_PATH}) -ludp-discovery
} else:sLibs *= udp-discovery
- win32-g++:dLibs *= wsock32
+ win32-g++|win32-clang-g++:dLibs *= wsock32
}
static {
diff --git a/openpgpsdk/src/openpgpsdk.pro b/openpgpsdk/src/openpgpsdk.pro
index fa117381a..66341d0a3 100644
--- a/openpgpsdk/src/openpgpsdk.pro
+++ b/openpgpsdk/src/openpgpsdk.pro
@@ -21,7 +21,7 @@ linux-* {
OBJECTS_DIR = temp/linux/obj
}
-win32-g++ {
+win32-g++|win32-clang-g++ {
HEADERS += openpgpsdk/opsstring.h
SOURCES += openpgpsdk/opsstring.c
diff --git a/retroshare-gui/src/retroshare-gui.pro b/retroshare-gui/src/retroshare-gui.pro
index b60edbce6..c005ee510 100644
--- a/retroshare-gui/src/retroshare-gui.pro
+++ b/retroshare-gui/src/retroshare-gui.pro
@@ -59,7 +59,7 @@ rs_gui_cmark {
DUMMYCMARKINPUT = FORCE
CMAKE_GENERATOR_OVERRIDE=""
- win32-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\""
+ win32-g++|win32-clang-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\""
gencmarklib.name = Generating libcmark.
gencmarklib.input = DUMMYCMARKINPUT
gencmarklib.output = $$clean_path($${CMARK_BUILD_PATH}/src/libcmark.a)
@@ -73,6 +73,7 @@ rs_gui_cmark {
mkdir -p $${CMARK_BUILD_PATH} && cd $${CMARK_BUILD_PATH} && \
cmake \
-DCMAKE_CXX_COMPILER=$$QMAKE_CXX \
+ \"-DCMAKE_CXX_FLAGS=$${QMAKE_CXXFLAGS}\" \
$${CMAKE_GENERATOR_OVERRIDE} \
-DCMAKE_INSTALL_PREFIX=. \
-B. \
@@ -209,7 +210,7 @@ win32-x-g++ {
#################################### Windows #####################################
-win32-g++ {
+win32-g++|win32-clang-g++ {
CONFIG(debug, debug|release) {
# show console output
CONFIG += console
diff --git a/retroshare-service/src/retroshare-service.pro b/retroshare-service/src/retroshare-service.pro
index ae3b38049..c9c884cee 100644
--- a/retroshare-service/src/retroshare-service.pro
+++ b/retroshare-service/src/retroshare-service.pro
@@ -88,7 +88,7 @@ macx {
################################# Windows ##########################################
-win32-g++ {
+win32-g++|win32-clang-g++ {
CONFIG(debug, debug|release) {
# show console output
CONFIG += console
diff --git a/retroshare.pri b/retroshare.pri
index 994ced0f2..500300cfd 100644
--- a/retroshare.pri
+++ b/retroshare.pri
@@ -146,12 +146,12 @@ CONFIG *= rs_bob
no_rs_bob:CONFIG -= rs_bob
# To enable channel indexing append the following assignation to qmake command
-# line "CONFIG+=rs_deep_channel_index"
-CONFIG *= no_rs_deep_channel_index
-rs_deep_channel_index:CONFIG -= no_rs_deep_channel_index
+# line "CONFIG+=rs_deep_channels_index"
+CONFIG *= no_rs_deep_channels_index
+rs_deep_channels_index:CONFIG -= no_rs_deep_channels_index
# To enable deep files indexing append the following assignation to qmake
-# command line "CONFIG+=rs_files_index"
+# command line "CONFIG+=rs_deep_files_index"
CONFIG *= no_rs_deep_files_index
rs_deep_files_index:CONFIG -= no_rs_deep_files_index
@@ -430,7 +430,7 @@ defined in command line")
DEFINES += RS_MINI_VERSION=$${RS_MINI_VERSION}
DEFINES += RS_EXTRA_VERSION=\\\"$${RS_EXTRA_VERSION}\\\"
} else {
- RS_GIT_DESCRIBE = $$system(git describe)
+ RS_GIT_DESCRIBE = $$system(git describe --long --match v*.*.*)
contains(RS_GIT_DESCRIBE, ^v\d+\.\d+\.\d+.*) {
RS_GIT_DESCRIBE_SPLIT = $$split(RS_GIT_DESCRIBE, v)
RS_GIT_DESCRIBE_SPLIT = $$split(RS_GIT_DESCRIBE_SPLIT, .)
@@ -640,7 +640,7 @@ android-* {
RS_THREAD_LIB =
}
-win32-g++ {
+win32-g++|win32-clang-g++ {
!isEmpty(EXTERNAL_LIB_DIR) {
message(Use pre-compiled libraries in $${EXTERNAL_LIB_DIR}.)
PREFIX = $$system_path($$EXTERNAL_LIB_DIR)
@@ -692,6 +692,10 @@ win32-g++ {
message(***retroshare.pri:Win32 PREFIX $$PREFIX INCLUDEPATH $$INCLUDEPATH QMAKE_LIBDIR $$QMAKE_LIBDIR DEFINES $$DEFINES)
}
+win32-clang-g++ {
+ QMAKE_CXXFLAGS += -femulated-tls
+}
+
macx-* {
rs_macos10.8 {
message(***retroshare.pri: Set Target and SDK to MacOS 10.8 )