guix/hash.scm \
guix/pk-crypto.scm \
guix/pki.scm \
+ guix/combinators.scm \
guix/utils.scm \
guix/sets.scm \
+ guix/modules.scm \
guix/download.scm \
guix/git-download.scm \
+ guix/hg-download.scm \
guix/monads.scm \
guix/monad-repl.scm \
guix/gexp.scm \
guix/licenses.scm \
guix/graph.scm \
guix/cve.scm \
+ guix/zlib.scm \
guix/build-system.scm \
guix/build-system/ant.scm \
guix/build-system/cmake.scm \
guix/build-system/emacs.scm \
+ guix/build-system/asdf.scm \
guix/build-system/glib-or-gtk.scm \
guix/build-system/gnu.scm \
guix/build-system/haskell.scm \
guix/build/download.scm \
guix/build/cmake-build-system.scm \
guix/build/emacs-build-system.scm \
+ guix/build/asdf-build-system.scm \
guix/build/git.scm \
+ guix/build/hg.scm \
guix/build/glib-or-gtk-build-system.scm \
guix/build/gnu-build-system.scm \
guix/build/gnu-dist.scm \
guix/build/rpath.scm \
guix/build/cvs.scm \
guix/build/svn.scm \
+ guix/build/syscalls.scm \
guix/build/gremlin.scm \
guix/build/emacs-utils.scm \
+ guix/build/lisp-utils.scm \
guix/build/graft.scm \
guix/build/bournish.scm \
+ guix/build/qt-utils.scm \
guix/search-paths.scm \
guix/packages.scm \
guix/import/utils.scm \
guix/import/elpa.scm \
guix/scripts.scm \
guix/scripts/download.scm \
+ guix/scripts/perform-download.scm \
guix/scripts/build.scm \
guix/scripts/archive.scm \
guix/scripts/import.scm \
endif
-if BUILD_SYSCALLS_MODULE
-
-MODULES += \
- guix/build/syscalls.scm
-
-endif
-
if BUILD_DAEMON_OFFLOAD
MODULES += \
endif BUILD_DAEMON_OFFLOAD
-# Internal module with test suite support.
-dist_noinst_DATA = guix/tests.scm
+# Internal modules with test suite support.
+dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
# Linux-Libre configurations.
KCONFIGS = \
- gnu/packages/linux-libre-4.5-i686.conf \
- gnu/packages/linux-libre-4.5-x86_64.conf \
+ gnu/packages/linux-libre-4.8-i686.conf \
+ gnu/packages/linux-libre-4.8-x86_64.conf \
gnu/packages/linux-libre-4.4-i686.conf \
gnu/packages/linux-libre-4.4-x86_64.conf \
gnu/packages/linux-libre-4.1-i686.conf \
gnu/system/examples/desktop.tmpl \
gnu/system/examples/lightweight-desktop.tmpl
-GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go guix/tests.go
+GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go $(dist_noinst_DATA:%.scm=%.go)
nobase_dist_guilemodule_DATA = \
$(MODULES) $(KCONFIGS) $(EXAMPLES) \
# Handy way to remove the .go files without removing all the rest.
clean-go:
-$(RM) -f $(GOBJECTS)
+ @find . -name '*.go' -print | \
+ if test -t 1; then \
+ xargs -r echo -e "\033[31mwarning:\033[0m stray .go files:"; \
+ else \
+ xargs -r echo "warning: stray .go files:"; \
+ fi
# Test extensions; has to be unconditional.
tests/pk-crypto.scm \
tests/pki.scm \
tests/sets.scm \
+ tests/modules.scm \
tests/gnu-maintenance.scm \
tests/substitute.scm \
tests/builders.scm \
tests/ui.scm \
tests/records.scm \
tests/upstream.scm \
+ tests/combinators.scm \
tests/utils.scm \
tests/build-utils.scm \
tests/packages.scm \
tests/profiles.scm \
tests/syscalls.scm \
tests/gremlin.scm \
+ tests/bournish.scm \
tests/lint.scm \
tests/publish.scm \
tests/scripts.scm \
tests/graph.scm \
tests/challenge.scm \
tests/cve.scm \
+ tests/zlib.scm \
tests/file-systems.scm \
tests/system.scm \
tests/services.scm \
AM_TESTS_ENVIRONMENT = abs_top_srcdir="$(abs_top_srcdir)" GUILE_AUTO_COMPILE=0
-SCM_LOG_DRIVER = $(top_builddir)/test-env $(GUILE) --no-auto-compile \
- -e main $(top_srcdir)/build-aux/test-driver.scm
+SCM_LOG_DRIVER = \
+ $(top_builddir)/test-env --quiet-stderr \
+ $(GUILE) --no-auto-compile -e main \
+ $(top_srcdir)/build-aux/test-driver.scm
+
AM_SCM_LOG_DRIVER_FLAGS = --brief=yes
SH_LOG_COMPILER = $(top_builddir)/test-env $(SHELL)
endif !CAN_RUN_TESTS
+check-system: $(GOBJECTS)
+ $(AM_V_at)$(top_builddir)/pre-inst-env \
+ $(GUILE) --no-auto-compile \
+ -e '(@@ (run-system-tests) run-system-tests)' \
+ $(top_srcdir)/build-aux/run-system-tests.scm
+
# Public key used to sign substitutes from hydra.gnu.org.
dist_pkgdata_DATA = hydra.gnu.org.pub
# Bash completion file.
dist_bashcompletion_DATA = etc/completion/bash/guix
+# Zsh completion file.
+dist_zshcompletion_DATA = etc/completion/zsh/_guix
+
EXTRA_DIST = \
HACKING \
ROADMAP \
build-aux/make-binary-tarball.scm \
build-aux/generate-authors.scm \
build-aux/test-driver.scm \
+ build-aux/run-system-tests.scm \
srfi/srfi-37.scm.in \
srfi/srfi-64.scm \
srfi/srfi-64.upstream.scm \
endif !BUILD_DAEMON_OFFLOAD
-if !BUILD_SYSCALLS_MODULE
-
-EXTRA_DIST += \
- guix/build/syscalls.scm
-
-endif !BUILD_SYSCALLS_MODULE
-
CLEANFILES = \
$(GOBJECTS) \
# there that are newer than the local .scm files (for instance because the
# user ran 'make install' recently). When that happens, we end up loading
# those previously-installed .go files, which may be stale, thereby breaking
-# the whole thing.
+# the whole thing. Likewise, set 'XDG_CACHE_HOME' to avoid loading possibly
+# stale files from ~/.cache/guile/ccache.
%.go: make-go ; @:
-make-go: $(MODULES) guix/config.scm guix/tests.scm
+make-go: $(MODULES) guix/config.scm $(dist_noinst_DATA)
$(AM_V_at)echo "Compiling Scheme modules..." ; \
unset GUILE_LOAD_COMPILED_PATH ; \
+ XDG_CACHE_HOME=/nowhere \
host=$(host) srcdir="$(top_srcdir)" \
$(top_builddir)/pre-inst-env \
$(GUILE) -L "$(top_builddir)" -L "$(top_srcdir)" \
# Make sure we're not shipping a file that embeds a local /gnu/store file name.
assert-no-store-file-names:
$(AM_V_at)if grep -r --exclude=*.texi --exclude=*.info \
- "$(storedir)/[a-z0-9]{32}-" $(distdir) ; \
+ --exclude=*.info-[0-9] --exclude=*.dot \
+ --exclude=*.eps --exclude-dir=bootstrap \
+ --exclude=guix-prettify.el \
+ -E "$(storedir)/[a-z0-9]{32}-" $(distdir) ; \
then \
echo "error: store file names embedded in the distribution" >&2 ; \
exit 1 ; \
$(AM_V_GEN)$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/hydra/evaluate.scm" \
"$(top_srcdir)/build-aux/hydra/gnu-system.scm" > "$@.tmp"
- $(AT_V_at)mv "$@.tmp" "$@"
+ $(AM_V_at)mv "$@.tmp" "$@"
.PHONY: sync-descriptions gen-ChangeLog gen-AUTHORS clean-go make-go
.PHONY: assert-no-store-file-names assert-binaries-available