nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 fetchpatch,
6}:
7
8stdenv.mkDerivation (finalAttrs: {
9 pname = "m2libc";
10 version = "unstable-2023-05-22";
11
12 src = fetchFromGitHub {
13 owner = "oriansj";
14 repo = "M2libc";
15 rev = "de7c75f144176c3b9be77695d9bf94440445aeae";
16 hash = "sha256-248plvODhBRfmx7zOmf05ICbk8vzSbaceZJ0j+wPaAY=";
17 };
18
19 patches = [
20 # # aarch64: syscall: mkdir -> mkdirat
21 # https://github.com/oriansj/M2libc/pull/17
22 (fetchpatch {
23 url = "https://github.com/oriansj/M2libc/commit/ff7c3023b3ab6cfcffc5364620b25f8d0279e96b.patch";
24 hash = "sha256-QAKddv4TixIQHpFa9SVu9fAkeKbzhQaxjaWzW2yJy7A=";
25 })
26 ];
27
28 installPhase = ''
29 runHook preInstall
30
31 mkdir -p $out/include
32 cp -r . $out/include/M2libc
33
34 runHook postInstall
35 '';
36
37 meta = {
38 description = "More standards compliant C library written in M2-Planet's C subset";
39 homepage = "https://github.com/oriansj/m2libc";
40 license = lib.licenses.gpl3Only;
41 teams = [ lib.teams.minimal-bootstrap ];
42 platforms = [
43 "i686-linux"
44 "x86_64-linux"
45 "aarch64-linux"
46 "riscv32-linux"
47 "riscv64-linux"
48 ];
49 };
50})