about summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2018-06-30 01:41:59 +0200
committerVladimír Čunát <vcunat@gmail.com>2018-06-30 01:41:59 +0200
commitf7781f52933ff4a83d1396f6255dfa91e727dc7c (patch)
treee76320ab79bb58dccf9c517c31aac209202217b5 /pkgs/development/compilers
parent3892a3e5a913af86f22888cf13552c229629d126 (diff)
parent2059bf9e39bef62e9386291e1041371bdd8036ab (diff)
downloadnixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.tar
nixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.tar.gz
nixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.tar.bz2
nixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.tar.lz
nixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.tar.xz
nixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.tar.zst
nixlib-f7781f52933ff4a83d1396f6255dfa91e727dc7c.zip
Merge branch 'master' into staging
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/asn1c/default.nix2
-rw-r--r--pkgs/development/compilers/chicken/default.nix2
-rw-r--r--pkgs/development/compilers/clean/default.nix2
-rw-r--r--pkgs/development/compilers/colm/default.nix2
-rw-r--r--pkgs/development/compilers/gforth/default.nix2
-rw-r--r--pkgs/development/compilers/ghc/8.4.3.nix13
-rw-r--r--pkgs/development/compilers/ghc/head.nix9
-rw-r--r--pkgs/development/compilers/ghcjs-ng/default.nix8
-rw-r--r--pkgs/development/compilers/glslang/default.nix8
-rw-r--r--pkgs/development/compilers/llvm/3.8/llvm.nix7
-rw-r--r--pkgs/development/compilers/llvm/3.9/llvm.nix7
-rw-r--r--pkgs/development/compilers/llvm/4/llvm.nix9
-rw-r--r--pkgs/development/compilers/mercury/default.nix2
-rw-r--r--pkgs/development/compilers/mono/generic-cmake.nix2
-rw-r--r--pkgs/development/compilers/mono/generic.nix2
-rw-r--r--pkgs/development/compilers/nasm/default.nix2
-rw-r--r--pkgs/development/compilers/nvidia-cg-toolkit/default.nix2
-rw-r--r--pkgs/development/compilers/ocaml/3.10.0.nix2
-rw-r--r--pkgs/development/compilers/ocaml/3.11.2.nix2
-rw-r--r--pkgs/development/compilers/ocaml/3.12.1.nix2
-rw-r--r--pkgs/development/compilers/ocaml/4.00.1.nix2
-rw-r--r--pkgs/development/compilers/ocaml/ber-metaocaml-104.nix2
-rw-r--r--pkgs/development/compilers/osl/default.nix39
-rw-r--r--pkgs/development/compilers/pakcs/default.nix2
-rw-r--r--pkgs/development/compilers/ponyc/default.nix2
-rw-r--r--pkgs/development/compilers/ponyc/pony-stable.nix4
-rw-r--r--pkgs/development/compilers/scala/2.10.nix4
-rw-r--r--pkgs/development/compilers/scala/2.11.nix2
-rw-r--r--pkgs/development/compilers/scala/default.nix4
-rw-r--r--pkgs/development/compilers/seexpr/default.nix23
-rw-r--r--pkgs/development/compilers/shaderc/default.nix46
-rw-r--r--pkgs/development/compilers/yap/default.nix2
-rw-r--r--pkgs/development/compilers/yasm/default.nix2
33 files changed, 154 insertions, 67 deletions
diff --git a/pkgs/development/compilers/asn1c/default.nix b/pkgs/development/compilers/asn1c/default.nix
index eda895d726a0..ce754813dda1 100644
--- a/pkgs/development/compilers/asn1c/default.nix
+++ b/pkgs/development/compilers/asn1c/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "0.9.28";
 
   src = fetchurl {
-    url = "http://lionet.info/soft/asn1c-${version}.tar.gz";
+    url = "https://lionet.info/soft/asn1c-${version}.tar.gz";
     sha256 = "1fc64g45ykmv73kdndr4zdm4wxhimhrir4rxnygxvwkych5l81w0";
   };
 
diff --git a/pkgs/development/compilers/chicken/default.nix b/pkgs/development/compilers/chicken/default.nix
index ad9e57f794f0..ceeff56330b2 100644
--- a/pkgs/development/compilers/chicken/default.nix
+++ b/pkgs/development/compilers/chicken/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   binaryVersion = 8;
 
   src = fetchurl {
-    url = "http://code.call-cc.org/releases/${version}/chicken-${version}.tar.gz";
+    url = "https://code.call-cc.org/releases/${version}/chicken-${version}.tar.gz";
     sha256 = "0hvckhi5gfny3mlva6d7y9pmx7cbwvq0r7mk11k3sdiik9hlkmdd";
   };
 
