CFLAGS += -MD
LDFLAGS += -L. -lkuser

LIB = libkuser.a

TESTS = \
	test_dmb \
	test_cmpxchg \
	test_cmpxchg64

all: FORCE $(LIB) $(TESTS) ;

-include *.d

$(TESTS): $(LIB)

test_dmb: test_dmb.o
test_cmpxchg: test_cmpxchg.o
test_cmpcxhg64: test_cmpxchg64.o

LIB_OBJECTS = \
	kuser.o \
	kernel-cmpxchg.o \
	kernel-cmpxchg64.o \
	kernel-dmb.o \
	kernel-gettls.o \
	resolve.o

FORCE: ;

libkuser.a: $(LIB_OBJECTS)
	ar scrv $@ $(LIB_OBJECTS)

clean: FORCE
	rm -f *.a *.o $(TESTS)

distclean: clean
	rm -f *.d
