selftests: sync: kselftest and kselftest-clean fail for make O=dir case
sync test fails to build when object directory is specified to relocate object files. Fix it to specify the correct path. Fix clean target to remove objects. Also include simplified logic to use TEST_CUSTOM_PROGS in build and clean targets instead of hard-coding the test name each time. Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
This commit is contained in:
parent
38f7251852
commit
b2fc6ade9f
|
@ -2,14 +2,16 @@ CFLAGS += -O2 -g -std=gnu89 -pthread -Wall -Wextra
|
|||
CFLAGS += -I../../../../usr/include/
|
||||
LDFLAGS += -pthread
|
||||
|
||||
# lib.mk TEST_CUSTOM_PROGS var is for custome tests that need special
|
||||
# build rules. lib.mk will run and install them.
|
||||
TEST_CUSTOM_PROGS = sync_test
|
||||
|
||||
all: $(TEST_CUSTOM_PROGS)
|
||||
.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
|
||||
|
@ -20,6 +22,16 @@ TESTS += sync_stress_parallelism.o
|
|||
TESTS += sync_stress_consumer.o
|
||||
TESTS += sync_stress_merge.o
|
||||
|
||||
sync_test: $(OBJS) $(TESTS)
|
||||
OBJS := $(patsubst %,$(OUTPUT)/%,$(OBJS))
|
||||
TESTS := $(patsubst %,$(OUTPUT)/%,$(TESTS))
|
||||
|
||||
EXTRA_CLEAN := sync_test $(OBJS) $(TESTS)
|
||||
$(TEST_CUSTOM_PROGS): $(TESTS) $(OBJS)
|
||||
$(CC) -o $(TEST_CUSTOM_PROGS) $(OBJS) $(TESTS) $(CFLAGS) $(LDFLAGS)
|
||||
|
||||
$(OBJS): $(OUTPUT)/%.o: %.c
|
||||
$(CC) -c $^ -o $@
|
||||
|
||||
$(TESTS): $(OUTPUT)/%.o: %.c
|
||||
$(CC) -c $^ -o $@
|
||||
|
||||
EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(OBJS) $(TESTS)
|
||||
|
|
Loading…
Reference in New Issue