Commit graph

102 commits

Author SHA1 Message Date
Lluís Batlle i Rossell 9b977f5c60 Fixing many things related to the cross compilation in stdenvCross.
It still does not work, but I think I already get glibc cross compiled.
Next: gcc and g++, and set some setup script hooks on stdenvCross.

It took quite enough hours for this commit.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18351
2009-11-15 05:28:35 +00:00
Lluís Batlle i Rossell 2aba922d30 My first attempt at getting cross compilers in nixpkgs.
My idea is to provide special stdenv expressions that will contain in the path
additional cross compilers. As most expressions for programs accept a stdenv parameter, 
we could substitute this parameter with the special stdenv, which will have a
generic builder that attempts the usual "--target=..." and can additionally
have an env variable like "cross" with the target architecture set.
So, finally we could have additional expressions like this:

bashRealArm = makeOverridable (import ../shells/bash) {
    inherit fetchurl bison;
    stdenv = stdenvCross "armv5tel-unknown-linux-gnueabi";
};

Meanwhile it does not work - I still cannot get the cross-gcc to build.

I think it does not fill the previous expressions with a lot of noise, so I
think it may be a good path to follow.

I only touched some files of the current stdenv: gcc-4.3, kernel headers
2.6.28, glibc 2.9, ...

I tried to use the gcc-cross-wrapper, that may be very outdated. Maybe I will
update it, or update the gcc-wrapper expression to make it fit the cross tools,
but meanwhile I even cannot build gcc, so I have not tested the wrapper.

This new idea on cross compiling is not similar to that of the
nixpkgs/branches/cross-compilation, which mostly added bare new expressions for
anything to be cross compiled, if I understood it correctly.

I cared not to break anything of the usual stdenv in all this work.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18343
2009-11-14 08:11:30 +00:00
Lluís Batlle i Rossell 4b27d28701 Porting changes from stdenv-updates into this branch.
This comes from:
svn diff  ^/nixpkgs/trunk/@18255 ^/nixpkgs/branches/stdenv-updates/ > diff
patch -p0 < diff
and then adding into svn all files new from the patch.

trunk@18255 comes from the last time I updated stdenv-updates from trunk.


svn path=/nixpkgs/stdenv-updates2/; revision=18272
2009-11-08 00:32:12 +00:00
Lluís Batlle i Rossell d4aedd92cc I revert my changes to get nixpkgs working on armv5tel-linux.
I thought I didn't change stdenv, but I did. This will go soon into the stdenv
branch then.
Reverse-merging r16467 through r16465.


svn path=/nixpkgs/trunk/; revision=16468
2009-07-26 22:47:33 +00:00
Lluís Batlle i Rossell 532fc4a05d Adding armv5tel to the 'if' checks in stdenv, gcc-wrapper and kernel headers
svn path=/nixpkgs/trunk/; revision=16466
2009-07-26 21:48:10 +00:00
Eelco Dolstra 3593b97d63 * Sync with the trunk.
svn path=/nixpkgs/branches/stdenv-updates/; revision=14557
2009-03-16 12:45:27 +00:00
Eelco Dolstra 539239d66d * KVM 84. CIFS/Samba performance still broken.
* Kernel headers: KVM expects a include/linux/asm-x86 symlink, so
  provide it.

svn path=/nixpkgs/trunk/; revision=14113
2009-02-18 14:53:14 +00:00
Eelco Dolstra 2607a78df9 * Use the 2.6.28.5 kernel headers. In particular this fixes this bug:
http://bugs.gentoo.org/show_bug.cgi?format=multiple&id=252721

  E.g. the hal compile broke because of this.

svn path=/nixpkgs/branches/stdenv-updates/; revision=14101
2009-02-17 15:32:53 +00:00
Eelco Dolstra c1579d2e78 * stdenv branch: synced with the trunk.
svn path=/nixpkgs/branches/stdenv-updates/; revision=13785
2009-01-16 10:59:27 +00:00
Eelco Dolstra 1a3a6835c2 * KVM 82.
* Kernel headers for Linux 2.6.28.

