File: validation.mk

package info (click to toggle)
care 2.2.1-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, buster, stretch, trixie
  • size: 1,716 kB
  • sloc: ansic: 15,436; sh: 1,195; makefile: 6
file content (116 lines) | stat: -rw-r--r-- 3,506 bytes parent folder | download | duplicates (2)
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
libuv-version     = 0.10.27
coreutils-version = 8.21
perl-version      = 5.18.1
ltp-version       = 20140422
opt-version       = 20140422
gdb-version       = 7.6.1
proot-version     = 3.2.2

libuv     = libuv-$(libuv-version)
coreutils = coreutils-$(coreutils-version)
perl      = perl-$(perl-version)
ltp       = ltp-$(ltp-version)
opt       = opt-$(opt-version)
gdb       = gdb-$(gdb-version)
proot     = PRoot-$(proot-version)

testsuites = $(libuv) $(perl) $(ltp) $(opt) $(gdb) $(proot) # $(coreutils) needs PRoot's loader
logs       = $(testsuites:=.log)

logs: $(logs)

.PHONY: clean
clean:
	rm -f $(logs)
	rm -fr $(testsuites)

.PHONY: distclean
 distclean: clean
	rm -f $(testsuites:=.tar.*)

######################################################################

$(libuv).tar.gz:
	wget https://github.com/joyent/libuv/archive/v$(libuv-version).tar.gz -O $@

$(libuv).log: $(libuv).tar.gz
	rm -fr $(libuv)
	tar -xf $<
	$(MAKE) -C $(libuv)
	($(MAKE) -C $(libuv) test 2>&1 || true) | tee $@

######################################################################

$(coreutils).tar.xz:
	wget http://ftp.gnu.org/gnu/coreutils/$(coreutils).tar.xz

$(coreutils).log: $(coreutils).tar.xz
	rm -fr $(coreutils)
	tar -xf $<
	cd $(coreutils) && ./configure
	$(MAKE) -C $(coreutils)
	($(MAKE) -C $(coreutils) check || true) | tee $@

######################################################################

$(perl).tar.gz:
	wget http://www.cpan.org/src/5.0/$(perl).tar.gz

$(perl).log: $(perl).tar.gz
	rm -fr $(perl)
	tar -xf $<
	cd $(perl) && ./configure.gnu
	$(MAKE) -C $(perl)
	($(MAKE) -C $(perl) check || true) | tee $@

######################################################################

$(ltp).tar.gz:
	wget https://github.com/linux-test-project/ltp/archive/$(ltp-version).tar.gz -O $@

$(ltp).log: $(ltp).tar.gz
	rm -fr $(ltp)
	tar -xf $<
	$(MAKE) -C $(ltp) autotools
	cd $(ltp) && ./configure --prefix=$(PWD)/$(ltp)/install
	$(MAKE) -C $(ltp)
	$(MAKE) -C $(ltp) install
	sed -i s/^msgctl10/#/ $(ltp)/install/runtest/syscalls # is too CPU intensive
	sed -i s/^msgctl11/#/ $(ltp)/install/runtest/syscalls # is too CPU intensive
	($(ltp)/install/runltp -f syscalls || true) | tee $@

######################################################################

$(opt).log: $(ltp).tar.gz
	rm -fr $(opt)
	mkdir $(opt)
	tar -C $(opt) -xf $< $(ltp)/testcases/open_posix_testsuite
	$(MAKE) -C $(opt)/$(ltp)/testcases/open_posix_testsuite  -j 1 # has broken // build
	($(MAKE) -C $(opt)/$(ltp)/testcases/open_posix_testsuite -j 1 test || true) | tee $@

######################################################################

$(gdb).tar.gz:
	wget http://ftp.gnu.org/gnu/gdb/$(gdb).tar.gz

$(gdb).log: $(gdb).tar.gz
	rm -fr $(gdb)
	tar -xf $<
	cd $(gdb) && ./configure
	$(MAKE) -C $(gdb)
	rm -f $(gdb)/gdb/testsuite/gdb.base/foll-fork.exp        # makes PRoot stall
	rm -f $(gdb)/gdb/testsuite/gdb.base/foll-vfork.exp       # makes PRoot stall
	rm -f $(gdb)/gdb/testsuite/gdb.base/watch_thread_num.exp # makes PRoot stall
	rm -f $(gdb)/gdb/testsuite/gdb.base/attach-twice.exp     # kills PRoot explicitly
	($(MAKE) -C $(gdb)/gdb/testsuite check-gdb.base1 check-gdb.base2 check-gdb.server || true) | tee $@

######################################################################

$(proot).tar.gz:
	wget https://github.com/cedric-vincent/proot/archive/v$(proot-version).tar.gz -O $@

$(proot).log: $(proot).tar.gz
	rm -fr $(proot)
	tar -xf $<
	$(MAKE) -C $(proot)/src
	($(MAKE) -C $(proot)/tests || true) | tee $@