aboutsummaryrefslogtreecommitdiff
path: root/mkdeps.sh
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2024-11-03 10:15:49 -0300
committerEuAndreh <eu@euandre.org>2024-11-19 19:10:45 -0300
commit6c4eb1aa31b670d32910d4881b0801eac8265057 (patch)
tree85fc6f0615fb503317da6782d073fa127bc71e60 /mkdeps.sh
parentAdd byte position to nodes of a syntax tree (diff)
downloadcotia-6c4eb1aa31b670d32910d4881b0801eac8265057.tar.gz
cotia-6c4eb1aa31b670d32910d4881b0801eac8265057.tar.xz
Setup Makefile project structure with empty src/urubu.go source
Diffstat (limited to 'mkdeps.sh')
-rw-r--r--mkdeps.sh29
1 files changed, 29 insertions, 0 deletions
diff --git a/mkdeps.sh b/mkdeps.sh
new file mode 100644
index 0000000..e8da8a4
--- /dev/null
+++ b/mkdeps.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+set -eu
+
+export LANG=POSIX.UTF-8
+
+
+libs() {
+ find src tests -name '*.go' | grep -v '/main\.go$' |
+ grep -v '/version\.go$'
+}
+
+mains() {
+ find src tests -name '*.go' | grep '/main\.go$'
+}
+
+libs | varlist 'libs.go'
+mains | varlist 'mains.go'
+
+find tests/functional/*/*.go -not -name main.go | varlist 'functional-tests/lib.go'
+find tests/functional/*/main.go | varlist 'functional-tests/main.go'
+find tests/fuzz/*/*.go -not -name main.go | varlist 'fuzz-targets/lib.go'
+find tests/fuzz/*/main.go | varlist 'fuzz-targets/main.go'
+find tests/benchmarks/*/*.go -not -name main.go | varlist 'benchmarks/lib.go'
+find tests/benchmarks/*/main.go | varlist 'benchmarks/main.go'
+
+{ libs; mains; } | sort | sed 's/^\(.*\)\.go$/\1.a:\t\1.go/'
+mains | sort | sed 's/^\(.*\)\.go$/\1.bin:\t\1.a/'
+mains | sort | sed 's/^\(.*\)\.go$/\1.bin-check:\t\1.bin/'
+mains | sort | sed 's|^\(.*\)/main\.go$|\1/main.a:\t\1/$(NAME).a|'