Commit Graph

97 Commits

Author SHA1 Message Date
Eelco Dolstra
0a05618f11 * Fix weird behaviour with "gcc -v" due to linker flags being appended
to the gcc invocation.

  If we pass a flag like -Wl, then gcc will call the linker unless it
  can figure out that it has to do something else (e.g., because of a
  "-c" flag).  So if no non-flag arguments are given, don't pass any
  linker flags.  This catches cases like "gcc" (should just print
  "gcc: no input files") and "gcc -v" (should print the version).

svn path=/nixpkgs/trunk/; revision=8644
2007-05-02 14:59:40 +00:00
Eelco Dolstra
69b62bf2d6 * Process packages in the specified order (i.e., don't sort).
svn path=/nixpkgs/trunk/; revision=8166
2007-03-04 01:20:07 +00:00
Eelco Dolstra
2d33b25877 * fetchurl: accept an optional name. Useful for file names that contain
unacceptable characters (such as ? on Windows).

svn path=/nixpkgs/trunk/; revision=8149
2007-03-02 19:07:36 +00:00
Eelco Dolstra
213aefac17 * Look for the current OpenGL driver in /var/state/opengl-driver.
svn path=/nixpkgs/trunk/; revision=8068
2007-02-27 00:49:47 +00:00
Eelco Dolstra
7a79d1ff6a * Remove references to substitute.sh.
svn path=/nixpkgs/trunk/; revision=7499
2006-12-27 18:17:53 +00:00
Eelco Dolstra
138c0ae751 * Merge the new generic builder.
* Removed substitute, it's part of the generic builder now.
* stdenv-initial (Linux): use the real generic builder script.  This
  does require that sed is in the path of the builder of the initial
  stdenv.

svn path=/nixpkgs/trunk/; revision=7498
2006-12-27 18:14:57 +00:00
Eelco Dolstra
f59f5d7d96 * Handle weird cases when the server redirects us while setting a
cookie.

svn path=/nixpkgs/trunk/; revision=7352
2006-12-15 21:28:59 +00:00
Eelco Dolstra
7dfbf0eba7 * Move the substitution functions into stdenv (not merged yet).
* If the environment variable buildCommand is set, then eval that
  instead of doing the build phases.  This is used by the runCommand
  function in all-packages.nix to allow one-lines like

    foo = runCommand "foo" {} "mkdir $out; echo foo > $out/foo";
    

svn path=/nixpkgs/trunk/; revision=7298
2006-12-10 22:24:42 +00:00
Eelco Dolstra
153d4e65a1 * Fork of build-env in the Nix distribution. This one supports
ignoring collisions and selectively including directories.

svn path=/nixpkgs/trunk/; revision=7160
2006-11-28 16:46:12 +00:00
Eelco Dolstra
36b1473e09 * Allow the result to be stored somewhere else than $out.
svn path=/nixpkgs/trunk/; revision=6978
2006-11-08 09:26:18 +00:00
Eelco Dolstra
609607768f * Turn the nukeRefs() function into a separate program.
svn path=/nixpkgs/trunk/; revision=6941
2006-11-03 13:33:24 +00:00
Eelco Dolstra
05c884b471 * Utility: the generic substituter. It substitutes all occurences of
`@var@' in the file `src', writing the result to $out, where `var'
  is any environment variable starting with a lowercase character.
  Example:

    genericSubstituter {
      src = ./file;
      foo = "bla";
      shell = bash + "/bin/sh";
    };

  will replace `@foo@' with `bla' and `@shell@' with
  `/nix/store/...-bash-.../bin/sh'.

svn path=/nixpkgs/trunk/; revision=6928
2006-11-02 22:44:32 +00:00
Eelco Dolstra
f95a93197a * Don't use EPSV.
svn path=/nixpkgs/trunk/; revision=6894
2006-10-28 22:07:25 +00:00
Eelco Dolstra
01fbf62a2c * nativeGlibc -> nativeLibc (gcc-cross-wrapper is probably broken
right now; should merge gcc-wrapper changes).

svn path=/nixpkgs/trunk/; revision=6876
2006-10-27 13:44:17 +00:00
Eelco Dolstra
ee2b63c872 * Argggggghhhh.
svn path=/nixpkgs/trunk/; revision=6872
2006-10-27 12:07:03 +00:00
Eelco Dolstra
29961dbb85 * Doh.
svn path=/nixpkgs/trunk/; revision=6866
2006-10-26 22:40:44 +00:00
Eelco Dolstra
c8cc992038 * Put a symlink to the assembler in the GCC wrapper. Otherwise, when
we use the GCC wrapper in a user environment, the wrong assembler
  will be called.  This is not usually a problem, but sometimes it is
  (e.g., when using G++ 4.1.1 with binutils 2.16 or so).

svn path=/nixpkgs/trunk/; revision=6862
2006-10-26 20:25:31 +00:00
Eelco Dolstra
fd2b826b17 * Add -B$gcc/lib64 when appropriate. This is so that configure
(calling gcc -print-search-dirs) builds a libtool that searches in
  lib64 for libstdc++.so.

svn path=/nixpkgs/trunk/; revision=6850
2006-10-25 16:32:13 +00:00
Eelco Dolstra
b342dcb13b * gcc-wrapper: separately store the flags necessary to find GCC and
Glibc.  This is useful when building GCC.
* gcc-wrapper: the dynamic linker has a different name on x86_64 and
  powerpc.
* gcc-wrapper: "glibc" -> "libc", because someday we might support
  different C libraries.
* gcc: don't do a multilib build (e.g., 32-bit support on x86_64),
  don't need it.
* gcc: merge in support for static builds.
* gcc: various simplifications in the compiler/linker flags, hope they
  work.

svn path=/nixpkgs/trunk/; revision=6823
2006-10-24 18:26:23 +00:00
Eelco Dolstra
361cf08c59 * Add $pkg/lib64 (if it exists) to the library search path in addition
to $pkg/lib.

svn path=/nixpkgs/trunk/; revision=6820
2006-10-24 13:50:21 +00:00
Eelco Dolstra
0a355c0073 * Don't pollute /tmp.
svn path=/nixpkgs/trunk/; revision=5769
2006-07-18 12:00:38 +00:00
Eelco Dolstra
f14988b362 * Show less garbage.
svn path=/nixpkgs/trunk/; revision=5761
2006-07-17 21:27:10 +00:00
Martin Bravenboer
7478e8ef87 Added ssh support to fetchsvn
svn path=/nixpkgs/trunk/; revision=5734
2006-07-17 15:22:20 +00:00
Eelco Dolstra
b3936b7062 * Add nmedit.
svn path=/nixpkgs/trunk/; revision=5713
2006-07-14 17:17:01 +00:00
Eelco Dolstra
471dc2c8bc * Probably need "nm" etc. as well.
svn path=/nixpkgs/trunk/; revision=5712
2006-07-14 17:11:39 +00:00
Eelco Dolstra
dd325103df * Better stdenv for Darwin: uses gcc, coreutils etc. built in Nix, but
external binutils (i.e., Apple's cctools in /usr/bin).

svn path=/nixpkgs/trunk/; revision=5706
2006-07-14 11:59:38 +00:00
Eelco Dolstra
f4ce796a20 * More hackery.
svn path=/nixpkgs/trunk/; revision=5351
2006-05-31 10:36:02 +00:00
Eelco Dolstra
bb93fa69fa * fetchurl: use standard proxy-related variables from the caller such
as `http_proxy'.

svn path=/nixpkgs/trunk/; revision=5347
2006-05-31 09:52:39 +00:00
Eelco Dolstra
046aeb12b0 * We no longer need the prefetch stuff.
svn path=/nixpkgs/trunk/; revision=5340
2006-05-30 12:43:45 +00:00
Eelco Dolstra
c4c224e368 * Make nix-prefetch-svn use nix-store --add-fixed (just like
nix-prefetch-url) 

svn path=/nixpkgs/trunk/; revision=5339
2006-05-30 12:42:00 +00:00
Roy van den Broek
9ece10787e Added fetchcvs.
svn path=/nixpkgs/trunk/; revision=5295
2006-05-11 12:36:16 +00:00
Eelco Dolstra
b8fd332dd8 * Do use readlink if available.
svn path=/nixpkgs/trunk/; revision=5252
2006-05-02 09:21:59 +00:00
Eelco Dolstra
fcbffab371 * system -> top-level.
svn path=/nixpkgs/trunk/; revision=5128
2006-03-30 09:14:50 +00:00
Eelco Dolstra
bb28c87406 * Filter out the meta attribute.
svn path=/nixpkgs/trunk/; revision=5091
2006-03-24 14:20:31 +00:00
Eelco Dolstra
09a9cae715 * Merged the usability branch (from trunk@4749 to branches/usability@5087).
svn path=/nixpkgs/trunk/; revision=5088
2006-03-24 12:25:19 +00:00
Eelco Dolstra
b92bd0f001 * Don't use i686-linux.nix.
svn path=/nixpkgs/trunk/; revision=5046
2006-03-15 21:35:18 +00:00
Eelco Dolstra
439e93640e * Removed readlink.
svn path=/nixpkgs/trunk/; revision=5040
2006-03-15 10:32:40 +00:00
Eelco Dolstra
baec8f5b38 * stdenv.mkDerivation now takes an optional attribute "meta" that
contains arbitrary information about a package, like this:

  meta = {
    homepage = "http://gcc.gnu.org/";
    license = "GPL/LGPL";
    description = "GNU Compiler Collection, 4.0.x";
  };

  The "meta" attribute is not passed to the actual derivation
  operation, so it's not a dependency --- changes to "meta" attributes
  don't trigger a recompilation.

  Now we have to standardise some useful attributes ;-)

