* bug#50617: [core-updates-frozen] CMake fails to build on i686-linux @ 2021-09-16 9:41 Ludovic Courtès 2021-09-16 13:13 ` Guillaume Le Vaillant 0 siblings, 1 reply; 6+ messages in thread From: Ludovic Courtès @ 2021-09-16 9:41 UTC (permalink / raw) To: 50617 On ‘core-updates-frozen’, CMake has one test failure on i686-linux when building on berlin (e.g., <https://ci.guix.gnu.org/build/790602/log/raw>): --8<---------------cut here---------------start------------->8--- 545/558 Test #518: RunCMake.CPack_TXZ ................................***Failed 3.79 sec -- MINIMAL-MONOLITHIC-type - PASSED -- TXZ/MINIMAL-MONOLITHIC-type - PASSED -- MINIMAL-COMPONENT-type - PASSED -- TXZ/MINIMAL-COMPONENT-type - PASSED -- MINIMAL-package-target-MONOLITHIC-type - PASSED -- TXZ/MINIMAL-package-target-MONOLITHIC-type - PASSED -- MINIMAL-package-target-COMPONENT-type - PASSED -- TXZ/MINIMAL-package-target-COMPONENT-type - PASSED -- THREADED_ALL-package-target-MONOLITHIC-type - PASSED CMake Error at RunCMake.cmake:201 (message): TXZ/THREADED_ALL-package-target-MONOLITHIC-type - FAILED: Result is [1], not [0]. stderr does not match that expected. Command was: command> "/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/bin/cmake" "-DRunCMake_TEST=THREADED_ALL-package-target-MONOLITHIC-type" "-DRunCMake_TEST_FILE_PREFIX=THREADED_ALL" "-DRunCMake_SUBTEST_SUFFIX=" "-DGENERATOR_TYPE=TXZ" "-DPACKAGING_TYPE=MONOLITHIC" "-Dsrc_dir=/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/CPack" "-Dbin_dir=/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/TXZ/CPack/THREADED_ALL-package-target-build" "-Dconfig_file=/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/CPack/conf/TXZ_config.cmake" "-P" "/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/CPack/VerifyResult.cmake" Actual stdout: actual-out> Expected stderr to match: expect-err> ^$ Actual stderr: actual-err> CMake Error at /tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/CPack/VerifyResult.cmake:88 (message): actual-err> Found more than one file for file No. '1'! Found files count '0'. Files: actual-err> '' Globbing expression: 'threaded_all-0.1.1-*.tar.xz' actual-err> actual-err> CPack output: 'make[1]: Entering directory actual-err> '/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/TXZ/CPack/THREADED_ALL-package-target-build' actual-err> actual-err> actual-err> Run CPack packaging tool... actual-err> actual-err> CPack: Create package using TXZ actual-err> actual-err> CPack: Install projects actual-err> actual-err> CPack: - Run preinstall target for: actual-err> THREADED_ALL-package-target-MONOLITHIC-type actual-err> actual-err> CPack: - Install project: THREADED_ALL-package-target-MONOLITHIC-type [] actual-err> actual-err> CPack: Create package actual-err> actual-err> make[1]: Leaving directory actual-err> '/tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/TXZ/CPack/THREADED_ALL-package-target-build' actual-err> actual-err> actual-err> ' actual-err> actual-err> CPack error: 'CPack Error: Problem to open archive actual-err> </tmp/guix-build-cmake-bootstrap-3.20.2.drv-0/cmake-3.20.2/Tests/RunCMake/TXZ/CPack/THREADED_ALL-package-target-build/_CPack_Packages/Linux/TXZ/threaded_all-0.1.1-Linux.tar.xz>, actual-err> ERROR = archive_write_open: Internal error initializing compression actual-err> library: Cannot allocate memory actual-err> actual-err> CPack Error: Problem compressing the directory actual-err> actual-err> CPack Error: Error when generating package: threaded_all actual-err> actual-err> make[1]: *** [Makefile:146: package] Error 1 actual-err> actual-err> '; actual-err> actual-err> CPack result: ''; actual-err> actual-err> config file: '' Call Stack (most recent call first): RunCMake.cmake:215 (run_cmake) CPack/CPackTestHelpers.cmake:119 (run_cmake_command) CPack/CPackTestHelpers.cmake:143 (run_cpack_test_common_) CPack/RunCMakeTest.cmake:24 (run_cpack_test_package_target) --8<---------------cut here---------------end--------------->8--- I cannot reproduce it on hardware with 32 cores. I suspect it has to do with the number of threads used for xz compression, which defaults to the number of cores, and some of the build machines on berlin have way more cores. Ludo’. ^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#50617: [core-updates-frozen] CMake fails to build on i686-linux 2021-09-16 9:41 bug#50617: [core-updates-frozen] CMake fails to build on i686-linux Ludovic Courtès @ 2021-09-16 13:13 ` Guillaume Le Vaillant 2021-09-16 15:20 ` Ludovic Courtès 2021-09-21 8:21 ` Ludovic Courtès 0 siblings, 2 replies; 6+ messages in thread From: Guillaume Le Vaillant @ 2021-09-16 13:13 UTC (permalink / raw) To: Ludovic Courtès; +Cc: 50617 [-- Attachment #1: Type: text/plain, Size: 828 bytes --] Ludovic Courtès <ludovic.courtes@inria.fr> skribis: > On ‘core-updates-frozen’, CMake has one test failure on i686-linux when > building on berlin (e.g., <https://ci.guix.gnu.org/build/790602/log/raw>): > > --8<---------------cut here---------------start------------->8--- > 545/558 Test #518: RunCMake.CPack_TXZ ................................***Failed 3.79 sec > [...] > --8<---------------cut here---------------end--------------->8--- > > I cannot reproduce it on hardware with 32 cores. I suspect it has to do > with the number of threads used for xz compression, which defaults to > the number of cores, and some of the build machines on berlin have way > more cores. > > Ludo’. I tried a few times on a machine with 16 cores, and I can't reproduce either. The build succeeded every time. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 247 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#50617: [core-updates-frozen] CMake fails to build on i686-linux 2021-09-16 13:13 ` Guillaume Le Vaillant @ 2021-09-16 15:20 ` Ludovic Courtès 2021-09-16 16:21 ` Maxime Devos 2021-09-21 8:21 ` Ludovic Courtès 1 sibling, 1 reply; 6+ messages in thread From: Ludovic Courtès @ 2021-09-16 15:20 UTC (permalink / raw) To: Guillaume Le Vaillant; +Cc: 50617 [-- Attachment #1: Type: text/plain, Size: 1204 bytes --] Hi, Guillaume Le Vaillant <glv@posteo.net> skribis: > Ludovic Courtès <ludovic.courtes@inria.fr> skribis: > >> On ‘core-updates-frozen’, CMake has one test failure on i686-linux when >> building on berlin (e.g., <https://ci.guix.gnu.org/build/790602/log/raw>): >> >> --8<---------------cut here---------------start------------->8--- >> 545/558 Test #518: RunCMake.CPack_TXZ ................................***Failed 3.79 sec >> [...] >> --8<---------------cut here---------------end--------------->8--- >> >> I cannot reproduce it on hardware with 32 cores. I suspect it has to do >> with the number of threads used for xz compression, which defaults to >> the number of cores, and some of the build machines on berlin have way >> more cores. >> >> Ludo’. > > I tried a few times on a machine with 16 cores, and I can't reproduce > either. The build succeeded every time. My latest attempt is to go as far as setting the number of threads used by libarchive to 1 (patch attached). However, that still fails systematically on berlin’s 32-core build machines. The Internet doesn’t seem to have much to say about this problem. Ideas anyone? Ludo’. [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: Type: text/x-patch, Size: 2236 bytes --] diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index f76ee3ff3a..a235d922e0 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -92,7 +92,7 @@ using the CMake build system.") ;;; Build phases shared between 'cmake-bootstrap' and the later variants ;;; that use cmake-build-system. -(define %common-build-phases +(define (%common-build-phases) `((add-after 'unpack 'split-package ;; Remove files that have been packaged in other package recipes. (lambda _ @@ -100,6 +100,18 @@ using the CMake build system.") (substitute* "Auxiliary/CMakeLists.txt" ((".*cmake-mode.el.*") "")) #t)) + ,@(let ((system (or (%current-target-system) (%current-system)))) + (if (or (string-prefix? "i686-" system) + (string-prefix? "i586-" system)) + '((add-after 'unpack 'clamp-xz-thread-number + (lambda _ + ;; By default, 'CPack' would use as many threads as the + ;; number of available cores for xz compression. + ;; However, this leads to test failures: <XXX>. + (substitute* "Source/cmArchiveWrite.cxx" + (("case CompressXZ:") + "case CompressXZ: numThreads = 1;\n"))))) + '())) (add-before 'configure 'patch-bin-sh (lambda _ ;; Replace "/bin/sh" by the right path in... a lot of @@ -188,7 +200,7 @@ using the CMake build system.") " --exclude-regex ^\\(" (string-join skipped-tests "\\|") "\\)$"))) #:phases (modify-phases %standard-phases - ,@%common-build-phases + ,@(%common-build-phases) (add-before 'configure 'set-paths (lambda _ ;; Help cmake's bootstrap process to find system libraries @@ -295,7 +307,7 @@ and workspaces that can be used in the compiler environment of your choice.") #:build-type "Release" #:phases (modify-phases %standard-phases - ,@%common-build-phases + ,@(%common-build-phases) (add-after 'install 'delete-help-documentation (lambda* (#:key outputs #:allow-other-keys) (delete-file-recursively ^ permalink raw reply related [flat|nested] 6+ messages in thread
* bug#50617: [core-updates-frozen] CMake fails to build on i686-linux 2021-09-16 15:20 ` Ludovic Courtès @ 2021-09-16 16:21 ` Maxime Devos 2021-09-17 7:05 ` Ludovic Courtès 0 siblings, 1 reply; 6+ messages in thread From: Maxime Devos @ 2021-09-16 16:21 UTC (permalink / raw) To: Ludovic Courtès, Guillaume Le Vaillant; +Cc: 50617 [-- Attachment #1: Type: text/plain, Size: 433 bytes --] Ludovic Courtès schreef op do 16-09-2021 om 17:20 [+0200]: > + ,@(let ((system (or (%current-target-system) (%current-system)))) > + (if (or (string-prefix? "i686-" system) > + (string-prefix? "i586-" system)) (Unrelated to the build failure) you could use target-x86-32? here to make the code a little simpler: ,@(if (target-x86-32?) '((add-after ....)) '() Greetings, Maxime. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 260 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#50617: [core-updates-frozen] CMake fails to build on i686-linux 2021-09-16 16:21 ` Maxime Devos @ 2021-09-17 7:05 ` Ludovic Courtès 0 siblings, 0 replies; 6+ messages in thread From: Ludovic Courtès @ 2021-09-17 7:05 UTC (permalink / raw) To: Maxime Devos; +Cc: 50617 Maxime Devos <maximedevos@telenet.be> skribis: > Ludovic Courtès schreef op do 16-09-2021 om 17:20 [+0200]: >> + ,@(let ((system (or (%current-target-system) (%current-system)))) >> + (if (or (string-prefix? "i686-" system) >> + (string-prefix? "i586-" system)) > > (Unrelated to the build failure) you could use target-x86-32? here > to make the code a little simpler: > > ,@(if (target-x86-32?) > '((add-after ....)) > '() Ah yes, definitely! Thanks for the hint. Ludo’. ^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#50617: [core-updates-frozen] CMake fails to build on i686-linux 2021-09-16 13:13 ` Guillaume Le Vaillant 2021-09-16 15:20 ` Ludovic Courtès @ 2021-09-21 8:21 ` Ludovic Courtès 1 sibling, 0 replies; 6+ messages in thread From: Ludovic Courtès @ 2021-09-21 8:21 UTC (permalink / raw) To: Guillaume Le Vaillant; +Cc: 50617-done Hi, Guillaume Le Vaillant <glv@posteo.net> skribis: > Ludovic Courtès <ludovic.courtes@inria.fr> skribis: > >> On ‘core-updates-frozen’, CMake has one test failure on i686-linux when >> building on berlin (e.g., <https://ci.guix.gnu.org/build/790602/log/raw>): >> >> --8<---------------cut here---------------start------------->8--- >> 545/558 Test #518: RunCMake.CPack_TXZ ................................***Failed 3.79 sec >> [...] >> --8<---------------cut here---------------end--------------->8--- >> >> I cannot reproduce it on hardware with 32 cores. I suspect it has to do >> with the number of threads used for xz compression, which defaults to >> the number of cores, and some of the build machines on berlin have way >> more cores. >> >> Ludo’. > > I tried a few times on a machine with 16 cores, and I can't reproduce > either. The build succeeded every time. Since the bug only seems to manifest on specific machines for reasons that escape me, I went ahead and arranged to just skip it in commit f762d63ec072500cd327ec5342c2f5434c267222. Ludo’. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-09-21 8:22 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-09-16 9:41 bug#50617: [core-updates-frozen] CMake fails to build on i686-linux Ludovic Courtès 2021-09-16 13:13 ` Guillaume Le Vaillant 2021-09-16 15:20 ` Ludovic Courtès 2021-09-16 16:21 ` Maxime Devos 2021-09-17 7:05 ` Ludovic Courtès 2021-09-21 8:21 ` Ludovic Courtès
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).