Message ID | 20211225133706.2964-1-felgru@posteo.net |
---|---|
State | Accepted |
Headers | show |
Series | Update naev to 0.9.0 | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
Hello,
Felix Gruber <felgru@posteo.net> writes:
> * gnu/packages/unicode.scm (libunibreak): New variable.
Thanks.
However, the check phase fails for me with the following backtrace:
--8<---------------cut here---------------start------------->8---
starting phase `check'
Making check in src
make[1]: Entering directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src'
gcc -DHAVE_CONFIG_H -I. -I.. -I. -g -O2 -MT tests-tests.o -MD -MP -MF .deps/tests-tests.Tpo -c -o tests-tests.o `test -f 'tests.c' || echo './'`tests.c
make tests
make[2]: Entering directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src'
gcc -DHAVE_CONFIG_H -I. -I.. -I. -g -O2 -MT tests-tests.o -MD -MP -MF .deps/tests-tests.Tpo -c -o tests-tests.o `test -f 'tests.c' || echo './'`tests.c
mv -f .deps/tests-tests.Tpo .deps/tests-tests.Po
/gnu/store/vx6vfbmmazvfi7vp8xyjn2mcyylvw9gn-bash-minimal-5.1.8/bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -o tests tests-tests.o libunibreak.la
mv -f .deps/tests-tests.Tpo .deps/tests-tests.Po
mv: cannot stat '.deps/tests-tests.Tpo': No such file or directory
make[2]: *** [Makefile:577: tests-tests.o] Error 1
make[2]: Leaving directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src'
make[1]: *** [Makefile:702: check-am] Error 2
make[1]: *** Waiting for unfinished jobs....
libtool: link: gcc -g -O2 -o .libs/tests tests-tests.o ./.libs/libunibreak.so -Wl,-rpath -Wl,/gnu/store/s8vii50z9pw3q48dmmgfcbv613dhwfmc-libunibreak-4.2-1/lib
make[1]: Leaving directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src'
make: *** [Makefile:458: check-recursive] Error 1
--8<---------------cut here---------------end--------------->8---
Also, libunibreak 5.0 is out. Would it make sense to update it?
Regard,
Hello Nicolas, On 12/26/21 9:54 PM, Nicolas Goaziou wrote: > Felix Gruber <felgru@posteo.net> writes: > >> * gnu/packages/unicode.scm (libunibreak): New variable. > > Thanks. > > However, the check phase fails for me with the following backtrace: > > --8<---------------cut here---------------start------------->8--- > starting phase `check' > Making check in src > make[1]: Entering directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src' > gcc -DHAVE_CONFIG_H -I. -I.. -I. -g -O2 -MT tests-tests.o -MD -MP -MF .deps/tests-tests.Tpo -c -o tests-tests.o `test -f 'tests.c' || echo './'`tests.c > make tests > make[2]: Entering directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src' > gcc -DHAVE_CONFIG_H -I. -I.. -I. -g -O2 -MT tests-tests.o -MD -MP -MF .deps/tests-tests.Tpo -c -o tests-tests.o `test -f 'tests.c' || echo './'`tests.c > mv -f .deps/tests-tests.Tpo .deps/tests-tests.Po > /gnu/store/vx6vfbmmazvfi7vp8xyjn2mcyylvw9gn-bash-minimal-5.1.8/bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -o tests tests-tests.o libunibreak.la > mv -f .deps/tests-tests.Tpo .deps/tests-tests.Po > mv: cannot stat '.deps/tests-tests.Tpo': No such file or directory > make[2]: *** [Makefile:577: tests-tests.o] Error 1 > make[2]: Leaving directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src' > make[1]: *** [Makefile:702: check-am] Error 2 > make[1]: *** Waiting for unfinished jobs.... > libtool: link: gcc -g -O2 -o .libs/tests tests-tests.o ./.libs/libunibreak.so -Wl,-rpath -Wl,/gnu/store/s8vii50z9pw3q48dmmgfcbv613dhwfmc-libunibreak-4.2-1/lib > make[1]: Leaving directory '/tmp/guix-build-libunibreak-4.2-1.drv-0/source/src' > make: *** [Makefile:458: check-recursive] Error 1 > --8<---------------cut here---------------end--------------->8--- Hmm, it seems that libunibreak's tests can cause non-deterministic test failures, probably because multiple make targets contain the line ``` mv -f .deps/tests-tests.Tpo .deps/tests-tests.Po ``` which causes race conditions between those targets. After adding the #:parallel-tests #f argument, I was able to built libunibreak five times in a row without observing any further build failures. > Also, libunibreak 5.0 is out. Would it make sense to update it? libunibreak 5.0 is based on Unicode 14, which unfortunately gives us test failures when we build it against our ucd package which only contains data for Unicode 12. libunibreak 4.2-1 was the last version based on Unicode 12. ucd has 505 (transitively) dependent packages, which is probably too much to update it on master. Do you think it would be viable to add a ucd-14 package next to our ucd package, so that I could update libunibreak to 5.0 using this new ucd-14 package as input? Best, Felix
Hello, Felix Gruber <felgru@posteo.net> writes: > libunibreak 5.0 is based on Unicode 14, which unfortunately gives us > test failures when we build it against our ucd package which only > contains data for Unicode 12. libunibreak 4.2-1 was the last version > based on Unicode 12. > ucd has 505 (transitively) dependent packages, which is probably too > much to update it on master. > > Do you think it would be viable to add a ucd-14 package next to our ucd > package, so that I could update libunibreak to 5.0 using this new ucd-14 > package as input? I think it should be done in two steps. First, do like above on master branch, perhaps naming it ucd-next, then replace ucd with ucd-next on staging branch. WDYT? Regards,
Hi Nicolas, I've updated the patchset to add the ucd-next package as discussed and to package version 5.0 of libunibreak. I'll submit a separate patch for updating ucd to be applied to the staging branch. Felix Gruber (4): gnu: Add ucd-next. gnu: Add libunibreak. gnu: Add naev-artwork. gnu: naev: Update to 0.9.0. gnu/packages/games.scm | 74 +++++++++++++++++++++++++++++----------- gnu/packages/unicode.scm | 64 ++++++++++++++++++++++++++++++++++ 2 files changed, 118 insertions(+), 20 deletions(-)
Hello, Felix Gruber <felgru@posteo.net> writes: > I've updated the patchset to add the ucd-next package as discussed and > to package version 5.0 of libunibreak. Thank you. I applied them. > I'll submit a separate patch for updating ucd to be applied to the > staging branch. I tweaked this one because it couldn't be based off changes from master branch. Regards,
diff --git a/gnu/packages/unicode.scm b/gnu/packages/unicode.scm index 806fe05fb6..a5216a38dd 100644 --- a/gnu/packages/unicode.scm +++ b/gnu/packages/unicode.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2021 Felix Gruber <felgru@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,13 +19,60 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages unicode) + #:use-module (gnu packages autotools) + #:use-module (guix git-download) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system copy) + #:use-module (guix build-system gnu) #:use-module (guix build-system trivial)) +(define-public libunibreak + (package + (name "libunibreak") + (version "4.2-1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/adah1972/libunibreak") + (commit (string-append "libunibreak_" + (string-replace-substring version "." "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "182327vv2bqn5pr7v2ain0j4f2q97fvgimyv08vj66bqkxmhm7a3")))) + (build-system gnu-build-system) + (native-inputs + (list autoconf-wrapper + automake + libtool + ucd ; required for tests + )) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + (for-each (lambda (file) + (copy-file + (search-input-file inputs + (string-append "/share/ucd/auxiliary/" + file)) + (string-append "src/" file))) + '("LineBreakTest.txt" + "WordBreakTest.txt" + "GraphemeBreakTest.txt"))))))) + (home-page "http://vimgadgets.sourceforge.net/libunibreak/") + (synopsis "Unicode line breaking and word breaking algorithms") + (description + "Libunibreak is an implementation of the line breaking and word +breaking algorithms as described in Unicode Standard Annex 14 and +Unicode Standard Annex 29. It is designed to be used in a generic text +renderer.") + (license zlib))) + (define-public ucd (package (name "ucd")