svn path=/nixpkgs/trunk/; revision=13755
2009-01-13 12:40:58 +00:00
Eelco Dolstra 821de7706a * Glibc 2.9. Got rid of 2.8 because we never used it.
* Kernel headers 2.6.27.  However, they don't work yet because they
  have a Perl dependency, which is annoying during the bootstrap.

svn path=/nixpkgs/branches/stdenv-updates/; revision=13605
2008-12-10 11:06:23 +00:00
Pjotr Prins 73d2e4f49d - Some Ruby interpreter bumped version
- Kernel headers 2.6.18 added (XEN virtual images)
- unifdef package added for kernel headers 2.6.18
- Python Zope and 4suite added
- Trying bioconductor packages with R-lang (still failing)
- Bumped gmp version
- Added rq cluster runner - still requires extra gems (installs, but does not run)


svn path=/nixpkgs/trunk/; revision=12766
2008-08-29 13:53:28 +00:00
Eelco Dolstra d4f7a93f31 * KVM 72, plus stable 2.6.26 kernel headers (needed for KVM).
svn path=/nixpkgs/trunk/; revision=12541
2008-08-08 11:49:06 +00:00
Eelco Dolstra c955f608a2 * KVM 69. Seems to improve performance quite a bit. In particular it
implements the host support for virtio devices in Linux >= 2.6.25
  guests.  Network performance shows a huge improvement with
  virtio_net, which should be good for the build farm (which uses
  Samba/CIFS to mount the file system of the host).
* Kernel headers for 2.6.26-rc5 added to build KVM 69.  Also added the
  2.6.25 headers, which turned out to be too old for KVM 69.

svn path=/nixpkgs/trunk/; revision=11985
2008-06-05 10:59:41 +00:00
Eelco Dolstra 2e92cabb37 * substitute: support patterns starting with a dash.
* Updated the kernel headers.
* ghc: setup hooks are now generated using substituteAll.

svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10838
2008-02-22 18:19:04 +00:00
Yury G. Kudryashov e1d5804f30 Installing kernel headers using make headers_install
svn path=/nixpkgs/branches/stdenv-updates/; revision=9815
2007-12-01 20:04:00 +00:00
Eelco Dolstra b37f504680 * Updated various stdenv packages (grep, gawk, tar, cpio, findutils,
pcre).

svn path=/nixpkgs/branches/stdenv-updates/; revision=9758
2007-11-19 17:39:19 +00:00
Eelco Dolstra 58873a9e3d * Latest KVM.
svn path=/nixpkgs/trunk/; revision=9566
2007-10-31 16:23:53 +00:00
Eelco Dolstra d39fd2a578 * Rewrite all the kernel.org URLs to mirror://kernel/.
svn path=/nixpkgs/trunk/; revision=9202
2007-08-27 13:59:40 +00:00
Eelco Dolstra 5990a432d4 * KVM-17.
svn path=/nixpkgs/trunk/; revision=8839
2007-06-07 13:46:50 +00:00
Wouter den Breejen 5a7edd6a37 Added missing new kernel header version
svn path=/nixpkgs/trunk/; revision=8794
2007-05-28 15:55:20 +00:00
Eelco Dolstra 8d3160f8b0 * Use the 2.6.20 kernel headers.
svn path=/nixpkgs/trunk/; revision=8769
2007-05-24 16:16:43 +00:00
Eelco Dolstra 9fdea6a917 * KVM (Kernel-based Virtual Machine). Requires KVM support in the
kernel for performance (and VT/AMD-V in the CPU), but also provides
  a working QEMU for non-KVM-enabled systems.

svn path=/nixpkgs/trunk/; revision=7889
2007-02-12 10:23:43 +00:00
Eelco Dolstra 31f2316454 * "ppc" -> "powerpc", but do copy the "ppc" directory as well.
svn path=/nixpkgs/trunk/; revision=6844
2006-10-25 10:55:36 +00:00
Eelco Dolstra 26a11fbf54 * Fix a typo, and put the platform-specific header directory in the
Nix expression rather than the builder.

