1112918Sjeff# $FreeBSD: stable/10/lib/libthr/Makefile 313602 2017-02-11 06:35:29Z ngie $
2112918Sjeff#
3112918Sjeff# All library objects contain FreeBSD revision strings by default; they may be
4112918Sjeff# excluded as a space-saving measure.  To produce a library that does
5112918Sjeff# not contain these strings, add -DSTRIP_FBSDID (see <sys/cdefs.h>) to CFLAGS
6112918Sjeff# below.  Note, there are no IDs for syscall stubs whose sources are generated.
7112918Sjeff# To included legacy CSRG sccsid strings, add -DLIBC_SCCS and -DSYSLIBC_SCCS
8112918Sjeff# (for system call stubs) to CFLAGS below.  -DSYSLIBC_SCCS affects just the
9112918Sjeff# system call stubs.
10156854Sru
11188997SruSHLIBDIR?= /lib
12188997Sru
13169648Sdeischen.include <bsd.own.mk>
14188895SruMK_SSP=	no
15169648Sdeischen
16112918SjeffLIB=thr
17169807SdeischenSHLIB_MAJOR= 3
18177605SruWARNS?=	3
19144518SdavidxuCFLAGS+=-DPTHREAD_KERNEL
20313602SngieCFLAGS+=-I${SRCTOP}/lib/libc/include -I${.CURDIR}/thread \
21313602Sngie	-I${SRCTOP}/include
22211773SnwhitehornCFLAGS+=-I${.CURDIR}/arch/${MACHINE_CPUARCH}/include
23144518SdavidxuCFLAGS+=-I${.CURDIR}/sys
24313602SngieCFLAGS+=-I${SRCTOP}/libexec/rtld-elf
25313602SngieCFLAGS+=-I${SRCTOP}/libexec/rtld-elf/${MACHINE_CPUARCH}
26313602SngieCFLAGS+=-I${SRCTOP}/lib/libthread_db
27144518SdavidxuCFLAGS+=-Winline
28212630Sdavidxu
29213153Sdavidxu.ifndef NO_THREAD_UNWIND_STACK
30213541SdavidxuCFLAGS+=-fexceptions
31212630SdavidxuCFLAGS+=-D_PTHREAD_FORCED_UNWIND
32212630Sdavidxu.endif
33212630Sdavidxu
34199878SkibLDFLAGS+=-Wl,-znodelete
35112918Sjeff
36313602SngieVERSION_DEF=${SRCTOP}/lib/libc/Versions.def
37176054SdesSYMBOL_MAPS=${.CURDIR}/pthread.map
38144518Sdavidxu
39147303SrwatsonMAN=	libthr.3
40147303Srwatson
41297224Skib# enable extra internal consistency checks
42170416SdavidxuCFLAGS+=-D_PTHREADS_INVARIANTS
43112918Sjeff
44136910SruPRECIOUSLIB=
45112918Sjeff
46212516Simp.PATH: ${.CURDIR}/arch/${MACHINE_CPUARCH}/${MACHINE_CPUARCH}
47212516Simp
48211773Snwhitehorn.include "${.CURDIR}/arch/${MACHINE_CPUARCH}/Makefile.inc"
49144518Sdavidxu.include "${.CURDIR}/sys/Makefile.inc"
50112918Sjeff.include "${.CURDIR}/thread/Makefile.inc"
51112918Sjeff
52188583Sjkim.if ${MK_INSTALLLIB} != "no"
53151729SdavidxuSYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a
54188583Sjkim.endif
55151729Sdavidxu.if !defined(NO_PIC)
56157694SruSYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so
57151729Sdavidxu.endif
58156854Sru.if ${MK_PROFILE} != "no"
59151729SdavidxuSYMLINKS+=lib${LIB}_p.a ${LIBDIR}/libpthread_p.a
60151729Sdavidxu.endif
61151729Sdavidxu
62189549Sdavidxu.if !defined(WITHOUT_SYSCALL_COMPAT)
63189549SdavidxuCFLAGS+=-DSYSCALL_COMPAT
64189549Sdavidxu.endif
65189549Sdavidxu
66282854Sngie.if ${MK_TESTS} != "no"
67282854SngieSUBDIR+=	tests
68282854Sngie.endif
69276492Sngie
70112918Sjeff.include <bsd.lib.mk>
71