shithub: mc

ref: f04c9a908e796e5356e961d84158dfe6b1c25d7a
dir: /lib/thread/bld.sub/

View raw version
lib thread =
	common.myr
	hookstd.myr	# install thread hooks
	mutex+futex.myr
	sem+futex.myr
	mutex.myr	# fallback, for unimplemented platforms
	sem.myr		# fallback, for unimplemented platforms

	#generic fallbacks
	ncpu.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
	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
;;