diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/misc/or1k/newlib.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/development/misc/or1k/newlib.nix | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/misc/or1k/newlib.nix b/infra/libkookie/nixpkgs/pkgs/development/misc/or1k/newlib.nix new file mode 100644 index 000000000000..92829896a27c --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/development/misc/or1k/newlib.nix @@ -0,0 +1,36 @@ +{ stdenv, texinfo, flex, bison, fetchFromGitHub, crossLibcStdenv, buildPackages }: + +crossLibcStdenv.mkDerivation { + name = "newlib"; + src = fetchFromGitHub { + owner = "openrisc"; + repo = "newlib"; + rev = "8ac94ca7bbe4ceddafe6583ee4766d3c15b18ac8"; + sha256 = "0hzhijmry5slpp6x12pgng8v7jil3mn18ahrhnw431lqrs1cma0s"; + }; + + depsBuildBuild = [ buildPackages.stdenv.cc ]; + + # newlib expects CC to build for build platform, not host platform + preConfigure = '' + export CC=cc + ''; + + configurePlatforms = [ "build" "target" ]; + configureFlags = [ + "--host=${stdenv.buildPlatform.config}" + + "--disable-newlib-supplied-syscalls" + "--disable-nls" + "--enable-newlib-io-long-long" + "--enable-newlib-register-fini" + "--enable-newlib-retargetable-locking" + ]; + + dontDisableStatic = true; + + passthru = { + incdir = "/${stdenv.targetPlatform.config}/include"; + libdir = "/${stdenv.targetPlatform.config}/lib"; + }; +} |