svn path=/nixpkgs/branches/usability/; revision=5024
2006-03-10 16:12:46 +00:00
Armijn Hemel
bdf35869f6 make sure we can find things like mips-linux-ar, mips-linux-strip, and so on.
Even though you could just inherit binutils it is conceptually cleaner (I
think) to make these tools available here.

svn path=/nixpkgs/trunk/; revision=4967
2006-03-02 18:03:20 +00:00
Andres Löh
70c36821c6 * updated darcs to 1.0.5, added curl dependency
* added an experimental fetchdarcs function, based on fetchsvn
  (there are no expressions yet that use this function)

svn path=/nixpkgs/trunk/; revision=4615
2006-01-30 11:18:38 +00:00
Eelco Dolstra
410f21887a * A quick hack to get accelerated OpenGL working: just use the driver
in /usr/lib/libGL.so.1 (which will typically load a driver in
  /usr/X11R6/lib/modules/dri).  This has been tested on a i915
  graphics card; it should work with most open source X.org drivers.
  For NVidia's proprietary drivers (which we cannot build ourselves
  anyway), some more symlinks are necessary; I'll add those later.

  So to get hardware-accelerated Quake 3, do:

  $ nix-env -p /nix/var/nix/profiles/opengl -i xorg-sys-opengl
  $ nix-env -i quake3-demo
  $ quake3

