Skip to content

Commit c067d13

Browse files
16bit-ykikoclaude
andcommitted
feat: add linkers, debuggers, binutils, profilers, coverage, testing, docs, and package managers
- Linkers: GNU ld/gold, lld, mold (61 releases), Apple ld64, MSVC link.exe, wasm-ld - Debuggers: GDB (40), LLDB, WinDbg, rr (22), Valgrind, UndoDB, Intel Inspector - Binary utilities: GNU binutils (39), LLVM tools, elfutils (35), cctools, patchelf (32) - Profilers: perf, VTune, Tracy (23), gperftools (27), heaptrack, AMD uProf - Coverage: gcov, llvm-cov, lcov (12), gcovr (19), OpenCppCoverage (16) - Testing: Google Test (11), Catch2 (94), doctest (47), Google Benchmark (30) - Documentation: Doxygen (19), Breathe (11), Standardese (23) - Package managers: Spack (56), Homebrew (35), pixi (117), mamba (59), CPM.cmake (87) Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
1 parent 8aa4e04 commit c067d13

File tree

9 files changed

+1767
-0
lines changed

9 files changed

+1767
-0
lines changed

data/tools/binary-utils.toml

Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
[[binary_utils]]
2+
name = "GNU binutils"
3+
vendor = "GNU Project"
4+
url = "https://www.gnu.org/software/binutils/"
5+
category = "binary-utilities"
6+
description = "Collection of binary tools: assembler, linker, and object file utilities"
7+
components = ["as", "ld", "ar", "nm", "objdump", "objcopy", "readelf", "strip", "ranlib", "strings", "size", "addr2line"]
8+
releases = [
9+
{ version = "2.20", date = "2009-10-16", tag = "binutils-2_20" },
10+
{ version = "2.20.1", date = "2010-03-03", tag = "binutils-2_20_1" },
11+
{ version = "2.21", date = "2011-01-24", tag = "binutils-2_21" },
12+
{ version = "2.21.1", date = "2011-05-15", tag = "binutils-2_21_1" },
13+
{ version = "2.22", date = "2011-11-22", tag = "binutils-2_22" },
14+
{ version = "2.23", date = "2012-09-04", tag = "binutils-2_23" },
15+
{ version = "2.23.1", date = "2012-10-29", tag = "binutils-2_23_1" },
16+
{ version = "2.23.2", date = "2013-02-18", tag = "binutils-2_23_2" },
17+
{ version = "2.24", date = "2013-12-20", tag = "binutils-2_24" },
18+
{ version = "2.25", date = "2014-12-23", tag = "binutils-2_25" },
19+
{ version = "2.25.1", date = "2015-07-22", tag = "binutils-2_25_1" },
20+
{ version = "2.26", date = "2016-01-25", tag = "binutils-2_26" },
21+
{ version = "2.26.1", date = "2016-06-02", tag = "binutils-2_26_1" },
22+
{ version = "2.27", date = "2016-08-04", tag = "binutils-2_27" },
23+
{ version = "2.28", date = "2017-03-06", tag = "binutils-2_28" },
24+
{ version = "2.28.1", date = "2017-07-24", tag = "binutils-2_28_1" },
25+
{ version = "2.29", date = "2017-07-24", tag = "binutils-2_29" },
26+
{ version = "2.29.1", date = "2017-10-16", tag = "binutils-2_29_1" },
27+
{ version = "2.30", date = "2018-01-28", tag = "binutils-2_30" },
28+
{ version = "2.31", date = "2018-07-20", tag = "binutils-2_31" },
29+
{ version = "2.31.1", date = "2018-09-18", tag = "binutils-2_31_1" },
30+
{ version = "2.32", date = "2019-02-02", tag = "binutils-2_32" },
31+
{ version = "2.33", date = "2019-10-12", tag = "binutils-2_33" },
32+
{ version = "2.33.1", date = "2019-10-12", tag = "binutils-2_33_1" },
33+
{ version = "2.34", date = "2020-02-01", tag = "binutils-2_34" },
34+
{ version = "2.35", date = "2020-07-24", tag = "binutils-2_35" },
35+
{ version = "2.35.1", date = "2020-09-19", tag = "binutils-2_35_1" },
36+
{ version = "2.35.2", date = "2021-01-30", tag = "binutils-2_35_2" },
37+
{ version = "2.36", date = "2021-01-24", tag = "binutils-2_36" },
38+
{ version = "2.36.1", date = "2021-02-06", tag = "binutils-2_36_1" },
39+
{ version = "2.37", date = "2021-07-18", tag = "binutils-2_37" },
40+
{ version = "2.38", date = "2022-02-09", tag = "binutils-2_38" },
41+
{ version = "2.39", date = "2022-08-05", tag = "binutils-2_39" },
42+
{ version = "2.40", date = "2023-01-14", tag = "binutils-2_40" },
43+
{ version = "2.41", date = "2023-07-30", tag = "binutils-2_41" },
44+
{ version = "2.42", date = "2024-01-29", tag = "binutils-2_42" },
45+
{ version = "2.43", date = "2024-08-04", tag = "binutils-2_43" },
46+
{ version = "2.43.1", date = "2024-09-22", tag = "binutils-2_43_1" },
47+
{ version = "2.44", date = "2025-02-02", tag = "binutils-2_44" },
48+
]
49+
50+
[[binary_utils]]
51+
name = "LLVM binary utilities"
52+
vendor = "LLVM Project"
53+
url = "https://llvm.org/"
54+
category = "binary-utilities"
55+
description = "LLVM replacements for GNU binutils, providing cross-platform binary inspection and manipulation"
56+
components = ["llvm-ar", "llvm-nm", "llvm-objdump", "llvm-objcopy", "llvm-readelf", "llvm-strip", "llvm-strings", "llvm-size", "llvm-addr2line", "llvm-ranlib"]
57+
note = "Versions follow LLVM releases; see compilers.toml for LLVM release history"
58+
59+
[[binary_utils]]
60+
name = "elfutils"
61+
vendor = "elfutils project"
62+
url = "https://sourceware.org/elfutils/"
63+
category = "binary-utilities"
64+
description = "Collection of ELF binary utilities and libraries (libelf, libdw) for Linux"
65+
components = ["eu-readelf", "eu-objdump", "eu-strip", "eu-nm", "eu-addr2line", "eu-ar", "eu-elflint", "eu-findtextrel", "eu-size", "eu-strings", "eu-ranlib", "eu-stack", "eu-elfcompress", "libelf", "libdw"]
66+
releases = [
67+
{ version = "0.158", date = "2013-12-17", tag = "elfutils-0.158" },
68+
{ version = "0.159", date = "2014-06-13", tag = "elfutils-0.159" },
69+
{ version = "0.160", date = "2014-08-15", tag = "elfutils-0.160" },
70+
{ version = "0.161", date = "2014-12-18", tag = "elfutils-0.161" },
71+
{ version = "0.162", date = "2015-06-10", tag = "elfutils-0.162" },
72+
{ version = "0.163", date = "2015-06-30", tag = "elfutils-0.163" },
73+
{ version = "0.164", date = "2015-09-09", tag = "elfutils-0.164" },
74+
{ version = "0.165", date = "2016-01-15", tag = "elfutils-0.165" },
75+
{ version = "0.166", date = "2016-03-31", tag = "elfutils-0.166" },
76+
{ version = "0.167", date = "2016-07-14", tag = "elfutils-0.167" },
77+
{ version = "0.168", date = "2017-02-03", tag = "elfutils-0.168" },
78+
{ version = "0.169", date = "2017-05-04", tag = "elfutils-0.169" },
79+
{ version = "0.170", date = "2017-09-04", tag = "elfutils-0.170" },
80+
{ version = "0.171", date = "2018-03-14", tag = "elfutils-0.171" },
81+
{ version = "0.172", date = "2018-06-11", tag = "elfutils-0.172" },
82+
{ version = "0.173", date = "2018-07-05", tag = "elfutils-0.173" },
83+
{ version = "0.174", date = "2018-09-14", tag = "elfutils-0.174" },
84+
{ version = "0.175", date = "2018-11-16", tag = "elfutils-0.175" },
85+
{ version = "0.176", date = "2019-02-15", tag = "elfutils-0.176" },
86+
{ version = "0.177", date = "2019-07-05", tag = "elfutils-0.177" },
87+
{ version = "0.178", date = "2019-11-12", tag = "elfutils-0.178" },
88+
{ version = "0.179", date = "2020-03-30", tag = "elfutils-0.179" },
89+
{ version = "0.180", date = "2020-06-11", tag = "elfutils-0.180" },
90+
{ version = "0.181", date = "2020-09-08", tag = "elfutils-0.181" },
91+
{ version = "0.182", date = "2020-10-31", tag = "elfutils-0.182" },
92+
{ version = "0.183", date = "2021-02-07", tag = "elfutils-0.183" },
93+
{ version = "0.184", date = "2021-05-10", tag = "elfutils-0.184" },
94+
{ version = "0.185", date = "2021-05-22", tag = "elfutils-0.185" },
95+
{ version = "0.186", date = "2021-10-07", tag = "elfutils-0.186" },
96+
{ version = "0.187", date = "2022-04-24", tag = "elfutils-0.187" },
97+
{ version = "0.188", date = "2022-11-01", tag = "elfutils-0.188" },
98+
{ version = "0.189", date = "2023-02-09", tag = "elfutils-0.189" },
99+
{ version = "0.190", date = "2023-10-06", tag = "elfutils-0.190" },
100+
{ version = "0.191", date = "2024-02-01", tag = "elfutils-0.191" },
101+
{ version = "0.192", date = "2024-10-29", tag = "elfutils-0.192" },
102+
]
103+
104+
[[binary_utils]]
105+
name = "cctools"
106+
vendor = "Apple"
107+
url = "https://opensource.apple.com/source/cctools/"
108+
category = "binary-utilities"
109+
description = "Apple's binary and object file tools for Mach-O format"
110+
components = ["otool", "install_name_tool", "lipo", "libtool", "as", "ld", "nm", "size", "strings", "strip", "ar", "ranlib", "codesign_allocate", "bitcode_strip", "vtool"]
111+
note = "Bundled with Xcode Command Line Tools; versioned with Xcode releases"
112+
113+
[[binary_utils]]
114+
name = "patchelf"
115+
vendor = "NixOS"
116+
url = "https://github.com/NixOS/patchelf"
117+
category = "binary-utilities"
118+
description = "Utility to modify the dynamic linker and RPATH of ELF binaries"
119+
releases = [
120+
{ version = "0.1", date = "2022-07-16", tag = "0.1" },
121+
{ version = "0.2", date = "2022-07-16", tag = "0.2" },
122+
{ version = "0.3", date = "2022-07-16", tag = "0.3" },
123+
{ version = "0.4", date = "2022-07-16", tag = "0.4" },
124+
{ version = "0.5", date = "2022-07-16", tag = "0.5" },
125+
{ version = "0.6", date = "2022-07-16", tag = "0.6" },
126+
{ version = "0.7", date = "2022-07-16", tag = "0.7" },
127+
{ version = "0.8", date = "2022-07-16", tag = "0.8" },
128+
{ version = "0.9", date = "2022-07-16", tag = "0.9" },
129+
{ version = "0.10", date = "2022-07-16", tag = "0.10" },
130+
{ version = "0.11", date = "2022-07-16", tag = "0.11" },
131+
{ version = "0.12", date = "2020-08-27", tag = "0.12" },
132+
{ version = "0.13", date = "2021-08-05", tag = "0.13" },
133+
{ version = "0.13.1", date = "2021-11-27", tag = "0.13.1" },
134+
{ version = "0.14", date = "2021-11-27", tag = "0.14" },
135+
{ version = "0.14.1", date = "2021-11-28", tag = "0.14.1" },
136+
{ version = "0.14.2", date = "2021-11-29", tag = "0.14.2" },
137+
{ version = "0.14.3", date = "2021-12-05", tag = "0.14.3" },
138+
{ version = "0.14.4", date = "2022-07-16", tag = "0.14.4" },
139+
{ version = "0.14.5", date = "2022-02-21", tag = "0.14.5" },
140+
{ version = "0.15.0", date = "2022-07-16", tag = "0.15.0" },
141+
{ version = "0.16.0", date = "2022-10-27", tag = "0.16.0" },
142+
{ version = "0.16.1", date = "2022-10-28", tag = "0.16.1" },
143+
{ version = "0.17.0", date = "2022-11-07", tag = "0.17.0" },
144+
{ version = "0.17.1", date = "2023-01-10", tag = "0.17.1" },
145+
{ version = "0.17.2", date = "2023-01-10", tag = "0.17.2" },
146+
{ version = "0.18.0", date = "2023-04-23", tag = "0.18.0" },
147+
{ version = "0.15.1", date = "2025-08-12", tag = "0.15.1" },
148+
{ version = "0.15.2", date = "2025-08-12", tag = "0.15.2" },
149+
{ version = "0.15.3", date = "2025-08-13", tag = "0.15.3" },
150+
{ version = "0.15.4", date = "2025-08-13", tag = "0.15.4" },
151+
{ version = "0.15.5", date = "2025-08-13", tag = "0.15.5" },
152+
]
153+
154+
[[binary_utils]]
155+
name = "bloaty"
156+
vendor = "Google"
157+
url = "https://github.com/google/bloaty"
158+
category = "binary-utilities"
159+
description = "Size profiler for ELF and Mach-O binaries to understand code and data size"
160+
releases = [
161+
{ version = "1.0", date = "2018-08-07", tag = "v1.0" },
162+
{ version = "1.1", date = "2020-05-24", tag = "v1.1" },
163+
]

