Commit Graph

145 Commits

Author SHA1 Message Date
Tal Regev 32b9ccfe1d
Compile boinc as webassembly 2022-06-09 16:05:47 +03:00
Anna “CyberTailor” 6301314600
Install headers required to build wrapper app
Signed-off-by: Anna Vyalkova <cyber@sysrq.in>
2022-05-30 22:38:01 +05:00
Anna “CyberTailor” 319e2d5360
Add libboinc_fcgi.pc pkg-config file 2021-11-10 01:49:38 +05:00
Anna “CyberTailor” 2680b24b83
Add libboinc_crypt.pc pkg-config file 2021-11-10 01:49:06 +05:00
Anna “CyberTailor” 0dea61d825
Add libboinc.pc pkg-config file 2021-11-10 01:48:25 +05:00
Tal Regev 03011e8f30
Add mingw apps_gui 2021-08-16 21:56:56 +03:00
brevilo 4e1617fbca
Merge pull request #3218 from BOINC/pr_3179_mac2
Mac: Add missing .cpp + .h file to lib/Makefile.am
2020-03-03 16:49:22 +01:00
James Molson a513855d55 FreeBSD: Add a check in configure.ac and in lib/Makefile.am link to
execinfo.
2019-07-11 16:40:30 +02:00
James Molson 84e302cab7 Mac: Add missing .cpp + .h file to lib/Makefile.am 2019-07-11 16:36:15 +02:00
Christian Beer 6dbf55fd9a Tests: add unit testing framework using googletest
* 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.
2019-04-20 13:30:03 +02:00
David Anderson 9e58be90e1 scheduler: parse <wsl> and <wsl_available>
Currently these generate a server log error message.
TODO: add plan class support for WSL
2018-11-07 09:44:23 -08:00
Vitalii Koshura f8f6443074
[Client] [WSL] Extend detection.
Move WSL detection to get_host_info().
Enumerate available WSLs from registry.
Add wslapi library loading.
Add support of multiple installed wsl distros detection.
Detect only installed and configured distros.
Add extra information parse.
Add wslinfo files to save and parse wsl info.
Add dont_use_wsl param to cc_config.
Add missed hostinfo_wsl.cpp when building win client using gcc.
Fix small issues.
Small refactoring.

Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2018-06-24 03:08:11 +03:00
James Molson dad1069a8a
Add missing mac_spawn entries to lib/Makefile.am 2018-05-15 14:03:48 +02:00
David Anderson d1561a7402 Merge pull request #1638 from BOINC/fix_c++11_build
Fix c++11 build
2017-08-14 16:56:02 -07:00
David Anderson 5add5fda1d client: update keyword handling
new keyword model:
- keywords as identified by integer IDs
- instead of being treated as opaque data,
    the keyword XML is now parsed by the client.

This is a first step: pass keywords from AM to client to scheduler,
so that they can be used in job filtering.
Displaying keywords in the client will come later.
2017-07-15 19:05:23 -07:00
Fabrice Fontaine bf807980c1 Fix LDFLAGS for cross-compilation
Remove "-L$(libdir) -rapth $(libdr)" from LDFLAGS of boinc libraries in
Makefile.am of api, lib, sched and zlib directories to be able to
cross-compile boinc.

Indeed, libdir is not equal to the path where BOINC will be installed
but to exec_prefix/lib. The full installation path is
$(DESTDIR)/$(libdir).

To cross-compile boinc, exec_prefix will be set to the target path (for
example: /usr) and DESTDIR will be set (during make install) to the
staging or target directory on the host (for example /home/xxx/target).
The issue of adding -L$(libdir) is that it is not allowed by the
compiler, the error "unsafe header/library path used in
cross-compilation: '-L/usr/lib'" will be raised.

As a result, remove "-L$(libdir) -rapth $(libdr)" from LDFLAGS, the
default library search paths are sufficient for "standard" compilation
or can be updated manually by passing the additional search path to
LDFLAGS during the configure call for cross-compilation.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2017-03-04 16:46:41 +01:00
Christian Beer 09fa014300 Build: fix whitespace and UTF8 issues 2016-09-01 16:37:02 +02:00
David Anderson c797441941 remove dependency of coproc.h on str_replace.h 2016-08-26 12:31:54 -07:00
David Anderson 99d7da00e7 Unix build: add str_replace.h to list of installed .h files 2016-08-26 11:50:31 -07:00
Rom Walton a2f58bf7c8 lib: Fix build break 2016-02-09 07:55:22 -05:00
David Anderson ea7edd75b3 Move sched_msgs.* from sched/ to lib/
Lets SCHED_MSG_LOG be used including only -lboinc, not -lsched.
This is a tactical move; SETI@home back-end code
uses SCHED_MSG_LOG and I need to make this work without -lsched,
which pulls in MySQL libraries which I don't want.
2015-09-08 11:28:06 -07:00
Rom Walton 6e6fc4f741 BUILD: Add missing CXX Flags options for SSL to crypt_prog 2015-01-20 08:23:33 -05:00
Rom Walton 9536e1d161 BUILD: Do not build libboinccrypt unless we are also building either the server or client software.
We should not require projects to build/install openssl for Android just so use libboinc and libboincapi.
2015-01-19 16:50:27 -05:00
Rom Walton 53067d700e lib: Fixes for newer GCC versions when compiling md5.c. 2014-08-26 12:21:00 -04:00
David Anderson 3913022bd5 Unix build: fix typo in lib Makefile, from Gianfranco 2014-08-11 11:30:34 -07:00
Eric J Korpela ede92572e9 AUTOMAKE: One more double-install prevented. 2014-06-23 15:05:44 -07:00
Eric J Korpela 7deacd455a AUTOMAKE: Prevent attempted double install of *_win.h 2014-06-23 15:00:27 -07:00
Eric J Korpela bac5f43443 Fixed missing continuation mark 2014-05-02 10:32:42 -07:00
U-X1\korpela 4a357acddc Changes for mingw32 cross compile 2014-04-29 07:50:33 -07:00
Eric J Korpela f6bfb14433 Fix for fcgi compiles. 2013-10-28 16:19:48 -07:00
David Anderson 96a85b4ab6 Move thread.cpp,h from lib/ to client/, to remove dependency on pthread in libboinc 2013-10-17 09:45:49 -07:00
David Anderson b2a6a6528d linux build: add -lpthread 2013-10-11 22:17:15 -07:00
David Anderson ebde7809ce client: preliminary implementation (commented out) of sub-second throttling 2013-09-20 14:30:04 -07:00
David Anderson c1ee47216b Move OpenCL-related code to a separate file 2013-08-25 14:13:14 -07:00
David Anderson b98bc309cc API: fix bug involving suspend and critical sections
Old: if the timer thread gets a <suspend> message while we're in
a critical section, it sets a "suspend_request" flag.
The timer then periodically (10X/sec) checks whether
suspend_request is set and we're no longer in a critical section;
if so it suspends the worker thread.

