52 lines
1.0 KiB
Plaintext
52 lines
1.0 KiB
Plaintext
CC=clang
|
|
CCFLAGS=-Wno-microsoft-anon-tag
|
|
# CC=gcc
|
|
# CCFLAGS=-Wno-parentheses
|
|
|
|
CMD=$(CC) -std=gnu11 -Wall -Wno-unused-function -fms-extensions ${CCFLAGS} $(FLAGS) -fPIE -MMD -MP -MF
|
|
|
|
o3: FLAGS=-O3
|
|
o3: gen
|
|
o3g: FLAGS=-O3 -g
|
|
o3g: gen
|
|
debug: FLAGS=-g -DDEBUG
|
|
debug: gen
|
|
rtperf: FLAGS=-O3 -DRT_PERF
|
|
rtperf: gen
|
|
heapverify: FLAGS=-DDEBUG -g -DHEAP_VERIFY
|
|
heapverify: gen
|
|
rtverify: FLAGS=-DDEBUG -O3 -DRT_VERIFY
|
|
rtverify: gen
|
|
|
|
gen: builtins core base utils
|
|
@$(CC) -o BQN *.o -lm
|
|
@mv BQN ../../BQN
|
|
@echo
|
|
|
|
core: i32arr.o c32arr.o f64arr.o harr.o fillarr.o stuff.o derv.o mm.o heap.o
|
|
%.o: ../../src/core/%.c
|
|
@echo $< | cut -c 11-
|
|
@$(CMD) $@.d -c $<
|
|
|
|
base: load.o main.o rtwrap.o vm.o ns.o
|
|
%.o: ../../src/%.c
|
|
@echo $< | cut -c 11-
|
|
@$(CMD) $@.d -c $<
|
|
|
|
utils: utf.o hash.o file.o
|
|
%.o: ../../src/utils/%.c
|
|
@echo $< | cut -c 11-
|
|
@$(CMD) $@.d -c $<
|
|
|
|
builtins: arithm.o arithd.o cmp.o sfns.o sort.o md1.o md2.o fns.o sysfn.o internal.o
|
|
%.o: ../../src/builtins/%.c
|
|
@echo $< | cut -c 11-
|
|
@$(CMD) $@.d -c $<
|
|
|
|
-include *.d
|
|
|
|
|
|
clean:
|
|
@rm -f *.o
|
|
@rm -f *.d
|