Skip to content

Commit 9782af5

Browse files
committed
ckdl: init at 1.0
1 parent 2a5af2a commit 9782af5

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

pkgs/by-name/ck/ckdl/package.nix

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
{ pkgs, lib, cmake, ninja, sphinx, python3Packages, ... }:
2+
3+
pkgs.stdenv.mkDerivation {
4+
pname = "ckdl";
5+
version = "1.0";
6+
7+
src = pkgs.fetchFromGitHub {
8+
owner = "tjol";
9+
repo = "ckdl";
10+
tag = "1.0";
11+
hash = "sha256-qEfRZzoUQZ8umdWgx+N4msjPBbuwDtkN1kNDfZicRjY=";
12+
};
13+
14+
outputs = [ "bin" "dev" "lib" "doc" "out" ];
15+
16+
nativeBuildInputs = [
17+
cmake
18+
ninja
19+
sphinx
20+
python3Packages.furo
21+
];
22+
23+
cmakeFlags = [
24+
(lib.cmakeBool "BUILD_TESTS" true)
25+
];
26+
27+
postPatch = ''
28+
cd doc
29+
make singlehtml
30+
mkdir -p $doc/share/doc
31+
mv _build/singlehtml $doc/share/doc/ckdl
32+
33+
cd ..
34+
'';
35+
36+
postInstall = ''
37+
mkdir -p $bin/bin
38+
39+
# some tools that are important for debugging.
40+
# idk why they are not copied to bin by cmake, but I’m too tired to figure it out
41+
install src/utils/ckdl-tokenize $bin/bin
42+
install src/utils/ckdl-parse-events $bin/bin
43+
install src/utils/ckdl-cat $bin/bin
44+
touch $out
45+
'';
46+
47+
48+
meta = {
49+
description = "ckdl is a C (C11) library that implements reading and writing the KDL Document Language.";
50+
license = lib.licenses.mit;
51+
platforms = lib.platforms.all;
52+
};
53+
}

0 commit comments

Comments
 (0)