Author: eelco
Date: Sat Feb  5 15:45:02 2011
New Revision: 25777
URL: https://svn.nixos.org/websvn/nix/?rev=25777&sc=1

Log:
* Clang/LLVM updated to 2.8.

Modified:
   nixpkgs/trunk/pkgs/development/compilers/llvm/clang-include-paths.patch
   nixpkgs/trunk/pkgs/development/compilers/llvm/default.nix

Modified: 
nixpkgs/trunk/pkgs/development/compilers/llvm/clang-include-paths.patch
==============================================================================
--- nixpkgs/trunk/pkgs/development/compilers/llvm/clang-include-paths.patch     
Sat Feb  5 06:58:15 2011        (r25776)
+++ nixpkgs/trunk/pkgs/development/compilers/llvm/clang-include-paths.patch     
Sat Feb  5 15:45:02 2011        (r25777)
@@ -1,202 +1,36 @@
-diff --git a/tools/clang/lib/Frontend/InitHeaderSearch.cpp 
b/tools/clang/lib/Frontend/InitHeaderSearch.cpp
-index cd749d2..b5591f6 100644
---- a/tools/clang/lib/Frontend/InitHeaderSearch.cpp
-+++ b/tools/clang/lib/Frontend/InitHeaderSearch.cpp
-@@ -393,51 +393,7 @@ void InitHeaderSearch::AddDefaultCIncludePaths(const 
llvm::Triple &triple) {
+diff -ru -x '*~' a/tools/clang/lib/Frontend/InitHeaderSearch.cpp 
b/tools/clang/lib/Frontend/InitHeaderSearch.cpp
+--- a/tools/clang/lib/Frontend/InitHeaderSearch.cpp    2010-09-03 
18:45:53.000000000 +0200
++++ b/tools/clang/lib/Frontend/InitHeaderSearch.cpp    2011-02-05 
14:59:08.669573190 +0100
+@@ -443,6 +443,7 @@
        AddPath(*i, System, false, false, false);
      return;
    }
--  llvm::Triple::OSType os = triple.getOS();
--  switch (os) {
--  case llvm::Triple::Win32:
--    {
--      std::string VSDir;
--      std::string WindowsSDKDir;
--      if (getVisualStudioDir(VSDir)) {
--        AddPath(VSDir + "\\VC\\include", System, false, false, false);
--        if (getWindowsSDKDir(WindowsSDKDir))
--          AddPath(WindowsSDKDir, System, false, false, false);
--        else
--          AddPath(VSDir + "\\VC\\PlatformSDK\\Include",
--            System, false, false, false);
--      }
--      else {
--          // Default install paths.
--        AddPath("C:/Program Files/Microsoft Visual Studio 9.0/VC/include",
--          System, false, false, false);
--        AddPath(
--        "C:/Program Files/Microsoft Visual Studio 9.0/VC/PlatformSDK/Include",
--          System, false, false, false);
--        AddPath("C:/Program Files/Microsoft Visual Studio 8/VC/include",
--          System, false, false, false);
--        AddPath(
--        "C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/Include",
--          System, false, false, false);
--          // For some clang developers.
--        AddPath("G:/Program Files/Microsoft Visual Studio 9.0/VC/include",
--          System, false, false, false);
--        AddPath(
--        "G:/Program Files/Microsoft Visual Studio 9.0/VC/PlatformSDK/Include",
--          System, false, false, false);
--      }
--    }
--    break;
--  case llvm::Triple::MinGW64:
--  case llvm::Triple::MinGW32:
--    AddPath("c:/mingw/include", System, true, false, false);
--    break;
--  default:
--    break;
--  }
--
--  AddPath("/usr/local/include", System, true, false, false);
--  AddPath("/usr/include", System, false, false, false);
++#if 0
+   llvm::Triple::OSType os = triple.getOS();
+   switch (os) {
+   case llvm::Triple::Win32:
+@@ -532,6 +533,8 @@
+   }
+ 
+   AddPath("/usr/include", System, false, false, false);
++#endif
 +  AddPath(C_INCLUDE_PATH, System, false, false, false);
  }
  
- void InitHeaderSearch::AddDefaultCPlusPlusIncludePaths(const llvm::Triple 
&triple) {
-@@ -453,144 +409,9 @@ void 
InitHeaderSearch::AddDefaultCPlusPlusIncludePaths(const llvm::Triple &tripl
-                                   CXX_INCLUDE_32BIT_DIR, 
CXX_INCLUDE_64BIT_DIR, triple);
+ void InitHeaderSearch::
+@@ -550,6 +553,7 @@
+                                   triple);
      return;
    }