diff --git a/pkgs/development/compilers/clean/default.nix b/pkgs/development/compilers/clean/default.nix
index 3fed2289f954..16ac8b787219 100644
--- a/pkgs/development/compilers/clean/default.nix
+++ b/pkgs/development/compilers/clean/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
       sha256 = "1w8vvmkwzq8g51639r62apcy75sj69nm08082a34xvqm9ymfgkq5";
     })
     else if stdenv.system == "x86_64-linux" then (fetchurl {
-        url = "http://clean.cs.ru.nl/download/Clean24/linux/clean2.4_64_boot.tar.gz";
+        url = "https://clean.cs.ru.nl/download/Clean24/linux/clean2.4_64_boot.tar.gz";
         sha256 = "08gsa1pjl5wyzh4ah8ccfx8a7mdcn6ycsn1lzkrr9adygv1gmm7r";
     })
     else throw "Architecture not supported";
diff --git a/pkgs/development/compilers/colm/default.nix b/pkgs/development/compilers/colm/default.nix
index ffbe3c5a62f4..61b24a851941 100644
--- a/pkgs/development/compilers/colm/default.nix
+++ b/pkgs/development/compilers/colm/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "0.13.0.6";
 
   src = fetchurl {
-    url = "http://www.colm.net/files/colm/${name}.tar.gz";
+    url = "https://www.colm.net/files/colm/${name}.tar.gz";
     sha256 = "0jd3qmqdm8yszy0yysbp3syk7pcbxvwzv9mibdwz7v9bv1nrai26";
   };
 
diff --git a/pkgs/development/compilers/gforth/default.nix b/pkgs/development/compilers/gforth/default.nix
index 6ea21207f19f..675522d54ead 100644
--- a/pkgs/development/compilers/gforth/default.nix
+++ b/pkgs/development/compilers/gforth/default.nix
@@ -6,7 +6,7 @@ in
 stdenv.mkDerivation {
   name = "gforth-${version}";
   src = fetchurl {
-    url = "http://ftp.gnu.org/gnu/gforth/gforth-${version}.tar.gz";
+    url = "https://ftp.gnu.org/gnu/gforth/gforth-${version}.tar.gz";
     sha256 = "1c1bahc9ypmca8rv2dijiqbangm1d9av286904yw48ph7ciz4qig";
   };
 
diff --git a/pkgs/development/compilers/ghc/8.4.3.nix b/pkgs/development/compilers/ghc/8.4.3.nix
index 4d2f3894f178..0f5a43d57eda 100644
--- a/pkgs/development/compilers/ghc/8.4.3.nix
+++ b/pkgs/development/compilers/ghc/8.4.3.nix
@@ -22,7 +22,7 @@
 
 , # Whether to build dynamic libs for the standard library (on the target
   # platform). Static libs are always built.
-  enableShared ? !targetPlatform.isWindows && !targetPlatform.useAndroidPrebuilt && !targetPlatform.useiOSPrebuilt
+  enableShared ? !targetPlatform.isWindows && !targetPlatform.useiOSPrebuilt
 
 , # Whetherto build terminfo.
   enableTerminfo ? !targetPlatform.isWindows
@@ -49,7 +49,8 @@ let
   '' + stdenv.lib.optionalString enableIntegerSimple ''
     INTEGER_LIBRARY = integer-simple
   '' + stdenv.lib.optionalString (targetPlatform != hostPlatform) ''
-    Stage1Only = YES
+    Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
+    CrossCompilePrefix = ${targetPrefix}
     HADDOCK_DOCS = NO
     BUILD_SPHINX_HTML = NO
     BUILD_SPHINX_PDF = NO
@@ -74,7 +75,7 @@ let
   targetCC = builtins.head toolsForTarget;
 
 in
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (rec {
   version = "8.4.3";
   name = "${targetPrefix}ghc-${version}";
 
@@ -208,4 +209,8 @@ stdenv.mkDerivation rec {
     inherit (ghc.meta) license platforms;
   };
 
-}
+} // stdenv.lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
+  dontStrip = true;
+  dontPatchELF = true;
+  noAuditTmpdir = true;
+})
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 8ccd72ef55a2..43e6473fc241 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -7,7 +7,7 @@
 
 , libffi, libiconv ? null, ncurses
 
