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 \
+ argcheck \
array_size \
asearch \
+ bitmap \
build_assert \
- bytestring \
cast \
check_type \
compiler \
container_of \
darray \
endian \
+ minmax \
objset \
short_types \
+ structeq \
tcon \
tlist \
typesafe_cb \
version
# No external dependencies, with C code:
-MODS_NORMAL_WITH_SRC := antithread \
+MODS_WITH_SRC := antithread \
antithread/alloc \
asort \
asprintf \
autodata \
avl \
+ base64 \
bdelta \
block_pool \
+ breakpoint \
btree \
+ bytestring \
ccan_tokenizer \
+ cdump \
charset \
ciniparser \
crc \
crcsync \
+ cpuid \
daemonize \
daemon_with_notify \
dgraph \
+ eratosthenes \
err \
failtest \
foreach \
grab_file \
hash \
+ heap \
htable \
idtree \
ilog \
+ invbloom \
+ io \
isaac \
iscsi \
+ jacobson_karels \
+ jmap \
json \
+ jset \
lbalance \
likely \
list \
+ lqueue \
+ lstack \
md4 \
+ mem \
net \
+ nfs \
noerr \
+ ntdb \
+ ogg_to_pcm \
opt \
ptr_valid \
+ pushpull \
rbtree \
rbuf \
read_write_all \
siphash \
sparse_bsearch \
str \
+ stringbuilder \
stringmap \
strmap \
strset \
- str_talloc \
take \
tal \
+ tal/grab_file \
tal/link \
tal/path \
+ tal/stack \
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 \
- tal/talloc \
+ 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)