svn path=/nixpkgs/trunk/; revision=4613
2006-01-28 01:13:31 +00:00
Eelco Dolstra
7f74c406c4 * In Quake 3, by default use Mesa as the OpenGL implementation. But
allow the OpenGL implementation to be overriden through the
  OPENGL_DRIVER environment variable.  If it is not set, we use the
  implementation installed in the profile
  /nix/var/nix/profiles/opengl, allowing easy late binding by the
  user, e.g.,

    $ nix-env -p /nix/var/nix/profiles/opengl -i nvidia-sys-opengl

  might install the NVidia OpenGL implementation.

  The code that does this is not specific to Quake 3: it has been
  factored out into build-support/opengl/mesa-switch.sh.  Presumably
  any application that requires hardware-accelerated OpenGL needs it.

* Add the Quake 3 demo to the cache.

svn path=/nixpkgs/trunk/; revision=4612
2006-01-28 00:41:16 +00:00
Eelco Dolstra
07687a8514 * Pipe the "p" character into Subversion to force it to accept the
server's certificate.  This is perfectly safe: we don't care whether
  the server is being spoofed --- only the cryptographic hash of the
  output matters.

svn path=/nixpkgs/trunk/; revision=4377
2005-12-15 17:21:20 +00:00
Eelco Dolstra
51c111cb2e * Use a restrictive umask to prevent permission problems.
svn path=/nixpkgs/trunk/; revision=4374
2005-12-15 17:00:56 +00:00
Eelco Dolstra
ded942b341 * Make sure that `gcc -v' (i.e., with no other arguments) does the
right thing.  This is necessary to make libtool detect g++
  properly.  (Fixes the `libtool: compile: unable to infer tagged
  configuration' error on FreeBSD when building Berkeley DB 4.4.)

svn path=/nixpkgs/trunk/; revision=4370
2005-12-15 13:37:36 +00:00
Eelco Dolstra
82e678362f * "." -> "source".
svn path=/nixpkgs/trunk/; revision=4335
2005-12-05 14:11:09 +00:00
Armijn Hemel
508cd3a3e8 add a wrapper for cross compilers, which makes the correct link to the cross compiler. Only works for "gcc", haven't tried for g++ and the others
svn path=/nixpkgs/trunk/; revision=4317
2005-11-29 01:40:33 +00:00
Eelco Dolstra
6f8e9bc2f6 * Make the grep call optional.
svn path=/nixpkgs/trunk/; revision=3330
2005-07-13 09:07:54 +00:00
Eelco Dolstra
a85877edaf * r3317 was wrong: grep should be applied to gcc's stderr, not stdout.
svn path=/nixpkgs/trunk/; revision=3329
2005-07-13 08:45:57 +00:00
Eelco Dolstra
620d5b9d4a * Make gcc work properly again in nix-env installations (e.g., when
used outside of builders).

svn path=/nixpkgs/trunk/; revision=3317
2005-07-12 14:02:36 +00:00