svn path=/nixpkgs/trunk/; revision=6843
2006-10-25 10:14:27 +00:00
Eelco Dolstra 1080560215 * Remove old kernel headers, use 2.6.18.1.
svn path=/nixpkgs/trunk/; revision=6832
2006-10-24 22:26:09 +00:00
Eelco Dolstra ed5f6e55e8 * Support x86_64.
svn path=/nixpkgs/trunk/; revision=6805
2006-10-23 17:42:17 +00:00
Eelco Dolstra 84dd812f33 Finally, the new stdenv-linux.
* The statically linked bootstrap tools are now automatically
  reproducable, just do:

  $ nix-build ./make-bootstrap-tools.nix

  The resulting binaries in result/in-nixpkgs go to
  stdenv/linux/bootstrap/<platform>/, and the tarballs in
  result/on-server go to
  https://svn.cs.uu.nl:12443/repos/trace/tarballs/trunk/stdenv-linux/<platform>/<revision>/.
  These are checked out on nix.cs.uu.nl under http://.../dist/tarballs.

* The statically linked libraries all use dietlibc now (except
  patchelf and glibc), so they are much smaller.  This is especially
  nice for the tools in the Nixpkgs tree, since it makes Nixpkgs
  tarballs smaller.

* Use Binutils 2.17 and GCC 4.1.1 for the bootstrap.

* The stdenv is now based on Glibc 2.5.  I hope it works ;-)

svn path=/nixpkgs/trunk/; revision=6803
2006-10-23 14:27:34 +00:00
Eelco Dolstra 1442e8ec22 * Copy a bunch of files to nix.cs.uu.nl.
svn path=/nixpkgs/trunk/; revision=6711
2006-10-12 13:50:54 +00:00
Eelco Dolstra b76219e55b * Doh :-(
svn path=/nixpkgs/trunk/; revision=6316
2006-08-29 18:08:26 +00:00
Eelco Dolstra 82249837c6 * Use the very latest kernel headers, while we're at it.
svn path=/nixpkgs/trunk/; revision=6313
2006-08-29 18:07:03 +00:00
Armijn Hemel a6409626a4 fix download location
svn path=/nixpkgs/trunk/; revision=6312
2006-08-29 18:01:48 +00:00
Armijn Hemel f2b3ae3213 switch to 2.6.17.6 before the buildfarm starts to build ;)
svn path=/nixpkgs/trunk/; revision=6311
2006-08-29 17:59:48 +00:00
Armijn Hemel 58f89a8877 change kernel-headers. Now we can build this on powerpc-linux too...
svn path=/nixpkgs/trunk/; revision=6310
2006-08-29 17:48:04 +00:00
Armijn Hemel 7930f906dc allow for variability, don't change the default
svn path=/nixpkgs/trunk/; revision=5999
2006-07-30 22:47:39 +00:00
Armijn Hemel e2d170f18e also rename it :S
svn path=/nixpkgs/trunk/; revision=5725
2006-07-16 23:16:00 +00:00
Armijn Hemel 33d2d2515d add headers for 2.6.17.6, not yet default
svn path=/nixpkgs/trunk/; revision=5724
2006-07-16 23:15:47 +00:00
Eelco Dolstra 3389f4bc36 * Copy lots of files to nix.cs.uu.nl.
svn path=/nixpkgs/trunk/; revision=4623
2006-01-30 16:04:03 +00:00
Eelco Dolstra 94fe7734fa * Glibc 2.3.6.
* GCC 3.4.5.
* Updated several other stdenv packages.
* Modified the builders of several packages to use the generic
  builder.

svn path=/nixpkgs/trunk/; revision=4336
2005-12-06 00:12:45 +00:00
Eelco Dolstra 82e678362f * "." -> "source".
svn path=/nixpkgs/trunk/; revision=4335
2005-12-05 14:11:09 +00:00
Eelco Dolstra 552de99c19 * Update a bunch of base packages.
svn path=/nixpkgs/trunk/; revision=4065
2005-10-11 14:29:30 +00:00
Eelco Dolstra a450978f26 * Glibc updated to 2.3.5.
* GCC 3.4.4 and 3.3.6.
* Other stdenv packages updated.

