| # SPDX-License-Identifier: GPL-2.0 |
| CFLAGS += -O2 -g -std=gnu89 -pthread -Wall -Wextra |
| CFLAGS += -I../../../../usr/include/ |
| LDFLAGS += -pthread |
| |
| .PHONY: all clean |
| |
| include ../lib.mk |
| |
| # lib.mk TEST_CUSTOM_PROGS var is for custom tests that need special |
| # build rules. lib.mk will run and install them. |
| |
| TEST_CUSTOM_PROGS := $(OUTPUT)/sync_test |
| all: $(TEST_CUSTOM_PROGS) |
| |
| OBJS = sync_test.o sync.o |
| |
| TESTS += sync_alloc.o |
| TESTS += sync_fence.o |
| TESTS += sync_merge.o |
| TESTS += sync_wait.o |
| TESTS += sync_stress_parallelism.o |
| TESTS += sync_stress_consumer.o |
| TESTS += sync_stress_merge.o |
| |
| OBJS := $(patsubst %,$(OUTPUT)/%,$(OBJS)) |
| TESTS := $(patsubst %,$(OUTPUT)/%,$(TESTS)) |
| |
| $(TEST_CUSTOM_PROGS): $(TESTS) $(OBJS) |
| $(CC) -o $(TEST_CUSTOM_PROGS) $(OBJS) $(TESTS) $(CFLAGS) $(LDFLAGS) |
| |
| $(OBJS): $(OUTPUT)/%.o: %.c |
| $(CC) -c $^ -o $@ $(CFLAGS) |
| |
| $(TESTS): $(OUTPUT)/%.o: %.c |
| $(CC) -c $^ -o $@ |
| |
| EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(OBJS) $(TESTS) |