1# $FreeBSD$
2
3.PATH: ${.CURDIR}/support ${.CURDIR}/../libc/gen ${.CURDIR}/../libc/string
4
5# libc must search machine_arch, then machine_cpuarch, but libthr has all its
6# code implemented in machine_cpuarch.  Cope.
7.if exists(${.CURDIR}/../libc/${MACHINE_ARCH}/sys)
8.PATH: ${.CURDIR}/../libc/${MACHINE_ARCH}/sys
9CFLAGS+= -I${.CURDIR}/../libc/${MACHINE_ARCH}
10.else
11.PATH: ${.CURDIR}/../libc/${MACHINE_CPUARCH}/sys
12CFLAGS+= -I${.CURDIR}/../libc/${MACHINE_CPUARCH}
13.endif
14
15SYSCALLS= thr_new
16
17SYSCALL_SRC=   ${SYSCALLS:S/$/.S/}
18SYSCALL_OBJ=   ${SYSCALLS:S/$/.So/}
19
20${SYSCALL_SRC}:
21	printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' > ${.TARGET}
22
23LIBC_OBJS=
24
25SOBJS+=	thr_libc.So
26CLEANFILES+= ${SYSCALL_SRC} ${SYSCALL_OBJ} ${LIBC_OBJS}
27
28thr_libc.So: ${SYSCALL_OBJ} ${LIBC_OBJS}
29	${CC} -fPIC -nostdlib -o ${.TARGET} -r ${.ALLSRC}
30