Commit graph

326 commits

Author SHA1 Message Date
Lluís Batlle i Rossell
ba7cde0156 Porting the platform gcc flags support to gcc 4.7 2012-12-31 09:32:11 +00:00
Lluís Batlle i Rossell
97d81bde0c Adding platform gcc information for raspberrypi, and the gcc support.
Without it, gcc builds for softfloat, and the glibc doesn't have support for
softfloat (it ends up requiring some gnu-soft.h file). We'll have to test if
this fixes the build of gcc or not, though.
2012-12-30 21:55:02 +00:00
Lluís Batlle i Rossell
67aa9243f0 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.7/default.nix

Trivial.
2012-12-28 23:30:53 +01:00
Lluís Batlle i Rossell
b58780c43d Merge remote-tracking branch 'eelco/master' into stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.7/default.nix

Trivial solution.
2012-12-28 23:28:16 +01:00
Lluís Batlle i Rossell
87ec7b49b1 gcc47: Fixing the gcc.float cross parameters 2012-12-28 21:38:57 +01:00
Lluís Batlle i Rossell
719ba63004 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.6/default.nix
	pkgs/development/compilers/gcc/4.7/default.nix

The 4.7 had some weird parameters added in crossAttrs; I've removed
them, but I don't understand where they come from.
2012-12-28 20:14:01 +00:00
Lluís Batlle i Rossell
f2f50c42d2 gcc47: adding --with-float option to gcc builder
Meant for cross-building. I need that for the raspberrypi
bootstrap-tools. Before this, its bootstrap-tools gcc built
for softfloat by default.
2012-12-28 21:12:57 +01:00
Lluís Batlle i Rossell
fde74242bf gcc47: Adding gcc mode, cross-building.
It's useful to build toolchains for armv7-m, to set thumb mode. It doesn't
support arm mode. chaoflow needed it.
2012-12-28 20:21:23 +01:00
Eelco Dolstra
88b11196c1 Clean up redundant "if condition then true else false" 2012-12-28 19:57:47 +01:00
Eelco Dolstra
84779a6f7d Remove unnecessary parentheses around if conditions
Pet peeve...
2012-12-28 19:54:15 +01:00
Eelco Dolstra
ab3eeabfed Rename buildNativeInputs -> nativeBuildInputs
Likewise for propagatedBuildNativeInputs, etc.  "buildNativeInputs"
sounds like an imperative rather than a noun phrase.
2012-12-28 19:20:09 +01:00
Eelco Dolstra
5be0a9acd7 Rename hostDrv -> crossDrv, buildDrv -> nativeDrv
This is for consistency with terminology in stdenv (and the terms
"hostDrv" and "buildDrv" are not very intuitive, even if they're
consistent with GNU terminology).
2012-12-28 19:08:19 +01:00
Lluís Batlle i Rossell
636303797f gcc47: moving the bootstrap logic into nix
It was in the builder.sh. Similar to the previous patch
to gcc46.
2012-12-27 15:08:17 +00:00
Lluís Batlle i Rossell
f94f53a54e gcc46: moving the bootstrap logic into nix
It was in the builder.sh.
2012-12-27 15:08:16 +00:00
Lluís Batlle i Rossell
d05b33653e gcc47: moving the bootstrap logic into nix
It was in the builder.sh. Similar to the previous patch
to gcc46.
2012-12-27 14:57:32 +00:00
Lluís Batlle i Rossell
e9365882c1 gcc46: moving the bootstrap logic into nix
It was in the builder.sh.
2012-12-27 14:54:44 +00:00
Lluís Batlle i Rossell
96b0de4c33 gcc4.7: making the cross-built gcc respect withAbi, withArch, ... 2012-12-26 22:01:51 +00:00
Lluís Batlle i Rossell
6c9002639d I forgot to undo a gcc46 unneeded change. 2012-12-26 22:01:17 +00:00
Lluís Batlle i Rossell
164a84f8f4 Restoring the gcc 4.6 builder. No need to change it. 2012-12-26 22:01:13 +00:00
Lluís Batlle i Rossell
a29b4228e9 Typo in 4.7 builder.sh 2012-12-26 22:00:53 +00:00
Lluís Batlle i Rossell
52ee2b99ee gcc47: fix on configureFlags, for cross-built gcc 2012-12-26 22:00:48 +00:00
Lluís Batlle i Rossell
43fac48f15 gcc47: trying to fix cross-building a gcc 2012-12-26 22:00:44 +00:00
Lluís Batlle i Rossell
651734b619 gcc/gcc-cross-wrapper: making gcc47 work with uclibc
It wants pthreads, and libpthreads wants libdl, and this can
only be found with -rpath-link when cross building.
2012-12-26 22:00:33 +00:00
Lluís Batlle i Rossell
2194b98565 Removing any cross-building kind of native build for the pi. 2012-12-26 22:00:29 +00:00
Lluís Batlle i Rossell
fc51895afe Get gccs understand 'fpu' 2012-12-26 22:00:20 +00:00
Lluís Batlle i Rossell
9fdd9d51bd Setting some kind of cross-compiler situation, for armv6l gnueabihf. 2012-12-26 22:00:15 +00:00
Lluís Batlle i Rossell
b520b4aeee Fixing my bash scripting of the previous commit 2012-12-26 22:00:11 +00:00
Lluís Batlle i Rossell
43fc5ae7cf Trying to fix the gcc builder; I added pi flags in the wrong if/else branch. 2012-12-26 22:00:07 +00:00
root
32c061146d Making gcc use some extra flags to build the proper hardfp gcc.
This commit breaks non-raspberrypi; just testing.
2012-12-26 22:00:02 +00:00
root
1b29d29c76 First movement to get the raspberrypi stdenv building. 2012-12-26 21:59:54 +00:00
Lluís Batlle i Rossell
1af2ada7d4 Fixing the patch in my prev commit
I thought the gcc patch from upstream would apply straight. False,
push-happy.
2012-12-26 19:29:55 +01:00
Lluís Batlle i Rossell
69f52a7916 gcc46: extending the gcc 4.6.3 patch about siginfo to other archs
I took the gcc commit as reference.
2012-12-26 19:18:29 +01:00
Eelco Dolstra
5e256ccc88 Merge remote-tracking branch 'origin/master' into stdenv-updates 2012-12-04 17:12:35 +01:00
Eelco Dolstra
72684fb42f Remove support for the obsolete powerpc-darwin and i686-darwin platforms 2012-11-29 14:10:49 +01:00
Eelco Dolstra
5553546c21 Remove a bunch of unreferenced files
Plus a small number of obsolete packages (like old versions of qemu).
2012-11-29 13:43:37 +01:00
Ludovic Courtès
1ac274784b gcc 4.7: don't pass `--with-native-system-header-dir' when cross-compiling 2012-11-29 10:58:41 +01:00
Ludovic Courtès
cd30b83fd8 gcc 4.7: when cross-building for GNU, patch gnu.h', not i386/gnu.h' 2012-11-29 10:58:41 +01:00
Ludovic Courtès
2aea62bd07 gcc 4.7: when cross-building for GNU, patch gnu-user.h', not gnu.h' 2012-11-29 10:07:21 +01:00
Peter Simons
f67d5a9a39 Merge branch 'master' into stdenv-updates.
Conflicts have been resolved in:

        pkgs/tools/misc/file/default.nix
        pkgs/top-level/all-packages.nix
        pkgs/top-level/python-packages.nix
