add the BUILD variable to the makefiles to control the build root
[libc-test] / src / math / Makefile
1 CFLAGS+=-g -pipe -std=c99 -D_POSIX_C_SOURCE=200809L -Wall -Wno-unused-function -Wno-missing-braces
2 CFLAGS+=-Wno-unknown-pragmas -fno-builtin -frounding-math
3 CFLAGS+=-D_GNU_SOURCE -O0
4 LDFLAGS+=-g -lm
5 BUILD?=.
6
7 SRC=$(sort $(wildcard *.c))
8 OBJ=$(SRC:%.c=$(BUILD)/%.o)
9 BINOBJ=$(filter-out $(BUILD)/util.o,$(OBJ))
10 BIN=$(BINOBJ:.o=)
11
12 -include ../../config.mak
13
14 all: $(BIN)
15 run: all
16         @N=0; for i in $(BIN);do ./$$i || N=$$((N+1)); done; [ "$$N" = 0 ] && echo PASS || echo FAILS: $$N
17 clean:
18         rm -f $(OBJ) $(BIN)
19
20 $(BUILD):
21         mkdir -p $@
22 $(BIN): $(BUILD)/util.o
23 $(OBJ): util.h | $(BUILD)
24 $(BUILD)/%.o: %.c
25         $(CC) $(CFLAGS) -c -o $@ $<
26 %: %.c
27
28 %: %.o
29         $(CC) $(LDFLAGS) -o $@ $^
30
31 .PRECIOUS: $(OBJ)