Problem (pointed out by Oliver): this doesn't work if the worker thread
is almost always in a critical section
(as is the case for GPU apps, which treat GPU kernels as critical sections).
The app never gets suspended.

New:
1) boinc_end_critical_section() checks suspend_request;
    if set, it calls suspend_activities()
2) On Unix, if suspend_activities() is called from the worker thread,
    it calls sleep() in a loop until the suspension is over.
    (Note: pthreads has no suspend/resume).
3) Add a mutex to protect the data structures shared between
    the timer and worker threads.

Oliver pointed out that
2013-06-05 15:22:39 -07:00
David Anderson ff261cb6df Condor interface: bug fixes; add request_gen script; add retire_batch command 2013-05-30 09:44:58 -07:00
David Anderson 8e2524f55f Unix build: Makefile changes for "make install", from Steffen Moeller
"make install" followed by make_project should now work
2013-05-20 15:19:13 -07:00
David Anderson f1c7b6a97d fix some Clang warnings; from Steffen Moeller 2013-05-20 12:58:52 -07:00
Eric J Korpela 7b8fae6b1e Fix for "make clean" not removing .a files in lib/ 2013-04-03 09:56:25 -07:00
Eric J Korpela 9b191c409a - Modifications to autoconf scripts for non-standard openssl installs 2013-03-05 14:17:54 +01:00
David Anderson caf56b8b6b - lib: change get_mac_address() to avoid sprintf(buf, "%s...", buf);
use strcat instead
- client: don't use get_mac_address() to create host CPIDs
    (we have plenty of other info to make them unique)
- storage stuff


svn path=/trunk/boinc/; revision=25269
2012-02-16 00:08:40 +00:00
David Anderson 57fc54ae53 - lib: move XML parse test program to its own file.
Note: XML_PARSER::parse_str() doesn't currently work right
    for something like <foo><a>xx</a></foo>.
    It should return "<a>xx</a>".
    TODO.


svn path=/trunk/boinc/; revision=24325
2011-10-03 21:43:34 +00:00
Rom Walton d4dd0ed53d lib: only build the static version of libboinc.
lib/
        Makefile.am

svn path=/trunk/boinc/; revision=24301
2011-09-27 16:34:31 +00:00
David Anderson 2fa6bc999e - lib: don't include thread.cpp;
not needed for server, and causes errors on some 64-bit Linux 


svn path=/trunk/boinc/; revision=24256
2011-09-22 06:09:26 +00:00
David Anderson f56020dd84 - lib: add generic interfaces for threads and thread synchronization
svn path=/trunk/boinc/; revision=24234
2011-09-19 05:48:43 +00:00
David Anderson 8ad9d7d98b - more code shuffling:
proc_control: controlling processes
    procinfo: enumerating and querying processes
    run_app_windows: launching apps as other users on Win


svn path=/trunk/boinc/; revision=24120
2011-09-02 18:23:13 +00:00
Charlie Fenton 5c02c6a01e lib, api: bring Xcode and make files into agreement
svn path=/trunk/boinc/; revision=24104
2011-09-01 09:02:54 +00:00
David Anderson 93735f7172 - client: XML-escape the contents of stderr files;
otherwise non-ASCII characters in client_state.xml
    make it invalid XML
- client: fix (I think) to scheduling logic.
    a job is preemptable if it's finished its time slice and
    Old: has checkpointed in last 10 sec
    New: has checkpointed since the end of the time slice


svn path=/trunk/boinc/; revision=23551
2011-05-17 00:31:41 +00:00
David Anderson 0ba3cc2d7b - client: shuffle code to move CONFIG and LOG_FLAGS
into lib/cc_config.h,
    in preparation for adding GUI RPCS


svn path=/trunk/boinc/; revision=23432
2011-04-25 03:18:26 +00:00
David Anderson 247413b291 - server/client: make a stripped-down OpenCL header file, lib/cl_boinc.h,
for the things that BOINC actually needs
    (fixes server compile problems)
- client: fix various compile errors in coproc_detect.cpp


svn path=/trunk/boinc/; revision=23310
2011-04-01 19:39:58 +00:00