CCAN_CFLAGS=-g3 -ggdb -Wall -Wstrict-prototypes -Wold-style-definition -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wwrite-strings -Wundef -DCCAN_STR_DEBUG=1
CFLAGS = $(CCAN_CFLAGS) -I. $(DEPGEN)
-# Normal modules: no external dependencies, just a header:
-MODS_NORMAL_NO_SRC := alignof \
+# Modules which are just a header:
+MODS_NO_SRC := alignof \
array_size \
asearch \
+ bitmap \
build_assert \
bytestring \
cast \
short_types \
tcon \
tlist \
- typesafe_cb
+ typesafe_cb \
+ version
# No external dependencies, with C code:
-MODS_NORMAL_WITH_SRC := antithread \
+MODS_WITH_SRC := antithread \
antithread/alloc \
asort \
asprintf \
avl \
bdelta \
block_pool \
+ breakpoint \
btree \
ccan_tokenizer \
charset \
ciniparser \
crc \
crcsync \
+ cpuid \
daemonize \
daemon_with_notify \
dgraph \
foreach \
grab_file \
hash \
+ heap \
htable \
idtree \
ilog \
+ io \
isaac \
iscsi \
+ jmap \
json \
+ jset \
lbalance \
likely \
list \
md4 \
net \
+ nfs \
noerr \
+ ogg_to_pcm \
opt \
ptr_valid \
rbtree \
+ rbuf \
read_write_all \
rfc822 \
+ siphash \
sparse_bsearch \
str \
stringmap \
str_talloc \
take \
tal \
+ tal/link \
tal/path \
tal/str \
+ tal/talloc \
talloc \
talloc_link \
tally \
tap \
time \
- ttxml
-
-MODS_NORMAL:=$(MODS_NORMAL_WITH_SRC) $(MODS_NORMAL_NO_SRC)
-
-# Modules which require external dependencies, thus may not pass check.
-MODS_EXTERNAL_NO_SRC:=
-
-MODS_EXTERNAL_WITH_SRC:=jmap \
- jset \
- nfs \
- ogg_to_pcm \
+ timer \
+ ttxml \
wwviaudio
-MODS_EXTERNAL:=$(MODS_EXTERNAL_NO_SRC) $(MODS_EXTERNAL_WITH_SRC)
-
-MODS:=$(MODS_EXTERNAL) $(MODS_NORMAL)
+MODS:=$(MODS_WITH_SRC) $(MODS_NO_SRC)
default: libccan.a
-include ccan/*/*.d
# Anything with C files needs building; dir leaves / on, sort uniquifies
-DIRS=$(patsubst %/, %, $(sort $(foreach m, $(MODS_NORMAL_WITH_SRC), $(dir $(wildcard ccan/$m/*.c)))))
+DIRS=$(patsubst %/, %, $(sort $(foreach m, $(filter-out $(MODS_EXCLUDE), $(MODS_WITH_SRC)), $(dir $(wildcard ccan/$m/*.c)))))
# Generate everyone's separate Makefiles.
-include $(foreach dir, $(DIRS), $(dir)-Makefile)