diff options
author | Mathieu Lirzin <mthl@gnu.org> | 2016-04-03 18:18:46 +0200 |
---|---|---|
committer | Mathieu Lirzin <mthl@gnu.org> | 2016-04-15 00:59:07 +0200 |
commit | a1097caa6a30f45661ee510c59bf0e01972cebba (patch) | |
tree | 6ffe4997938608d555e5ecddbbdb267226e82246 /test-env.in | |
parent | e66d1f59abc02d60be3328cb511452fec946bbb0 (diff) | |
download | guix-a1097caa6a30f45661ee510c59bf0e01972cebba.tar guix-a1097caa6a30f45661ee510c59bf0e01972cebba.tar.gz |
build: Move environment '.in' scripts to 'build-aux' directory.
* pre-inst-env.in: Move to ...
* build-aux/pre-inst-env.in: ... here.
* test-env.in: Move to ...
* build-aux/test-env.in: ... here.
* configure.ac (AC_CONFIG_FILES): Adapt to this. Keep the generated
scripts in their current location which is $(top_builddir).
Diffstat (limited to 'test-env.in')
-rw-r--r-- | test-env.in | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/test-env.in b/test-env.in deleted file mode 100644 index c3f60f7283..0000000000 --- a/test-env.in +++ /dev/null @@ -1,131 +0,0 @@ -#!/bin/sh - -# GNU Guix --- Functional package management for GNU -# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> -# -# This file is part of GNU Guix. -# -# GNU Guix is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or (at -# your option) any later version. -# -# GNU Guix is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. - -# Usage: ./test-env COMMAND ARG... -# -# Run the daemon in the build directory, and run COMMAND within -# `pre-inst-env'. This is used to run unit tests with the just-built -# daemon, unless `--disable-daemon' was passed at configure time. - - -# Make sure 'cd' behaves deterministically and doesn't write anything to -# stdout. -unset CDPATH - -if [ -x "@abs_top_builddir@/guix-daemon" ] -then - # Silence the daemon's output, which is often useless, as well as that of - # Bash (such as "Terminated" messages when 'guix-daemon' is killed.) - exec 2> /dev/null - - NIX_STORE_DIR="@GUIX_TEST_ROOT@/store" - - # Do that because store.scm calls `canonicalize-path' on it. - mkdir -p "$NIX_STORE_DIR" - - # Canonicalize the store directory name in an attempt to avoid symlinks in - # it or its parent directories. See <http://bugs.gnu.org/17935>. - NIX_STORE_DIR="`cd "@GUIX_TEST_ROOT@/store"; pwd -P`" - - NIX_LOCALSTATE_DIR="@GUIX_TEST_ROOT@/var" - NIX_LOG_DIR="@GUIX_TEST_ROOT@/var/log/guix" - NIX_DB_DIR="@GUIX_TEST_ROOT@/db" - NIX_ROOT_FINDER="@abs_top_builddir@/nix/scripts/list-runtime-roots" - - # Choose a PID-dependent name to allow for parallel builds. Note - # that the directory name must be chosen so that the socket's file - # name is less than 108-char long (the size of `sun_path' in glibc). - # Currently, in Nix builds, we're at ~106 chars... - NIX_STATE_DIR="@GUIX_TEST_ROOT@/var/$$" - - # We can't exit when we reach the limit, because perhaps the test doesn't - # actually rely on the daemon, but at least warn. - if test "`echo -n "$NIX_STATE_DIR/daemon-socket/socket" | wc -c`" -ge 108 - then - echo "warning: exceeding socket file name limit; test may fail!" >&2 - fi - - # The configuration directory, for import/export signing keys. - NIX_CONF_DIR="@GUIX_TEST_ROOT@/etc" - if [ ! -d "$NIX_CONF_DIR" ] - then - # Copy the keys so that the secret key has the right permissions (the - # daemon errors out when this is not the case.) - mkdir -p "$NIX_CONF_DIR" - cp "@abs_top_srcdir@/tests/signing-key.sec" \ - "@abs_top_srcdir@/tests/signing-key.pub" \ - "$NIX_CONF_DIR" - chmod 400 "$NIX_CONF_DIR/signing-key.sec" - fi - - # A place to store data of the substituter. - GUIX_BINARY_SUBSTITUTE_URL="file://$NIX_STATE_DIR/substituter-data" - rm -rf "$NIX_STATE_DIR/substituter-data" - mkdir -p "$NIX_STATE_DIR/substituter-data" - - # For a number of tests, we want to allow unsigned narinfos, for - # simplicity. - GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES=yes - - # Place for the substituter's cache. - XDG_CACHE_HOME="$NIX_STATE_DIR/cache-$$" - - # For the (guix import snix) tests. - NIXPKGS="@NIXPKGS@" - - export NIX_IGNORE_SYMLINK_STORE NIX_STORE_DIR \ - NIX_LOCALSTATE_DIR NIX_LOG_DIR NIX_STATE_DIR NIX_DB_DIR \ - NIX_ROOT_FINDER GUIX_BINARY_SUBSTITUTE_URL \ - GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES \ - NIX_CONF_DIR XDG_CACHE_HOME NIXPKGS - - # Launch the daemon without chroot support because is may be - # unavailable, for instance if we're not running as root. - "@abs_top_builddir@/pre-inst-env" \ - "@abs_top_builddir@/guix-daemon" --disable-chroot \ - --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL" & - - daemon_pid=$! - trap "kill $daemon_pid ; rm -rf $NIX_STATE_DIR" EXIT -fi - -# Avoid issues that could stem from l10n, such as language/encoding -# mismatches. -unset LANGUAGE -LC_MESSAGES=C -export LC_MESSAGES - -# Disable grafts by default because they can cause things to be built -# regardless of '--dry-run'. -GUIX_BUILD_OPTIONS="--no-grafts" -export GUIX_BUILD_OPTIONS - -# Ignore user settings. -unset GUIX_PACKAGE_PATH - -storedir="@storedir@" -prefix="@prefix@" -datarootdir="@datarootdir@" -datadir="@datadir@" -localstatedir="@localstatedir@" -export storedir prefix datarootdir datadir localstatedir - -"@abs_top_builddir@/pre-inst-env" "$@" -exit $? |