New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Haxe Version to 4.1.3 #95638
Comments
Not well tested, at least it builds and passes diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix
index a3110c0c1af1..9dc8e304d0e3 100644
--- a/pkgs/development/compilers/haxe/default.nix
+++ b/pkgs/development/compilers/haxe/default.nix
@@ -1,14 +1,11 @@
-{ stdenv, fetchgit, coreutils, ocamlPackages, zlib, pcre, neko }:
+{ lib, stdenv, fetchgit, coreutils, ocaml-ng, zlib, pcre, neko, mbedtls }:
-let inherit (ocamlPackages) ocaml camlp4; in
let
- generic = { version, sha256, prePatch }:
+ generic = { version, sha256, buildInputs, prePatch }:
stdenv.mkDerivation {
pname = "haxe";
- inherit version;
-
- buildInputs = [ocaml zlib pcre neko camlp4];
+ inherit version buildInputs prePatch;
src = fetchgit {
url = "https://github.com/HaxeFoundation/haxe.git";
@@ -17,8 +14,6 @@ let
rev = "refs/tags/${version}";
};
- inherit prePatch;
-
buildFlags = [ "all" "tools" ];
installPhase = ''
@@ -74,7 +69,7 @@ let
popd > /dev/null
'';
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++";
homepage = "https://haxe.org";
license = with licenses; [ gpl2 bsd2 /*?*/ ]; # -> docs/license.txt
@@ -87,17 +82,43 @@ in {
haxe_3_2 = generic {
version = "3.2.1";
sha256 = "1x9ay5a2llq46fww3k07jxx8h1vfpyxb522snc6702a050ki5vz3";
+ buildInputs = [zlib pcre neko] ++ (with ocaml-ng.ocamlPackages_4_05; [ocaml camlp4]);
prePatch = ''
sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' main.ml
sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/tools/haxelib/Main.hx
'';
};
haxe_3_4 = generic {
- version = "3.4.6";
- sha256 = "1myc4b8fwp0f9vky17wv45n34a583f5sjvajsc93f5gm1wanp4if";
+ version = "3.4.7";
+ sha256 = "1pwi66bskfr0nr6l326d171b4xb7xvasahlq5y3rwd36k5hpf19b";
+ buildInputs = [zlib pcre neko] ++ (with ocaml-ng.ocamlPackages_4_05; [ocaml camlp4]);
prePatch = ''
sed -i -re 's!(let +prefix_path += +).*( +in)!\1"'"$out/"'"\2!' src/main.ml
sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx
'';
};
+ haxe_4_0 = generic {
+ version = "4.0.5";
+ sha256 = "0f534pchdx0m057ixnk07ab4s518ica958pvpd0vfjsrxg5yjkqa";
+ buildInputs = [zlib pcre neko] ++ (with ocaml-ng.ocamlPackages_4_10; [ocaml findlib sedlex_2 xml-light ptmap camlp5 sha ocaml_extlib_1_7_7]);
+ prePatch = ''
+ sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx
+ '';
+ };
+ haxe_4_1 = generic {
+ version = "4.1.5";
+ sha256 = "0rns6d28qzkbai6yyws08yzbyvxfn848nj0fsji7chdi0y7pzzj0";
+ buildInputs = [zlib pcre neko mbedtls] ++ (with ocaml-ng.ocamlPackages_4_10; [ocaml findlib sedlex_2 xml-light ptmap camlp5 sha ocaml_extlib_1_7_7 dune_2]);
+ prePatch = ''
+ sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx
+ '';
+ };
+ haxe_4_2 = generic {
+ version = "4.2.0";
+ sha256 = "0am13q5aad30nddzjab3yh39z0gy5y78vbdd2fahs7nb812hqkf7";
+ buildInputs = [zlib pcre neko mbedtls] ++ (with ocaml-ng.ocamlPackages_4_10; [ocaml findlib sedlex_2 xml-light ptmap camlp5 sha ocaml_extlib_1_7_8 dune_2 luv]);
+ prePatch = ''
+ sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx
+ '';
+ };
}
diff --git a/pkgs/development/compilers/neko/default.nix b/pkgs/development/compilers/neko/default.nix
index 705b222a86cb..c10a61084764 100644
--- a/pkgs/development/compilers/neko/default.nix
+++ b/pkgs/development/compilers/neko/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "neko";
- version = "2.2.0";
+ version = "2.3.0";
src = fetchurl {
- url = "https://nekovm.org/media/neko-${version}-src.tar.gz";
- sha256 = "1qv47zaa0vzhjlq5wb71627n7dbsxpc1gqpg0hsngjxnbnh1q46g";
+ url = "https://github.com/HaxeFoundation/neko/archive/v2-3-0.tar.gz";
+ sha256 = "15g99snnnky8jsi6h3pj375804xj3jfgivzgabb4xwnsgcqpw3l5";
};
nativeBuildInputs = [ cmake pkgconfig git ];
diff --git a/pkgs/development/ocaml-modules/extlib/default.nix b/pkgs/development/ocaml-modules/extlib/1_7_7.nix
similarity index 91%
rename from pkgs/development/ocaml-modules/extlib/default.nix
rename to pkgs/development/ocaml-modules/extlib/1_7_7.nix
index a8b1810e51f1..6d0535cdbaeb 100644
--- a/pkgs/development/ocaml-modules/extlib/default.nix
+++ b/pkgs/development/ocaml-modules/extlib/1_7_7.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
name = "ocaml${ocaml.version}-extlib-1.7.7";
src = fetchurl {
- url = "http://ygrek.org.ua/p/release/ocaml-extlib/extlib-1.7.7.tar.gz";
+ url = "https://ygrek.org/p/release/ocaml-extlib/extlib-1.7.7.tar.gz";
sha256 = "1sxmzc1mx3kg62j8kbk0dxkx8mkf1rn70h542cjzrziflznap0s1";
};
diff --git a/pkgs/development/ocaml-modules/extlib/1_7_8.nix b/pkgs/development/ocaml-modules/extlib/1_7_8.nix
new file mode 100644
index 000000000000..878042fa2d97
--- /dev/null
+++ b/pkgs/development/ocaml-modules/extlib/1_7_8.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, fetchurl, ocaml, findlib, cppo, minimal ? true }:
+
+assert lib.versionAtLeast (lib.getVersion ocaml) "3.11";
+
+stdenv.mkDerivation {
+ name = "ocaml${ocaml.version}-extlib-1.7.8";
+
+ src = fetchurl {
+ url = "https://ygrek.org/p/release/ocaml-extlib/extlib-1.7.8.tar.gz";
+ sha256 = "0npq4hq3zym8nmlyji7l5cqk6drx2rkcx73d60rxqh5g8dla8p4k";
+ };
+
+ buildInputs = [ ocaml findlib cppo ];
+
+ createFindlibDestdir = true;
+
+ dontConfigure = true; # Skip configure
+ # De facto, option minimal=1 seems to be the default. See the README.
+ buildPhase = "make ${if minimal then "minimal=1" else ""} build";
+ installPhase = "make ${if minimal then "minimal=1" else ""} install";
+
+ meta = {
+ homepage = "https://github.com/ygrek/ocaml-extlib";
+ description = "Enhancements to the OCaml Standard Library modules";
+ license = lib.licenses.lgpl21;
+ platforms = ocaml.meta.platforms or [];
+ };
+}
diff --git a/pkgs/development/ocaml-modules/luv/default.nix b/pkgs/development/ocaml-modules/luv/default.nix
new file mode 100644
index 000000000000..30491fb0782f
--- /dev/null
+++ b/pkgs/development/ocaml-modules/luv/default.nix
@@ -0,0 +1,21 @@
+{ lib, buildDunePackage, fetchurl, ctypes }:
+
+buildDunePackage rec {
+ pname = "luv";
+ version = "0.5.6";
+ useDune2 = true;
+
+ src = fetchurl {
+ url = "https://github.com/aantron/luv/releases/download/0.5.6/luv-0.5.6.tar.gz";
+ sha256 = "119nv250fsadvrs94nwzk7qvlwr0kvcpkbwcmfkh13byg8nhkn1m";
+ };
+
+ propagatedBuildInputs = [ ctypes ];
+
+ meta = {
+ homepage = "https://github.com/aantron/luv";
+ description = "Binding to libuv: cross-platform asynchronous I/O";
+ license = lib.licenses.lgpl21;
+ maintainers = [ lib.maintainers.vbgl ];
+ };
+}
diff --git a/pkgs/development/ocaml-modules/sha/default.nix b/pkgs/development/ocaml-modules/sha/default.nix
new file mode 100644
index 000000000000..f6cea15662a1
--- /dev/null
+++ b/pkgs/development/ocaml-modules/sha/default.nix
@@ -0,0 +1,19 @@
+{ lib, buildDunePackage, fetchurl }:
+
+buildDunePackage rec {
+ pname = "sha";
+ version = "1.13";
+ useDune2 = true;
+
+ src = fetchurl {
+ url = "https://github.com/djs55/ocaml-sha/releases/download/v1.13/sha-v1.13.tbz";
+ sha256 = "00z2s4fsv9i1h09rj5dy3nd9hhcn79b75sn2ljj5wihlf4y4g304";
+ };
+
+ meta = {
+ homepage = "https://github.com/djs55/ocaml-sha";
+ description = "Binding to the SHA cryptographic functions";
+ license = lib.licenses.lgpl21;
+ maintainers = [ lib.maintainers.vbgl ];
+ };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c32b9ce6b044..a656c0fd5052 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8316,10 +8316,9 @@ in
graphviz = graphviz-nox;
});
- inherit (callPackage ../development/compilers/haxe {
- ocamlPackages = ocaml-ng.ocamlPackages_4_05;
- }) haxe_3_2 haxe_3_4;
- haxe = haxe_3_4;
+ inherit (callPackage ../development/compilers/haxe { })
+ haxe_3_2 haxe_3_4 haxe_4_0 haxe_4_1 haxe_4_2;
+ haxe = haxe_4_2;
haxePackages = recurseIntoAttrs (callPackage ./haxe-packages.nix { });
inherit (haxePackages) hxcpp;
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index c0faba640a26..1fd86d0a0859 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -552,6 +552,8 @@ let
lua-ml = callPackage ../development/ocaml-modules/lua-ml { };
+ luv = callPackage ../development/ocaml-modules/luv { };
+
lwt = callPackage ../development/ocaml-modules/lwt {
ocaml-migrate-parsetree = ocaml-migrate-parsetree-2-1;
};
@@ -959,7 +961,9 @@ let
ocaml-protoc = callPackage ../development/ocaml-modules/ocaml-protoc { };
- ocaml_extlib = callPackage ../development/ocaml-modules/extlib { };
+ ocaml_extlib = ocaml_extlib_1_7_7;
+ ocaml_extlib_1_7_7 = callPackage ../development/ocaml-modules/extlib/1_7_7.nix { };
+ ocaml_extlib_1_7_8 = callPackage ../development/ocaml-modules/extlib/1_7_8.nix { };
ocb-stubblr = callPackage ../development/ocaml-modules/ocb-stubblr { };
@@ -1057,6 +1061,8 @@ let
semaphore-compat = callPackage ../development/ocaml-modules/semaphore-compat { };
+ sha = callPackage ../development/ocaml-modules/sha { };
+
sodium = callPackage ../development/ocaml-modules/sodium { };
spelll = callPackage ../development/ocaml-modules/spelll { }; |
10 tasks
Hi what's the state of this? Can I help? |
10 tasks
We have 4.2.1 now, 4.1.5 and 4.0.5 are still pending. |
10 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
There was a new release on Haxe not too long ago. It's now on 4.1.3
https://github.com/HaxeFoundation/haxe/releases/tag/4.1.3
The version in nixpkgs is pretty old, it's still on 3.4.6
Would be cool if this could be updated.
Maintainer: @MarcWeber
The text was updated successfully, but these errors were encountered: