[Nix-dev] Re: GCC 4.6.0

Shea Levy shea at shealevy.com
Wed Mar 30 02:58:28 CEST 2011


Resubmitting GCC 4.6.0, with several changes. The notes in my original 
mail can be ignored, this email is complete and self-contained (notes in 
rough order of the files in the patch):

    * To apply this patch, the following three svn cp's are necessary:
          o svn cp pkgs/development/libraries/ppl/{default,0.11}.nix
          o svn cp pkgs/development/libraries/cloog{-ppl,}
          o svn cp pkgs/development/compilers/gcc-4.{5,6}
    * GCC 4.6.0 requires ppl of at least version 0.11 for Graphite
      optimizations
    * GCC 4.6.0 can use any of three versions of CLooG for Graphite
      optimizations: cloog-ppl (the legacy CLooG based on PPL),
      cloog-parma (the new CLooG based on PPL), and cloog (the new CLooG
      based on ISL). While cloog-ppl is still the default, cloog (called
      cloog-isl by GCC) is preferred. Only one of the three cloogs can
      be used.
    * update-gcc.sh has been updated to work with gpg2, the name of the
      binary provided by the GnuPG in nixpkgs. Those with the old gpg
      binary can still run the script.
    * GCC 4.6.0 puts at least one static library in
      $out/libexec/gcc/*/*, so trying to remove bootstrap-tools from its
      RPATH causes the builder to fail. This is fixed by moving a
      variable assignment into an if statement.
    * libquadmath is "a recent addition" in "the list of libraries to
      disable in the
      course of... a [static-only] bootstrap" of GCC, see
      http://gcc.gnu.org/ml/gcc/2011-03/msg00465.html
    * There is a space missing between grub2 and grub2_efi in
      all-packages.nix (not related to GCC, but noticed in the course of
      this work)
    * gcc46, gcj46, and gfortran46 build successfully with a simple
      nix-build on my x86_64 system
    * After temporarily changing the default cross-GCC to
      gcc46_realCross, xbursttools built successfully on my x86_64
      system, which involved building
      gcc-4.6.0-mipsel-unknown-linux-stage-static, one test of
      gcc46_realCross
    * gnat46 did not build on my system. There was a strange error with
      the linker not treating libiberty/pic/libiberty.a as
      position-independent code, despite the fact that it was compiled
      with -fpic and readelf lists relocation tables for it. See
      http://gcc.gnu.org/ml/gcc-help/2011-03/msg00352.html for a
      discussion of the issue; I will be submitting a bug report to
      upstream and will report back with any responses. In
      http://gcc.gnu.org/ml/gcc-help/2011-03/msg00370.html it was
      suggested that it may be a problem with our GCC 4.5.1.

Cheers,
Shea Levy

On 03/28/2011 08:23 AM, Ludovic Courtès wrote:
> Hi Shea,
>
> Excellent, thanks for the patch!  Looks good to me.
>
> A few notes:
>
> Shea Levy<shea at shealevy.com>  writes:
>
>>     * GCC 4.6.0 now requires ppl 0.11 for graphite optimizations, so I
>>       bumped that.
>>           o GCC 4.5 will build against ppl 0.11. I have not checked GCC
>>             4.4, the first release supporting Graphite.
>>           o I had to change a hard-coded version check in CLooG-PPL's
>>             configure; this was recommended by some Gentoo devs and all
>>             of its tests passed against the new ppl.
> Could you change the patch to make it work in ‘trunk’ without requiring
> a complete rebuild?  This way we could already use 4.6 with ‘trunk’,
> even if stdenv still uses 4.5.
>
> To that end, you need to svn cp ppl/{default.nix,0.11.nix} and use the
> latter for 4.6, while keeping the former for 4.5.  Same for CLooG-PPL.
>
>>     * I updated update-gcc.sh to work with GnuPG 2.x, which is the
>>       default if you just nix-env -i gnupg. It will still work with
>>       GnuPG 1.x.
> OK.  I modified ‘update-gcc.sh’ in the ‘stdenv-updates’ branch, but that
> should be OK.
>
> Thanks!
>
> Ludo’.
>
> _______________________________________________
> nix-dev mailing list
> nix-dev at cs.uu.nl
> https://mail.cs.uu.nl/mailman/listinfo/nix-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.science.uu.nl/pipermail/nix-dev/attachments/20110329/def547fd/attachment.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gcc-4.6.patch
Type: text/x-patch
Size: 14215 bytes
Desc: not available
Url : http://lists.science.uu.nl/pipermail/nix-dev/attachments/20110329/def547fd/attachment.bin 


More information about the nix-dev mailing list