Home | History | Annotate | Line # | Download | only in atomic
Makefile.inc revision 1.20
      1  1.20     joerg #	$NetBSD: Makefile.inc,v 1.20 2016/02/27 19:18:29 joerg Exp $
      2   1.2        ad 
      3   1.4       mrg .include <bsd.own.mk>
      4   1.4       mrg 
      5  1.14       abs # This is called with MACHINE=sparc64 && MACHINE_ARCH=sparc when building
      6  1.14       abs # 32 bit kernels for ultrasparc hardware
      7  1.14       abs .if ${MACHINE} == "sparc64"
      8   1.4       mrg 
      9   1.4       mrg SPARC64DIR=	${.PARSEDIR}/../../sparc64/atomic
     10   1.5  nakayama .PATH.c: ${SPARC64DIR}
     11   1.5  nakayama .PATH.S: ${SPARC64DIR}
     12   1.4       mrg 
     13   1.4       mrg .include "${SPARC64DIR}/Makefile.inc"
     14   1.4       mrg 
     15  1.19  nakayama .if defined(LIB) && (${LIB} == "kern" || ${LIB} == "c" || ${LIB} == "pthread" \
     16  1.19  nakayama 	|| ${LIB} == "rump")
     17  1.19  nakayama SRCS+=	atomic_nand_64_cas.c atomic_xor_64_cas.c atomic_sub_64_cas.c \
     18  1.19  nakayama 	atomic_cas_64_cas.c
     19  1.19  nakayama .endif
     20  1.19  nakayama 
     21   1.4       mrg .else
     22   1.2        ad 
     23   1.9        ad . if defined(LIB)
     24   1.7        ad 
     25  1.11     pooka .  if (${LIB} == "kern" || ${LIB} == "c"  || ${LIB} == "pthread"	\
     26  1.11     pooka     || ${LIB} == "rump")
     27   1.2        ad SRCS+=	atomic_add_32_cas.c atomic_add_32_nv_cas.c atomic_and_32_cas.c \
     28   1.3        ad 	atomic_and_32_nv_cas.c atomic_dec_32_cas.c atomic_dec_32_nv_cas.c \
     29   1.3        ad 	atomic_inc_32_cas.c atomic_inc_32_nv_cas.c atomic_or_32_cas.c \
     30  1.17    martin 	atomic_or_32_nv_cas.c atomic_swap_32_cas.c membar_ops.S	\
     31  1.17    martin 	atomic_cas_32_cas.c atomic_nand_32_cas.c atomic_sub_32_cas.c	\
     32  1.17    martin 	atomic_xor_32_cas.c
     33  1.17    martin .  endif
     34  1.17    martin 
     35  1.17    martin .  if ${LIB} == "c"
     36  1.17    martin SRCS+=	atomic_nand_16_cas.c atomic_nand_8_cas.c	\
     37  1.17    martin 	atomic_and_16_cas.c atomic_and_8_cas.c		\
     38  1.17    martin 	atomic_xor_16_cas.c atomic_xor_8_cas.c		\
     39  1.17    martin 	atomic_add_16_cas.c atomic_add_8_cas.c		\
     40  1.17    martin 	atomic_cas_16_cas.c atomic_cas_8_cas.c		\
     41  1.17    martin 	atomic_sub_16_cas.c atomic_sub_8_cas.c		\
     42  1.17    martin 	atomic_or_16_cas.c atomic_or_8_cas.c		\
     43  1.18    martin 	atomic_swap_16_cas.c atomic_swap_8_cas.c	\
     44  1.18    martin 	atomic_c11_compare_exchange_cas_32.c		\
     45  1.18    martin 	atomic_c11_compare_exchange_cas_16.c		\
     46  1.20     joerg 	atomic_c11_compare_exchange_cas_8.c \
     47  1.20     joerg 	atomic_load.c atomic_store.c
     48   1.9        ad .  endif
     49   1.2        ad 
     50  1.12     pooka .  if (${LIB} == "kern" || ${LIB} == "rump")
     51   1.8        ad SRCS+=	atomic_cas.S
     52   1.9        ad .  endif
     53   1.8        ad 
     54  1.10        ad .  if (${LIB} == "c" || ${LIB} == "pthread")
     55  1.16    martin CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_UP -D__HAVE_ASM_ATOMIC_CAS_16_UP	\
     56  1.16    martin 	-D__HAVE_ASM_ATOMIC_CAS_8_UP
     57  1.15    martin SRCS+=	atomic_init_testset.c atomic_cas_up.S
     58   1.9        ad .  endif
     59   1.9        ad 
     60   1.8        ad . endif
     61   1.4       mrg 
     62   1.2        ad .endif
     63