summaryrefslogtreecommitdiff
path: root/build-aux
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux')
-rwxr-xr-xbuild-aux/embed-sources.h.gen2
-rwxr-xr-xbuild-aux/stack.c.gen2
-rw-r--r--build-aux/stack.py12
-rwxr-xr-xbuild-aux/stack.sh5
4 files changed, 17 insertions, 4 deletions
diff --git a/build-aux/embed-sources.h.gen b/build-aux/embed-sources.h.gen
index 0ba6457..d473094 100755
--- a/build-aux/embed-sources.h.gen
+++ b/build-aux/embed-sources.h.gen
@@ -1,5 +1,5 @@
#!/bin/sh
-# embed-sources.h.gen - Generate C definitions for GNU `ld -r -b binary` files
+# build-aux/embed-sources.h.gen - Generate C definitions for GNU `ld -r -b binary` files
#
# Copyright (C) 2024 Luke T. Shumaker <lukeshu@lukeshu.com>
# SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/build-aux/stack.c.gen b/build-aux/stack.c.gen
index 9325791..0844ab5 100755
--- a/build-aux/stack.c.gen
+++ b/build-aux/stack.c.gen
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
-# stack.c.gen - Analyze stack sizes for compiled objects
+# build-aux/stack.c.gen - Analyze stack sizes for compiled objects
#
# Copyright (C) 2024 Luke T. Shumaker <lukeshu@lukeshu.com>
# SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/build-aux/stack.py b/build-aux/stack.py
index c1e36d3..752cefb 100644
--- a/build-aux/stack.py
+++ b/build-aux/stack.py
@@ -1,4 +1,9 @@
#!/usr/bin/env python3
+# build-aux/stack.py - Analyze stack sizes for compiled objects
+#
+# Copyright (C) 2024 Luke T. Shumaker <lukeshu@lukeshu.com>
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
import re
import sys
import typing
@@ -96,6 +101,7 @@ class Node:
# edges with .sourcename set to this node
calls: set[str]
+
def main() -> None:
re_label = re.compile(
r"(?P<funcname>[^\n]+)\n"
@@ -161,6 +167,7 @@ def main() -> None:
# x
missing: set[str] = set()
+
def nstatic(funcname: str) -> int:
if funcname not in graph:
missing.add(funcname)
@@ -169,16 +176,17 @@ def main() -> None:
return node.nstatic + max([0, *[nstatic(call) for call in node.calls]])
namelen = max(len(name) for name in graph if name.endswith("_cr"))
- print(("="*namelen)+" =======")
+ print(("=" * namelen) + " =======")
for funcname in graph:
if funcname.endswith("_cr"):
print(f"{funcname}\t{nstatic(funcname)}")
- print(("="*namelen)+" =======")
+ print(("=" * namelen) + " =======")
for funcname in sorted(missing):
print(f"{funcname}\tmissing")
+
if __name__ == "__main__":
main()
diff --git a/build-aux/stack.sh b/build-aux/stack.sh
index 4a8a12e..4626813 100755
--- a/build-aux/stack.sh
+++ b/build-aux/stack.sh
@@ -1,2 +1,7 @@
#!/bin/sh
+# build-aux/stack.sh - Analyze stack sizes for compiled objects
+#
+# Copyright (C) 2024 Luke T. Shumaker <lukeshu@lukeshu.com>
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
make >&2 && find build -name '*.ci' -exec cat -- {} + | python ./stack.py