Added new projects to build with Microsoft Visual Studio 2019.
Added vcpkg support for 3rd party libraries.
For simplification all executables use static linked libraries
(impact +0.5 MB or < 3%).
Enable build for all projects (including examples for opencl, cuda etc).
Configuration is not tested yet, so no CI added.
Also because of the reason above projects for VS 2013 are not removed yet too.
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
Make force upgrade for non-interactive sesstion.
Add android/.vagrant folder to .gitignore
Fixes#3113
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
* enable coverage reports from gcc and disable optimizations via option to configure
* install googletest library into buildcache
* script to compile and run unit tests using cmake
* first set of unit tests originaly contributed by Keith Uplinger
There are several hardcoded paths and assumptions made in order to get this working on Travis CI. New tooling is using cmake for cross platform builds and as such is not easy to use with an autotools based system.
It's not ideal but better than nothing.
... rather than generating it during configure.
This way things work for projects that don't do "configure",
e.g. because they use only the web code.
And it's simpler.
Maintain this as for client version #s.
The minor version # is even in release branches,
odd in development branches like master.
Microsoft Visual Studio Code is a very useful and popular IDE.
This commit adds .vscode folder to .gitignore.
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
Visual Studio 2015/2017 use new cache/options directory .vs in the root of solution directory and should be ignored
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
Both Fedora and Debian have their own systemd units for boinc;
this is based on elements of both so we stop duplicating effort.
This also adds minimal confinement to protect the home directories.
Also added clean to init.d script and made it only install if a
init.d directory already exists.
Closes: #2255
This reduces the size of files to be cached between builds by the CI system. The scripts are flexible enough so they can also be used by developers locally.
Until now we used a transifex-github bridge to manage translations and templates. This proved to be unreliable lately and also needs a special setup to be maintained. This PR eliminates the need for a special bridging software and uses transifex tools directly with minimal maintenance required. Major changes include:
* website translations (project-generic) are now stored in one place where they are also used (no manual copying of files anymore)
* the transifex client is used to pull down translation resources that are 100% translated and put's them in the correct place
* the updatetrans.sh script does all the steps to update translations in the repository (supposed to run as a cronjob)
What updatetrans.sh can't do right now is update templates and upload them to transifex. That will be done by another script.
This finishes the transition from the txgh bridge to using the transifex client to download translations and update them in the github repository. A BOINC developer needs to have write access to the github repository and must be a maintainer of the transifex project.
Don't forget to initialize the transifex client with the transifex credentials (http://docs.transifex.com/client/init/) before first use of the script.
The validator handler can now pass unknown arguments to the project specific handler.
Projects that have there own validator need to implement the validate_handler_init() function and handle project specific arguments there. They also need to supply a validate_handler_usage() function that printf()'s a description of the custom options. For examples see sample_substr_validator.cpp or script_validator.cpp
The validator test harness was also adopted to use this new functions.
This brings the implementation of the validator framework on the same level as the assimilator framework where similar changes where made in 0038d275c and dd004404a.