2012-11-21 16:20:36 +01:00
Ludovic Courtès
eb08033e06 gcc 4.7: remove attempt to modify non-existent file 2012-11-17 20:54:29 +01:00
Ludovic Courtès
ebe07c644f gcc 4.7: remove now useless GNU/Hurd-related patch 2012-11-15 09:03:43 +01:00
Lluís Batlle i Rossell
77e983a7d4 ghdl: building the standard libs with -O2
That leads to faster simulations.
2012-11-13 15:16:32 +01:00
Eelco Dolstra
e4a11b4d92 gcc: Get rid of lib64 2012-10-16 14:34:27 -04:00
Lluís Batlle i Rossell
612ed601f2 gcc47: updating to 4.7.2 2012-09-24 15:24:01 +02:00
Eelco Dolstra
6d27c9d5c3 gcc: Fix building on 32-bit Glibc 2.16
http://hydra.nixos.org/build/3046633
2012-09-21 10:53:56 -04:00
Peter Simons
1f18f24387 gcc-4.7: download source code from a mirror instead of hard-coding the URL of the master site 2012-08-22 14:30:15 +02:00
Ludovic Courtès
255c72ede6 gcc 4.5: Update to 4.5.4. 2012-08-20 10:15:17 +02:00
Lluís Batlle i Rossell
f682ff3521 gcc47: disabling parallel build if profiled bootstrap required
The gccinstall manual says that parallel building with a profiled
bootstrap is not supported. As we don't have much means of checking
if our profiled bootstrap with parallel build was good or bad, I
propose going to safe terrain.
2012-08-03 19:59:43 +02:00
Lluís Batlle i Rossell
592b980931 gccgo46: removing it. I set gccgo = gcc47
gccgo46 did not build for me, and maybe never built at all.
The same recipe, though, worked fine for gcc47. So let's go with gcc47.
2012-08-03 19:52:19 +02:00
Lluís Batlle i Rossell
a375ffa53f Adding gccgo for gcc4.7.
I tested hello world, and it works.
2012-08-03 19:49:53 +02:00
Lluís Batlle i Rossell
7954b01342 Adding gcc 4.7.1. 2012-08-02 12:53:30 +02:00
Lluís Batlle i Rossell
44b2d21212 Mingw changes to gcc.
Removing a gcc flag, --enable-version-specific-runtime-libs, that put gcc libs
in a speparate directory instead of /lib; this broke the installation of
libgcc_s.a for the case of "--enable-shared" in mingw-w64. And we already have all gccs in directories apart.

