1
1
CACHE_TEST_DIR := tests/cache
2
2
CACHE_BUILD_DIR := build/cache
3
- TARGET := test-cache
3
+ CACHE_TARGET := test-cache
4
+
5
+ MAP_TEST_DIR := tests/map
6
+ MAP_BUILD_DIR: = build/map
7
+ MAP_TARGET := test-map
4
8
5
9
CACHE_OBJS := \
6
10
test-cache.o
7
11
12
+ MAP_OBJS := \
13
+ test-map.o
14
+
8
15
CACHE_OBJS := $(addprefix $(CACHE_BUILD_DIR ) /, $(CACHE_OBJS ) )
9
16
OBJS += $(CACHE_OBJS )
10
17
deps += $(CACHE_OBJS:%.o=%.o.d )
11
18
12
- # Check adaptive replacement cache policy is enabled or not, default is LRU
19
+ MAP_OBJS := $(addprefix $(MAP_BUILD_DIR ) /, $(MAP_OBJS ) )
20
+ OBJS += $(MAP_OBJS )
21
+ deps += $(MAP_OBJS:%.o=%.o.d )
22
+
23
+ # Check adaptive replacement cache policy is enabled or not, default is LRU
13
24
ifeq ($(ENABLE_ARC ) , 1)
14
25
CACHE_CHECK_ELF_FILES := \
15
26
arc/cache-new \
@@ -18,38 +29,59 @@ CACHE_CHECK_ELF_FILES := \
18
29
arc/cache-lru-replace \
19
30
arc/cache-lfu-replace \
20
31
arc/cache-lru-ghost-replace \
21
- arc/cache-lfu-ghost-replace
32
+ arc/cache-lfu-ghost-replace
22
33
else
23
34
CACHE_CHECK_ELF_FILES := \
24
35
lfu/cache-new \
25
36
lfu/cache-put \
26
37
lfu/cache-get \
27
- lfu/cache-lfu-replace
38
+ lfu/cache-lfu-replace
28
39
endif
29
40
30
41
CACHE_OUT = $(addprefix $(CACHE_BUILD_DIR ) /, $(CACHE_CHECK_ELF_FILES:%=%.out ) )
42
+ MAP_OUT = $(addprefix $(MAP_BUILD_DIR ) /$(MAP_TARGET ) , ".out")
31
43
32
- tests : $(CACHE_OUT )
44
+ tests : run_cache_test run_map_test
45
+
46
+ run_cache_test : $(CACHE_OUT )
33
47
$(Q )$(foreach e,$(CACHE_CHECK_ELF_FILES ) ,\
34
48
$(PRINTF ) " Running $( e) ... " ; \
35
49
if cmp $( CACHE_TEST_DIR) /$( e) .expect $( CACHE_BUILD_DIR) /$( e) .out; then \
36
50
$(call notice, [OK]) ; \
37
51
else \
38
52
$(PRINTF ) " Failed.\n" ; \
39
53
exit 1; \
40
- fi ; \
54
+ fi ;
41
55
)
42
56
43
- $(CACHE_OUT ) : $(TARGET )
57
+ run_map_test : $(MAP_TARGET )
58
+
59
+ $(CACHE_OUT ) : $(CACHE_TARGET )
44
60
$(Q )$(foreach e,$(CACHE_CHECK_ELF_FILES ) ,\
45
- $(CACHE_BUILD_DIR ) /$(TARGET ) $(CACHE_TEST_DIR ) /$(e ) .in > $(CACHE_BUILD_DIR ) /$(e ) .out; \
61
+ $(CACHE_BUILD_DIR ) /$(CACHE_TARGET ) $(CACHE_TEST_DIR ) /$(e ) .in > $(CACHE_BUILD_DIR ) /$(e ) .out; \
46
62
)
47
63
48
- $(TARGET ) : $(CACHE_OBJS )
64
+ $(CACHE_TARGET ) : $(CACHE_OBJS )
49
65
$(VECHO ) " CC\t$@ \n"
50
- $(Q )$(CC ) $^ build/cache.o build/mpool.o -o $(CACHE_BUILD_DIR ) /$(TARGET )
51
-
52
- $(CACHE_BUILD_DIR ) /% .o : $(CACHE_TEST_DIR ) /% .c
66
+ $(Q )$(CC ) $^ build/cache.o build/mpool.o -o $(CACHE_BUILD_DIR ) /$(CACHE_TARGET )
67
+
68
+ $(CACHE_BUILD_DIR ) /% .o : $(CACHE_TEST_DIR ) /% .c
53
69
$(VECHO ) " CC\t$@ \n"
54
70
$(Q ) mkdir -p $(dir $@ ) /arc $(dir $@ ) /lfu
55
- $(Q )$(CC ) -o $@ $(CFLAGS ) -I./src -c -MMD -MF $@ .d $<
71
+ $(Q )$(CC ) -o $@ $(CFLAGS ) -I./src -c -MMD -MF $@ .d $<
72
+
73
+ $(MAP_TARGET ) : $(MAP_OBJS )
74
+ $(VECHO ) " CC\t$@ \n"
75
+ $(Q )$(CC ) $^ build/map.o -o $(MAP_BUILD_DIR ) /$(MAP_TARGET )
76
+ $(Q )$(MAP_BUILD_DIR ) /$(MAP_TARGET )
77
+ $(Q )$(PRINTF ) " Running test-map ... " ; \
78
+ if [ $$ ? -eq 0 ]; then \
79
+ $(call notice, [OK]) ; \
80
+ else \
81
+ $(PRINTF ) " Failed.\n" ; \
82
+ fi ; \
83
+
84
+ $(MAP_BUILD_DIR ) /% .o : $(MAP_TEST_DIR ) /% .c
85
+ $(VECHO ) " CC\t$@ \n"
86
+ $(Q ) mkdir -p $(dir $@ )
87
+ $(Q )$(CC ) -o $@ $(CFLAGS ) -I./src -c -MMD -MF $@ .d $<
0 commit comments