--  // FIXME: temporary hack: hard-coded paths.
--  switch (os) {
--  case llvm::Triple::Cygwin:
--    AddPath("/lib/gcc/i686-pc-cygwin/3.4.4/include",
--        System, true, false, false);
--    AddPath("/lib/gcc/i686-pc-cygwin/3.4.4/include/c++",
--        System, true, false, false);
--    break;
--  case llvm::Triple::MinGW64:
--    // Try gcc 4.4.0
--    AddMinGWCPlusPlusIncludePaths("c:/MinGW/lib/gcc", "mingw64", "4.4.0");
--    // Try gcc 4.3.0
--    AddMinGWCPlusPlusIncludePaths("c:/MinGW/lib/gcc", "mingw64", "4.3.0");
--    // Fall through.
--  case llvm::Triple::MinGW32:
--    // Try gcc 4.4.0
--    AddMinGWCPlusPlusIncludePaths("c:/MinGW/lib/gcc", "mingw32", "4.4.0");
--    // Try gcc 4.3.0
--    AddMinGWCPlusPlusIncludePaths("c:/MinGW/lib/gcc", "mingw32", "4.3.0");
--    break;
--  case llvm::Triple::Darwin:
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2.1",
--                                "i686-apple-darwin10", "", "x86_64", triple);
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.0.0",
--                                "i686-apple-darwin8", "", "", triple);
--    break;
--  case llvm::Triple::DragonFly:
--    AddPath("/usr/include/c++/4.1", System, true, false, false);
--    break;
--  case llvm::Triple::Linux:
--    // Exherbo (2010-01-25)
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4.3",
--                                "x86_64-pc-linux-gnu", "32", "", triple);
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4.3",
--                                "i686-pc-linux-gnu", "", "", triple);
--    // Debian sid
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4",
--                                "x86_64-linux-gnu", "32", "", triple);
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4",
--                                "i486-linux-gnu", "64", "", triple);
--    // Ubuntu 7.10 - Gutsy Gibbon
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.1.3",
--                                "i486-linux-gnu", "", "", triple);
--    // Ubuntu 9.04
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.3",
--                                "x86_64-linux-gnu","32", "", triple);
--    // Ubuntu 9.10
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4.1",
--                                "x86_64-linux-gnu", "32", "", triple);
--    // Fedora 8
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.1.2",
--                                "i386-redhat-linux", "", "", triple);
--    // Fedora 9
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.0",
--                                "i386-redhat-linux", "", "", triple);
--    // Fedora 10
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.2",
--                                "i386-redhat-linux","", "", triple);
--
--    // Fedora 10 x86_64
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.2",
--                                "x86_64-redhat-linux", "32", "", triple);
--
--    // Fedora 11
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4.1",
--                                "i586-redhat-linux","", "", triple);
--
--    // Fedora 12
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4.2",
--                                "i686-redhat-linux","", "", triple);
--
--    // Fedora 12 (February-2010+)
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4.3",
--                                "i686-redhat-linux","", "", triple);
--      
--    // openSUSE 11.1 32 bit
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3",
--                                "i586-suse-linux", "", "", triple);
--    // openSUSE 11.1 64 bit
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3",
--                                "x86_64-suse-linux", "32", "", triple);
--    // openSUSE 11.2
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4",
--                                "i586-suse-linux", "", "", triple);
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4",
--                                "x86_64-suse-linux", "", "", triple);
--    // Arch Linux 2008-06-24
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.1",
--                                "i686-pc-linux-gnu", "", "", triple);
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.1",
--                                "x86_64-unknown-linux-gnu", "", "", triple);
--    // Gentoo x86 2009.1 stable
--    AddGnuCPlusPlusIncludePaths(
--      "/usr/lib/gcc/i686-pc-linux-gnu/4.3.4/include/g++-v4",
--      "i686-pc-linux-gnu", "", "", triple);
--    // Gentoo x86 2009.0 stable
--    AddGnuCPlusPlusIncludePaths(
--      "/usr/lib/gcc/i686-pc-linux-gnu/4.3.2/include/g++-v4",
--      "i686-pc-linux-gnu", "", "", triple);
--    // Gentoo x86 2008.0 stable
--    AddGnuCPlusPlusIncludePaths(
--      "/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4",
--      "i686-pc-linux-gnu", "", "", triple);
--    // Ubuntu 8.10
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3",
--                                "i486-pc-linux-gnu", "", "", triple);
--    // Ubuntu 9.04
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3",
--                                "i486-linux-gnu","", "", triple);
--    // Gentoo amd64 stable
--    AddGnuCPlusPlusIncludePaths(
--        "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4",
--        "i686-pc-linux-gnu", "", "", triple);
--        
--    // Gentoo amd64 gcc 4.3.2
--    AddGnuCPlusPlusIncludePaths(
--        "/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.2/include/g++-v4",
--        "x86_64-pc-linux-gnu", "", "", triple);
--        
--    // Gentoo amd64 gcc 4.4.3
--    AddGnuCPlusPlusIncludePaths(
--        "/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.3/include/g++-v4",
--        "x86_64-pc-linux-gnu", "32", "", triple);
--    
--    break;
--  case llvm::Triple::FreeBSD:
--    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2", "", "", "", triple);
--    break;
--  case llvm::Triple::Solaris:
--    // Solaris - Fall though..
--  case llvm::Triple::AuroraUX:
--    // AuroraUX
--    AddGnuCPlusPlusIncludePaths("/opt/gcc4/include/c++/4.2.4",
--                                "i386-pc-solaris2.11", "", "", triple);
--    break;
--  default:
--    break;
--  }
++#if 0  
+   // FIXME: temporary hack: hard-coded paths.
+   switch (os) {
+   case llvm::Triple::Cygwin:
+@@ -769,6 +773,10 @@
+   default:
+     break;
+   }
++#endif
 +  AddGnuCPlusPlusIncludePaths(
 +      CPP_INCLUDE_PATH,
 +      CPP_HOST, "", "", triple);

