summaryrefslogtreecommitdiff
path: root/make/all.mk
blob: 4304cf7c5fd6a2eeeac3606e4c1ff1015bf1ef14 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
all:

OS != uname -s
ARCH != uname -m

CLEAN_FILES ::=
TEST_BINS ::= 
APLWC_SUBDIR = $(ROOT)/src/bin
LIBAPLWC_SUBDIR = $(ROOT)/src/lib
LIBAPLWC_INCLUDES = $(ROOT)/src/include
TEST_SUBDIR = $(ROOT)/tests

include $(ROOT)/make/os/$(OS).mk
include $(ROOT)/make/arch/$(ARCH).mk

.SUFFIXES:
.SUFFIXES: .c $(OBJEXT)

.PHONY: all clean
clean:
	rm -f $(CLEAN_FILES)

# APLWC
HDRS = \
	$(APLWC_SUBDIR)/aplwc_repl.h
SRCS = \
	$(APLWC_SUBDIR)/main.c \
	$(APLWC_SUBDIR)/util.c
TARG = $(APLWC)
EXTRA_OBJS = $(LIBAPLWC)
include $(ROOT)/make/bin.mk

# LIBAPLWC
HDRS = \
	$(LIBAPLWC_SUBDIR)/aplwc_internal.h \
	$(LIBAPLWC_SUBDIR)/boot.h
SRCS = \
	$(LIBAPLWC_SUBDIR)/eval.c \
	$(LIBAPLWC_SUBDIR)/main.c \
	$(LIBAPLWC_SUBDIR)/memory.c \
	$(LIBAPLWC_SUBDIR)/module.c \
	$(LIBAPLWC_SUBDIR)/string.c \
	$(LIBAPLWC_SUBDIR)/symtab.c \
	$(LIBAPLWC_SUBDIR)/syntax.c
TARG = $(LIBAPLWC)
EXTRA_OBJS =
include $(ROOT)/make/lib.mk

# boot.h
$(LIBAPLWC_SUBDIR)/boot.h: $(LIBAPLWC_SUBDIR)/boot.aplwc
	xxd -i -n boot_src $^ $@
CLEAN_FILES += $(LIBAPLWC_SUBDIR)/boot.h

# tests
TEST = aplwc_errstr
include $(ROOT)/make/testbin.mk

TEST = aplwc_eval
include $(ROOT)/make/testbin.mk

TEST = aplwc_read
include $(ROOT)/make/testbin.mk

TEST = aplwc_utf8
include $(ROOT)/make/testbin.mk