Hello Chris! Chris Marusich <cmmarus...@gmail.com> writes:
[...] > I tested this, and it works. Thank you! I can now build the release > (with this change) and run the tests (make check) successfully; > tests/go.scm is just omitted from the tests to run. > > By chance, I noticed the following lines below what you added: > > if HAVE_GUILE_LIB > SCM_TESTS += tests/go.scm > endif > > if BUILD_DAEMON_OFFLOAD > SCM_TESTS += tests/offload.scm > else > EXTRA_DIST += tests/offload.scm > endif > > > I guess that if we omit tests/go.scm from SCM_TESTS, it not only means > that the test won't be run, but it also means the test won't get > included in the tarball distribution ("make dist"). Is that right? It > seems undesirable to omit this test from the distribution just because > the machine on which the distribution was built might have lacked the > library necessary to run the test. Someone who builds Guix from the > distribution might actually have that library installed and thus be able > to run the test. To ensure that this test always gets included in the > distribution, perhaps we should also add it to EXTRA_DIST like so: > > diff -u a/Makefile.am b/Makefile.am > --- a/Makefile.am 2021-05-11 11:09:31.000000000 -0700 > +++ b/Makefile.am 2021-06-02 12:55:06.134793001 -0700 > @@ -457,7 +457,6 @@ > tests/git-authenticate.scm \ > tests/glob.scm \ > tests/gnu-maintenance.scm \ > - tests/go.scm \ > tests/grafts.scm \ > tests/graph.scm \ > tests/gremlin.scm \ > @@ -505,6 +504,12 @@ > tests/uuid.scm \ > tests/workers.scm > > +if HAVE_GUILE_LIB > +SCM_TESTS += tests/go.scm > +else > +EXTRA_DIST += tests/go.scm > +endif > + > if BUILD_DAEMON_OFFLOAD > SCM_TESTS += tests/offload.scm > else > > What do you think? Well observed! I test with the following environment, with and without guile-lib, and could confirm that the tests/go.scm file was missing from the dist archive when guile-lib was not present. --8<---------------cut here---------------start------------->8--- guix environment --ad-hoc --pure autoconf@2.69 automake@1.16.2 bzip2@1.0.8 disarchive@0.2.1 gettext-minimal@0.20.1 glibc-utf8-locales@2.31 gnutls@3.6.15 graphviz@2.42.3 guile-avahi@0.4.0-1.6d43caf guile-gcrypt@0.3.0 guile-git@0.5.2 guile-json@4.5.2 guile-lzlib@0.0.2 guile-sqlite3@0.1.2 guile-ssh@0.13.1 guile-zlib@0.1.0 guile-zstd@0.1.1 guile@3.0.7 gzip@1.10 help2man@1.47.13 libgcrypt@1.8.5 pkg-config@0.29.2 po4a@0.63 sqlite@3.31.1 texinfo@6.7 util-linux@2.35.1 git sed gawk findutils diffutils perl coreutils grep automake autoconf gettext xz tar gzip make gcc-toolchain imagemagick help2man [env]$ ./bootstrap && ./configure && make -j32 && make dist --8<---------------cut here---------------end--------------->8--- There was a problem where these files had embedded file names: --8<---------------cut here---------------start------------->8--- guix-1.3.0rc2.5207-ce515/build-aux/config.guess:#!/gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16/bin/sh guix-1.3.0rc2.5207-ce515/build-aux/config.sub:#!/gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16/bin/sh guix-1.3.0rc2.5207-ce515/build-aux/install-sh:#!/gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16/bin/sh error: store file names embedded in the distribution --8<---------------cut here---------------end--------------->8--- I had not seen this issue and it'll need to be investigated. For now I disabled the check to get the dist archive produced. Pushed with 0f853ab7731da4784a24cad7b08d6b9b633f5787. Thank you! Maxim