summaryrefslogtreecommitdiff
path: root/lib/thread/bld.sub
blob: c38009188474c073931d34b8a8a92eebf0b9ecfd (plain)
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
lib thread =
	common.myr
	hookstd.myr	# install thread hooks

	# higher level apis
	future.myr
	do.myr

	# generic fallbacks
	condvar.myr
	mutex.myr
	ncpu.myr
	rwlock.myr
	sem.myr
	waitgrp.myr

	# futex-based impls
	mutex+futex.myr
	rwlock+futex.myr
	sem+futex.myr
	waitgrp+futex.myr

	# linux impl of basic thread primitives
	condvar+linux.myr
	exit+linux-x64.s
	futex+linux.myr
	ncpu+linux.myr
	spawn+linux.myr

	# freebsd impl of thread primitives
	condvar+freebsd.myr
	exit+freebsd-x64.s
	futex+freebsd.myr
	ncpu+freebsd.myr
	spawn+freebsd.myr

	# netbsd impl of thread primitives
	#condvar+netbsd.myr
	#mutex+netbsd.myr
	spawn+netbsd.myr
	#ncpu+netbsd.myr
	#exit+netbsd-x64.s

	# osx impl of thread primitives
	condvar+osx.myr
	futex+osx.myr
	spawn+osx.myr
	start+osx-x64.s

	# 9front impl of thread primitives
	#condvar+plan9.myr
	atomic-impl+plan9-x64.s
	mutex+plan9.myr
	ncpu+plan9.myr
	sem+plan9.myr
	spawn+plan9.myr

	# openbsd impl of thread primitives
	condvar+openbsd:6.2.myr
	exit+openbsd-x64.s
	futex+openbsd:6.2.myr
	ncpu+openbsd.myr
	spawn+openbsd.myr

	atomic-impl+x64.s
	atomic.myr

        lib ../sys:sys
        lib ../std:std
;;

lib thrtestutil {noinst} =
	util.myr

        lib ../sys:sys
        lib ../std:std
        lib thread
;;