summaryrefslogtreecommitdiffstats
path: root/pkgs/development/interpreters/luajit
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2017-07-07 10:44:33 +0200
committerVladimír Čunát <vcunat@gmail.com>2017-07-07 10:54:05 +0200
commite36b588f93035c06d9c99a464b05d81852006aeb (patch)
tree2448b0691c5855206f63642b4c9a5add29e6b55b /pkgs/development/interpreters/luajit
parentc7739191daf5290cd7e1dd7d577bd4e0cfbed9f1 (diff)
luajit: add 2.0 version again
The reason will be apparent from the followup commit. Also order the phases, quote shell variables, add myself to maintainers, etc.
Diffstat (limited to 'pkgs/development/interpreters/luajit')
-rw-r--r--pkgs/development/interpreters/luajit/default.nix94
1 files changed, 60 insertions, 34 deletions
diff --git a/pkgs/development/interpreters/luajit/default.nix b/pkgs/development/interpreters/luajit/default.nix
index 1694e3e48509..cd47883001bf 100644
--- a/pkgs/development/interpreters/luajit/default.nix
+++ b/pkgs/development/interpreters/luajit/default.nix
@@ -1,41 +1,67 @@
{ stdenv, fetchurl }:
+rec {
-stdenv.mkDerivation rec {
- name = "luajit-${version}";
- version = "2.1.0-beta3";
- luaversion = "5.1";
+ luajit = luajit_2_1;
- src = fetchurl {
- url = "http://luajit.org/download/LuaJIT-${version}.tar.gz";
- sha256 = "1hyrhpkwjqsv54hnnx4cl8vk44h9d6c9w0fz1jfjz00w255y7lhs";
+ luajit_2_0 = generic {
+ version = "2.0.5";
+ isStable = true;
+ sha256 = "0yg9q4q6v028bgh85317ykc9whgxgysp76qzaqgq55y6jy11yjw7";
};
- enableParallelBuilding = true;
-
- patchPhase = ''
- substituteInPlace Makefile \
- --replace /usr/local $out
-
- substituteInPlace src/Makefile --replace gcc cc
- '' + stdenv.lib.optionalString (stdenv.cc.libc != null)
- ''
- substituteInPlace Makefile \
- --replace ldconfig ${stdenv.cc.libc.bin or stdenv.cc.libc}/bin/ldconfig
- '';
-
- configurePhase = false;
- buildFlags = [ "amalg" ]; # Build highly optimized version
- installPhase = ''
- make install INSTALL_INC=$out/include PREFIX=$out
- ln -s $out/bin/luajit* $out/bin/lua
- ln -s $out/bin/luajit* $out/bin/luajit
- '';
-
- meta = with stdenv.lib; {
- description = "High-performance JIT compiler for Lua 5.1";
- homepage = http://luajit.org;
- license = licenses.mit;
- platforms = platforms.linux ++ platforms.darwin;
- maintainers = with maintainers ; [ thoughtpolice smironov ];
+ luajit_2_1 = generic {
+ version = "2.1.0-beta3";
+ isStable = false;
+ sha256 = "1hyrhpkwjqsv54hnnx4cl8vk44h9d6c9w0fz1jfjz00w255y7lhs";
};
+
+
+ generic =
+ { version, sha256 ? null, isStable
+ , name ? "luajit-${version}"
+ , src ?
+ (fetchurl {
+ url = "http://luajit.org/download/LuaJIT-${version}.tar.gz";
+ inherit sha256;
+ })
+ }:
+
+ stdenv.mkDerivation rec {
+ inherit name version src;
+
+ luaversion = "5.1";
+
+ patchPhase = ''
+ substituteInPlace Makefile \
+ --replace /usr/local "$out"
+
+ substituteInPlace src/Makefile --replace gcc cc
+ '' + stdenv.lib.optionalString (stdenv.cc.libc != null)
+ ''
+ substituteInPlace Makefile \
+ --replace ldconfig ${stdenv.cc.libc.bin or stdenv.cc.libc}/bin/ldconfig
+ '';
+
+ configurePhase = false;
+
+ buildFlags = [ "amalg" ]; # Build highly optimized version
+ enableParallelBuilding = true;
+
+ installPhase = ''
+ make install INSTALL_INC="$out"/include PREFIX="$out"
+ ln -s "$out"/bin/luajit-* "$out"/bin/lua
+ ''
+ + stdenv.lib.optionalString (!isStable)
+ ''
+ ln -s "$out"/bin/luajit-* "$out"/bin/luajit
+ '';
+
+ meta = with stdenv.lib; {
+ description = "High-performance JIT compiler for Lua 5.1";
+ homepage = http://luajit.org;
+ license = licenses.mit;
+ platforms = platforms.linux ++ platforms.darwin;
+ maintainers = with maintainers ; [ thoughtpolice smironov vcunat ];
+ };
+ };
}