1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
{stdenv, m4, yasm}:
stdenv.mkDerivation {
name = "libk";
version = "0.0.0";
src = stdenv.lib.cleanSource ./.;
nativeBuildInputs = [ m4 yasm ];
buildPhase = ''
substituteInPlace global/build-id.sh --replace "/usr/bin/env sh" "${stdenv.shell}"
substituteInPlace global/build-manpage.sh --replace "/usr/bin/env sh" "${stdenv.shell}"
env os=lin arch=x86 bits=64 to=$prefix debug=yes \
bash build.sh
'';
# No proper install yet...
dontInstall = true;
# This doesn't seem to work anyways?
dontStrip = true;
dontPatchELF = true;
hardeningDisable = [ "stackprotector" ];
meta = with stdenv.lib; {
description = "A modern replacement for libc";
homepage = https://c.hale.su/lexi/libk;
changelog = "https://c.hale.su/lexi/libk/timeline";
license = licenses.agpl3;
# Doesn't actually match w/ supported platforms, but...
platforms = platforms.unix;
};
}
|
|
|
>
>
|
>
>
>
|
|
|
>
>
|
|
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
{stdenv, m4, yasm, cmark, groff}:
stdenv.mkDerivation {
name = "libk";
version = "0.0.0";
src = stdenv.lib.cleanSource ../.;
# Need to figure out how split builds work... but that also kinda needs
# an install script first, so.
nativeBuildInputs = [ m4 yasm cmark groff ];
# TODO: maybe make this more generic? IIRC I couldn't use the
# patch-everything whatever, for some reason. It also probably should be in
# an earlier build step.
buildPhase = ''
substituteInPlace global/build-id.sh --replace "/usr/bin/env bash" "${stdenv.shell}"
substituteInPlace global/build-manpage.sh --replace "/usr/bin/env bash" "${stdenv.shell}"
env os=lin arch=x86 bits=64 to=$prefix debug=yes \
bash build.sh
'';
# No proper install yet...
dontInstall = true;
# Not sure if these work or are needed, but better safe than sorry, here.
dontStrip = true;
dontPatchELF = true;
# I think there's supposed to be a stack check fail fn now, so maybe this
# is okay? TODO: test if this is still needed.
hardeningDisable = [ "stackprotector" ];
meta = with stdenv.lib; {
description = "A modern replacement for libc";
homepage = https://c.hale.su/libk;
changelog = "https://c.hale.su/libk/timeline";
license = licenses.agpl3;
# Doesn't actually match w/ supported platforms, but...
platforms = platforms.unix;
};
}
|