I also add the option --enable-fully-dynamic-string, which is used in the
prebuilt mingw64 toolchain; this way nixpkgs creates ABI-compatible binaries
with mingw64 upstream. (told by jon_y on irc ##mingw)


svn path=/nixpkgs/trunk/; revision=34242
2012-05-25 13:49:01 +00:00
Lluís Batlle i Rossell
e9186a03b9 Making gcc not build libgomp with uclibc, as it lacks '-ldl' in its checks and
I don't know how to add it.
This makes gcc build with uclibc.


svn path=/nixpkgs/trunk/; revision=34231
2012-05-24 21:45:49 +00:00
Lluís Batlle i Rossell
d9fdfffef9 Fixing the mingw cross gcc. I set it not to build shared libraries, because its specs for
shared libraries are wrong.
It should run "-lstdc++ -lsupc++" if libstdc++-6.dll is available, and instead it runs
"-lstdc++" and therefore lack symbols.

I think simply few people use shared gcc libs on mingw.


svn path=/nixpkgs/trunk/; revision=34225
2012-05-24 19:02:27 +00:00
Ludovic Courtès
b53f6b9dd0 GCC 4.6: Don't bail out when `gnused' isn't provided.
svn path=/nixpkgs/trunk/; revision=33896
2012-04-23 16:28:06 +00:00
Ludovic Courtès
29bc53265d Darwin: Use GCC 4.6 in `stdenvNix'.
svn path=/nixpkgs/trunk/; revision=33894
2012-04-23 15:47:37 +00:00
Ludovic Courtès
47fcc276ae Apple GCC: Fix `no-sys-dirs.patch' so that it applies.
svn path=/nixpkgs/trunk/; revision=33773
2012-04-13 12:41:36 +00:00
Ludovic Courtès
cc6f814a8f GFortran 4.6: Add patch to fix the output of `-v'.
svn path=/nixpkgs/trunk/; revision=33154
2012-03-16 13:11:41 +00:00
Ludovic Courtès
09531a24ad GCC 4.6: Fix `gccCrossStageFinal' for GNU/Hurd.
svn path=/nixpkgs/trunk/; revision=32853
2012-03-07 16:01:07 +00:00
Ludovic Courtès
8bab00e0ad GCC 4.6: Add patch to fix GNU/Hurd builds.
svn path=/nixpkgs/trunk/; revision=32837
2012-03-06 21:33:20 +00:00
Eelco Dolstra
a88fdf8ef7 * Oops.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32737
2012-03-02 09:35:51 +00:00
Eelco Dolstra
a753c4a170 * GCC 4.6.3 and 4.5.3.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32734
2012-03-01 23:15:21 +00:00
Eelco Dolstra
148e234aab * Fix broken symlink.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32727
2012-03-01 21:40:46 +00:00
Ludovic Courtès
79232c5f54 GCC 4.6: Enable plug-in support by default.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32502
2012-02-23 00:47:31 +00:00
Ludovic Courtès
5fb4901886 GCC 4.6: Really disable stripping when `stripped' is false.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32501
2012-02-23 00:47:17 +00:00
Eelco Dolstra
6c2de318ad * Move all gcc versions to development/compilers/gcc.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32371
2012-02-17 21:47:08 +00:00
Eelco Dolstra
1ab4a9324c * The `patch' command is now part of stdenv, so it no longer needs to
be passed to derivations that need to apply patches.
* GCC 3.4 is now the default compiler (old GCC renamed to `gcc-3.3').
* The temporary GCCs built during the stdenvLinux bootstrap are now
  built without C++ support and without profiling.
* Remove fixincl in GCC 3.4 to prevent a retained dependency on the
  previous GCC.
* Always set $prefix in setup.sh, even when there is no configure
  script.

svn path=/nixpkgs/trunk/; revision=1444
2004-09-18 17:23:18 +00:00
Eelco Dolstra
beaff0a892 * Ensure that when building gcc, libstdc++ is linked against the
libgcc of the gcc being built, not the gcc building it.
* Only include a directory in the rpath of an executable/library if it
  is actually used.  Before, the `/lib' directory of every build input
  was added to the rpath, causing many unnecessary retained
  dependencies.  For instance, Perl has a `/lib' directory, but most
  applications whose build process uses Perl don't actually link
  against Perl.  (Also added a test for this.)
* After building glibc, remove glibcbug, to prevent a retained
  dependency on gcc.
* Add a newline after `building X' in GNU Make.

svn path=/nixpkgs/trunk/; revision=911
2004-04-04 22:02:41 +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
8c4a80b585 * Upgrade to gcc 3.3.3. Starting at 3.3.3, the gcc makefile checks
whether the system header file directory actually exists (when
  calling fixinc), so passing a non-existent directory no longer
  works.  Instead we make a empty dummy directory.

svn path=/nixpkgs/trunk/; revision=858
2004-03-27 16:35:59 +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
de13527000 * Finally got stdenv-nix-linux working again. Still not perfect,
though.
* libxml2: upgrade to latest.
* octavefront/rna: keep debug info.

svn path=/nixpkgs/trunk/; revision=830
2004-03-11 17:26:14 +00:00
Eelco Dolstra
a1b3ae0c81 * stdenv-nix-linux should more-or-less work again now.
svn path=/nixpkgs/trunk/; revision=826
2004-03-09 17:16:02 +00:00
Eelco Dolstra
ab73ec398b * Removed the old gcc.
svn path=/nixpkgs/trunk/; revision=825
2004-03-09 17:10:23 +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