Modified: nixpkgs/trunk/pkgs/development/compilers/llvm/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/compilers/llvm/default.nix   Sat Feb  5 
06:58:15 2011        (r25776)
+++ nixpkgs/trunk/pkgs/development/compilers/llvm/default.nix   Sat Feb  5 
15:45:02 2011        (r25777)
@@ -1,16 +1,17 @@
-{stdenv, fetchurl, fetchsvn, gcc, flex, perl, libtool, groff
-, buildClang ? false}:
+{ stdenv, fetchurl, gcc, flex, perl, libtool, groff
+, buildClang ? false }:
 
 stdenv.mkDerivation ({
-  name = "llvm-2.7";
+  name = "llvm-2.8";
+  
   src = fetchurl {
-    url    = http://llvm.org/releases/2.7/llvm-2.7.tgz;
-    sha256 = "19dwvfyxr851fjfsaxbm56gdj9mlivr37bv6h41hd8q3hpf4nrlr";
+    url    = http://llvm.org/releases/2.8/llvm-2.8.tgz;
+    sha256 = "0fyl2gk2ld28isz9bq4f6r4dhqm9vljfj3pdfwlc2v0w5xsdpb95";
   };
 
-  buildInputs = [ gcc flex perl libtool groff ];
+  buildInputs = [ gcc flex perl groff ];
 
-  configureFlags = [ "--enable-optimized" "--enable-shared" ];
+  configureFlags = [ "--enable-optimized" "--enable-shared" "--disable-static" 
];
 
   meta = {
     homepage = http://llvm.org/;
@@ -20,8 +21,7 @@
     platforms = with stdenv.lib.platforms; all;
   };
 }
-//
-(if buildClang then 
+// stdenv.lib.optionalAttrs buildClang (
   # I write the assert because 'gcc.libc' will be evaluated although 'triplet' 
would not
   # evaluate properly (in the preConfigure below)
   assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
@@ -30,19 +30,19 @@
               else if (stdenv.system == "x86_64-linux") then 
"x86_64-unknown-linux-gnu"
               else throw "System not supported";
   in {
-    name = "clang-2.7";
+    name = "clang-2.8";
 
-    srcClang = fetchsvn {
-      url = http://llvm.org/svn/llvm-project/cfe/tags/RELEASE_27;
-      rev = 105900;
-      sha256 = 
"fe79988950319b62d3bca34848424f20a3f33c8182507df222f2ac93fbacf671";
+    srcClang = fetchurl {
+      url = http://llvm.org/releases/2.8/clang-2.8.tgz;
+      sha256 = "1hg0vqmyr4wdy686l2bga0rpin41v0q9ds2k5659m8z6acali0zd";
     };
 
     prePatch = ''
       pushd tools
-      cp -R "$srcClang" clang
-      chmod u+w -R clang
+      unpackFile $srcClang
+      mv clang-2.8 clang
       popd
+      find
     '';
 
     patches = [ ./clang-include-paths.patch ];
@@ -63,5 +63,4 @@
       platforms = with stdenv.lib.platforms; linux;
     };
   }
-else {}
 ))
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to