From 26253534663e33b609cb1389759937ce9c655999 Mon Sep 17 00:00:00 2001 From: Vaibhav Sagar Date: Fri, 10 Aug 2018 15:00:39 +0800 Subject: mosml: init at 2.10.1 --- pkgs/development/compilers/mosml/default.nix | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 pkgs/development/compilers/mosml/default.nix (limited to 'pkgs/development/compilers') diff --git a/pkgs/development/compilers/mosml/default.nix b/pkgs/development/compilers/mosml/default.nix new file mode 100644 index 000000000000..5ea3f63ccd18 --- /dev/null +++ b/pkgs/development/compilers/mosml/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, gmp, perl }: + +stdenv.mkDerivation rec { + name = "mosml-${version}"; + version = "2.10.1"; + + buildInputs = [ gmp perl ]; + + makeFlags = "PREFIX=$(out)"; + + src = fetchurl { + url = "https://github.com/kfl/mosml/archive/ver-${version}.tar.gz"; + sha256 = "13x7wj94p0inn84pzpj52dch5s9lznqrj287bd3nk3dqd0v3kmgy"; + }; + + setSourceRoot = ''export sourceRoot="$(echo */src)"''; + + meta = with stdenv.lib; { + description = "A light-weight implementation of Standard ML"; + longDescription = '' + Moscow ML is a light-weight implementation of Standard ML (SML), a strict + functional language used in teaching and research. + ''; + homepage = http://mosml.org/; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ vaibhavsagar ]; + }; +} -- cgit 1.4.1 From c26a6db0f83102c4cae8b40860670ee51648417a Mon Sep 17 00:00:00 2001 From: Nick Novitski Date: Thu, 9 Aug 2018 13:24:56 -0700 Subject: mruby: init at 1.4.1 --- pkgs/development/compilers/mruby/default.nix | 28 ++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/development/compilers/mruby/default.nix (limited to 'pkgs/development/compilers') diff --git a/pkgs/development/compilers/mruby/default.nix b/pkgs/development/compilers/mruby/default.nix new file mode 100644 index 000000000000..cf93d7783836 --- /dev/null +++ b/pkgs/development/compilers/mruby/default.nix @@ -0,0 +1,28 @@ +{ stdenv, ruby, bison, fetchFromGitHub }: + +stdenv.mkDerivation rec { + name = "mruby-${version}"; + version = "1.4.1"; + + src = fetchFromGitHub { + owner = "mruby"; + repo = "mruby"; + rev = version; + sha256 = "0pw72acbqgs4n1qa297nnja23v9hxz9g7190yfx9kwm7mgbllmww"; + }; + + nativeBuildInputs = [ ruby bison ]; + + installPhase = '' + mkdir $out + cp -R build/host/{bin,lib} $out + ''; + + meta = with stdenv.lib; { + description = "An embeddable implementation of the Ruby language"; + homepage = https://mruby.org; + maintainers = [ maintainers.nicknovitski ]; + license = licenses.mit; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fca205f120d8..a9d2223ceadd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7638,6 +7638,8 @@ with pkgs; ruby = ruby_2_4; + mruby = callPackage ../development/compilers/mruby { }; + scsh = callPackage ../development/interpreters/scsh { }; scheme48 = callPackage ../development/interpreters/scheme48 { }; -- cgit 1.4.1 From f84715501453f17a481a918e45b33ad426d0be14 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Thu, 9 Aug 2018 19:10:24 -0400 Subject: mruby: Fixes build on Linux I'm not sure of the semantics of `gcc` vs. `ld` for linking, but it makes the difference between working and: ``` /nix/store/gpc2wld1s0c6qzx9326cwn1wcx29xzsj-binutils-2.30/bin/ld: warning: cannot find entry symbol _start; defaulting to 0000000000401100 ``` --- pkgs/development/compilers/mruby/default.nix | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'pkgs/development/compilers') diff --git a/pkgs/development/compilers/mruby/default.nix b/pkgs/development/compilers/mruby/default.nix index cf93d7783836..be3064884793 100644 --- a/pkgs/development/compilers/mruby/default.nix +++ b/pkgs/development/compilers/mruby/default.nix @@ -13,6 +13,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ ruby bison ]; + # Necessary so it uses `gcc` instead of `ld` for linking. + # https://github.com/mruby/mruby/blob/35be8b252495d92ca811d76996f03c470ee33380/tasks/toolchains/gcc.rake#L25 + preBuild = if stdenv.isLinux then "unset LD" else null; + installPhase = '' mkdir $out cp -R build/host/{bin,lib} $out -- cgit 1.4.1 From 53bfb47e1d2e4ae81c915a6b6d0f14012c1e5f1f Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Thu, 9 Aug 2018 19:12:34 -0400 Subject: mruby: Removes a test that fails in the sandbox. --- ...ables-IO-isatty-test-for-sandboxed-builds.patch | 36 ++++++++++++++++++++++ pkgs/development/compilers/mruby/default.nix | 6 ++++ 2 files changed, 42 insertions(+) create mode 100644 pkgs/development/compilers/mruby/0001-Disables-IO-isatty-test-for-sandboxed-builds.patch (limited to 'pkgs/development/compilers') diff --git a/pkgs/development/compilers/mruby/0001-Disables-IO-isatty-test-for-sandboxed-builds.patch b/pkgs/development/compilers/mruby/0001-Disables-IO-isatty-test-for-sandboxed-builds.patch new file mode 100644 index 000000000000..779391fc62a9 --- /dev/null +++ b/pkgs/development/compilers/mruby/0001-Disables-IO-isatty-test-for-sandboxed-builds.patch @@ -0,0 +1,36 @@ +From f3db284516105fd30b5513a5528104574a7b8545 Mon Sep 17 00:00:00 2001 +From: Samuel Dionne-Riel +Date: Thu, 9 Aug 2018 19:07:45 -0400 +Subject: [PATCH] Disables `IO#isatty` test for sandboxed builds. + +--- + mrbgems/mruby-io/test/io.rb | 13 ------------- + 1 file changed, 13 deletions(-) + +diff --git a/mrbgems/mruby-io/test/io.rb b/mrbgems/mruby-io/test/io.rb +index e06b1499..e8a54736 100644 +--- a/mrbgems/mruby-io/test/io.rb ++++ b/mrbgems/mruby-io/test/io.rb +@@ -342,19 +342,6 @@ assert('IO#_read_buf') do + io.closed? + end + +-assert('IO#isatty') do +- skip "isatty is not supported on this platform" if MRubyIOTestUtil.win? +- f1 = File.open("/dev/tty") +- f2 = File.open($mrbtest_io_rfname) +- +- assert_true f1.isatty +- assert_false f2.isatty +- +- f1.close +- f2.close +- true +-end +- + assert('IO#pos=, IO#seek') do + fd = IO.sysopen $mrbtest_io_rfname + io = IO.new fd +-- +2.16.4 + diff --git a/pkgs/development/compilers/mruby/default.nix b/pkgs/development/compilers/mruby/default.nix index be3064884793..3ab553678b6c 100644 --- a/pkgs/development/compilers/mruby/default.nix +++ b/pkgs/development/compilers/mruby/default.nix @@ -11,6 +11,10 @@ stdenv.mkDerivation rec { sha256 = "0pw72acbqgs4n1qa297nnja23v9hxz9g7190yfx9kwm7mgbllmww"; }; + patches = [ + ./0001-Disables-IO-isatty-test-for-sandboxed-builds.patch + ]; + nativeBuildInputs = [ ruby bison ]; # Necessary so it uses `gcc` instead of `ld` for linking. @@ -22,6 +26,8 @@ stdenv.mkDerivation rec { cp -R build/host/{bin,lib} $out ''; + doCheck = true; + meta = with stdenv.lib; { description = "An embeddable implementation of the Ruby language"; homepage = https://mruby.org; -- cgit 1.4.1