1.PHONY: all
2all: test test_build
3
4.PHONY: test_build_darwin_arm64
5test_build_darwin_arm64:
6 GOOS=darwin GOARCH=arm64 go test -c -o /dev/null
7
8.PHONY: test_build_darwin_amd64
9test_build_darwin_amd64:
10 GOOS=darwin GOARCH=amd64 go test -c -o /dev/null
11
12.PHONY: test_build_linux_arm64
13test_build_linux_arm64:
14 GOOS=linux GOARCH=arm64 go test -c -o /dev/null
15
16.PHONY: test_build_linux_amd64
17test_build_linux_amd64:
18 GOOS=linux GOARCH=amd64 go test -c -o /dev/null
19
20.PHONY: test_build_windows_amd64
21test_build_windows_amd64:
22 GOOS=windows GOARCH=amd64 go test -c -o /dev/null
23
24.PHONY: test_build_windows_arm64
25test_build_windows_arm64:
26 GOOS=windows GOARCH=arm64 go test -c -o /dev/null
27
28.PHONY: test_build_freebsd_amd64
29test_build_freebsd_amd64:
30 GOOS=freebsd GOARCH=amd64 go test -c -o /dev/null
31
32.PHONY: test_build_openbsd_amd64
33test_build_openbsd_amd64:
34 GOOS=openbsd GOARCH=amd64 go test -c -o /dev/null
35
36.PHONY: test_build_netbsd_amd64
37test_build_netbsd_amd64:
38 GOOS=netbsd GOARCH=amd64 go test -c -o /dev/null
39
40.PHONY: test_build_dragonfly_amd64
41test_build_dragonfly_amd64:
42 GOOS=dragonfly GOARCH=amd64 go test -c -o /dev/null
43
44.PHONY: test_build_solaris_amd64
45test_build_solaris_amd64:
46 GOOS=solaris GOARCH=amd64 go test -c -o /dev/null
47
48.PHONY: test_build_wasip1_wasm
49test_build_wasip1_wasm:
50 @# Ignore versions before 1.21
51 go version | grep -qE 'go1\.(20|1[0-9])' || \
52 GOOS=wasip1 GOARCH=wasm go test -c -o /dev/null
53
54.PHONY: test_build_aix_ppc64
55test_build_aix_ppc64:
56 GOOS=aix GOARCH=ppc64 go test -c -o /dev/null
57
58.PHONY: test_build_js_wasm
59test_build_js_wasm:
60 GOOS=js GOARCH=wasm go test -c -o /dev/null
61
62# TODO: clean this up and add all supported targets
63#
64# Test that we can build fastwalk on multiple platforms
65.PHONY: test_build
66test_build: \
67 test_build_aix_ppc64 \
68 test_build_darwin_amd64 \
69 test_build_darwin_arm64 \
70 test_build_dragonfly_amd64 \
71 test_build_freebsd_amd64 \
72 test_build_js_wasm \
73 test_build_linux_amd64 \
74 test_build_linux_arm64 \
75 test_build_netbsd_amd64 \
76 test_build_openbsd_amd64 \
77 test_build_solaris_amd64 \
78 test_build_wasip1_wasm \
79 test_build_windows_amd64 \
80 test_build_windows_arm64
81
82.PHONY: test
83test: # runs all tests against the package with race detection and coverage percentage
84 @go test -race -cover ./...
85
86.PHONY: quick
87quick: # runs all tests without coverage or the race detector
88 @go test ./...
89
90.PHONY: bench
91bench:
92 go test -run '^$$' -bench . -benchmem ./...
93
94.PHONY: bench_comp
95bench_comp:
96 @go run ./scripts/bench_comp.go
97
98.PHONY: clean
99clean:
100 @go clean
101