Skip to content

Commit 70cc171

Browse files
committed
c_many custom out dir
1 parent 5366b65 commit 70cc171

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

make/templates/c_many/Makefile

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,27 @@
44
CC = gcc
55
CFLGS = -ggdb3 -O0 -pedantic-errors -std=c99 -Wall -Wextra
66
IN_EXT = .c
7+
OUT_DIR = .
78
OUT_EXT = .out
89

9-
OUTS = $(addsuffix $(OUT_EXT), $(basename $(wildcard *$(IN_EXT))))
10+
OUTS = $(addprefix $(OUT_DIR)/, $(addsuffix $(OUT_EXT), $(basename $(wildcard *$(IN_EXT)))))
1011

11-
.PHONY: all clean test
12+
.PHONY: all clean mkdir test
1213

13-
all: $(OUTS)
14+
all: mkdir $(OUTS)
1415

15-
%$(OUT_EXT): %$(IN_EXT)
16+
$(OUT_DIR)/%$(OUT_EXT): %$(IN_EXT)
1617
$(CC) $(CFLGS) -o '$@' '$<'
1718

1819
clean:
19-
rm -f *'$(OUT_EXT)'
20+
if [ '$(OUT_DIR)' = '.' ]; then \
21+
rm -f *'$(OUT_EXT)'; \
22+
else \
23+
rm -rf '$(OUT_DIR)'; \
24+
fi
25+
26+
mkdir:
27+
mkdir -p '$(OUT_DIR)'
2028

2129
test: all
2230
@\

0 commit comments

Comments
 (0)