File: Test.mk

package info (click to toggle)
zmk 0.5.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 1,132 kB
  • sloc: makefile: 1,749; sh: 313; ansic: 42; awk: 12; cpp: 12
file content (87 lines) | stat: -rw-r--r-- 4,479 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#!/usr/bin/make -f
# This file is a part of zmk test system.
include zmk/internalTest.mk

t:: all install uninstall clean

$(eval $(ZMK.isolateHostToolchain))

# MacOS uses c++, GNU uses g++ by default.
%.log: ZMK.makeOverrides += CXX=c++

# Pick one for test consistency.
# Test has three variants, for Linux, MacOS and the rest.
%-other.log: ZMK.makeOverrides += Toolchain.CXX.ImageFormat=Irrelevant
%-linux.log: ZMK.makeOverrides += Toolchain.CXX.ImageFormat=ELF
%-macos.log: ZMK.makeOverrides += Toolchain.CXX.ImageFormat=Mach-O

all: all-other all-linux all-macos
install: install-other install-linux install-macos
uninstall: uninstall-other uninstall-linux uninstall-macos
clean: clean-other clean-linux clean-macos

all-other: all-other.log
	GREP -qFx 'c++ -MMD$(if $(ZMK.test.IsOutOfTreeBuild), -MF libhello.a-hello.d) -c -o libhello.a-hello.o $(ZMK.test.OutOfTreeSourcePath)hello.cpp' <$<
	GREP -qFx 'ar -cr libhello.a libhello.a-hello.o' <$<
install-other: install-other.log
	GREP -qFx 'install -d /usr/local/include' <$<
	GREP -qFx 'install -m 0644 $(ZMK.test.OutOfTreeSourcePath)hello.h /usr/local/include/hello.h' <$<
	GREP -qFx 'install -d /usr/local/lib' <$<
	GREP -qFx 'install -m 0644 libhello.a /usr/local/lib/libhello.a' <$<
uninstall-other: uninstall-other.log
	GREP -qFx 'rm -f /usr/local/include/hello.h' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.a' <$<
clean-other: clean-other.log
	GREP -qFx 'rm -f libhello.a' <$<
	GREP -qFx 'rm -f ./libhello.a-hello.o' <$<

all-linux: all-linux.log
	GREP -qFx 'c++ -MMD$(if $(ZMK.test.IsOutOfTreeBuild), -MF libhello.a-hello.d) -c -o libhello.a-hello.o $(ZMK.test.OutOfTreeSourcePath)hello.cpp' <$<
	GREP -qFx 'ar -cr libhello.a libhello.a-hello.o' <$<
	GREP -qFx 'c++ -fpic -MMD$(if $(ZMK.test.IsOutOfTreeBuild), -MF libhello.so.1-hello.d) -c -o libhello.so.1-hello.o $(ZMK.test.OutOfTreeSourcePath)hello.cpp' <$<
	GREP -qFx 'c++ -fpic -shared -Wl,-soname=libhello.so.1 -o libhello.so.1 libhello.so.1-hello.o' <$<
	GREP -qFx 'ln -sf libhello.so.1 libhello.so' <$<
install-linux: install-linux.log
	GREP -qFx 'install -d /usr/local/include' <$<
	GREP -qFx 'install -m 0644 $(ZMK.test.OutOfTreeSourcePath)hello.h /usr/local/include/hello.h' <$<
	GREP -qFx 'install -d /usr/local/lib' <$<
	GREP -qFx 'install -m 0644 libhello.a /usr/local/lib/libhello.a' <$<
	GREP -qFx 'install -m 0644 libhello.so.1 /usr/local/lib/libhello.so.1' <$<
	GREP -qFx 'ln -sf libhello.so.1 /usr/local/lib/libhello.so' <$<
uninstall-linux: uninstall-linux.log
	GREP -qFx 'rm -f /usr/local/include/hello.h' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.a' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.so.1' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.so' <$<
clean-linux: clean-linux.log
	GREP -qFx 'rm -f libhello.a' <$<
	GREP -qFx 'rm -f ./libhello.a-hello.o' <$<
	GREP -qFx 'rm -f ./libhello.so.1-hello.o' <$<
	GREP -qFx 'rm -f libhello.so.1' <$<
	GREP -qFx 'rm -f libhello.so' <$<

all-macos: all-macos.log
	GREP -qFx 'c++ -MMD$(if $(ZMK.test.IsOutOfTreeBuild), -MF libhello.a-hello.d) -c -o libhello.a-hello.o $(ZMK.test.OutOfTreeSourcePath)hello.cpp' <$<
	GREP -qFx 'ar -cr libhello.a libhello.a-hello.o' <$<
	GREP -qFx 'c++ -fpic -MMD$(if $(ZMK.test.IsOutOfTreeBuild), -MF libhello.1.dylib-hello.d) -c -o libhello.1.dylib-hello.o $(ZMK.test.OutOfTreeSourcePath)hello.cpp' <$<
	GREP -qFx 'c++ -fpic -dynamiclib -compatibility_version 1.0 -current_version 1.0 -o libhello.1.dylib libhello.1.dylib-hello.o' <$<
	GREP -qFx 'ln -sf libhello.1.dylib libhello.dylib' <$<
install-macos: install-macos.log
	GREP -qFx 'install -d /usr/local/include' <$<
	GREP -qFx 'install -m 0644 $(ZMK.test.OutOfTreeSourcePath)hello.h /usr/local/include/hello.h' <$<
	GREP -qFx 'install -d /usr/local/lib' <$<
	GREP -qFx 'install -m 0644 libhello.a /usr/local/lib/libhello.a' <$<
	GREP -qFx 'install -d /usr/local/lib' <$<
	GREP -qFx 'install -m 0644 libhello.1.dylib /usr/local/lib/libhello.1.dylib' <$<
	GREP -qFx 'ln -sf libhello.1.dylib /usr/local/lib/libhello.dylib' <$<
uninstall-macos: uninstall-macos.log
	GREP -qFx 'rm -f /usr/local/include/hello.h' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.a' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.1.dylib' <$<
	GREP -qFx 'rm -f /usr/local/lib/libhello.dylib' <$<
clean-macos: clean-macos.log
	GREP -qFx 'rm -f libhello.a' <$<
	GREP -qFx 'rm -f ./libhello.a-hello.o' <$<
	GREP -qFx 'rm -f ./libhello.1.dylib-hello.o' <$<
	GREP -qFx 'rm -f libhello.1.dylib' <$<
	GREP -qFx 'rm -f libhello.dylib' <$<