-, useLLVM ? !targetPlatform.isx86
+, useLLVM ? !targetPlatform.isx86 || targetPlatform.isMusl
 , # LLVM is conceptually a run-time-only depedendency, but for
   # non-x86, we need LLVM to bootstrap later stages, so it becomes a
   # build-time dependency too.
@@ -50,7 +50,8 @@ let
   '' + stdenv.lib.optionalString enableIntegerSimple ''
     INTEGER_LIBRARY = integer-simple
   '' + stdenv.lib.optionalString (targetPlatform != hostPlatform) ''
-    Stage1Only = YES
+    Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
+    CrossCompilePrefix = ${targetPrefix}
     HADDOCK_DOCS = NO
     BUILD_SPHINX_HTML = NO
     BUILD_SPHINX_PDF = NO
@@ -166,10 +167,10 @@ stdenv.mkDerivation rec {
   # that in turn causes GHCi to abort
   stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
 
-  hardeningDisable = [ "format" ];
-
   checkTarget = "test";
 
+  hardeningDisable = [ "format" ];
+
   postInstall = ''
     for bin in "$out"/lib/${name}/bin/*; do
       isELF "$bin" || continue
diff --git a/pkgs/development/compilers/ghcjs-ng/default.nix b/pkgs/development/compilers/ghcjs-ng/default.nix
index 65b43f712ae2..9aa3efe614eb 100644
--- a/pkgs/development/compilers/ghcjs-ng/default.nix
+++ b/pkgs/development/compilers/ghcjs-ng/default.nix
@@ -80,12 +80,12 @@ in stdenv.mkDerivation {
       cd lib/boot
 
       mkdir -p $out/bin
-      mkdir -p $out/libexec
+      mkdir -p $out/lib/${bootGhcjs.name}
       lndir ${libexec} $out/bin
 
-      wrapProgram $out/bin/ghcjs --add-flags "-B$out/libexec"
-      wrapProgram $out/bin/haddock-ghcjs --add-flags "-B$out/libexec"
-      wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/libexec/package.conf.d"
+      wrapProgram $out/bin/ghcjs --add-flags "-B$out/lib/${bootGhcjs.name}"
+      wrapProgram $out/bin/haddock-ghcjs --add-flags "-B$out/lib/${bootGhcjs.name}"
+      wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/lib/${bootGhcjs.name}/package.conf.d"
 
       env PATH=$out/bin:$PATH $out/bin/ghcjs-boot -j1 --with-ghcjs-bin $out/bin
     '';
diff --git a/pkgs/development/compilers/glslang/default.nix b/pkgs/development/compilers/glslang/default.nix
index ca1e2f54df93..cc27d19781fe 100644
--- a/pkgs/development/compilers/glslang/default.nix
+++ b/pkgs/development/compilers/glslang/default.nix
@@ -2,15 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "glslang-git-${version}";
-  version = "2018-02-05";
+  version = "2018-06-21";
 
-  # `vulkan-loader` requires a specific version of `glslang` as specified in
-  # `<vulkan-loader-repo>/external_revisions/glslang_revision`.
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "glslang";
-    rev = "2651ccaec8";
-    sha256 = "0x5x5i07n9g809rzf5jgw70mmwck31ishdmxnmi0wxx737jjqwaq";
+    rev = "ef1f899b5d64a9628023f1bb129198674cba2b97";
+    sha256 = "052w6rahmy1wlphv533wz8nyn82icky28lprvl8w3acfq3831zg6";
   };
 
   buildInputs = [ cmake bison jq ] ++ spirv-tools.buildInputs;
diff --git a/pkgs/development/compilers/llvm/3.8/llvm.nix b/pkgs/development/compilers/llvm/3.8/llvm.nix
index b847a67e7e3f..a6fb61198176 100644
--- a/pkgs/development/compilers/llvm/3.8/llvm.nix
+++ b/pkgs/development/compilers/llvm/3.8/llvm.nix
@@ -78,6 +78,10 @@ in stdenv.mkDerivation rec {
     "-DLLVM_BUILD_TESTS=ON"
     "-DLLVM_ENABLE_FFI=ON"
     "-DLLVM_ENABLE_RTTI=ON"
+
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
+    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
   ] ++ stdenv.lib.optional enableSharedLibraries [
     "-DLLVM_LINK_LLVM_DYLIB=ON"
   ] ++ stdenv.lib.optional (!isDarwin)
@@ -86,9 +90,6 @@ in stdenv.mkDerivation rec {
     "-DLLVM_ENABLE_LIBCXX=ON"
     "-DCAN_TARGET_i386=false"
   ] ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
-    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
     # Not yet supported
     "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
diff --git a/pkgs/development/compilers/llvm/3.9/llvm.nix b/pkgs/development/compilers/llvm/3.9/llvm.nix
index 708e471bd4ac..458ad7db8efd 100644
--- a/pkgs/development/compilers/llvm/3.9/llvm.nix
+++ b/pkgs/development/compilers/llvm/3.9/llvm.nix
@@ -122,6 +122,10 @@ in stdenv.mkDerivation rec {
     "-DLLVM_ENABLE_FFI=ON"
     "-DLLVM_ENABLE_RTTI=ON"
     "-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code
+
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
+    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
   ] ++ stdenv.lib.optional enableSharedLibraries [
     "-DLLVM_LINK_LLVM_DYLIB=ON"
   ] ++ stdenv.lib.optional (!isDarwin)
@@ -133,9 +137,6 @@ in stdenv.mkDerivation rec {
     "-DCMAKE_CROSSCOMPILING=True"
     "-DLLVM_TABLEGEN=${buildPackages.llvmPackages_39.llvm}/bin/llvm-tblgen"
   ] ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
-    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
     # Not yet supported
     "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
     "-DCOMPILER_RT_BUILD_XRAY=OFF"
diff --git a/pkgs/development/compilers/llvm/4/llvm.nix b/pkgs/development/compilers/llvm/4/llvm.nix
index 06bcd74456c4..e9140d3fcc6a 100644
--- a/pkgs/development/compilers/llvm/4/llvm.nix
+++ b/pkgs/development/compilers/llvm/4/llvm.nix
@@ -100,6 +100,10 @@ in stdenv.mkDerivation (rec {
     "-DLLVM_ENABLE_FFI=ON"
     "-DLLVM_ENABLE_RTTI=ON"
     "-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code
+
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
+    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
   ]
   ++ stdenv.lib.optional enableSharedLibraries
     "-DLLVM_LINK_LLVM_DYLIB=ON"
@@ -115,11 +119,6 @@ in stdenv.mkDerivation (rec {
   ++ stdenv.lib.optionals (isDarwin) [
     "-DLLVM_ENABLE_LIBCXX=ON"
     "-DCAN_TARGET_i386=false"
-  ]
-  ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
-    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
   ];
 
   postBuild = ''
diff --git a/pkgs/development/compilers/mercury/default.nix b/pkgs/development/compilers/mercury/default.nix
index c2352b8126e0..048dd598a480 100644
--- a/pkgs/development/compilers/mercury/default.nix
+++ b/pkgs/development/compilers/mercury/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   version = "14.01.1";
 
   src = fetchurl {
-    url    = "http://dl.mercurylang.org/release/mercury-srcdist-${version}.tar.gz";
+    url    = "https://dl.mercurylang.org/release/mercury-srcdist-${version}.tar.gz";
     sha256 = "12z8qi3da8q50mcsjsy5bnr4ia6ny5lkxvzy01a3c9blgbgcpxwq";
   };
 
diff --git a/pkgs/development/compilers/mono/generic-cmake.nix b/pkgs/development/compilers/mono/generic-cmake.nix
index 929d00491382..c8afd0dcc906 100644
--- a/pkgs/development/compilers/mono/generic-cmake.nix
+++ b/pkgs/development/compilers/mono/generic-cmake.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     inherit sha256;
-    url = "http://download.mono-project.com/sources/mono/${name}.tar.bz2";
+    url = "https://download.mono-project.com/sources/mono/${name}.tar.bz2";
   };
 
   buildInputs =
diff --git a/pkgs/development/compilers/mono/generic.nix b/pkgs/development/compilers/mono/generic.nix
index a62f2f24dd87..e39de76117af 100644
--- a/pkgs/development/compilers/mono/generic.nix
+++ b/pkgs/development/compilers/mono/generic.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     inherit sha256;
-    url = "http://download.mono-project.com/sources/mono/${name}.tar.bz2";
+    url = "https://download.mono-project.com/sources/mono/${name}.tar.bz2";
   };
 
   buildInputs =
diff --git a/pkgs/development/compilers/nasm/default.nix b/pkgs/development/compilers/nasm/default.nix
index 1676ce4884d9..a0daa7df1737 100644
--- a/pkgs/development/compilers/nasm/default.nix
+++ b/pkgs/development/compilers/nasm/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "2.13.03";
 
   src = fetchurl {
-    url = "http://www.nasm.us/pub/nasm/releasebuilds/${version}/${name}.tar.bz2";
+    url = "https://www.nasm.us/pub/nasm/releasebuilds/${version}/${name}.tar.bz2";
     sha256 = "04bh736zfj3xy5ihh1whshpjxsisv7hqkz954clzdw6kg93qdv33";
   };
 
diff --git a/pkgs/development/compilers/nvidia-cg-toolkit/default.nix b/pkgs/development/compilers/nvidia-cg-toolkit/default.nix
index ab71090b3580..9eec23f1ba88 100644
--- a/pkgs/development/compilers/nvidia-cg-toolkit/default.nix
+++ b/pkgs/development/compilers/nvidia-cg-toolkit/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   src =
     if stdenv.system == "x86_64-linux" then
       fetchurl {
-        url = "http://developer.download.nvidia.com/cg/Cg_${version}/Cg-${version}_${date}_x86_64.tgz";
+        url = "https://developer.download.nvidia.com/cg/Cg_${version}/Cg-${version}_${date}_x86_64.tgz";
         sha256 = "e8ff01e6cc38d1b3fd56a083f5860737dbd2f319a39037528fb1a74a89ae9878";
       }
     else if stdenv.system == "i686-linux" then
diff --git a/pkgs/development/compilers/ocaml/3.10.0.nix b/pkgs/development/compilers/ocaml/3.10.0.nix
index ca21612776f0..99a65dec1501 100644
--- a/pkgs/development/compilers/ocaml/3.10.0.nix
+++ b/pkgs/development/compilers/ocaml/3.10.0.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation (rec {
   version = "3.10.0";
 
   src = fetchurl {
-    url = "http://caml.inria.fr/pub/distrib/ocaml-3.10/${name}.tar.bz2";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-3.10/${name}.tar.bz2";
     sha256 = "1ihmx1civ78s7k2hfc05z1s9vbyx2qw7fg8lnbxnfd6zxkk8878d";
   };
 
diff --git a/pkgs/development/compilers/ocaml/3.11.2.nix b/pkgs/development/compilers/ocaml/3.11.2.nix
index df62cd3656b4..e65510c172e6 100644
--- a/pkgs/development/compilers/ocaml/3.11.2.nix
+++ b/pkgs/development/compilers/ocaml/3.11.2.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   version = "3.11.2";
   
   src = fetchurl {
-    url = "http://caml.inria.fr/pub/distrib/ocaml-3.11/${name}.tar.bz2";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-3.11/${name}.tar.bz2";
     sha256 = "86f3387a0d7e7c8be2a3c53af083a5a726e333686208d5ea0dd6bb5ac3f58143";
   };
 
diff --git a/pkgs/development/compilers/ocaml/3.12.1.nix b/pkgs/development/compilers/ocaml/3.12.1.nix
index 8cfe2bb7bcfe..8636f670059c 100644
--- a/pkgs/development/compilers/ocaml/3.12.1.nix
+++ b/pkgs/development/compilers/ocaml/3.12.1.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   version = "3.12.1";
   
   src = fetchurl {
-    url = "http://caml.inria.fr/pub/distrib/ocaml-3.12/${name}.tar.bz2";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-3.12/${name}.tar.bz2";
     sha256 = "13cmhkh7s6srnlvhg3s9qzh3a5dbk2m9qr35jzq922sylwymdkzd";
   };
 
diff --git a/pkgs/development/compilers/ocaml/4.00.1.nix b/pkgs/development/compilers/ocaml/4.00.1.nix
index 8bad5494e8b9..0a30ef1352c4 100644
--- a/pkgs/development/compilers/ocaml/4.00.1.nix
+++ b/pkgs/development/compilers/ocaml/4.00.1.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   version = "4.00.1";
   
   src = fetchurl {
-    url = "http://caml.inria.fr/pub/distrib/ocaml-4.00/${name}.tar.bz2";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-4.00/${name}.tar.bz2";
     sha256 = "33c3f4acff51685f5bfd7c260f066645e767d4e865877bf1613c176a77799951";
   };
 
diff --git a/pkgs/development/compilers/ocaml/ber-metaocaml-104.nix b/pkgs/development/compilers/ocaml/ber-metaocaml-104.nix
index 81c8cd534025..16d7e2580b38 100644
--- a/pkgs/development/compilers/ocaml/ber-metaocaml-104.nix
+++ b/pkgs/development/compilers/ocaml/ber-metaocaml-104.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   version = "104";
 
   src = fetchurl {
-    url = "http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04.0.tar.gz";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04.0.tar.gz";
     sha256 = "1pi2hdm9lxhn45qvfqfss1hpa4jijm14qgmrgajsadxqdiplhqyb";
   };
 
diff --git a/pkgs/development/compilers/osl/default.nix b/pkgs/development/compilers/osl/default.nix
new file mode 100644
index 000000000000..65d8110646f8
--- /dev/null
+++ b/pkgs/development/compilers/osl/default.nix
@@ -0,0 +1,39 @@
+{ clangStdenv, stdenv, fetchFromGitHub, cmake, zlib, openexr,
+openimageio, llvm, boost165, flex, bison, partio, pugixml,
+utillinux, python
+}:
+
+let boost_static = boost165.override { enableStatic = true; };
+in clangStdenv.mkDerivation rec {
+  # In theory this could use GCC + Clang rather than just Clang,
+  # but https://github.com/NixOS/nixpkgs/issues/29877 stops this
+  name = "openshadinglanguage-${version}";
+  version = "1.9.9";
+
+  src = fetchFromGitHub {
+    owner = "imageworks";
+    repo = "OpenShadingLanguage";
+    rev = "Release-1.9.9";
+    sha256 = "1w6wbz013nirzsiw11c9dpdkcwlfncs5va8q583pdw0q2pfkj5dn";
+  };
+
+  cmakeFlags = [ "-DUSE_BOOST_WAVE=ON" "-DENABLERTTI=ON" ];
+  enableParallelBuilding = true;
+
+  preConfigure = '' patchShebangs src/liboslexec/serialize-bc.bash '';
+  
+  buildInputs = [
+     cmake zlib openexr openimageio llvm
+     boost_static flex bison partio pugixml
+     utillinux # needed just for hexdump
+     python # CMake doesn't check this?
+  ];
+  # TODO: How important is partio? CMake doesn't seem to find it
+  meta = with stdenv.lib; {
+    description = "Advanced shading language for production GI renderers";
+    homepage = http://opensource.imageworks.com/?p=osl;
+    maintainers = with maintainers; [ hodapp ];
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/compilers/pakcs/default.nix b/pkgs/development/compilers/pakcs/default.nix
index d7590146e2ad..94b89cf3a952 100644
--- a/pkgs/development/compilers/pakcs/default.nix
+++ b/pkgs/development/compilers/pakcs/default.nix
@@ -5,7 +5,7 @@ let
   fname = "pakcs-1.14.0";
 
   fsrc = fetchurl {
-    url = "http://www.informatik.uni-kiel.de/~pakcs/download/${fname}-src.tar.gz";
+    url = "https://www.informatik.uni-kiel.de/~pakcs/download/${fname}-src.tar.gz";
     sha256 = "1651ssh4ql79x8asd7kp4yis2n5rhn3lml4s26y03b0cgbfhs78s";
   };
 
diff --git a/pkgs/development/compilers/ponyc/default.nix b/pkgs/development/compilers/ponyc/default.nix
index cc993af82080..f07f68241794 100644
--- a/pkgs/development/compilers/ponyc/default.nix
+++ b/pkgs/development/compilers/ponyc/default.nix
@@ -83,7 +83,7 @@ stdenv.mkDerivation ( rec {
 
   meta = with stdenv.lib; {
     description = "Pony is an Object-oriented, actor-model, capabilities-secure, high performance programming language";
-    homepage = http://www.ponylang.org;
+    homepage = https://www.ponylang.org;
     license = licenses.bsd2;
     maintainers = with maintainers; [ doublec kamilchm patternspandemic ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/development/compilers/ponyc/pony-stable.nix b/pkgs/development/compilers/ponyc/pony-stable.nix
index 6a0965360f68..f27147d9743a 100644
--- a/pkgs/development/compilers/ponyc/pony-stable.nix
+++ b/pkgs/development/compilers/ponyc/pony-stable.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "pony-stable-${version}";
-  version = "0.1.3";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = "pony-stable";
     rev = version;
-    sha256 = "0dnj9d35fa0iaka2lsc7cvn9d2qbasknn1c3gbxdyc9drf9vv6kf";
+    sha256 = "18ncxdk37r9sp2wnrgqj29nvqljqq9m154pkdv8b6b5k9knpradx";
   };
 
   buildInputs = [ ponyc ];
diff --git a/pkgs/development/compilers/scala/2.10.nix b/pkgs/development/compilers/scala/2.10.nix
index bac36d61068d..16e0389ad031 100644
--- a/pkgs/development/compilers/scala/2.10.nix
+++ b/pkgs/development/compilers/scala/2.10.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "scala-2.10.7";
 
   src = fetchurl {
-    url = "http://www.scala-lang.org/files/archive/${name}.tgz";
+    url = "https://www.scala-lang.org/files/archive/${name}.tgz";
     sha256 = "04gi55lzgrhsb78qw8jmnccqim92rw6898knw0a7gfzn2sci30wj";
   };
 
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       Code sizes are typically reduced by a factor of two to three when
       compared to an equivalent Java application.
     '';
-    homepage = http://www.scala-lang.org/;
+    homepage = https://www.scala-lang.org/;
     license = stdenv.lib.licenses.bsd3;
     platforms = stdenv.lib.platforms.all;
     branch = "2.10";
diff --git a/pkgs/development/compilers/scala/2.11.nix b/pkgs/development/compilers/scala/2.11.nix
index 1145ebab5245..b1100eb8aa9d 100644
--- a/pkgs/development/compilers/scala/2.11.nix
+++ b/pkgs/development/compilers/scala/2.11.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "scala-2.11.12";
 
   src = fetchurl {
-    url = "http://www.scala-lang.org/files/archive/${name}.tgz";
+    url = "https://www.scala-lang.org/files/archive/${name}.tgz";
     sha256 = "1a4nc4qp9dm4rps47j92hlmxxqskv67qbdmjqc5zd94wd4rps7di";
   };
 
diff --git a/pkgs/development/compilers/scala/default.nix b/pkgs/development/compilers/scala/default.nix
index a25d4f6e6544..8a20066becb7 100644
--- a/pkgs/development/compilers/scala/default.nix
+++ b/pkgs/development/compilers/scala/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "scala-2.12.6";
 
   src = fetchurl {
-    url = "http://www.scala-lang.org/files/archive/${name}.tgz";
+    url = "https://www.scala-lang.org/files/archive/${name}.tgz";
     sha256 = "05ili2959yrshqi44wpmwy0dyfm4kvp6i8mlbnj1xvc5b9649iqs";
   };
 
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
       Code sizes are typically reduced by a factor of two to three when
       compared to an equivalent Java application.
     '';
-    homepage = http://www.scala-lang.org/;
+    homepage = https://www.scala-lang.org/;
     license = stdenv.lib.licenses.bsd3;
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/development/compilers/seexpr/default.nix b/pkgs/development/compilers/seexpr/default.nix
new file mode 100644
index 000000000000..2760d6ad5d03
--- /dev/null
+++ b/pkgs/development/compilers/seexpr/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, cmake, libpng, zlib, qt4,
+bison, flex, mesa_glu, pythonPackages
+}:
+
+stdenv.mkDerivation rec {
+  name = "seexpr-${version}";
+  version = "2.11";
+  src = fetchFromGitHub {
+    owner  = "wdas";
+    repo   = "SeExpr";
+    rev    = "v2.11";
+    sha256 = "0a44k56jf6dl36fwgg4zpc252wq5lf9cblg74mp73k82hxw439l4";
+  };
+
+  buildInputs = [ cmake mesa_glu libpng zlib qt4 pythonPackages.pyqt4 bison flex ];
+  meta = with stdenv.lib; {
+    description = "Embeddable expression evaluation engine from Disney Animation";
+    homepage = https://www.disneyanimation.com/technology/seexpr.html;
+    maintainers = with maintainers; [ hodapp ];
+    license = licenses.asl20;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/compilers/shaderc/default.nix b/pkgs/development/compilers/shaderc/default.nix
index 9df718694913..1176d348d9d3 100644
--- a/pkgs/development/compilers/shaderc/default.nix
+++ b/pkgs/development/compilers/shaderc/default.nix
@@ -1,32 +1,52 @@
-{ stdenv, fetchFromGitHub, cmake, glslang, spirv-tools, python }:
+{ stdenv, fetchFromGitHub, cmake, python }:
+# Like many google projects, shaderc doesn't gracefully support separately compiled dependencies, so we can't easily use
+# the versions of glslang and spirv-tools used by vulkan-loader. Exact revisions are taken from
+# https://github.com/google/shaderc/blob/known-good/known_good.json
 
-stdenv.mkDerivation rec {
+# Future work: extract and fetch all revisions automatically based on a revision of shaderc's known-good branch.
+let
+  glslang = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "glslang";
+    rev = "32d3ec319909fcad0b2b308fe1635198773e8316";
+    sha256 = "1kmgjv5kbrjy6azpgwnjcn3cj8vg5i8hnyk3m969sc0gq2j1rbjj";
+  };
+  spirv-tools = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "SPIRV-Tools";
+    rev = "fe2fbee294a8ad4434f828a8b4d99eafe9aac88c";
+    sha256 = "03rq4ypwqnz34n8ip85n95a3b9rxb34j26azzm3b3invaqchv19x";
+  };
+  spirv-headers = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "SPIRV-Headers";
+    rev = "3ce3e49d73b8abbf2ffe33f829f941fb2a40f552";
+    sha256 = "0yk4bzqifdqpmdxkhvrxbdqhf5ngkga0ig1yyz7khr7rklqfz7wp";
+  };
+in stdenv.mkDerivation rec {
   name = "shaderc-git-${version}";
-  version = "2016-09-08";
+  version = "2018-06-01";
 
-  # `vulkan-loader` requires a specific version of `glslang` as specified in
-  # `<vulkan-loader-repo>/glslang_revision`.
   src = fetchFromGitHub {
     owner = "google";
     repo = "shaderc";
-    rev = "e17bb8ba3b8b0b9142b788d988612a40541c54ce";
-    sha256 = "17qfjqkz6j355qi130kixaz51svl09k9b5sfikksgnbmzglzcwki";
+    rev = "be8e0879750303a1de09385465d6b20ecb8b380d";
+    sha256 = "16p25ry2i4zrj00zihfpf210f8xd7g398ffbw25igvi9mbn4nbfd";
   };
 
   patchPhase = ''
-    cp -r ${spirv-tools.src} third_party/spirv-tools
-    chmod -R +w third_party/spirv-tools
-    ln -s ${spirv-tools.headers} third_party/spirv-tools/external/spirv-headers
+    cp -r --no-preserve=mode ${glslang} third_party/glslang
+    cp -r --no-preserve=mode ${spirv-tools} third_party/spirv-tools
+    ln -s ${spirv-headers} third_party/spirv-tools/external/spirv-headers
   '';
 
-  buildInputs = [ cmake glslang python ];
+  buildInputs = [ cmake python ];
   enableParallelBuilding = true;
 
-  cmakeFlags = [ "-DSHADERC_SKIP_TESTS=ON" "-DSHADERC_GLSLANG_DIR=${glslang.src}" ];
+  cmakeFlags = [ "-DSHADERC_SKIP_TESTS=ON" ];
 
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
     description = "A collection of tools, libraries and tests for shader compilation.";
-    broken = true;
   };
 }
diff --git a/pkgs/development/compilers/yap/default.nix b/pkgs/development/compilers/yap/default.nix
index d93da8cb9965..7c6b545285cc 100644
--- a/pkgs/development/compilers/yap/default.nix
+++ b/pkgs/development/compilers/yap/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   name = "yap-${version}";
 
   src = fetchurl {
-    url = "http://www.dcc.fc.up.pt/~vsc/Yap/${name}.tar.gz";
+    url = "https://www.dcc.fc.up.pt/~vsc/Yap/${name}.tar.gz";
     sha256 = "0y7sjwimadqsvgx9daz28c9mxcx9n1znxklih9xg16k6n54v9qxf";
   };
 
diff --git a/pkgs/development/compilers/yasm/default.nix b/pkgs/development/compilers/yasm/default.nix
index 738b63fe1ad7..5aea623b91d4 100644
--- a/pkgs/development/compilers/yasm/default.nix
+++ b/pkgs/development/compilers/yasm/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "yasm-1.3.0";
 
   src = fetchurl {
-    url = "http://www.tortall.net/projects/yasm/releases/${name}.tar.gz";
+    url = "https://www.tortall.net/projects/yasm/releases/${name}.tar.gz";
     sha256 = "0gv0slmm0qpq91za3v2v9glff3il594x5xsrbgab7xcmnh0ndkix";
   };