distro: Reduce the bootstrap set.
[jackhill/guix/guix.git] / Makefile.am
CommitLineData
af51c820
LC
1# Guix --- Nix package management from Guile. -*- coding: utf-8 -*-
2# Copyright (C) 2012 Ludovic Courtès <ludo@gnu.org>
3#
4# This file is part of Guix.
5#
6# Guix is free software; you can redistribute it and/or modify it
7# under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 3 of the License, or (at
9# your option) any later version.
10#
11# Guix is distributed in the hope that it will be useful, but
12# WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with Guix. If not, see <http://www.gnu.org/licenses/>.
18
14a1c319
LC
19bin_SCRIPTS = guix-build
20
af51c820 21MODULES = \
73fbb904 22 guix/utils.scm \
af51c820 23 guix/derivations.scm \
208f7cd1
LC
24 guix/build-system.scm \
25 guix/build-system/gnu.scm \
af51c820
LC
26 guix/http.scm \
27 guix/store.scm \
af51c820
LC
28 guix/build/gnu-build-system.scm \
29 guix/build/http.scm \
1273d44a 30 guix/build/utils.scm \
e3ce5d70
LC
31 guix/packages.scm \
32 guix.scm \
6b1891b0 33 distro.scm \
e3ce5d70 34 distro/base.scm
af51c820
LC
35
36GOBJECTS = $(MODULES:%.scm=%.go)
37
800cdeef
LC
38nobase_dist_guilemodule_DATA = $(MODULES)
39
40patchdir = $(pkgdatadir)/patches
a5071b99
LC
41dist_patch_DATA = \
42 distro/patches/binutils-ld-new-dtags.patch \
43 distro/patches/diffutils-gets-undeclared.patch \
44 distro/patches/guile-1.8-cpp-4.5.patch \
45 distro/patches/m4-gets-undeclared.patch \
46 distro/patches/m4-readlink-EINVAL.patch \
47 distro/patches/m4-s_isdir.patch \
48 distro/patches/make-impure-dirs.patch \
49 distro/patches/findutils-absolute-paths.patch \
50 distro/patches/readline-link-ncurses.patch \
472894aa 51 distro/patches/tar-gets-undeclared.patch
d7672884 52
af51c820
LC
53nobase_nodist_guilemodule_DATA = $(GOBJECTS)
54
55TESTS = \
56 tests/builders.scm \
57 tests/derivations.scm \
e3ce5d70 58 tests/utils.scm \
b0e0d0e9 59 tests/build-utils.scm \
e3ce5d70 60 tests/packages.scm
af51c820 61
e1e7b29a 62TESTS_ENVIRONMENT = \
b86b0056
LC
63 NIX_HASH="$(NIX_HASH)"; \
64 NIX_INSTANTIATE="$(NIX_INSTANTIATE)"; \
e1e7b29a 65 NIXPKGS="$(NIXPKGS)"; \
800cdeef 66 DISTRO_PATCH_DIRECTORY="$(top_srcdir)/distro/patches" \
e1e7b29a 67 GUILE_LOAD_COMPILED_PATH="$(top_builddir):$$GUILE_LOAD_COMPILED_PATH"; \
b86b0056 68 export NIX_HASH NIX_INSTANTIATE NIXPKGS GUILE_LOAD_COMPILED_PATH;
e1e7b29a
LC
69
70LOG_COMPILER = \
5f904ffb 71 $(GUILE) --no-auto-compile -L "$(top_srcdir)"
af51c820 72
ed795c06
LC
73EXTRA_DIST = \
74 srfi/srfi-64.scm \
75 srfi/srfi-64.upstream.scm \
d95c0113 76 tests/test.drv \
ed795c06
LC
77 build-aux/config.rpath \
78 release.nix \
79 $(TESTS)
d7672884 80
af51c820
LC
81CLEANFILES = $(GOBJECTS) *.log
82
83.scm.go:
84 $(MKDIR_P) `dirname "$@"`
b86b0056 85 NIX_INSTANTIATE="$(NIX_INSTANTIATE)" \
04a0b857 86 NIXPKGS="$(NIXPKGS)" \
3a310cc0 87 LIBGCRYPT="$(LIBGCRYPT)" \
800cdeef
LC
88 DISTRO_PATCH_DIRECTORY="$(top_srcdir)/distro/patches" \
89 DISTRO_INSTALLED_PATCH_DIRECTORY="$(patchdir)" \
af51c820
LC
90 GUILE_AUTO_COMPILE=0 \
91 GUILE_LOAD_COMPILED_PATH="$(top_builddir):$$GUILE_LOAD_COMPILED_PATH" \
48e8333d
LC
92 $(GUILD) compile -L "$(top_srcdir)" \
93 -Wformat -Wunbound-variable -Warity-mismatch \
73d96596 94 --target="$(host)" \
af51c820
LC
95 -o "$@" "$<"
96
97SUFFIXES = .go
98
99# Make sure source files are installed first, so that the mtime of
100# installed compiled files is greater than that of installed source
101# files. See
102# <http://lists.gnu.org/archive/html/guile-devel/2010-07/msg00125.html>
103# for details.
104guix_install_go_files = install-nobase_nodist_guilemoduleDATA
105$(guix_install_go_files): install-nobase_dist_guilemoduleDATA
f68b0893
LC
106
107SUBDIRS = po
108
109ACLOCAL_AMFLAGS = -I m4
437e0729
LC
110AM_DISTCHECK_CONFIGURE_FLAGS = \
111 --with-nixpkgs=$(NIXPKGS) --with-nix-prefix="$(NIX_PREFIX)"