Compare commits
7 commits
master
...
0.9-mainte
Author | SHA1 | Date | |
---|---|---|---|
f282b44993 | |||
4a16a8364c | |||
92a4a81784 | |||
04b51d25d1 | |||
87e5dcd1b8 | |||
2e33293004 | |||
882d569077 |
|
@ -1,4 +1,4 @@
|
||||||
AC_INIT(nix, "0.9")
|
AC_INIT(nix, "0.9.2")
|
||||||
AC_CONFIG_SRCDIR(README)
|
AC_CONFIG_SRCDIR(README)
|
||||||
AC_CONFIG_AUX_DIR(config)
|
AC_CONFIG_AUX_DIR(config)
|
||||||
AM_INIT_AUTOMAKE([dist-bzip2 foreign])
|
AM_INIT_AUTOMAKE([dist-bzip2 foreign])
|
||||||
|
@ -180,6 +180,13 @@ AC_SUBST(NIX_GROUP)
|
||||||
AC_DEFINE_UNQUOTED(NIX_GROUP, ["$NIX_GROUP"], [Nix group])
|
AC_DEFINE_UNQUOTED(NIX_GROUP, ["$NIX_GROUP"], [Nix group])
|
||||||
|
|
||||||
|
|
||||||
|
# This is needed if either ATerm or Berkeley DB are static libraries,
|
||||||
|
# and the Nix libraries are dynamic.
|
||||||
|
if test "$(uname)" = "Darwin"; then
|
||||||
|
LDFLAGS="-all_load $LDFLAGS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
AM_CONFIG_HEADER([config.h])
|
AM_CONFIG_HEADER([config.h])
|
||||||
AC_CONFIG_FILES([Makefile
|
AC_CONFIG_FILES([Makefile
|
||||||
externals/Makefile
|
externals/Makefile
|
||||||
|
|
|
@ -8,6 +8,41 @@
|
||||||
<article><title>Nix Release Notes</title>
|
<article><title>Nix Release Notes</title>
|
||||||
|
|
||||||
|
|
||||||
|
<section><title>Release 0.9.2 (September 21, 2005)</title>
|
||||||
|
|
||||||
|
<para>This bug fix release fixes two problems on Mac OS X:
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem><para>If Nix was linked against statically linked versions
|
||||||
|
of the ATerm or Berkeley DB library, there would be dynamic link
|
||||||
|
errors at runtime.</para></listitem>
|
||||||
|
|
||||||
|
<listitem><para><command>nix-pull</command> and
|
||||||
|
<command>nix-push</command> intermittently failed due to race
|
||||||
|
conditions involving pipes and child processes with error messages
|
||||||
|
such as <literal>open2: open(GLOB(0x180b2e4), >&=9) failed: Bad
|
||||||
|
file descriptor at /nix/bin/nix-pull line 77</literal> (issue
|
||||||
|
<literal>NIX-14</literal>).</para></listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</section>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<section><title>Release 0.9.1 (September 20, 2005)</title>
|
||||||
|
|
||||||
|
<para>This bug fix release addresses a problem with the ATerm library
|
||||||
|
when the <option>--with-aterm</option> flag in
|
||||||
|
<command>configure</command> was <emphasis>not</emphasis> used.</para>
|
||||||
|
|
||||||
|
</section>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<section><title>Release 0.9 (September 16, 2005)</title>
|
<section><title>Release 0.9 (September 16, 2005)</title>
|
||||||
|
|
||||||
<para>NOTE: this version of Nix uses Berkeley DB 4.3 instead of 4.2.
|
<para>NOTE: this version of Nix uses Berkeley DB 4.3 instead of 4.2.
|
||||||
|
|
3
externals/Makefile.am
vendored
3
externals/Makefile.am
vendored
|
@ -56,7 +56,8 @@ else
|
||||||
build-aterm: have-aterm
|
build-aterm: have-aterm
|
||||||
(pfx=`pwd` && \
|
(pfx=`pwd` && \
|
||||||
cd $(ATERM) && \
|
cd $(ATERM) && \
|
||||||
CC="$(CC)" ./configure --prefix=$$pfx/inst-aterm && \
|
CC="$(CC)" ./configure --prefix=$$pfx/inst-aterm \
|
||||||
|
--disable-shared --enable-static CFLAGS=-O1 && \
|
||||||
$(MAKE) && \
|
$(MAKE) && \
|
||||||
$(MAKE) install)
|
$(MAKE) install)
|
||||||
touch build-aterm
|
touch build-aterm
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
#! @perl@ -w -I@libexecdir@/nix
|
#! @perl@ -w -I@libexecdir@/nix
|
||||||
|
|
||||||
use strict;
|
use strict;
|
||||||
use IPC::Open2;
|
|
||||||
use POSIX qw(tmpnam);
|
use POSIX qw(tmpnam);
|
||||||
use readmanifest;
|
use readmanifest;
|
||||||
|
|
||||||
|
@ -74,11 +73,9 @@ print "$size store paths in manifest\n";
|
||||||
# Register all substitutes.
|
# Register all substitutes.
|
||||||
print STDERR "registering substitutes...\n";
|
print STDERR "registering substitutes...\n";
|
||||||
|
|
||||||
my $pid = open2(\*READ, \*WRITE, "$binDir/nix-store --register-substitutes")
|
my $pid = open(WRITE, "|$binDir/nix-store --register-substitutes")
|
||||||
or die "cannot run nix-store";
|
or die "cannot run nix-store";
|
||||||
|
|
||||||
close READ;
|
|
||||||
|
|
||||||
foreach my $storePath (keys %narFiles) {
|
foreach my $storePath (keys %narFiles) {
|
||||||
my $narFileList = $narFiles{$storePath};
|
my $narFileList = $narFiles{$storePath};
|
||||||
foreach my $narFile (@{$narFileList}) {
|
foreach my $narFile (@{$narFileList}) {
|
||||||
|
@ -95,7 +92,4 @@ foreach my $storePath (keys %narFiles) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
close WRITE;
|
close WRITE or die "nix-store failed: $?";
|
||||||
|
|
||||||
waitpid $pid, 0;
|
|
||||||
$? == 0 or die "nix-store failed";
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
#! @perl@ -w -I@libexecdir@/nix
|
#! @perl@ -w -I@libexecdir@/nix
|
||||||
|
|
||||||
use strict;
|
use strict;
|
||||||
use IPC::Open2;
|
|
||||||
use POSIX qw(tmpnam);
|
use POSIX qw(tmpnam);
|
||||||
use readmanifest;
|
use readmanifest;
|
||||||
|
|
||||||
|
@ -62,20 +61,17 @@ foreach my $path (@ARGV) {
|
||||||
|
|
||||||
# Get all paths referenced by the normalisation of the given
|
# Get all paths referenced by the normalisation of the given
|
||||||
# Nix expression.
|
# Nix expression.
|
||||||
my $pid = open2(\*READ, \*WRITE,
|
my $pid = open(READ,
|
||||||
"$binDir/nix-store --query --requisites --force-realise " .
|
"$binDir/nix-store --query --requisites --force-realise " .
|
||||||
"--include-outputs '$path'") or die;
|
"--include-outputs '$path'|") or die;
|
||||||
close WRITE;
|
|
||||||
|
|
||||||
while (<READ>) {
|
while (<READ>) {
|
||||||
chomp;
|
chomp;
|
||||||
die "bad: $_" unless /^\//;
|
die "bad: $_" unless /^\//;
|
||||||
$storePaths{$_} = "";
|
$storePaths{$_} = "";
|
||||||
}
|
}
|
||||||
close READ;
|
|
||||||
|
close READ or die "nix-store failed: $?";
|
||||||
waitpid $pid, 0;
|
|
||||||
$? == 0 or die "nix-store failed";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
my @storePaths = keys %storePaths;
|
my @storePaths = keys %storePaths;
|
||||||
|
@ -104,18 +100,14 @@ close NIX;
|
||||||
# Instantiate store expressions from the Nix expression.
|
# Instantiate store expressions from the Nix expression.
|
||||||
my @storeExprs;
|
my @storeExprs;
|
||||||
print STDERR "instantiating store expressions...\n";
|
print STDERR "instantiating store expressions...\n";
|
||||||
my $pid = open2(\*READ, \*WRITE, "$binDir/nix-instantiate $nixfile")
|
my $pid = open(READ, "$binDir/nix-instantiate $nixfile|")
|
||||||
or die "cannot run nix-instantiate";
|
or die "cannot run nix-instantiate";
|
||||||
close WRITE;
|
|
||||||
while (<READ>) {
|
while (<READ>) {
|
||||||
chomp;
|
chomp;
|
||||||
die unless /^\//;
|
die unless /^\//;
|
||||||
push @storeExprs, $_;
|
push @storeExprs, $_;
|
||||||
}
|
}
|
||||||
close READ;
|
close READ or die "nix-instantiate failed: $?";
|
||||||
|
|
||||||
waitpid $pid, 0;
|
|
||||||
$? == 0 or die "nix-instantiate failed";
|
|
||||||
|
|
||||||
|
|
||||||
# Realise the store expressions.
|
# Realise the store expressions.
|
||||||
|
@ -130,18 +122,14 @@ while (scalar @tmp > 0) {
|
||||||
my @tmp2 = @tmp[0..$n - 1];
|
my @tmp2 = @tmp[0..$n - 1];
|
||||||
@tmp = @tmp[$n..scalar @tmp - 1];
|
@tmp = @tmp[$n..scalar @tmp - 1];
|
||||||
|
|
||||||
my $pid = open2(\*READ, \*WRITE, "$binDir/nix-store --realise @tmp2")
|
my $pid = open(READ, "$binDir/nix-store --realise @tmp2|")
|
||||||
or die "cannot run nix-store";
|
or die "cannot run nix-store";
|
||||||
close WRITE;
|
|
||||||
while (<READ>) {
|
while (<READ>) {
|
||||||
chomp;
|
chomp;
|
||||||
die unless (/^\//);
|
die unless (/^\//);
|
||||||
push @narPaths, "$_";
|
push @narPaths, "$_";
|
||||||
}
|
}
|
||||||
close READ;
|
close READ or die "nix-store failed: $?";
|
||||||
|
|
||||||
waitpid $pid, 0;
|
|
||||||
$? == 0 or die "nix-store failed";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue