2
0
Fork 0

genodeLibcCross: no dummy libraries

The ABI stub libraries are not mechanically derived from real libraries
and must not be used for non-depot builds.
This commit is contained in:
Emery Hemingway 2020-05-27 17:53:50 +05:30
parent b8bbdc8d0f
commit 65a06a1981
1 changed files with 5 additions and 13 deletions

View File

@ -1,26 +1,18 @@
# SPDX-License-Identifier: CC0-1.0
{ genodeSources, genodeBase, writeText }:
{ genodeSources, genodeBase, symlinkJoin }:
genodeSources.buildDepot {
symlinkJoin {
name = "posix";
propagatedBuildInputs = [ genodeBase ];
portInputs = [ genodeSources.ports.libc ];
preInstall =
# Take the libc ABI stubs rather than the actual libc.
# The libc needs a lot of work and we can't afford to
# rebuild the toolchain for every fix.
''
find depot -name libc.abi.so -exec install -D {} "''${!outputLib}/libc.so" \;
'';
postInstall = ''
paths = map genodeSources.depot [ "libc" "posix" ];
postBuild = ''
local headerDir="''${!outputDev}/include"
mkdir -p "$headerDir"
pushd ${genodeSources.ports.libc}/*
cp -r \
include/libc/* \
include/openlibm/* \
$GENODE_DIR/repos/libports/include/libc \
${genodeSources}/repos/libports/include/libc \
"$headerDir"
for spec in ${toString genodeSources.specs}; do
dir=include/spec/$spec/libc