diff --git a/configure.ac b/configure.ac index eee73c07be016201c6ebd8eb2b3940f7c88b9115..f6e548729cd3b3e0935e62d35901e1f8d28577fc 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT(nix, "0.10") +AC_INIT(nix, 0.10) AC_CONFIG_SRCDIR(README) AC_CONFIG_AUX_DIR(config) AM_INIT_AUTOMAKE([dist-bzip2 foreign]) @@ -10,12 +10,14 @@ STABLE=0 # Put the revision number in the version. if test "$STABLE" != "1"; then if REVISION=`test -d $srcdir/.svn && svnversion $srcdir 2> /dev/null`; then - VERSION="${VERSION}pre${REVISION}" + VERSION=${VERSION}pre${REVISION} elif REVISION=`cat $srcdir/svn-revision 2> /dev/null`; then - VERSION="${VERSION}pre${REVISION}" + VERSION=${VERSION}pre${REVISION} fi fi +AC_DEFINE_UNQUOTED(NIX_VERSION, ["$(echo $VERSION)"], [version]) + AC_PREFIX_DEFAULT(/nix) AC_CANONICAL_HOST diff --git a/substitute.mk b/substitute.mk index 2b7f386103f83141fed9f2ec8e9b04bc8c2260f0..2e28e586779a494c261c64fef564c42ff2fb3245 100644 --- a/substitute.mk +++ b/substitute.mk @@ -16,6 +16,8 @@ -e "s^@perl\@^$(perl)^g" \ -e "s^@coreutils\@^$(coreutils)^g" \ -e "s^@tar\@^$(tar)^g" \ + -e "s^@dot\@^$(dot)^g" \ + -e "s^@aterm_bin\@^$(aterm_bin)^g" \ -e "s^@version\@^$(VERSION)^g" \ < $< > $@ || rm $@ if test -x $<; then chmod +x $@; fi diff --git a/tests/Makefile.am b/tests/Makefile.am index 933da520b4608bc746fa0d0f934be08fb9104d7d..d8493496d2b3868b8d209fee4a1ad9a5559ea085 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,29 +1,4 @@ -TEST_ROOT = $(shell pwd)/test-tmp - -extra1 = $(TEST_ROOT)/shared - -TESTS_ENVIRONMENT = TEST_ROOT=$(TEST_ROOT) \ - NIX_STORE_DIR=$(TEST_ROOT)/store \ - NIX_DATA_DIR=$(TEST_ROOT)/data \ - NIX_LOCALSTATE_DIR=$(TEST_ROOT)/var \ - NIX_LOG_DIR=$(TEST_ROOT)/var/log/nix \ - NIX_STATE_DIR=$(TEST_ROOT)/var/nix \ - NIX_DB_DIR=$(TEST_ROOT)/db \ - NIX_CONF_DIR=$(TEST_ROOT)/etc \ - NIX_BIN_DIR=$(TEST_ROOT)/bin \ - NIX_LIBEXEC_DIR=$(TEST_ROOT)/bin \ - REAL_BIN_DIR=$(bindir) \ - REAL_LIBEXEC_DIR=$(libexecdir) \ - REAL_LOCALSTATE_DIR=$(localstatedir) \ - REAL_DATA_DIR=$(datadir) \ - REAL_STORE_DIR=$(storedir) \ - NIX_BUILD_HOOK= \ - PERL=$(perl) \ - TOP=$(shell pwd)/.. \ - SHARED=$(extra1) \ - aterm_bin=$(aterm_bin) \ - dot=$(dot) \ - $(SHELL) -e +TESTS_ENVIRONMENT = $(SHELL) -e simple.sh: simple.nix dependencies.sh: dependencies.nix @@ -45,11 +20,10 @@ TESTS = init.sh hash.sh lang.sh simple.sh dependencies.sh locking.sh parallel.sh XFAIL_TESTS = -langtests: - $(TESTS_ENVIRONMENT) ./lang.sh - include ../substitute.mk +$(TESTS): common.sh + EXTRA_DIST = $(TESTS) \ simple.nix.in simple.builder.sh \ dependencies.nix.in dependencies.builder*.sh \ @@ -62,4 +36,5 @@ EXTRA_DIST = $(TESTS) \ gc-concurrent2.nix.in gc-concurrent2.builder.sh \ fallback.nix.in \ user-envs.nix.in user-envs.builder.sh \ - $(wildcard lang/*.nix) $(wildcard lang/*.exp) + $(wildcard lang/*.nix) $(wildcard lang/*.exp) \ + common.sh.in diff --git a/tests/build-hook.sh b/tests/build-hook.sh index f11cd15b8b7227ca1641dc913884cd74dc479c69..6a71bbe56173108d6f219ff9f3dc62435ffdc4e4 100644 --- a/tests/build-hook.sh +++ b/tests/build-hook.sh @@ -1,3 +1,5 @@ +source common.sh + export NIX_BUILD_HOOK="build-hook.hook.sh" drvPath=$($TOP/src/nix-instantiate/nix-instantiate build-hook.nix) diff --git a/tests/common.sh.in b/tests/common.sh.in new file mode 100644 index 0000000000000000000000000000000000000000..979e60db26ac72eefaa1aeabb38e5656333c3046 --- /dev/null +++ b/tests/common.sh.in @@ -0,0 +1,26 @@ +set -e + +export TEST_ROOT=$(pwd)/test-tmp +export NIX_STORE_DIR=$TEST_ROOT/store +export NIX_DATA_DIR=$TEST_ROOT/data +export NIX_LOCALSTATE_DIR=$TEST_ROOT/var +export NIX_LOG_DIR=$TEST_ROOT/var/log/nix +export NIX_STATE_DIR=$TEST_ROOT/var/nix +export NIX_DB_DIR=$TEST_ROOT/db +export NIX_CONF_DIR=$TEST_ROOT/etc +export NIX_BIN_DIR=$TEST_ROOT/bin +export NIX_LIBEXEC_DIR=$TEST_ROOT/bin +export SHARED=$TEST_ROOT/shared + +export REAL_BIN_DIR=@bindir@ +export REAL_LIBEXEC_DIR=@libexecdir@ +export REAL_LOCALSTATE_DIR=@localstatedir@ +export REAL_DATA_DIR=@datadir@ +export REAL_STORE_DIR=@storedir@ +export NIX_BUILD_HOOK= +export PERL=perl +export TOP=$(pwd)/.. +export aterm_bin=@aterm_bin@ +export dot=@dot@ + +export version=@version@ diff --git a/tests/dependencies.sh b/tests/dependencies.sh index 985d087273d5b73cc7761330334d371cce308511..0d19cd2bb0be0cb3c5763d16f88069337d95a8cc 100644 --- a/tests/dependencies.sh +++ b/tests/dependencies.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate dependencies.nix) echo "derivation is $drvPath" diff --git a/tests/fallback.sh b/tests/fallback.sh index 4a3d29f39eb0f6e487875aa0ae403dc03aed9d1b..2ff4b0b9ceb47f82cbe56495d5c749adc5515a9c 100644 --- a/tests/fallback.sh +++ b/tests/fallback.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate fallback.nix) echo "derivation is $drvPath" diff --git a/tests/gc-concurrent.sh b/tests/gc-concurrent.sh index 8cc24565dc2ad0a6bb35aa6f695bcf285a07966f..7606a64c87e505ee658d4caa7afa70671914d65c 100644 --- a/tests/gc-concurrent.sh +++ b/tests/gc-concurrent.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath1=$($TOP/src/nix-instantiate/nix-instantiate gc-concurrent.nix) outPath1=$($TOP/src/nix-store/nix-store -q $drvPath1) diff --git a/tests/gc.sh b/tests/gc.sh index 9fe0068b38c3af90d82c93cebc9411f9b5fb3fe6..c1bfc9ce4104c0b147a41ebb34b5da226d20d69b 100644 --- a/tests/gc.sh +++ b/tests/gc.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate dependencies.nix) outPath=$($TOP/src/nix-store/nix-store -rvv "$drvPath") diff --git a/tests/hash.sh b/tests/hash.sh index 848a36c6b8d7d6d066dcc8941b09f341ccd78303..fbbf1a761e91369c4ebf0698db43161ff9843d61 100644 --- a/tests/hash.sh +++ b/tests/hash.sh @@ -1,3 +1,5 @@ +source common.sh + try () { echo -n "$2" > $TEST_ROOT/vector hash=$($TOP/src/nix-hash/nix-hash $EXTRA --flat --type "$1" $TEST_ROOT/vector) diff --git a/tests/init.sh b/tests/init.sh index 316b2ec3d623ce268603cd2f213a67c81609feee..cd9fe60219dd787977954a4da2a61e19b1022e05 100644 --- a/tests/init.sh +++ b/tests/init.sh @@ -1,3 +1,5 @@ +source common.sh + echo "NIX_STORE_DIR=$NIX_STORE_DIR NIX_DB_DIR=$NIX_DB_DIR" test -n "$TEST_ROOT" diff --git a/tests/lang.sh b/tests/lang.sh index bbdb3fb8a95598f25762a74e4a927e65e0600c72..5e9d8d51e0f18bb432aea245f9092757ae595eaa 100644 --- a/tests/lang.sh +++ b/tests/lang.sh @@ -1,3 +1,5 @@ +source common.sh + fail=0 for i in lang/parse-fail-*.nix; do diff --git a/tests/locking.sh b/tests/locking.sh index eeac569b81c179f0a95b44013fb175a90b90d054..3e1788660602d718731b0dfe08b07f9dc372db33 100644 --- a/tests/locking.sh +++ b/tests/locking.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate locking.nix) echo "derivation is $drvPath" diff --git a/tests/misc.sh b/tests/misc.sh index d865df8ddeb68fc49abd1958f8af7d01c8dc7c88..2220ea18cb86372523c3d472a406764985109101 100644 --- a/tests/misc.sh +++ b/tests/misc.sh @@ -1,3 +1,5 @@ +source common.sh + # Tests miscellaneous commands. # Do all commands have help? @@ -6,3 +8,5 @@ $TOP/src/nix-store/nix-store --help | grep -q realise $TOP/src/nix-instantiate/nix-instantiate --help | grep -q eval-only $TOP/src/nix-hash/nix-hash --help | grep -q base32 +# Can we ask for the version number? +$TOP/src/nix-env/nix-env --version | grep "$version" diff --git a/tests/nix-pull.sh b/tests/nix-pull.sh index 4f53113bc85309071455516ea38aaed3d5d0b597..a8dca8feaa422cb67fde3f2e07e5b0e1b300c35a 100644 --- a/tests/nix-pull.sh +++ b/tests/nix-pull.sh @@ -1,3 +1,5 @@ +source common.sh + clearStore () { echo "clearing store..." chmod -R +w "$NIX_STORE_DIR" diff --git a/tests/nix-push.sh b/tests/nix-push.sh index 73499f1e9e354225831ff7bfb50c6bb4a9242188..6dbb2484013a3a84b428d964d429272189c680ca 100644 --- a/tests/nix-push.sh +++ b/tests/nix-push.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate dependencies.nix) outPath=$($TOP/src/nix-store/nix-store -r $drvPath) diff --git a/tests/parallel.sh b/tests/parallel.sh index 0cc4ea9c346eadbf2a2ccf30e7ffeed3363646bb..2382db7834ba0bd5f47ee84e79fb05f21697a4fd 100644 --- a/tests/parallel.sh +++ b/tests/parallel.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate parallel.nix) echo "derivation is $drvPath" diff --git a/tests/referrers.sh b/tests/referrers.sh index 6169e8e5515dbd23fb35294a6c7362abd4951703..2ee97e65b5a9f7af100eb39e970cf6cbe6048983 100644 --- a/tests/referrers.sh +++ b/tests/referrers.sh @@ -1,3 +1,5 @@ +source common.sh + max=5000 reference=$NIX_STORE_DIR/abcdef diff --git a/tests/simple.sh b/tests/simple.sh index 996ef4e78ffdfbee11d493f2ac30d9d84a1c5503..3e58bcc845c282fa5d271fc78c583ab838b948be 100644 --- a/tests/simple.sh +++ b/tests/simple.sh @@ -1,3 +1,5 @@ +source common.sh + drvPath=$($TOP/src/nix-instantiate/nix-instantiate simple.nix) echo "derivation is $drvPath" diff --git a/tests/substitutes.sh b/tests/substitutes.sh index 150d6b8a3f1a2b551015cacd573fd71cde9dba0a..680f114b5e174d445f591b0736ccb8bb6f39327a 100644 --- a/tests/substitutes.sh +++ b/tests/substitutes.sh @@ -1,3 +1,5 @@ +source common.sh + # Instantiate. drvPath=$($TOP/src/nix-instantiate/nix-instantiate substitutes.nix) echo "derivation is $drvPath" diff --git a/tests/substitutes2.sh b/tests/substitutes2.sh index 6dcff6fd43a1b9c3687d874fb609f675ed60b4a9..7303255af0caeb98586211f911d7f46ecc693b5b 100644 --- a/tests/substitutes2.sh +++ b/tests/substitutes2.sh @@ -1,3 +1,5 @@ +source common.sh + # Instantiate. drvPath=$($TOP/src/nix-instantiate/nix-instantiate substitutes2.nix) echo "derivation is $drvPath" diff --git a/tests/user-envs.sh b/tests/user-envs.sh index 59565cff0dc81a320eff0bbd3cf1096faeae86c4..eddd4c22abe7998e677b014066f2ee0c09414d69 100644 --- a/tests/user-envs.sh +++ b/tests/user-envs.sh @@ -1,3 +1,5 @@ +source common.sh + nixenv=$TOP/src/nix-env/nix-env profiles="$NIX_STATE_DIR"/profiles diff --git a/tests/verify.sh b/tests/verify.sh index ede3e7d74bead03679502bb2867de98640d51814..a38544331af3184e34f1086fbc48cda374250293 100644 --- a/tests/verify.sh +++ b/tests/verify.sh @@ -1 +1,3 @@ +source common.sh + $TOP/src/nix-store/nix-store --verify