aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
AgeCommit message (Collapse)Author
2014-07-10Remove maybeVforkEelco Dolstra
2014-05-26Use std::unordered_setEelco Dolstra
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.