svn path=/nixpkgs/trunk/; revision=3188
2005-06-17 10:30:13 +00:00
Eelco Dolstra f6e91bc9c9 * Merge r2396.
svn path=/nixpkgs/trunk/; revision=2397
2005-03-14 09:22:26 +00:00
Eelco Dolstra 25ab1079f9 * Use Linux 2.6.10 headers. 2.6.9 gives parse errors in some
applications (e.g.,
  `...glibc-2.3.4/include/linux/byteorder/little_endian.h:43: error:
  parse error before "__cpu_to_le64p"').

svn path=/nixpkgs/trunk/; revision=2289
2005-02-23 14:13:27 +00:00
Armijn Hemel 4b16211201 use new kernel headers
svn path=/nixpkgs/branches/nixos-pkgs/; revision=2053
2005-01-18 13:16:42 +00:00
Armijn Hemel 1182b31a47 use ftp.nluug.nl for downloading kernel instead of ftp.de.kernel.org, it's, for some reason, not always possible to download from the latter
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1835
2004-12-06 17:15:53 +00:00
Armijn Hemel f063d8c4db - add mktemp
- disable tiger, strategoxt, they don't work and give errors
- ftp.nl.kernel.org seems to have some problems, replaced with ftp.de.kernel.org
should be put back eventually

svn path=/nixpkgs/trunk/; revision=1215
2004-08-03 15:41:08 +00:00
Eelco Dolstra 12ae5363ea * Remove trivial builders.
* Make builders unexecutable by removing the hash-bang line and
  execute permission.
* Convert calls to `derivation' to `mkDerivation'.
* Remove `system' and `stdenv' attributes from calls to
  `mkDerivation'.  These transformations were all done automatically,
  so it is quite possible I broke stuff.
* Put the `mkDerivation' function in stdenv/generic.

svn path=/nixpkgs/trunk/; revision=874
2004-03-29 17:23:01 +00:00
Eelco Dolstra 5941f66f0e * The stdenv setup script now defines a generic builder that allows
builders for typical Autoconf-style to be much shorten, e.g.,

    . $stdenv/setup
    genericBuild

  The generic builder does lots of stuff automatically:

  - Unpacks source archives specified by $src or $srcs (it knows about
    gzip, bzip2, tar, zip, and unpacked source trees).
  - Determines the source tree.
  - Applies patches specified by $patches.
  - Fixes libtool not to search for libraries in /lib etc.
  - Runs `configure'.
  - Runs `make'.
  - Runs `make install'.
  - Strips debug information from static libraries.
  - Writes nested log information (in the format accepted by
    `log2xml').

  There are also lots of hooks and variables to customise the generic
  builder.  See `stdenv/generic/docs.txt'.

* Adapted the base packages (i.e., the ones used by stdenv) to use the
  generic builder.

* We now use `curl' instead of `wget' to download files in `fetchurl'.

* Neither `curl' nor `wget' are part of stdenv.  We shouldn't
  encourage people to download stuff in builders (impure!).

* Updated some packages.

* `buildinputs' is now `buildInputs' (but the old name also works).

* `findInputs' in the setup script now prevents inputs from being
  processed multiple times (which could happen, e.g., if an input was
  a propagated input of several other inputs; this caused the size
  variables like $PATH to blow up exponentially in the worst case).

* Patched GNU Make to write nested log information in the format
  accepted by `log2xml'.  Also, prior to writing the build command,
  Make now writes a line `building X' to indicate what is being
  built.  This is unfortunately often obscured by the gigantic tool
  invocations in many Makefiles.  The actual build commands are marked
  `unimportant' so that they don't clutter pages generated by
  `log2html'.


svn path=/nixpkgs/trunk/; revision=845
2004-03-19 16:53:04 +00:00
Eelco Dolstra 1b39a96d37 * Create a dummy linux/autoconf.h, which is needed by linux/config.h.
* Updated to 2.4.25.

svn path=/nixpkgs/trunk/; revision=819
2004-03-09 10:28:31 +00:00
Eelco Dolstra 026ff9466a * Rename .fix -> .nix.
svn path=/nixpkgs/trunk/; revision=511
2003-11-18 12:12:56 +00:00
Eelco Dolstra 48c3faca51 * Renamed pkgs-ng to pkgs.
svn path=/nixpkgs/trunk/; revision=502
2003-11-14 09:59:13 +00:00