aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
AgeCommit message (Collapse)Author
2014-02-01Build/install manualEelco Dolstra
2014-01-21Fix buildEelco Dolstra
2014-01-09Handle systems where "echo -n" doesn't workEelco Dolstra
2013-11-25Expand configure variables before writing config.statusEelco Dolstra
This way, we can use config.status for generating scripts/* (without ending up with lines like "#! /usr/bin/perl -I${libexecdir}/...").
2013-11-25Remove obsolete setting of $CC_FOR_BUILDEelco Dolstra
2013-11-25Don't install LibtoolEelco Dolstra
2013-11-25Don't instantiate Automake makefilesEelco Dolstra
2013-11-22Drop the dependency on AutomakeEelco Dolstra
2013-11-22New non-recursive, plain Make-based build systemEelco Dolstra
2013-11-14Remove nix-setuid-helperEelco Dolstra
AFAIK, nobody uses it, it's not maintained, and it has no tests.
2013-08-19Turn on -WallEelco Dolstra
2013-08-07Run the daemon worker on the same CPU as the clientEelco Dolstra
On a system with multiple CPUs, running Nix operations through the daemon is significantly slower than "direct" mode: $ NIX_REMOTE= nix-instantiate '<nixos>' -A system real 0m0.974s user 0m0.875s sys 0m0.088s $ NIX_REMOTE=daemon nix-instantiate '<nixos>' -A system real 0m2.118s user 0m1.463s sys 0m0.218s The main reason seems to be that the client and the worker get moved to a different CPU after every call to the worker. This patch adds a hack to lock them to the same CPU. With this, the overhead of going through the daemon is very small: $ NIX_REMOTE=daemon nix-instantiate '<nixos>' -A system real 0m1.074s user 0m0.809s sys 0m0.098s
2013-08-06Set the default GCC optimisation level to -O3Eelco Dolstra
2013-07-12Add gzip support for channel unpackingGergely Risko
2013-03-25makeStoreWritable: Use statvfs instead of /proc/self/mountinfo to find out ↵Shea Levy
if /nix/store is a read-only bind mount /nix/store could be a read-only bind mount even if it is / in its own filesystem, so checking the 4th field in mountinfo is insufficient. Signed-off-by: Shea Levy <shea@shealevy.com>
2013-01-02UrggghEelco Dolstra
http://hydra.nixos.org/build/3661100
2012-11-15Disable use of vfork()Eelco Dolstra
vfork() is just too weird. For instance, in this build: http://hydra.nixos.org/build/3330487 the value fromHook.writeSide becomes corrupted in the parent, even though the child only reads from it. At -O0 the problem goes away. Probably the child is overriding some spilled temporary variable. If I get bored I may implement using posix_spawn() instead.
2012-11-09Use vfork() instead of fork() if availableEelco Dolstra
Hopefully this reduces the chance of hitting ‘unable to fork: Cannot allocate memory’ errors. vfork() is used for everything except starting builders.
2012-10-10Out-of-tree building of perl modules.Mats Erik Andersson
2012-10-03Rename nix-worker to nix-daemonEelco Dolstra
2012-10-03Remove bin2cEelco Dolstra
2012-09-14Test whether GNU tar understands --warning=no-timestampEelco Dolstra
http://hydra.nixos.org/build/3031618
2012-08-27WhitespaceEelco Dolstra
2012-08-01Use a GNU tar flag to shut up warnings about implausibly old timestampEelco Dolstra
2012-07-26Merge branch 'master' into no-manifestsEelco Dolstra
2012-07-23Handle platforms that don't support linking to a symlinkEelco Dolstra
E.g. Darwin doesn't allow this.
2012-07-23Use lutimes() if available to canonicalise the timestamp of symlinksEelco Dolstra
Also use utimes() instead of utime() if lutimes() is not available.
2012-07-09Add WWW::Curl as a dependencyEelco Dolstra
2012-06-29Use XZ compression in binary cachesEelco Dolstra
XZ compresses significantly better than bzip2. Here are the compression ratios and execution times (using 4 cores in parallel) on my /var/run/current-system (3.1 GiB): bzip2: total compressed size 849.56 MiB, 30.8% [2m08] xz -6: total compressed size 641.84 MiB, 23.4% [6m53] xz -7: total compressed size 621.82 MiB, 22.6% [7m19] xz -8: total compressed size 599.33 MiB, 21.8% [7m18] xz -9: total compressed size 588.18 MiB, 21.4% [7m40] Note that compression takes much longer. More importantly, however, decompression is much faster: bzip2: 1m47.274s xz -6: 0m55.446s xz -7: 0m54.119s xz -8: 0m52.388s xz -9: 0m51.842s The only downside to using -9 is that decompression takes a fair amount (~65 MB) of memory.
2012-05-10Support building with the Perl XS bindings disabledEelco Dolstra
Since the Perl bindings require shared libraries, this is required on platforms such as Cygwin where we do a static build.
2012-05-04Require SQLite >= 3.6.19Eelco Dolstra
Nix needs SQLite's foreign key constraint feature, which was introduced in 3.6.19. Without it, the database won't be cleaned up correctly when paths are deleted. See e.g. http://hydra.nixos.org/build/2494142.
2012-04-13If "pv" is available at compile time, hard-code its pathEelco Dolstra
2012-03-19Fix the optional dependency on OpenSSLEelco Dolstra
http://hydra.nixos.org/build/2306540
2012-03-18Drop the externals directoryEelco Dolstra
Nix now requires SQLite and bzip2 to be pre-installed. SQLite is detected using pkg-config. We required DBD::SQLite anyway, so depending on SQLite is not a big problem. The --with-bzip2, --with-openssl and --with-sqlite flags are gone.
2012-02-15On Linux, make the Nix store really read-only by using the immutable bitEelco Dolstra
I was bitten one time too many by Python modifying the Nix store by creating *.pyc files when run as root. On Linux, we can prevent this by setting the immutable bit on files and directories (as in ‘chattr +i’). This isn't supported by all filesystems, so it's not an error if setting the bit fails. The immutable bit is cleared by the garbage collector before deleting a path. The only tricky aspect is in optimiseStore(), since it's forbidden to create hard links to an immutable file. Thus optimiseStore() temporarily clears the immutable bit before creating the link.
2012-01-11* Figure out the extension of dynamic libraries; don't hard-code .so.Eelco Dolstra
2012-01-05* Add a -I flag to the Perl bindings to nix-build and some otherEelco Dolstra
scripts. * Include the version and architecture in the -I flag so that there is at least a chance that a Nix binary built for one Perl version will run on another version.
2012-01-04* Let --disable-gc work.Eelco Dolstra
2012-01-03* Add a test for nix-channel.Eelco Dolstra
* Refactor the nix-channel unpacker a bit.
2011-11-21* Doh.Eelco Dolstra
2011-11-21* Put back the "sys_name" variable which got removed somewhere. ThisEelco Dolstra
broke building on Cygwin and Solaris.
2011-11-21* Escape the [ and ] characters in the sed call, otherwise autoconfEelco Dolstra
will eat them.
2011-11-20* "sed" on FreeBSD doesn't know the "+" operator.Eelco Dolstra
2011-11-18* In the platform, canonicalise "amd64" to "x86_64". FreeBSD 8.2'sEelco Dolstra
uname reports amd64. * Drop the FreeBSD version number, e.g. "i686-freebsd" instead of "i686-freebsd8.2".
2011-11-16configure: Change i*86 to i686 as has always been done.Ludovic Courtès
2011-11-16configure: Rely on `AC_CANONICAL_HOST' to determine the Nix system name.Ludovic Courtès
This should be more robust and also plays better with cross-compilation---it uses the host name, instead of using the build name.
2011-11-07* Boldly make SQLite WAL mode the default again. Hopefully theEelco Dolstra
intermittent problems are gone by now. WAL mode is preferrable because it does way fewer fsyncs.
2011-10-10* Install NixManifest.pm, NixConfig.pm and GeneratePatches.pm underEelco Dolstra
the Nix:: namespace.
2011-10-10* Include the Nix Perl bindings in Nix itself. This will allow theEelco Dolstra
bindings to be used in Nix's own Perl scripts. The only downside is that Perl XS and Automake/libtool don't really like each other, so building is a bit tricky.
2011-07-13* Show the default for --with-store-dir (Nix/211).Eelco Dolstra