-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cmake #3
base: cmake
Are you sure you want to change the base?
Cmake #3
Commits on Oct 27, 2017
-
Configuration menu - View commit details
-
Copy full SHA for 2cf560c - Browse repository at this point
Copy the full SHA 2cf560cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f93304 - Browse repository at this point
Copy the full SHA 1f93304View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8fd01f3 - Browse repository at this point
Copy the full SHA 8fd01f3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c9d6b8 - Browse repository at this point
Copy the full SHA 1c9d6b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 281564a - Browse repository at this point
Copy the full SHA 281564aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9a0b3f8 - Browse repository at this point
Copy the full SHA 9a0b3f8View commit details
Commits on Oct 28, 2017
-
Configuration menu - View commit details
-
Copy full SHA for 770ff5e - Browse repository at this point
Copy the full SHA 770ff5eView commit details -
Try more specific path to service/util.h in client
Ideally we should rename this file, but for now I'm not willing to take that on
Configuration menu - View commit details
-
Copy full SHA for 073696a - Browse repository at this point
Copy the full SHA 073696aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 630b172 - Browse repository at this point
Copy the full SHA 630b172View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ea3810 - Browse repository at this point
Copy the full SHA 9ea3810View commit details
Commits on Oct 31, 2017
-
Configuration menu - View commit details
-
Copy full SHA for 415b488 - Browse repository at this point
Copy the full SHA 415b488View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c4b30f - Browse repository at this point
Copy the full SHA 4c4b30fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0274bcb - Browse repository at this point
Copy the full SHA 0274bcbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b77473 - Browse repository at this point
Copy the full SHA 2b77473View commit details -
Configuration menu - View commit details
-
Copy full SHA for 73664ea - Browse repository at this point
Copy the full SHA 73664eaView commit details
Commits on Nov 2, 2017
-
Configuration menu - View commit details
-
Copy full SHA for e618696 - Browse repository at this point
Copy the full SHA e618696View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8baad7e - Browse repository at this point
Copy the full SHA 8baad7eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0bf49b9 - Browse repository at this point
Copy the full SHA 0bf49b9View commit details
Commits on Nov 12, 2017
-
Fix Libcap-ng not found because inconsintency in variable name
Winfried Dobbe committedNov 12, 2017 Configuration menu - View commit details
-
Copy full SHA for e15b49c - Browse repository at this point
Copy the full SHA e15b49cView commit details
Commits on Nov 13, 2017
-
Winfried Dobbe committed
Nov 13, 2017 Configuration menu - View commit details
-
Copy full SHA for 52e5168 - Browse repository at this point
Copy the full SHA 52e5168View commit details
Commits on Dec 19, 2017
-
Continue adding install targets
Winfried Dobbe committedDec 19, 2017 Configuration menu - View commit details
-
Copy full SHA for b2b9fc6 - Browse repository at this point
Copy the full SHA b2b9fc6View commit details
Commits on Jul 17, 2018
-
Previously, `get_absfilename()` was replacing '/..' for '/', without deleting the parent directory string.
Configuration menu - View commit details
-
Copy full SHA for 60c580d - Browse repository at this point
Copy the full SHA 60c580dView commit details
Commits on Jul 19, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 03e80e7 - Browse repository at this point
Copy the full SHA 03e80e7View commit details
Commits on Sep 14, 2018
-
Configuration menu - View commit details
-
Copy full SHA for f0658cb - Browse repository at this point
Copy the full SHA f0658cbView commit details
Commits on Oct 10, 2018
-
Merge pull request icecc#418 from xcorail/master
Add LGTM code quality badges
Configuration menu - View commit details
-
Copy full SHA for 6f6db88 - Browse repository at this point
Copy the full SHA 6f6db88View commit details
Commits on Oct 12, 2018
-
Configuration menu - View commit details
-
Copy full SHA for e3d10a3 - Browse repository at this point
Copy the full SHA e3d10a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for cc8adcf - Browse repository at this point
Copy the full SHA cc8adcfView commit details
Commits on Nov 27, 2018
-
Clarify that the usual usage pattern for icecc (adding its symlinks to $PATH) should not be followed when using ccache's own symlinks.
Configuration menu - View commit details
-
Copy full SHA for bd12909 - Browse repository at this point
Copy the full SHA bd12909View commit details
Commits on Nov 28, 2018
-
Configuration menu - View commit details
-
Copy full SHA for c1ccc4a - Browse repository at this point
Copy the full SHA c1ccc4aView commit details -
Merge pull request icecc#434 from smowton/patch-1
Improve ccache + icecc advice
Configuration menu - View commit details
-
Copy full SHA for f429052 - Browse repository at this point
Copy the full SHA f429052View commit details -
Additional Assembler Files for Linux Kernel (icecc#430)
* Add unit tests for assembler options This is to ensure we don't break existing functionality in subsequent patches. * Clean up assembly argument handling to process all arguments This patch should have no functional changes besides handling a few more esoteric cases of assembler arguments. The -Wa arguments are split by comma and analyzed one by one with a new helper function. * Check for assembler options that have two arguments According to the gas help file there are two options that have two arguments where the second argument does not start with a hyphen (--debug-prefix-map OLD=NEW and --defsym SYM=VAL). With the current code, these arguments will be forced to run locally, even though there's no good reason for that. * Ensure assembler argument files run locally Any assembler option beginning with @ specifies more options that must be in a file. Instead of trying to parse all of those arguments, we just force that file to run locally. * Stop forcing the use of -pipe in the compiler The -pipe flag does not work when passing additional assembly files with -Wa. GCC is not smart enough to add an additional '-' argument to ensure the assembler still reads from stdin when there are additional files passed through -Wa. Additionally, as a matter of policy, I think it's wrong for icecc to enforce using -pipe and should be left to the individual build systems to make this decision. Besides that, in this day and age, the performance benefits of -pipe are dubious at best. * Add support for additional assembly files passed through gcc The Linux kernel has started passing an extra assembly file to all compilation steps in order to add globally available inline macros. It does this by passing an extra file using -Wa. Currently this causes icecc to force the build locally which means compiling the kernel cannot be distributed. In order to support this in icecc, we add any such files to the extra files in the environment.
Configuration menu - View commit details
-
Copy full SHA for 69caa4a - Browse repository at this point
Copy the full SHA 69caa4aView commit details -
limit the ICECC_REMOTE_CPP/-pedantic workaround to avoid new breakage (…
…icecc#426) ICECC_REMOTE_CPP is typically used to avoid remote (clang) compilation errors, so we should avoid disabling it where possible. The test case in icecc#410 passes if you specify an official language standard rather than using GCC's default (which allows GNU extensions). Let's check this before deciding to disable ICECC_REMOTE_CPP. Followup to icecc#411.
Configuration menu - View commit details
-
Copy full SHA for f469bc9 - Browse repository at this point
Copy the full SHA f469bc9View commit details -
Various fixes related to Clear Linux (icecc#431)
* Also include base libraries for AVX2 and AVX512 builds glibc supports searching for libraries in subdirs according to the CPU features. On x86-64, those are "haswell" and "avx512_1", as in: $ ldd /usr/bin/icecc | grep haswell libstdc++.so.6 => /usr/lib64/haswell/avx512_1/libstdc++.so.6 libc.so.6 => /usr/lib64/haswell/libc.so.6 libm.so.6 => /usr/lib64/haswell/avx512_1/libm.so.6 With this change, we'll include the base library or libraries in the environment. In the system above, we'll include /usr/lib64/libm.so.6, /usr/lib64/haswell/libm.so.6 in addition to the libm listed in ldd's output. * Fix finding ld.so.conf on Clear Linux Clear Linux has a "stateless" /etc, meaning that all files there are supposed to belong to the user. The ld.so.cache file is instead in /var/cache/ldconfig. * Fix warning printed when /lib or /lib64 are symlinks icecc-create-env was printing: [...] adding file /usr/bin/objcopy adding file /etc/ld.so.conf=/tmp/icecc_ld_so_confTsSNqs cp: -r not specified; omitting directory '/lib' cp: -r not specified; omitting directory '/lib64' creating d7801039695fbb794e026bdaf287276c.tar.gz The -p option means to preserve ownership, timestamps, etc., but doesn't tell cp to operate on the symlink itself. The -P option does.
Configuration menu - View commit details
-
Copy full SHA for 67d989c - Browse repository at this point
Copy the full SHA 67d989cView commit details
Commits on Dec 12, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 19ebe8a - Browse repository at this point
Copy the full SHA 19ebe8aView commit details -
Add support for decompressing more tarballs
Detect xz and zst compressions too. This allows teams that know all their iceccd servers have been updated to this version to package the environment using more efficient file formats. The test is updated to detect different file extensions, should icecc-create-env produce them.
Configuration menu - View commit details
-
Copy full SHA for 7be9e25 - Browse repository at this point
Copy the full SHA 7be9e25View commit details
Commits on Dec 17, 2018
-
Add Cirrus-CI config for FreeBSD builds (icecc#440)
* Add Cirrus-CI config for FreeBSD builds * Add build status badge
Configuration menu - View commit details
-
Copy full SHA for e39103f - Browse repository at this point
Copy the full SHA e39103fView commit details
Commits on Feb 2, 2019
-
Keep -Werror=missing-include-dirs local
Hannu Lyytinen committedFeb 2, 2019 Configuration menu - View commit details
-
Copy full SHA for 27a2e59 - Browse repository at this point
Copy the full SHA 27a2e59View commit details
Commits on Feb 22, 2019
-
Fix ignoring objective c/c++ language option as valid.
Rene Rivera committedFeb 22, 2019 Configuration menu - View commit details
-
Copy full SHA for 1759235 - Browse repository at this point
Copy the full SHA 1759235View commit details
Commits on Mar 9, 2019
-
filter out also -include-pch when preprocessing for the remote
It's apparently making Clang slower (presumably -include-pch is handled even in the -frewrite-includes mode where it's useless). Gcc's -include .gch is handled the same way already.
Configuration menu - View commit details
-
Copy full SHA for 3cc917e - Browse repository at this point
Copy the full SHA 3cc917eView commit details -
Merge pull request icecc#450 from llunak/master
filter out also -include-pch when preprocessing for the remote
Configuration menu - View commit details
-
Copy full SHA for 070d953 - Browse repository at this point
Copy the full SHA 070d953View commit details
Commits on Apr 23, 2019
-
Configuration menu - View commit details
-
Copy full SHA for d3aea80 - Browse repository at this point
Copy the full SHA d3aea80View commit details
Commits on Apr 25, 2019
-
Merge pull request icecc#461 from cooldavid/gentoo-usage
Update instructions for gentoo
Configuration menu - View commit details
-
Copy full SHA for c1af219 - Browse repository at this point
Copy the full SHA c1af219View commit details -
Merge pull request icecc#448 from disbeliefstudio/bugfix/x-obj-c
Fix ignoring objective c/c++ language option as valid.
Configuration menu - View commit details
-
Copy full SHA for c7157a9 - Browse repository at this point
Copy the full SHA c7157a9View commit details -
Merge pull request icecc#446 from hlyytine/poky-fix
Keep -Werror=missing-include-dirs local
Configuration menu - View commit details
-
Copy full SHA for fa4dd76 - Browse repository at this point
Copy the full SHA fa4dd76View commit details
Commits on Apr 30, 2019
-
Configuration menu - View commit details
-
Copy full SHA for e71173e - Browse repository at this point
Copy the full SHA e71173eView commit details
Commits on May 1, 2019
-
Removed dependency on native tar command and used libarchive library (i…
…cecc#447) * Removed dependency on native tar command and used libarchive library instead * Updated NEWS and README.
Configuration menu - View commit details
-
Copy full SHA for 0c7c455 - Browse repository at this point
Copy the full SHA 0c7c455View commit details
Commits on May 31, 2019
-
make sure check failures also cause a failure in travis builds
6756498 added 'make dist' to the end of the travis build commands, effectively hiding exit code from 'make test'
Configuration menu - View commit details
-
Copy full SHA for f83b000 - Browse repository at this point
Copy the full SHA f83b000View commit details -
Configuration menu - View commit details
-
Copy full SHA for e6ada97 - Browse repository at this point
Copy the full SHA e6ada97View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9c1590b - Browse repository at this point
Copy the full SHA 9c1590bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0bfca5a - Browse repository at this point
Copy the full SHA 0bfca5aView commit details -
Configuration menu - View commit details
-
Copy full SHA for e11195a - Browse repository at this point
Copy the full SHA e11195aView commit details -
drop -fpch-preprocess from local flags
It'd insert a pragma that'd make the remote compilation break. And ccache recommends it as one way to make ccache work with PCH.
Configuration menu - View commit details
-
Copy full SHA for c56c19e - Browse repository at this point
Copy the full SHA c56c19eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1069f24 - Browse repository at this point
Copy the full SHA 1069f24View commit details -
Configuration menu - View commit details
-
Copy full SHA for 942ac71 - Browse repository at this point
Copy the full SHA 942ac71View commit details -
do not use -fdirectives-only locally, ever
For whatever sick reason the pch test fails locally with gcc9 because "not used because `__FLT_MIN__' defined as ` 1.17549435082228750796873653722224568e-38F' not ` 1.1'".
Configuration menu - View commit details
-
Copy full SHA for 968fca4 - Browse repository at this point
Copy the full SHA 968fca4View commit details -
Configuration menu - View commit details
-
Copy full SHA for b20ff79 - Browse repository at this point
Copy the full SHA b20ff79View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7421b5e - Browse repository at this point
Copy the full SHA 7421b5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for b816d44 - Browse repository at this point
Copy the full SHA b816d44View commit details -
do not require absolute path in debug tests with absolute path
It may be because of clang's -fdebug-compilation-dir, but gdb here now shows the path only as debug/debug2.cpp and not the full path. As long as the actual gdb output works (and thus gdb can find the file), this doesn't actually matter, so do not require the full path.
Configuration menu - View commit details
-
Copy full SHA for 5a4cf10 - Browse repository at this point
Copy the full SHA 5a4cf10View commit details -
force -ftime-report* and -ftime-trace as local builds
They are profiling options for the compiler itself.
Configuration menu - View commit details
-
Copy full SHA for b807f1c - Browse repository at this point
Copy the full SHA b807f1cView commit details -
Configuration menu - View commit details
-
Copy full SHA for ec9e5f0 - Browse repository at this point
Copy the full SHA ec9e5f0View commit details
Commits on Jun 1, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 9713dce - Browse repository at this point
Copy the full SHA 9713dceView commit details
Commits on Jun 2, 2019
-
Merge pull request icecc#406 from kito-cheng/master
Always compile cmake tests locally
Configuration menu - View commit details
-
Copy full SHA for 341f5b9 - Browse repository at this point
Copy the full SHA 341f5b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for fc03a71 - Browse repository at this point
Copy the full SHA fc03a71View commit details -
make .cirrus.xml also actually build icecream
'make dist' just creates a tarball, it doesn't build the sources
Configuration menu - View commit details
-
Copy full SHA for d4358e1 - Browse repository at this point
Copy the full SHA d4358e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for dff9def - Browse repository at this point
Copy the full SHA dff9defView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a99dd8 - Browse repository at this point
Copy the full SHA 8a99dd8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3dc05e5 - Browse repository at this point
Copy the full SHA 3dc05e5View commit details
Commits on Jun 5, 2019
-
the mach codepath doesn't obtain `MemTotal`, which will always cause the a pessimistic 100MB memory limit. as later on, we'll just return 0. the best way on macos to obtain the total memory is reading `hw.memsize`
Configuration menu - View commit details
-
Copy full SHA for 1af3a23 - Browse repository at this point
Copy the full SHA 1af3a23View commit details -
Add support for Zstandard compression of the content
Zstandard (https://zstd.net) is a modern compression library also of the Lempel-Ziv family of compressors. Compared to LZO, if given the same CPU time, zstd will compress better. Testing with the "lzop" and "zstd" command-line tools indicates that the same-CPU-time level compression for a 7241 kB preprocessed source lies between zstd levels 2 and 3 (LZO takes 916 µs; zstd level 2 takes 753 µs and level 3 takes 1024 µs). Level 2 compresses this file to 1028 kB, while level 3 reaches 929 kB, compared to LZO's 1581 kB. However, when testing a full compilation of a large-ish source code (not including linking), we find that CPU time is the bottleneck, shared between the compressor and the preprocessors. The results of a best-of-5 run on this source are: lzo: 22.989s zstd1: 20.421s zstd2: 20.554s zstd3: 20.630s zstd4: 20.762s zstd5: 21.355s zstd6: 21.341s Therefore, this commit chooses level 1 as the default. The 11% gain in build time is caused the reduction in both CPU contention and the network transmission -- zstd level 1 compresses the above source to 1029 kB, which is almost 35% smaller than the LZO content.
Configuration menu - View commit details
-
Copy full SHA for 7f0d8d9 - Browse repository at this point
Copy the full SHA 7f0d8d9View commit details -
switch travis to ubuntu 16.04 where possible
And this 'where possible' is everythere except for the address/leak sanitizer, which is broken for whatever mysterious reason. We already had to explicitly force an older version of Ubuntu Trusty for the asan/lsan build, so keep it that way. In a summary: - Normal builds work fine with newer Ubuntu (if 16.04 can be called "newer"). - Sanitizers generally work with -fuse-ld=gold, so maybe the BFD ld is old/broken on these old Ubuntu versions. - Asan/lsan breaks when tests try to terminate the iceccd daemon. Either the signal handling is broken, or the leak cleanup is broken, it simply exists and the only thing it says is 'fatal error'. - I have no idea how to fix that. Even when using gcc9 from the ubuntu-toolchain-r-test it's still broken. - So stay on the ancient Trusty version. - However, there's no official zstd package for Trusty, so grab one from a "random" unsupported repository. It works *shrug*. - Also, asan contains lsan, so just use them together, so that the special handling is at least done only once.
Configuration menu - View commit details
-
Copy full SHA for 7bd85b3 - Browse repository at this point
Copy the full SHA 7bd85b3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a237aa - Browse repository at this point
Copy the full SHA 1a237aaView commit details -
force local rebuild if remote is missing file
There are cases where a remote compilation is failing due to a missing file, that we can't detect with limited amount of work before kicking off the compile. One such occasion is the Linux kernel including a file in a inline ASM statement in a C file via the incbin directive. If we detect a remote error with a missing file, force a local recompile. This should only be hit in a very limited number of cases, so there is no need for a more clever workaround.
Configuration menu - View commit details
-
Copy full SHA for f9d896c - Browse repository at this point
Copy the full SHA f9d896cView commit details -
allow other tests to fall back to local rebuild
There are some other issues, which require a local rebuild as a workaround. Rename the stderrfix to localrebuild and also honor it when building with clang to make it reusable.
Configuration menu - View commit details
-
Copy full SHA for f1797ed - Browse repository at this point
Copy the full SHA f1797edView commit details -
try local recompile when local cpp invocation fails
When fdirectives-only is used the local cpp can fail on some macro constructs that are incompatible with this mode of preprocessing. Currently this fails the build, as it's not a remote error, which would get recovered by a local rebuild, but the local side failing. Instead of failing the build, trigger a local rebuild. The failure rate is so small that any more sophisticated recovery seems to be wasted effort. This leads to an additional local recompile in case of broken code, that fails in the cpp, but I don't think that matters, as performance of failing builds is probably not as important. The tests need to account for the local fallback being triggered by a failing cpp invocation.
Configuration menu - View commit details
-
Copy full SHA for a29944f - Browse repository at this point
Copy the full SHA a29944fView commit details
Commits on Jun 7, 2019
-
handle -MF, -MT and -MQ when passed via -Wp
More fixes for Linux kernel build with -fdirectives-only. Some of the kernel tools are passing the above options directly to the preprocessor via -Wp. Need to make sure they are applied on the local cpp side.
Configuration menu - View commit details
-
Copy full SHA for 14eabd4 - Browse repository at this point
Copy the full SHA 14eabd4View commit details -
improve cross-compile handling for clang in icecc-create-env
One clang binary can be used to compile code for different architectures. One way to select the target architecture is the name of the compiler: A symlink with the target triple, e.g. armv7-unknown-linux-gnueabihf-clang. Add support for this in icecc-create-env by calling the clang binary as specified on the command-line when querying other tools and headers. This way the correct tools and headers for the desired architecture are added to the environment.
Configuration menu - View commit details
-
Copy full SHA for 1aa0885 - Browse repository at this point
Copy the full SHA 1aa0885View commit details
Commits on Jun 16, 2019
-
do not package Clang internal headers in icecc-create-env
It doesn't seem to be actually needed (tested with Clang 8.0.0 and 4.0.1). I have no idea why I added it, the commit doesn't say. Possibly initially -frewrite-includes had a bug that necessitated this.
Configuration menu - View commit details
-
Copy full SHA for dd623e7 - Browse repository at this point
Copy the full SHA dd623e7View commit details
Commits on Jun 19, 2019
-
remove special PCH handling with -include and -include-pch
As far as I can tell, this is mostly just needless trouble, and the purpose of the code is unclear and hard to understand. AFAICT the extension check means that it's mostly skipped anyway (because most headers have the extension starting with 'h'). And there are several commits in the history that try to fix this somehow only breaking something else. Without handling these options in any special way this should work in all cases, except for the case when the -include(-pch) option is required (i.e. the source does not include the headers from which the PCH has been built, so the PCH is the only source of that code). Since we do not ship PCHs to remote nodes and assume the code will build fine even without the PCH, this will obviously break. But although that mode of operation is supported by GCC, I consider it to be weird. And if this actually breaks things for somebody who uses it, they can complain so that it actually becomes clear what the problem is and how it can possibly be handled.
Configuration menu - View commit details
-
Copy full SHA for a6d299b - Browse repository at this point
Copy the full SHA a6d299bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 48a7cb7 - Browse repository at this point
Copy the full SHA 48a7cb7View commit details
Commits on Jun 20, 2019
-
Merge pull request icecc#473 from llunak/no-env-clang-includes
do not package Clang internal headers in icecc-create-env
Configuration menu - View commit details
-
Copy full SHA for 654cb28 - Browse repository at this point
Copy the full SHA 654cb28View commit details -
Merge pull request icecc#475 from llunak/remove_special_pch_include
remove special PCH handling with -include and -include-pch
Configuration menu - View commit details
-
Copy full SHA for 2ba5451 - Browse repository at this point
Copy the full SHA 2ba5451View commit details
Commits on Jun 23, 2019
-
-Xclang -building-pch-with-obj must be built locally
Since we strip the PCH for the remote build.
Configuration menu - View commit details
-
Copy full SHA for 7d6091e - Browse repository at this point
Copy the full SHA 7d6091eView commit details -
fix gcc9 warning about strncpy()
This is old code for backwards compatibility, so just silence the warning somehow in a way that works and be done with it.
Configuration menu - View commit details
-
Copy full SHA for ce3f16e - Browse repository at this point
Copy the full SHA ce3f16eView commit details -
Configuration menu - View commit details
-
Copy full SHA for b26de0e - Browse repository at this point
Copy the full SHA b26de0eView commit details -
Configuration menu - View commit details
-
Copy full SHA for c016252 - Browse repository at this point
Copy the full SHA c016252View commit details -
zstd clamps the value to the allowed range, and recent zstd versions allow even negative values for even faster compression
Configuration menu - View commit details
-
Copy full SHA for f206e6c - Browse repository at this point
Copy the full SHA f206e6cView commit details
Commits on Jun 24, 2019
-
Configuration menu - View commit details
-
Copy full SHA for b6d194f - Browse repository at this point
Copy the full SHA b6d194fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 01fe714 - Browse repository at this point
Copy the full SHA 01fe714View commit details -
std::string::find_last_of() -> rfind()
find_last_of() searches for any of the given characters, which is not used in these cases -> using find_last_of() is a needless confusion.
Configuration menu - View commit details
-
Copy full SHA for 8d77ce9 - Browse repository at this point
Copy the full SHA 8d77ce9View commit details
Commits on Jun 25, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 7b41835 - Browse repository at this point
Copy the full SHA 7b41835View commit details -
removed hardcoded compiler paths, allow usage of compiler in any loca…
…tion This removes the last cases of hardcoded paths like /usr/bin/gcc. Now icecc can be invoked with compiler in any location and the environment sent to the remote host will include the proper compiler. Supported compilers (binary names) are gcc/g++, clang/clang++ and cc/c++ (the first two including prefixes and postfixes, e.g. aarch64-suse-linux-gcc-6.
Configuration menu - View commit details
-
Copy full SHA for 17e5024 - Browse repository at this point
Copy the full SHA 17e5024View commit details -
create tarball in icecc-create-env atomically
There's a small chance that icecc-create-env will get invoked again for the same result (e.g. because different wrapper scripts point to the same real compiler), and so the existing tarball would be temporarily broken.
Configuration menu - View commit details
-
Copy full SHA for 5a8f6f1 - Browse repository at this point
Copy the full SHA 5a8f6f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3eb87d8 - Browse repository at this point
Copy the full SHA 3eb87d8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2eed5e3 - Browse repository at this point
Copy the full SHA 2eed5e3View commit details
Commits on Jun 29, 2019
-
keep order of remote arguments, especially -gsplit-dwarf (icecc#435)
This is based on pull requests icecc#425. Both gcc and clang have their peculiarities when handling -gsplit-dwarf depending on the exact order of this and other -g arguments. So keep the order the same and do not handle any of those arguments specially. This technically changes the protocol, but let's keep it as part of the recent version 41 change.
Configuration menu - View commit details
-
Copy full SHA for 8801771 - Browse repository at this point
Copy the full SHA 8801771View commit details -
Merge pull request icecc#477 from llunak/keep_args_order
keep order of remote arguments, especially -gsplit-dwarf (icecc#435)
Configuration menu - View commit details
-
Copy full SHA for 59fbc01 - Browse repository at this point
Copy the full SHA 59fbc01View commit details -
Configuration menu - View commit details
-
Copy full SHA for 05cfcdd - Browse repository at this point
Copy the full SHA 05cfcddView commit details -
Merge pull request icecc#403 from hferreiro/master
Fix get_absfilename()
Configuration menu - View commit details
-
Copy full SHA for 07bbfd1 - Browse repository at this point
Copy the full SHA 07bbfd1View commit details -
test -fsanitize-blacklist also with a path with /../
To check the recent commit fixing get_absfilename().
Configuration menu - View commit details
-
Copy full SHA for 04ebef0 - Browse repository at this point
Copy the full SHA 04ebef0View commit details -
fix resolve_path() in icecc-create-env (icecc#445)
If there's a cd to dirname of local_path, then the file itself becomes just basename of local_path indeed.
Configuration menu - View commit details
-
Copy full SHA for 70b9468 - Browse repository at this point
Copy the full SHA 70b9468View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9e050f6 - Browse repository at this point
Copy the full SHA 9e050f6View commit details -
std::find_first_of/find_last_of -> std::find/rfind
No idea why the codebase uses these for seaching for just one specific character.
Configuration menu - View commit details
-
Copy full SHA for 18c847b - Browse repository at this point
Copy the full SHA 18c847bView commit details -
increase default cache size limit to 256MiB (icecc#413)
Apparently nowadays environments sometimes can get close to or even over the 100MiB default, and 100MiB should count as an insignificant amount of disk space these days.
Configuration menu - View commit details
-
Copy full SHA for 4c3fbb1 - Browse repository at this point
Copy the full SHA 4c3fbb1View commit details
Commits on Jun 30, 2019
-
a node that can still accept one preload job is still eligible
We try to allow one more job that the configured maximum, this extra job being a preload job that will be sent to the remote node in the hope that by the time the transfer finishes the node will have a slot free.
Configuration menu - View commit details
-
Copy full SHA for 6fde17c - Browse repository at this point
Copy the full SHA 6fde17cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ab8860 - Browse repository at this point
Copy the full SHA 6ab8860View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5157268 - Browse repository at this point
Copy the full SHA 5157268View commit details
Commits on Jul 4, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 77e3b83 - Browse repository at this point
Copy the full SHA 77e3b83View commit details
Commits on Jul 5, 2019
-
handle EWOULDBLOCK, especially in flush_writebuf() (icecc#456,icecc#408)
Man pages for send and read say that EAGAIN and EWOULBLOCK are basically the same and that they should be checked both. Also, make sure log_perror() actually refers to the proper errno and not possibly to one from select(). This hopefully avoids the error messages from flush_writebuf() when the network gets overloaded.
Configuration menu - View commit details
-
Copy full SHA for d03f718 - Browse repository at this point
Copy the full SHA d03f718View commit details -
try to strip binaries in icecc-create-env
It used to be the case that it did 'strip -s' on the binaries, but f756262 reverted it because in icecc#154 somebody said that doing so corrupted the binaries there, for whatever reason. As now icecream automatically packages compiler in any location, this now again matters a bit more, as now it's easy to use icecream with a custom compiler build, so the "niche" case is now more likely (and I use it). And in that case this makes a big difference in the tarball size. Instead of using 'strip -s', which strips "all", use only --strip-unneeded or -g (= --strip-debug), which should be safe.
Configuration menu - View commit details
-
Copy full SHA for ea8e854 - Browse repository at this point
Copy the full SHA ea8e854View commit details
Commits on Jul 6, 2019
-
increase timeout 5->15s in MsgChannel::wait_for_protocol() (icecc#474)
As said in the issue, I'm somewhat doubtful on this, but it probably can't hurt much, and if it does, then somebody will complain and provide details on how this can possibly hurt. Or maybe the change is ok, we'll see.
Configuration menu - View commit details
-
Copy full SHA for dee71bb - Browse repository at this point
Copy the full SHA dee71bbView commit details
Commits on Jul 7, 2019
-
replace select() will poll() (icecc#453)
The primary reason is that select() works only with fds up to FD_SETSIZE, which is 1024 on Linux.
Configuration menu - View commit details
-
Copy full SHA for b248c3c - Browse repository at this point
Copy the full SHA b248c3cView commit details -
limit the -pedantic workaround to gcc
I see no point in limiting Clang just because GCC's -fdirectives-only has so many problems.
Configuration menu - View commit details
-
Copy full SHA for b64ffa9 - Browse repository at this point
Copy the full SHA b64ffa9View commit details -
handle also POLLHUP when checking poll() results
Unlike with select(), where readfds gets set even on EOF, with poll() POLLIN doesn't imply EOF and we need to check explicitly.
Configuration menu - View commit details
-
Copy full SHA for d88799f - Browse repository at this point
Copy the full SHA d88799fView commit details -
The "while receiving" part to me suggests that the end was unexpected, but given that this is the only non-error break out of the loop, it's apparently actually ok.
Configuration menu - View commit details
-
Copy full SHA for 882a3a9 - Browse repository at this point
Copy the full SHA 882a3a9View commit details -
try harder to receive error from remote daemon if compiler is broken
This should handle all those bugreports about "Broken pipe" such as icecc#257 that in fact are just about the environment tarball being broken.
Configuration menu - View commit details
-
Copy full SHA for 1ce5d1a - Browse repository at this point
Copy the full SHA 1ce5d1aView commit details -
handle better the case when icecc-create-env fails
Without this, instead of saying that the daemon failed to create the env, there is a confusing error message about "$ICECC_VERSION needs to point to .tar file".
Configuration menu - View commit details
-
Copy full SHA for 366e262 - Browse repository at this point
Copy the full SHA 366e262View commit details -
increase flush_writebuf() timeout to 30s and log timeout (icecc#456,i…
…cecc#408) I've finally managed to reliably reproduce the problems with flush_writebuf() writing error messages and forcing local compilation (building LibreOffice's Clang compilerplugins with -g). It turns out that it really is the case that the sending times out. This means that in those cases the network is so overloaded that it doesn't manage to send files in 20 seconds. I don't think there is really that much to do about it. I've increased the timeout slightly to 30s, but if just the network transfer takes that long, then presumably a local recompile is faster anyway. So also add a log message saying it's a timeout and I guess that's it.
Configuration menu - View commit details
-
Copy full SHA for b1f04ce - Browse repository at this point
Copy the full SHA b1f04ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for e978a01 - Browse repository at this point
Copy the full SHA e978a01View commit details -
rename write_server_cpp() to write_fd_to_server()
It's also used for sending the env. tarball and it's a bit confusing.
Configuration menu - View commit details
-
Copy full SHA for 8746ef2 - Browse repository at this point
Copy the full SHA 8746ef2View commit details -
make icecc-create-env faster with Clang built as shared libs
With GCC or statically built Clang this doesn't matter, but if the compiler consists of a number of libs and those generally depend on each other, then add_files() gets called recursively, with many duplicates. It actually checks for duplicates, using is_contained(), but apparently doing path manipulations manually in bash is not very fast. This optimization saves about 2/3 of the time.
Configuration menu - View commit details
-
Copy full SHA for c987923 - Browse repository at this point
Copy the full SHA c987923View commit details
Commits on Jul 9, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 7466c80 - Browse repository at this point
Copy the full SHA 7466c80View commit details -
make receiving environment more robust
The daemon was actually handling pretty poorly the cases when it couldn't handle properly the environment it had received, e.g. when the tarball was compressed in a way it couldn't decompress. Where "poorly" means it easily crashed. Also handling of who deletes the Msg object was unconsistent and error handling of handle_file_chunk_env() was broken as well.
Configuration menu - View commit details
-
Copy full SHA for aeba2f7 - Browse repository at this point
Copy the full SHA aeba2f7View commit details -
make scheduler's minimum-version-check work properly
Avoid scheduler thinking the daemon has a lower version than it does just because the scheduler's version is lower than the daemon's and so MsgChannel had to use the common lowest denominator for mutual communication (i.e. remember also the daemon's actual version).
Configuration menu - View commit details
-
Copy full SHA for a5eefdb - Browse repository at this point
Copy the full SHA a5eefdbView commit details -
prevent getting stuck on "No suitable host found, delaying"
Sometimes the scheduler simply can't find any suitable host, e.g. when asking for a remote for an environment that none of the available nodes support, or maybe there's no node to have the required minimal version or required feature. In that case the scheduler would needlessly delay until it'd time out. So just bail our immediatelly in case there's no node that could possibly handle the job.
Configuration menu - View commit details
-
Copy full SHA for 623f714 - Browse repository at this point
Copy the full SHA 623f714View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1cbd030 - Browse repository at this point
Copy the full SHA 1cbd030View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f5da80 - Browse repository at this point
Copy the full SHA 5f5da80View commit details
Commits on Jul 10, 2019
-
make icecc-create-env by avoiding needless repeated ldd
7s->3s with my dynamically linked Clang.
Configuration menu - View commit details
-
Copy full SHA for 3ac9141 - Browse repository at this point
Copy the full SHA 3ac9141View commit details -
detect better when unpacking of environment actually was successful
There wasn't any detection of whether the unpacking child process finished successfully or not. Moreover one Jenkins build managed to run into a state when the child finished before the daemon, which resulted in EPIPE in the daemon when trying to write more data (tarball had extra data at the end?).
Configuration menu - View commit details
-
Copy full SHA for 113e467 - Browse repository at this point
Copy the full SHA 113e467View commit details
Commits on Jul 12, 2019
-
more robust waiting for M_END message when receiving environment
On Jenkins the M_END message for whatever strange reason can come with a delay after the file chunk messages. So really finish environment tranfer receiving after both the M_END message has been received and the unpacking child has finished.
Configuration menu - View commit details
-
Copy full SHA for 35b52ac - Browse repository at this point
Copy the full SHA 35b52acView commit details -
Configuration menu - View commit details
-
Copy full SHA for 27aca26 - Browse repository at this point
Copy the full SHA 27aca26View commit details -
add supports for checking if a remote node supports a feature
To be used to check if the remote can unpack an environment compressed using xz/zstd, but can be used later if needed.
Configuration menu - View commit details
-
Copy full SHA for 82505ac - Browse repository at this point
Copy the full SHA 82505acView commit details -
support compressing compiler tarballs using xz and zstd
Xz compresses much better than gzip (e.g. 39MiB->26MiB) and zstd compresses much faster and still a bit better than gzip, so gzip really only has the it-works-everywhere argument in its favour. Since daemons are already capable of handling tarballs compressed using these, add also optional support for automatically compressing using xz/zstd by setting ICECC_ENV_COMPRESSION=xz (or zstd). The patch includes proper handling of nodes that do not support these types (read: they will get ignored), and this handling itself requires that the scheduler is also new. By default, the old gzip compression is still used, so there should be no backwards compatibility problems. But with sufficient control over the cluster it's better to upgrade both the scheduler and nodes and then go with one of these methods. There's also one more "type" called 'none', which creates just uncompressed .tar, which is faster to create (and so it is used by tests). In fact, since tarballs themselves are transferred compressed by the internal zstd support, this is usable even for normal work, just taking a bit more disk space locally (plus it works around only recent libarchive having zstd support).
Configuration menu - View commit details
-
Copy full SHA for c46375c - Browse repository at this point
Copy the full SHA c46375cView commit details
Commits on Jul 13, 2019
-
limit number of local preprocessor invocations up to local cpus avail…
…able (icecc#285) Apparently with large enough parallel builds the local preprocessor calls can cause a high local load (I can't reproduce, but then I don't use that large builds and possibly clang's -frewrite-includes is faster than gcc's preprocessor). So extend the local file locking to automatically use slots up to the number of local cpus(=threads) available. Using local locking is preferred to using JobLocalBeginMsg to the daemon because it's an internal detail and so it shouldn't e.g. show in icemon, it should(?) also be a bit faster and simpler. As a side effect this also changes runs without the local daemon available to serialize to more than one job.
Configuration menu - View commit details
-
Copy full SHA for b1d8c33 - Browse repository at this point
Copy the full SHA b1d8c33View commit details
Commits on Jul 15, 2019
-
Merge pull request icecc#480 from llunak/xz-zstd-tarballs
support compressing compiler tarballs using xz and zstd
Configuration menu - View commit details
-
Copy full SHA for 7193cbf - Browse repository at this point
Copy the full SHA 7193cbfView commit details -
Merge pull request icecc#486 from llunak/limited_cpp
limit number of local preprocessor invocations up to local cpus available (icecc#285)
Configuration menu - View commit details
-
Copy full SHA for 987bed8 - Browse repository at this point
Copy the full SHA 987bed8View commit details -
add --enable-debug to configure, for developer builds
Currently normal production builds can abort on asserts, see e.g. icecc#452. So now by default a production build is done, without asserts, for developer builds use --enable-debug, which will enable asserts and disable compiler optimizations. The ICECC_DEBUG= mechanism is unaffected.
Configuration menu - View commit details
-
Copy full SHA for 8ee2f83 - Browse repository at this point
Copy the full SHA 8ee2f83View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a9fb73 - Browse repository at this point
Copy the full SHA 1a9fb73View commit details -
Configuration menu - View commit details
-
Copy full SHA for 83ea1b5 - Browse repository at this point
Copy the full SHA 83ea1b5View commit details -
rename 'newer scheduler' test to 'multiple schedulers'
It was confusing, if two schedulers have the same version, it's actually the longer running one that's preferred (newer one would be stupid, somebody starting another scheduler would needlessly take over the cluster).
Configuration menu - View commit details
-
Copy full SHA for f32a1df - Browse repository at this point
Copy the full SHA f32a1dfView commit details -
increase the listen() backlog argument to 1024
The manpage says that if there are more pending connections than this that those may get refused, which seems needless (icecream does its own scheduling, so there shouldn't be too many remote connections, and many local parallel connections are ok as well).
Configuration menu - View commit details
-
Copy full SHA for 24e9198 - Browse repository at this point
Copy the full SHA 24e9198View commit details -
implement --listen <address> option (icecc#427)
This can help to listen on the right network interface if e.g. by default a slower VPN interface is selected.
Configuration menu - View commit details
-
Copy full SHA for 5e275a5 - Browse repository at this point
Copy the full SHA 5e275a5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 10bfc1e - Browse repository at this point
Copy the full SHA 10bfc1eView commit details
Commits on Jul 16, 2019
-
fix protocol 41 client asking protocol 40 daemon for native env
Not a very likely combination, but still.
Configuration menu - View commit details
-
Copy full SHA for b9085dd - Browse repository at this point
Copy the full SHA b9085ddView commit details -
fix sending CompileFileMsg arguments to protocol 40
A mistake from 8801771.
Configuration menu - View commit details
-
Copy full SHA for bf788b5 - Browse repository at this point
Copy the full SHA bf788b5View commit details -
make protocol 41 client ask GetNative from protocol 40 daemon properly
Older clients understand only "gcc" or "clang" as compilers. This is a mistake from 17e5024.
Configuration menu - View commit details
-
Copy full SHA for 2491820 - Browse repository at this point
Copy the full SHA 2491820View commit details
Commits on Jul 18, 2019
-
when using more "generic" library in icecc-create-env, check arch (ic…
…ecc#393) The problem in icecc#393 is that the libc to use (which ldd gives) is /lib/x86_64-linux-gnu/libc.so.6, but there's /lib/libc.so.6 pointing to /lib/i386-linux-gnu/libc.so.6 . Also as an optimization do not do this if the regexp in sed fails with files in just one level of directories and so there's actually no parent lib.
Configuration menu - View commit details
-
Copy full SHA for 70b4590 - Browse repository at this point
Copy the full SHA 70b4590View commit details -
Improve error messages for exec() calls
If exec() fails, the user should be told which binary was supposed to be executed.
Christoph Erhardt committedJul 18, 2019 Configuration menu - View commit details
-
Copy full SHA for fe4e299 - Browse repository at this point
Copy the full SHA fe4e299View commit details -
make sending in small 10k chunks controlled by ICECC_SLOW_NETWORK (ic…
…ecc#407) With limiting the rate of local preprocessors in icecc#486 the change from icecc#407 should be much less needed and IMO it's now generally a needless slowdown that causes more system calls, possibly more context switches, etc. So change back to using large chunks by default and use the smaller ones only if ICECC_SLOW_NETWORK=1 is set.
Configuration menu - View commit details
-
Copy full SHA for 2db7459 - Browse repository at this point
Copy the full SHA 2db7459View commit details -
Configuration menu - View commit details
-
Copy full SHA for 310379c - Browse repository at this point
Copy the full SHA 310379cView commit details -
move unittests from tests/ to their own directory
They were kind of lost among all the files used for tests. Unit tests are faster than "real" tests done by launching the binaries, so this could help reduce the time of running the tests.
Configuration menu - View commit details
-
Copy full SHA for 93f5141 - Browse repository at this point
Copy the full SHA 93f5141View commit details -
Configuration menu - View commit details
-
Copy full SHA for db476c2 - Browse repository at this point
Copy the full SHA db476c2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 339a209 - Browse repository at this point
Copy the full SHA 339a209View commit details
Commits on Jul 20, 2019
-
Merge pull request icecc#491 from mp-chet/better-error-messages-for-exec
Improve error messages for exec() calls
Configuration menu - View commit details
-
Copy full SHA for 06b7985 - Browse repository at this point
Copy the full SHA 06b7985View commit details
Commits on Jul 22, 2019
-
remove icecc-create-env's handling of 'weird multilib setups' (icecc#464
) This comes from 2008's ab934f2, which says it's for gentoo, but doesn't say more. It doesn't seem actually needed AFAICT, and it breaks Fedora with /lib64 being a symlink, and it's unclear what this was trying to solve or whether that is still a problem. So remove and if this change breaks it for something, at least they'll provide information on why this would be needed.
Configuration menu - View commit details
-
Copy full SHA for 4e50f58 - Browse repository at this point
Copy the full SHA 4e50f58View commit details
Commits on Jul 26, 2019
-
create_native(): return 1 on execv() failure
This value will be returned by main() as the process exit status, so it should equal 1 (EXIT_FAILURE).
Configuration menu - View commit details
-
Copy full SHA for 169b35e - Browse repository at this point
Copy the full SHA 169b35eView commit details -
create_native(): remove superfluous lstat() call
This call is not needed. On the one hand, execv() will test for the file's existence and accessibility anyway; on the other hand, the information retrieved by lstat() might become outdated before execv() is called ("time of check to time of use", TOCTTOU). So we just remove the call to lstat().
Configuration menu - View commit details
-
Copy full SHA for 3d75cec - Browse repository at this point
Copy the full SHA 3d75cecView commit details
Commits on Jul 29, 2019
-
Revert "implement --listen <address> option (icecc#427)"
This reverts commit 5e275a5.
Christoph Erhardt committedJul 29, 2019 Configuration menu - View commit details
-
Copy full SHA for 35e14f4 - Browse repository at this point
Copy the full SHA 35e14f4View commit details
Commits on Aug 5, 2019
-
Allow restricting network access to a specific interface
By default, both the daemon and the scheduler listen on all network interfaces, with no restrictions regarding the origin of a connection request. However, there are cases in which we may want to allow access from a certain network interface only. For example, we may want to put the icecream cluster into its own VPN. This commit adds an option for both the daemon and the scheduler to listen only on a specific interface. This is implemented in the following way: if the user specifies an interface name on the command line, the IP address of that interface is looked up and the socket is bound to that address. Caveats: * No more than one interface can be specified. * If an interface has more than one address, only the first one is considered. * The use of IPv4 is hardcoded (but this is the case all over the icecream code base).
Christoph Erhardt committedAug 5, 2019 Configuration menu - View commit details
-
Copy full SHA for 9b2409b - Browse repository at this point
Copy the full SHA 9b2409bView commit details
Commits on Aug 16, 2019
-
Merge pull request icecc#495 from mp-chet/net-interfaces
Allow restricting access to a specific network interface
Configuration menu - View commit details
-
Copy full SHA for 56e971e - Browse repository at this point
Copy the full SHA 56e971eView commit details
Commits on Sep 1, 2019
-
test also that debug tests print out properly value of a variable
The gdb in openSUSE 15.1 seems to have a problem with compressed debuginfo, which is not Icecream's fault, but it's a good idea to do this check anyway.
Configuration menu - View commit details
-
Copy full SHA for edff2f2 - Browse repository at this point
Copy the full SHA edff2f2View commit details -
fix 'make test' depending on 'make check'
With parallel make 'test' depends on install, which recursively invokes building in subdirs, and 'check' also recursively invokes building in subdirs, so ensure they are ordered properly, when recursive make doesn't handle that well.
Configuration menu - View commit details
-
Copy full SHA for 2ff9cb5 - Browse repository at this point
Copy the full SHA 2ff9cb5View commit details -
always make daemons listen on the loopback interface
If --interface is used to restrict on what interface to listen, explicitly listen also on loopback. This generally shouldn't be needed, because there is the unix socket, but if the build runs in a chroot (e.g. with 'osc build' from the openSUSE build service), then the unix socket is not reachable and the client falls back to using the loopback. The scheduler shouldn't need any such mechanism, daemons shouldn't use loopback when talking to the scheduler.
Configuration menu - View commit details
-
Copy full SHA for 776b3e5 - Browse repository at this point
Copy the full SHA 776b3e5View commit details -
announce in MonStatMsg also the protocol and supported features
So that icemon can display these for each node.
Configuration menu - View commit details
-
Copy full SHA for c7c24ea - Browse repository at this point
Copy the full SHA c7c24eaView commit details
Commits on Sep 5, 2019
-
log 'local cpp invocation failed' message by default
We log this way other errors, and in this case it makes sense to print it because the cpp output will be possibly printed twice.
Configuration menu - View commit details
-
Copy full SHA for c8d5b3e - Browse repository at this point
Copy the full SHA c8d5b3eView commit details -
Configuration menu - View commit details
-
Copy full SHA for ac730ce - Browse repository at this point
Copy the full SHA ac730ceView commit details -
support testing with different protocol versions
This allows running the test e.g. with an older scheduler, to test protocol backwards compatibility.
Configuration menu - View commit details
-
Copy full SHA for 81ace5f - Browse repository at this point
Copy the full SHA 81ace5fView commit details -
limit local recompile when cpp fails only to -fdirectives-only
The change from a29944f is way too broad and somewhat annoying in case of actual cpp errors, as they get duplicated. Since without the somewhat problematic -fdirectives-only a cpp failure should always mean an actual error, limit the recompile only to the -fdirectives-only case.
Configuration menu - View commit details
-
Copy full SHA for 861030d - Browse repository at this point
Copy the full SHA 861030dView commit details -
log also when listening on all network interfaces
For consistency, missing from 776b3e5.
Configuration menu - View commit details
-
Copy full SHA for 3d64a7c - Browse repository at this point
Copy the full SHA 3d64a7cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2086233 - Browse repository at this point
Copy the full SHA 2086233View commit details -
Configuration menu - View commit details
-
Copy full SHA for 52a6966 - Browse repository at this point
Copy the full SHA 52a6966View commit details
Commits on Sep 11, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 89dac40 - Browse repository at this point
Copy the full SHA 89dac40View commit details -
Configuration menu - View commit details
-
Copy full SHA for d807940 - Browse repository at this point
Copy the full SHA d807940View commit details -
fix case when icecream_version_micro is not set
So that e.g. version 1.3 works properly and is not e.g. "1.3." .
Configuration menu - View commit details
-
Copy full SHA for 8c2048c - Browse repository at this point
Copy the full SHA 8c2048cView commit details -
Configuration menu - View commit details
-
Copy full SHA for ec54119 - Browse repository at this point
Copy the full SHA ec54119View commit details -
Configuration menu - View commit details
-
Copy full SHA for 064f4c2 - Browse repository at this point
Copy the full SHA 064f4c2View commit details -
Configuration menu - View commit details
-
Copy full SHA for aa9e2fc - Browse repository at this point
Copy the full SHA aa9e2fcView commit details
Commits on Sep 22, 2019
-
Configuration menu - View commit details
-
Copy full SHA for fdeccc1 - Browse repository at this point
Copy the full SHA fdeccc1View commit details
Commits on Oct 5, 2019
-
allow preloading more than one job on multi-core nodes
I have a node with 8 (HT) cores and it often isn't fully loaded. The assumption is this is primarily because it can compile 8 jobs at a time and so just one preloaded job isn't enough to keep them busy if several of them finish compiling at about the same time. So allow one extra preloaded job per 4 allowed jobs, the preload feature probably comes from times when CPUs didn't have many cores. Picking a compile server penalizes ones that have many jobs assigned, so this generally shouldn't lead to overloading the fastest node at the expense of the others.
Configuration menu - View commit details
-
Copy full SHA for d93e9c3 - Browse repository at this point
Copy the full SHA d93e9c3View commit details
Commits on Oct 24, 2019
-
handle flags for Clang modules
Clang modules are handled the same way like precompiled headers. The basic assumption is that the same code should in practice compile equally with or without the module, and so for remote builds we simply strip the options and compile normally, which will save the hassle of having to transfer the modules. As I understand it Clang compiles modules in the background on demand as needed, so remote compilations not having anything to do with modules should be completely harmless.
Configuration menu - View commit details
-
Copy full SHA for 7bec654 - Browse repository at this point
Copy the full SHA 7bec654View commit details -
Configuration menu - View commit details
-
Copy full SHA for df24c54 - Browse repository at this point
Copy the full SHA df24c54View commit details
Commits on Nov 26, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 10b9468 - Browse repository at this point
Copy the full SHA 10b9468View commit details
Commits on Feb 4, 2020
-
tweak creating pipes with a large output buffer
According to perf/hotspot off-CPU profiling on my Linux machine, the compiler actually ends up waiting on write() calls, and it seems that F_SETPIPE_SZ can create a larger buffer than SO_SNDBUF.
Configuration menu - View commit details
-
Copy full SHA for 90e70af - Browse repository at this point
Copy the full SHA 90e70afView commit details -
still invoke sudo for test.sh even for valgrind
Because sudo is used in the script and this caches the password for it.
Configuration menu - View commit details
-
Copy full SHA for 937a2c4 - Browse repository at this point
Copy the full SHA 937a2c4View commit details -
get rid of the ASAN travis build
Now it's broken even in the old deprecated Ubuntu system, I can't get it to work and I'm tired of fighting it. With the valgrind build there's not much point anyway. Feel free to get it to work if you know how.
Configuration menu - View commit details
-
Copy full SHA for a24d282 - Browse repository at this point
Copy the full SHA a24d282View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ac241a - Browse repository at this point
Copy the full SHA 1ac241aView commit details -
use valgrind-listener in test.sh
Recent versions of valgrind abort with error if they cannot write to --log-file, and this seems to cause problems with chroot-ed processes. So redirect to a socket and valgrind-listener.
Configuration menu - View commit details
-
Copy full SHA for 161d830 - Browse repository at this point
Copy the full SHA 161d830View commit details -
Configuration menu - View commit details
-
Copy full SHA for d64397d - Browse repository at this point
Copy the full SHA d64397dView commit details
Commits on Feb 5, 2020
-
The tilde doesn't need to be escaped in markdown.
- The tilde doesn't need to be escaped in markdown. - placing some strings into "code" format by means of backticks.
Configuration menu - View commit details
-
Copy full SHA for 0c7ef30 - Browse repository at this point
Copy the full SHA 0c7ef30View commit details
Commits on Feb 27, 2020
-
Compile locally with coverage argument
According https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html --coverage option is a synonym for -fprofile-arcs -ftest-coverage.
Configuration menu - View commit details
-
Copy full SHA for fb2861d - Browse repository at this point
Copy the full SHA fb2861dView commit details
Commits on Feb 28, 2020
-
Or rather force it, because all(?) compilers in use support it, or even newer.
Configuration menu - View commit details
-
Copy full SHA for db3a4b2 - Browse repository at this point
Copy the full SHA db3a4b2View commit details
Commits on Mar 24, 2020
-
Configuration menu - View commit details
-
Copy full SHA for fb1efa7 - Browse repository at this point
Copy the full SHA fb1efa7View commit details -
Remember the total size of an unpacked environment tarball instead of computing it on removal, because if something external removes something from it (e.g. an automatic system cleanup or /var/cache), then the reported sum will be smaller, so the daemon will think the cache takes up more than it does.
Configuration menu - View commit details
-
Copy full SHA for f1e5ebe - Browse repository at this point
Copy the full SHA f1e5ebeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 424b6ca - Browse repository at this point
Copy the full SHA 424b6caView commit details -
Configuration menu - View commit details
-
Copy full SHA for be4b682 - Browse repository at this point
Copy the full SHA be4b682View commit details -
It seems that -W (which IIRC is the old name for -Wextra) either doesn't work anymore or it doesn't work with Clang.
Configuration menu - View commit details
-
Copy full SHA for fd5245a - Browse repository at this point
Copy the full SHA fd5245aView commit details
Commits on Mar 27, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 4f16a9f - Browse repository at this point
Copy the full SHA 4f16a9fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 38a8002 - Browse repository at this point
Copy the full SHA 38a8002View commit details
Commits on Mar 28, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 26573a6 - Browse repository at this point
Copy the full SHA 26573a6View commit details
Commits on Mar 31, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 478e060 - Browse repository at this point
Copy the full SHA 478e060View commit details -
Install compile wrapper to correct directory. Update list of TODOs as…
… headers are properly installed.
Configuration menu - View commit details
-
Copy full SHA for 041af27 - Browse repository at this point
Copy the full SHA 041af27View commit details -
Configuration menu - View commit details
-
Copy full SHA for 46f31b3 - Browse repository at this point
Copy the full SHA 46f31b3View commit details
Commits on Apr 1, 2020
-
Configuration menu - View commit details
-
Copy full SHA for f60e5e9 - Browse repository at this point
Copy the full SHA f60e5e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4106559 - Browse repository at this point
Copy the full SHA 4106559View commit details -
Configuration menu - View commit details
-
Copy full SHA for 20caf43 - Browse repository at this point
Copy the full SHA 20caf43View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6976121 - Browse repository at this point
Copy the full SHA 6976121View commit details
Commits on Apr 6, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 0915fcb - Browse repository at this point
Copy the full SHA 0915fcbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 92a5ad1 - Browse repository at this point
Copy the full SHA 92a5ad1View commit details
Commits on Apr 7, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 102fb91 - Browse repository at this point
Copy the full SHA 102fb91View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac7abc2 - Browse repository at this point
Copy the full SHA ac7abc2View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce7e70e - Browse repository at this point
Copy the full SHA ce7e70eView commit details
Commits on Apr 8, 2020
-
Configuration menu - View commit details
-
Copy full SHA for eb88945 - Browse repository at this point
Copy the full SHA eb88945View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0cc91a3 - Browse repository at this point
Copy the full SHA 0cc91a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 568e5ea - Browse repository at this point
Copy the full SHA 568e5eaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6768362 - Browse repository at this point
Copy the full SHA 6768362View commit details