data/tools/coverage.toml

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
[[tools]]
2+
name = "gcov"
3+
vendor = "GNU"
4+
url = "https://gcc.gnu.org/onlinedocs/gcc/Gcov.html"
5+
category = "coverage"
6+
description = "GCC's built-in code coverage analysis tool"
7+
8+
[[tools]]
9+
name = "llvm-cov"
10+
vendor = "LLVM"
11+
url = "https://llvm.org/docs/CommandGuide/llvm-cov.html"
12+
category = "coverage"
13+
description = "LLVM's code coverage tool for Clang-compiled programs"
14+
15+
[[tools]]
16+
name = "lcov"
17+
vendor = "Linux Test Project"
18+
url = "https://github.com/linux-test-project/lcov"
19+
category = "coverage"
20+
description = "Graphical frontend for gcov coverage data"
21+
releases = [
22+
{ version = "1.12", date = "2015-10-08", tag = "v1.12" },
23+
{ version = "1.13", date = "2016-12-20", tag = "v1.13" },
24+
{ version = "1.14", date = "2019-02-28", tag = "v1.14" },
25+
{ version = "1.15", date = "2020-08-12", tag = "v1.15" },
26+
{ version = "1.16", date = "2022-06-03", tag = "v1.16" },
27+
{ version = "2.0", date = "2023-05-25", tag = "v2.0" },
28+
{ version = "2.1", date = "2024-04-19", tag = "v2.1" },
29+
{ version = "2.2", date = "2024-11-09", tag = "v2.2" },
30+
{ version = "2.3", date = "2025-01-09", tag = "v2.3" },
31+
{ version = "2.3.1", date = "2025-03-30", tag = "v2.3.1" },
32+
{ version = "2.3.2", date = "2025-08-25", tag = "v2.3.2" },
33+
{ version = "2.4", date = "2025-12-21", tag = "v2.4" },
34+
]
35+
36+
[[tools]]
37+
name = "gcovr"
38+
vendor = "gcovr project"
39+
url = "https://github.com/gcovr/gcovr"
40+
category = "coverage"
41+
description = "Generate code coverage reports in various formats"
42+
releases = [
43+
{ version = "3.3", date = "2016-08-06", tag = "3.3" },
44+
{ version = "3.4", date = "2018-02-12", tag = "3.4" },
45+
{ version = "4.0", date = "2018-06-17", tag = "4.0" },
46+
{ version = "4.1", date = "2018-07-02", tag = "4.1" },
47+
{ version = "4.2", date = "2019-11-06", tag = "4.2" },
48+
{ version = "5.0", date = "2021-06-11", tag = "5.0" },
49+
{ version = "5.1", date = "2022-03-26", tag = "5.1" },
50+
{ version = "5.2", date = "2022-08-06", tag = "5.2" },
51+
{ version = "6.0", date = "2023-03-08", tag = "6.0" },
52+
{ version = "7.0", date = "2024-01-25", tag = "7.0" },
53+
{ version = "7.1", date = "2024-02-25", tag = "7.1" },
54+
{ version = "7.2", date = "2024-02-25", tag = "7.2" },
55+
{ version = "8.0", date = "2024-10-08", tag = "8.0" },
56+
{ version = "8.1", date = "2024-10-12", tag = "8.1" },
57+
{ version = "8.2", date = "2024-10-13", tag = "8.2" },
58+
{ version = "8.3", date = "2025-01-19", tag = "8.3" },
59+
{ version = "8.4", date = "2025-09-27", tag = "8.4" },
60+
{ version = "8.5", date = "2026-01-08", tag = "8.5" },
61+
{ version = "8.6", date = "2026-01-13", tag = "8.6" },
62+
]
63+
64+
[[tools]]
65+
name = "OpenCppCoverage"
66+
vendor = "OpenCppCoverage"
67+
url = "https://github.com/OpenCppCoverage/OpenCppCoverage"
68+
category = "coverage"
69+
description = "Open source C++ code coverage tool for Windows"
70+
releases = [
71+
{ version = "0.9.0", date = "2017-08-10", tag = "release-0.9.0" },
72+
{ version = "0.9.1", date = "2017-08-10", tag = "release-0.9.1" },
73+
{ version = "0.9.2", date = "2017-08-10", tag = "release-0.9.2" },
74+
{ version = "0.9.2.1", date = "2017-08-10", tag = "release-0.9.2.1" },
75+
{ version = "0.9.3", date = "2017-08-10", tag = "release-0.9.3" },
76+
{ version = "0.9.4", date = "2017-08-10", tag = "release-0.9.4" },
77+
{ version = "0.9.4.1", date = "2017-08-10", tag = "release-0.9.4.1" },
78+
{ version = "0.9.5", date = "2017-08-10", tag = "release-0.9.5" },
79+
{ version = "0.9.5.1", date = "2017-08-10", tag = "release-0.9.5.1" },
80+
{ version = "0.9.5.2", date = "2017-08-10", tag = "release-0.9.5.2" },
81+
{ version = "0.9.5.3", date = "2017-08-10", tag = "release-0.9.5.3" },
82+
{ version = "0.9.6", date = "2017-08-10", tag = "release-0.9.6" },
83+
{ version = "0.9.6.1", date = "2017-08-08", tag = "release-0.9.6.1" },
84+
{ version = "0.9.7.0", date = "2018-03-04", tag = "release-0.9.7.0" },
85+
{ version = "0.9.8.0", date = "2019-06-17", tag = "release-0.9.8.0" },
86+
{ version = "0.9.9.0", date = "2020-05-21", tag = "release-0.9.9.0" },
87+
]
88+
89+
[[tools]]
90+
name = "Codecov"
91+
vendor = "Codecov"
92+
url = "https://codecov.io/"
93+
category = "coverage-service"
94+
description = "Code coverage reporting and analytics service (SaaS)"
95+
96+
[[tools]]
97+
name = "Coveralls"
98+
vendor = "Coveralls"
99+
url = "https://coveralls.io/"
100+
category = "coverage-service"
101+
description = "Code coverage reporting service with CI integration (SaaS)"

0 commit comments

Comments
 (0)