diff --git a/default.nix b/default.nix index 6fec0be..df43e7a 100644 --- a/default.nix +++ b/default.nix @@ -9,6 +9,7 @@ let depot = callPackage ./depot { }; dhallPackages = super.dhallPackages // (callPackage ./dhall { }); genode = (callPackage ./upstream { } // { + libc = callPackage ./pkgs/libc { }; nic_bus = callPackage ./pkgs/nic_bus { }; }); nova = callPackage ./NOVA { }; diff --git a/pkgs/libc/default.nix b/pkgs/libc/default.nix new file mode 100644 index 0000000..4d654c0 --- /dev/null +++ b/pkgs/libc/default.nix @@ -0,0 +1,25 @@ +# SPDX-FileCopyrightText: Emery Hemingway +# +# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1 + +{ stdenvNoCC, depot }: + +let stdenv = stdenvNoCC; + +in stdenv.mkDerivation { + pname = "libc"; + version = "12.0.0"; + outputs = [ "out" "dev" ]; + + dontUnpack = true; + dontConfigure = true; + dontBuild = true; + + installPhase = '' + cp -r ${depot.libc} $out + mkdir -p $dev/lib/pkgconfig + substituteAll ${./libc.pc} libc.pc + substituteAll ${./libm.pc} libm.pc + install -Dt $dev/lib/pkgconfig *.pc + ''; +} diff --git a/pkgs/libc/libc.pc b/pkgs/libc/libc.pc new file mode 100644 index 0000000..439bade --- /dev/null +++ b/pkgs/libc/libc.pc @@ -0,0 +1,9 @@ +libdir=@out@/lib + +Name: genode-libc +Description: Genode C runtime library +URL: https://genode.org/ +Version: @version@ +Requires: vfs +Cflags: -D__FreeBSD__=8 -D__ISO_C_VISIBLE=1999 -fno-builtin-sin -fno-builtin-cos -fno-builtin-sinf -fno-builtin-cosf +Libs: ${libdir}/libc.lib.so diff --git a/pkgs/libc/libm.pc b/pkgs/libc/libm.pc new file mode 100644 index 0000000..2140811 --- /dev/null +++ b/pkgs/libc/libm.pc @@ -0,0 +1,8 @@ +libdir=@out@/lib + +Name: genode-libm +Description: Genode math library +URL: https://genode.org/ +Version: @version@ +Requires: libc +Libs: ${libdir}/libm.lib.so