Speed improvements:
- CMake configuration is only done on the first build.
- Avoid building if configuration was unsuccessful (fail fast).
- Preserve %ERRORLEVEL% on exit (avoid running subsequent commands).
Other improvements:
- Remove check for "nul" directory as this doesn't work on modern
Windows. It is now possible to check for the directory itself.
- Use K&R braces/parentheses everywhere (i.e. not banner style).
- Strip trailing whitespace.
Enhanced the msvc_build.bat batch file to support Visual Studio 2019 (in addition to VS2017) and to automatically detect the highest supported installed version of Visual Studio and use it.
In cmd.exe quote characters are included to a variable value which
causes problems in using the result of concatenation of such
variables since the result becomes like this:
C:\MuseScore\"msvc.build"_"x64"\mscore
which is interpeted by some programs as this:
C:\MuseScore"msvc.build_x64\mscore
^^^
which leads to invalid results.
WinSparkle is used to auto update MuseScore on Windows.
Add basic API calls to make it work.
Add winsparkle.dll and includes.
Generate appCast.xml and put to S3
* don't build winsparkle routines with local build
* fix interactions with global checkForUpdates option
* Mac now invalidates both Win and Mac appcast files
* fix scriptrecorder compilation + fix generating appCast for stable version
* Fix packaging WinSparkle
* change exe file name to MuseScore3.exe
* generate package GUID automatically to avoid installation collisions
* Use embedded update checker for UNSTABLE Windows builds
* comment WinSparkle appcast.xml deploy for unstable builds
Update cmake files to support 64-bit compilation.
Add variables to easily switch between 32-bit and 64-bit compilation
Update msvc_build.bat to support both 32-bit and 64-bit compilation
Optimize msvc_build.bat to avoi excessive output
Update AppVeyor build scripts so that default compilation is 64-bit now
Make default configuration built from opening MuseScore directory 64-bit
RelWithDebInfo. All other configurations are up to msvc_build.bat
script.
Qt libs which are used for building are placed in msvc2017_64 folder.
These changes require new structure of the dependencies folder.
Replace *.ts mask with the list of real .ts files.
Make lrelease dependent from mscore to call it automatically when building MSVC code
Add debug build to msvc_build.bat
1) fix some bugs which appear in runtime: replace QString::tostdstring() to Foo.toUtf8().constData().
2) Enable start center online community. To use it you need download webengine in your QT lib. see instruction https://musescore.org/en/handbook/developers-handbook/compilation/compile-instructions-windows-visual-studio-2017-wip
3) update install steps. Add additional dlls for webEngine. Add copying dlls and musescore.exe to /msvc.install/bin folder. Run project will work with the "$(ProjectDir)\..\..\msvc.install\bin\MuseScore.exe" specified in Debugging field in mscore project
4) Moving AppVeyor from MinGW to MSVC. Exclude ALL MSVC project from INSTALL project. Exclude ALL from PACKAGE. Remove migw-cmake in script build, add .bat instead. Remove xcopy from 7z archive step
5) Fix warning : Warning C4703 potentially uninitialized local pointer variable '' used; Warning C4456 declaration of '' hides previous local declaration; Warning C4458 declaration of '' hides class member
6) Change path to 11 version wix toolset which created .msi installer package