2
0
Fork 0

Package stdcxx library

This commit is contained in:
Ehmry - 2020-04-05 22:20:52 +05:30
parent d0ba11aba8
commit 81fd2fce98
5 changed files with 26 additions and 28 deletions

View File

@ -25,7 +25,7 @@ with prev; {
inherit (final.genodeSources) genodeBase;
genodeLibcCross = callPackage ./libc { stdenv = crossLibcStdenv; };
genodeLibcCross = callPackage ./libc { };
genodePackages = import ../packages { nixpkgs = final; };

View File

@ -1,6 +1,6 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenv, genodeSources, genodeBase }:
{ genodeSources, genodeBase }:
genodeSources.buildUpstream {
name = "libc";
@ -16,7 +16,7 @@ genodeSources.buildUpstream {
cp -r \
include/libc/* \
include/openlibm/* \
$GENODE_DIR/repos/libports/include/libc/* \
$GENODE_DIR/repos/libports/include/libc \
$dev/include/
for spec in ${toString genodeSources.specs}; do
dir=include/spec/$spec/libc

View File

@ -77,14 +77,17 @@ in rec {
NOVA = callPackage ./NOVA { };
solo5 = let drv = callPackage ./solo5 { };
in drv // { tests = drv.tests // { pname = "solo5-tests"; }; };
sotest-producer = callPackage ./sotest-producer { };
ssh_client = buildWorld {
name = "ssh_client";
targets = [ "app/ssh_client" ];
portInputs = with genodeSources.ports; [ libc libssh openssl zlib ];
};
solo5 = let drv = callPackage ./solo5 { };
in drv // { tests = drv.tests // { pname = "solo5-tests"; }; };
stdcxx = callPackage ./stdcxx { };
sotest-producer = callPackage ./sotest-producer { };
}

View File

@ -1,24 +1,24 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenvNoCC, llvmPackages }:
{ genodeSources, genodeBase }:
let
stdenv = stdenvNoCC;
inherit (llvmPackages) libcxx;
in stdenv.mkDerivation rec {
pname = "stdcxx";
inherit (libcxx) version meta;
let port = genodeSources.ports.stdcxx;
in genodeSources.buildUpstream {
name = "stdcxx";
outputs = [ "out" "dev" ];
targets = [ "LIB=stdcxx" ];
portInputs = [ genodeSources.ports.libc port ];
propagatedBuildInputs = [ genodeBase ];
buildInputs = [ libcxx ];
STDCXX_PORT = port;
postInstall = ''
mkdir -p $dev/include
dontUnpack = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
cflags=$NIX_CXXSTDLIB_COMPILE \
substituteAll ${./stdcxx.pc} ${pname}.pc
mkdir -p $out/lib/pkgconfig
install -Dm444 *.pc $out/lib/pkgconfig
pushd $STDCXX_PORT/*
cp -r --no-preserve=mode \
include/stdcxx/* \
$GENODE_DIR/repos/libports/include/stdcxx/* \
$dev/include/
popd
'';
}

View File

@ -1,5 +0,0 @@
Name: stdcxx
Description: Genode Standard C++ library
Version: @version@
Requires: libc libm
Cflags: @cflags@