CC=aarch64-linux-gnu-gcc
INC=include
CFLAGS=-Wall -g -O2 -fno-strict-aliasing -I $(INC)
LDLIBS=-pthread -lrt
TARGET=spinbench
OBJS=spinbench.o

ifneq ($(USE_QSPINLOCK),)
	CFLAGS += -DUSE_QSPINLOCK
	OBJS += qspinlock.o
else ifneq ($(USE_TICKETS),)
	CFLAGS += -DUSE_TICKETS
endif

$(TARGET) : $(OBJS)
all: $(TARGET)

clean:
	rm -f $(TARGET) *.o tags

tags:
	ctags -R .

.PHONY: clean all tags
