[ccan] [RFC] ccan: rename config file to ccan_config.h

Emilio G. Cota cota at braap.org
Tue Mar 11 09:08:18 EST 2014


From: "Emilio G. Cota" <cota at braap.org>

This avoids clashes with library users' code, who might
have already a config.h header file.

It's not unreasonable for users to have their CCAN config file
in path/to/ccan/config.h. Including CCAN module headers is then
done with the -Ipath/to/ccan/ compiler flag so that "include <ccan/foo/foo.h>"
works. If these users have in their project a config.h file, then
(without resorting to ugly hacks) the compiler won't know what
config.h file to take.

Deal with this problem by renaming config.h to something unique
to the ccan project, i.e. ccan_config.h. A transition path is added
to the top Makefile so that "make" will result in a correct build
with the new ccan_config.h being a copy of the no longer existing
config.h.

Note that this patch is an RFC. The compatibility issue is a big one;
I don't know if people out there are relying on the fact that
ccan/config.h exists, so this change could break some builds.
The transition path only deals with the case in which CCAN is
self-contained.

Two minor issues are also present:

1) The tarballs in the web directory haven't been updated.
   `git grep "[^_]config.h\W" | grep Binary | wc -l` returns 30 files.

2) Note: The following issue exists on the current upstream code; this
   RFC is orthogonal to it.
   Given enough cores, make -j returns an error that is not fatal.
   This happens when "tools" is built and no previous config file is
   present: `make tools` tries to build err.o (from DEP_OBJS) at the
   same time as it tries to generate a config file with the configurator.
   It's not clear to me what the dependency chain for DEP_OBJS is--it
   seems that anytime tools/foo is built, DEP_OBJS are built in parallel,
   even when tools/foo does not depend on DEP_OBJS at all.

Signed-off-by: Emilio G. Cota <cota at braap.org>
---
 .gitignore                                      |  2 +-
 Makefile                                        |  4 +++-
 Makefile-web                                    |  4 ++--
 ccan/alignof/_info                              |  2 +-
 ccan/alignof/alignof.h                          |  2 +-
 ccan/antithread/_info                           |  2 +-
 ccan/antithread/alloc/_info                     |  2 +-
 ccan/antithread/alloc/alloc.c                   |  2 +-
 ccan/antithread/alloc/bitops.c                  |  2 +-
 ccan/antithread/alloc/test/run-tiny-encode.c    |  2 +-
 ccan/argcheck/_info                             |  2 +-
 ccan/array_size/_info                           |  2 +-
 ccan/array_size/array_size.h                    |  2 +-
 ccan/asearch/_info                              |  2 +-
 ccan/asort/asort.h                              |  2 +-
 ccan/asprintf/_info                             |  2 +-
 ccan/asprintf/asprintf.h                        |  2 +-
 ccan/autodata/_info                             |  2 +-
 ccan/autodata/autodata.h                        |  2 +-
 ccan/avl/_info                                  |  2 +-
 ccan/bdelta/_info                               |  2 +-
 ccan/bitmap/_info                               |  2 +-
 ccan/block_pool/_info                           |  2 +-
 ccan/breakpoint/_info                           |  2 +-
 ccan/btree/_info                                |  2 +-
 ccan/build_assert/_info                         |  2 +-
 ccan/bytestring/_info                           |  2 +-
 ccan/cast/_info                                 |  2 +-
 ccan/cast/cast.h                                |  2 +-
 ccan/ccan_tokenizer/_info                       |  2 +-
 ccan/ccan_tokenizer/ccan_tokenizer.h            |  2 +-
 ccan/charset/_info                              |  2 +-
 ccan/check_type/_info                           |  2 +-
 ccan/check_type/check_type.h                    |  2 +-
 ccan/ciniparser/_info                           |  2 +-
 ccan/compiler/_info                             |  2 +-
 ccan/compiler/compiler.h                        |  2 +-
 ccan/container_of/_info                         |  2 +-
 ccan/container_of/container_of.h                |  2 +-
 ccan/crcsync/_info                              |  2 +-
 ccan/daemon_with_notify/_info                   |  2 +-
 ccan/daemonize/_info                            |  2 +-
 ccan/darray/_info                               |  2 +-
 ccan/darray/darray.h                            |  2 +-
 ccan/dgraph/_info                               |  2 +-
 ccan/dgraph/dgraph.h                            |  2 +-
 ccan/endian/_info                               |  2 +-
 ccan/endian/endian.h                            |  2 +-
 ccan/err/_info                                  |  2 +-
 ccan/err/err.h                                  |  2 +-
 ccan/failtest/_info                             |  2 +-
 ccan/failtest/failtest.h                        |  2 +-
 ccan/failtest/failtest_override.h               |  2 +-
 ccan/failtest/test/run-malloc.c                 |  2 +-
 ccan/foreach/_info                              |  2 +-
 ccan/foreach/foreach.h                          |  2 +-
 ccan/grab_file/_info                            |  2 +-
 ccan/hash/hash.h                                |  2 +-
 ccan/heap/_info                                 |  2 +-
 ccan/htable/htable.h                            |  2 +-
 ccan/htable/htable_type.h                       |  2 +-
 ccan/idtree/_info                               |  2 +-
 ccan/ilog/_info                                 |  2 +-
 ccan/ilog/ilog.h                                |  2 +-
 ccan/io/_info                                   |  2 +-
 ccan/isaac/_info                                |  2 +-
 ccan/iscsi/discovery.c                          |  2 +-
 ccan/iscsi/login.c                              |  2 +-
 ccan/iscsi/socket.c                             |  2 +-
 ccan/jmap/_info                                 |  2 +-
 ccan/jset/_info                                 |  2 +-
 ccan/jset/jset.h                                |  2 +-
 ccan/json/_info                                 |  2 +-
 ccan/lbalance/_info                             |  2 +-
 ccan/lbalance/lbalance.h                        |  2 +-
 ccan/lbalance/test/run.c                        |  2 +-
 ccan/likely/_info                               |  2 +-
 ccan/likely/likely.h                            |  2 +-
 ccan/list/_info                                 |  2 +-
 ccan/md4/_info                                  |  2 +-
 ccan/net/_info                                  |  2 +-
 ccan/nfs/init.c                                 |  2 +-
 ccan/noerr/_info                                |  2 +-
 ccan/objset/_info                               |  2 +-
 ccan/objset/objset.h                            |  2 +-
 ccan/ogg_to_pcm/_info                           |  2 +-
 ccan/opt/_info                                  |  2 +-
 ccan/opt/test/run-checkopt.c                    |  2 +-
 ccan/opt/test/run-helpers.c                     |  2 +-
 ccan/opt/test/utils.c                           |  2 +-
 ccan/ptr_valid/_info                            |  2 +-
 ccan/ptr_valid/ptr_valid.h                      |  2 +-
 ccan/rbuf/_info                                 |  2 +-
 ccan/read_write_all/_info                       |  2 +-
 ccan/rfc822/_info                               |  2 +-
 ccan/rfc822/rfc822.c                            |  2 +-
 ccan/rfc822/test/run-default-alloc-failure.c    |  2 +-
 ccan/rfc822/test/run-testdata.c                 |  2 +-
 ccan/short_types/_info                          |  2 +-
 ccan/siphash/_info                              |  2 +-
 ccan/sparse_bsearch/_info                       |  2 +-
 ccan/str/_info                                  |  2 +-
 ccan/str/debug.c                                |  2 +-
 ccan/str/str.h                                  |  2 +-
 ccan/str_talloc/_info                           |  2 +-
 ccan/stringmap/_info                            |  2 +-
 ccan/strmap/_info                               |  2 +-
 ccan/strmap/strmap.h                            |  2 +-
 ccan/strset/_info                               |  2 +-
 ccan/strset/strset.h                            |  2 +-
 ccan/take/_info                                 |  2 +-
 ccan/take/take.h                                |  2 +-
 ccan/tal/_info                                  |  2 +-
 ccan/tal/link/_info                             |  2 +-
 ccan/tal/link/link.h                            |  2 +-
 ccan/tal/path/_info                             |  2 +-
 ccan/tal/str/_info                              |  2 +-
 ccan/tal/tal.h                                  |  2 +-
 ccan/tal/talloc/_info                           |  2 +-
 ccan/tal/talloc/talloc.h                        |  2 +-
 ccan/talloc/_info                               |  2 +-
 ccan/talloc/talloc.h                            |  2 +-
 ccan/talloc_link/_info                          |  2 +-
 ccan/tally/_info                                |  2 +-
 ccan/tally/tally.h                              |  2 +-
 ccan/tap/_info                                  |  2 +-
 ccan/tap/tap.c                                  |  2 +-
 ccan/tcon/_info                                 |  2 +-
 ccan/tcon/tcon.h                                |  2 +-
 ccan/time/_info                                 |  2 +-
 ccan/time/time.h                                |  2 +-
 ccan/timer/_info                                |  2 +-
 ccan/tlist/_info                                |  2 +-
 ccan/ttxml/_info                                |  2 +-
 ccan/typesafe_cb/_info                          |  2 +-
 ccan/typesafe_cb/typesafe_cb.h                  |  2 +-
 ccan/version/_info                              |  2 +-
 ccan/wwviaudio/_info                            |  2 +-
 doc/ccanlint.1.txt                              |  8 ++++----
 junkcode/iasoule32 at gmail.com-polynomial/_info.c |  2 +-
 tools/Makefile                                  |  2 +-
 tools/ccanlint/Makefile                         |  2 +-
 tools/ccanlint/ccanlint.h                       |  4 ++--
 tools/ccanlint/file_analysis.c                  |  2 +-
 tools/ccanlint/tests/info_exists.c              |  2 +-
 tools/ccanlint/tests/reduce_features.c          | 12 ++++++------
 tools/configurator/configurator.c               |  2 +-
 tools/manifest.c                                |  2 +-
 tools/manifest.h                                |  2 +-
 tools/read_config_header.c                      |  2 +-
 tools/read_config_header.h                      |  2 +-
 tools/test_all.sh                               | 14 +++++++-------
 tools/tools.h                                   |  2 +-
 web/staticindex.php                             |  2 +-
 154 files changed, 172 insertions(+), 170 deletions(-)

diff --git a/.gitignore b/.gitignore
index 061c08d..15cb3bc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,7 +3,7 @@ TAGS
 *.d
 *.o
 libccan.a
-config.h
+ccan_config.h
 *~
 tools/ccan_depends
 tools/doc_extract
diff --git a/Makefile b/Makefile
index 65d0d8f..366c54f 100644
--- a/Makefile
+++ b/Makefile
@@ -94,8 +94,10 @@ TAGS: FORCE
 
 FORCE:
 
+# ccan_config.h used to be called config.h. Do the transition if necessary.
 # Ensure we don't end up with empty file if configurator fails!
-config.h: tools/configurator/configurator Makefile Makefile-ccan
+ccan_config.h: tools/configurator/configurator Makefile Makefile-ccan
+	@if [ -f 'config.h' ] && [ ! -f '$@' ]; then mv config.h $@; fi
 	tools/configurator/configurator $(CC) $(CCAN_CFLAGS) > $@.tmp && mv $@.tmp $@
 
 include tools/Makefile
diff --git a/Makefile-web b/Makefile-web
index 20a1a2f..7dd18c5 100644
--- a/Makefile-web
+++ b/Makefile-web
@@ -34,7 +34,7 @@ $(WEBDIR)/junkcode/%.html: $(WEBDIR)/junkcode/%.tar.bz2
 	php5 web/staticjunkcode.php junkcode/$* $* > $@
 
 # We want tarball to contain ccan/; we put junkcode in, but don't depend on it.
-$(WEBDIR)/ccan.tar.bz2: config.h Makefile Makefile-ccan $(shell git ls-files ccan tools licenses)
+$(WEBDIR)/ccan.tar.bz2: ccan_config.h Makefile Makefile-ccan $(shell git ls-files ccan tools licenses)
 	DIR=`pwd` && cd /tmp && ln -sf "$$DIR" ccan && tar cvfj $@ `for f in $^; do echo ccan/$$f; done` ccan/junkcode && rm ccan
 
 $(ALL_PAGES): tools/doc_extract web/staticmoduleinfo.php
@@ -52,7 +52,7 @@ $(WEBDIR)/uploader.php: web/uploader.php.cpp
 $(WEBDIR)/index.html: web/staticindex.php
 	php5 web/staticindex.php > $@
 
-$(WEBDIR)/example-config.h: config.h
+$(WEBDIR)/example-config.h: ccan_config.h
 	cp $< $@
 
 $(WEBDIR)/Makefile-ccan: Makefile-ccan
diff --git a/ccan/alignof/_info b/ccan/alignof/_info
index 7eca1f2..4191e01 100644
--- a/ccan/alignof/_info
+++ b/ccan/alignof/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * alignof - ALIGNOF() macro to determine alignment of a type.
diff --git a/ccan/alignof/alignof.h b/ccan/alignof/alignof.h
index 9a02f18..a5ef7d8 100644
--- a/ccan/alignof/alignof.h
+++ b/ccan/alignof/alignof.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_ALIGNOF_H
 #define CCAN_ALIGNOF_H
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * ALIGNOF - get the alignment of a type
diff --git a/ccan/antithread/_info b/ccan/antithread/_info
index b4cf67f..7b45f0e 100644
--- a/ccan/antithread/_info
+++ b/ccan/antithread/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * antithread - Accelerated Native Technology Implementation of "threads"
diff --git a/ccan/antithread/alloc/_info b/ccan/antithread/alloc/_info
index 5ad1800..1d84a9c 100644
--- a/ccan/antithread/alloc/_info
+++ b/ccan/antithread/alloc/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * antithread/alloc - memory allocator routines
diff --git a/ccan/antithread/alloc/alloc.c b/ccan/antithread/alloc/alloc.c
index 1b36aa4..995d20f 100644
--- a/ccan/antithread/alloc/alloc.c
+++ b/ccan/antithread/alloc/alloc.c
@@ -13,7 +13,7 @@
 #include <ccan/alignof/alignof.h>
 #include <ccan/short_types/short_types.h>
 #include <ccan/compiler/compiler.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /*
    Inspired by (and parts taken from) Andrew Tridgell's alloc_mmap:
diff --git a/ccan/antithread/alloc/bitops.c b/ccan/antithread/alloc/bitops.c
index 78c2b24..7b6782b 100644
--- a/ccan/antithread/alloc/bitops.c
+++ b/ccan/antithread/alloc/bitops.c
@@ -1,6 +1,6 @@
 /* Licensed under LGPLv2.1+ - see LICENSE file for details */
 #include "bitops.h"
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/build_assert/build_assert.h>
 #include <ccan/short_types/short_types.h>
 #include <ccan/ilog/ilog.h>
diff --git a/ccan/antithread/alloc/test/run-tiny-encode.c b/ccan/antithread/alloc/test/run-tiny-encode.c
index a76e746..5abc0df 100644
--- a/ccan/antithread/alloc/test/run-tiny-encode.c
+++ b/ccan/antithread/alloc/test/run-tiny-encode.c
@@ -1,5 +1,5 @@
 #include <ccan/tap/tap.h>
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/antithread/alloc/tiny.c>
 #include <ccan/antithread/alloc/bitops.c>
 #include <stdlib.h>
diff --git a/ccan/argcheck/_info b/ccan/argcheck/_info
index 620ff83..69af2d8 100644
--- a/ccan/argcheck/_info
+++ b/ccan/argcheck/_info
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * argcheck - macros to check arguments at runtime
diff --git a/ccan/array_size/_info b/ccan/array_size/_info
index d670042..ffd99f7 100644
--- a/ccan/array_size/_info
+++ b/ccan/array_size/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * array_size - routine for safely deriving the size of a visible array.
diff --git a/ccan/array_size/array_size.h b/ccan/array_size/array_size.h
index 0ca422a..30bda95 100644
--- a/ccan/array_size/array_size.h
+++ b/ccan/array_size/array_size.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_ARRAY_SIZE_H
 #define CCAN_ARRAY_SIZE_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/build_assert/build_assert.h>
 
 /**
diff --git a/ccan/asearch/_info b/ccan/asearch/_info
index 35282c4..303a629 100644
--- a/ccan/asearch/_info
+++ b/ccan/asearch/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * asearch - typesafe binary search (bsearch)
diff --git a/ccan/asort/asort.h b/ccan/asort/asort.h
index 3506c2a..98a44d6 100644
--- a/ccan/asort/asort.h
+++ b/ccan/asort/asort.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv2.1+ - see LICENSE file for details */
 #ifndef CCAN_ASORT_H
 #define CCAN_ASORT_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/typesafe_cb/typesafe_cb.h>
 #include <stdlib.h>
 
diff --git a/ccan/asprintf/_info b/ccan/asprintf/_info
index 1aa5d34..eab4b4b 100644
--- a/ccan/asprintf/_info
+++ b/ccan/asprintf/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * asprintf - asprintf wrapper (and if necessary, implementation).
diff --git a/ccan/asprintf/asprintf.h b/ccan/asprintf/asprintf.h
index 958e244..912b61d 100644
--- a/ccan/asprintf/asprintf.h
+++ b/ccan/asprintf/asprintf.h
@@ -1,7 +1,7 @@
 /* Licensed under BSD-MIT - see LICENSE file for details */
 #ifndef CCAN_ASPRINTF_H
 #define CCAN_ASPRINTF_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/compiler/compiler.h>
 
 /**
diff --git a/ccan/autodata/_info b/ccan/autodata/_info
index c9cf266..4dd4dc2 100644
--- a/ccan/autodata/_info
+++ b/ccan/autodata/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * autodata - stash pointers in your binary for automatic registration
diff --git a/ccan/autodata/autodata.h b/ccan/autodata/autodata.h
index 3b1d01b..dea1056 100644
--- a/ccan/autodata/autodata.h
+++ b/ccan/autodata/autodata.h
@@ -1,7 +1,7 @@
 // Licensed under BSD-MIT: See LICENSE.
 #ifndef CCAN_AUTODATA_H
 #define CCAN_AUTODATA_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/compiler/compiler.h>
 #include <stdlib.h>
 
diff --git a/ccan/avl/_info b/ccan/avl/_info
index 94b3d2e..92fcdb3 100644
--- a/ccan/avl/_info
+++ b/ccan/avl/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * avl - Key-value dictionary based on AVL trees
diff --git a/ccan/bdelta/_info b/ccan/bdelta/_info
index 8b1135a..61a4895 100644
--- a/ccan/bdelta/_info
+++ b/ccan/bdelta/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * bdelta - Generate and apply binary deltas
diff --git a/ccan/bitmap/_info b/ccan/bitmap/_info
index 2038058..dcf1a95 100644
--- a/ccan/bitmap/_info
+++ b/ccan/bitmap/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * bitmap - bitmap handling
diff --git a/ccan/block_pool/_info b/ccan/block_pool/_info
index d89da5b..9c94c19 100644
--- a/ccan/block_pool/_info
+++ b/ccan/block_pool/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * block_pool - An efficient allocator for blocks that don't need to be resized or freed.
diff --git a/ccan/breakpoint/_info b/ccan/breakpoint/_info
index 5f5251e..cb620ac 100644
--- a/ccan/breakpoint/_info
+++ b/ccan/breakpoint/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * breakpoint - break if the program is run under gdb.
diff --git a/ccan/btree/_info b/ccan/btree/_info
index e5f2313..830792c 100644
--- a/ccan/btree/_info
+++ b/ccan/btree/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * btree - Efficient sorted associative container based on B-trees.
diff --git a/ccan/build_assert/_info b/ccan/build_assert/_info
index bce92b7..4118cb2 100644
--- a/ccan/build_assert/_info
+++ b/ccan/build_assert/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * build_assert - routines for build-time assertions
diff --git a/ccan/bytestring/_info b/ccan/bytestring/_info
index 5b08491..09b1ff9 100644
--- a/ccan/bytestring/_info
+++ b/ccan/bytestring/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * bytestring - simple bytestring handling
diff --git a/ccan/cast/_info b/ccan/cast/_info
index d66e709..e67070c 100644
--- a/ccan/cast/_info
+++ b/ccan/cast/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * cast - routines for safer casting.
diff --git a/ccan/cast/cast.h b/ccan/cast/cast.h
index 1f3a7aa..b099f2d 100644
--- a/ccan/cast/cast.h
+++ b/ccan/cast/cast.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv2.1+ - see LICENSE file for details */
 #ifndef CCAN_CAST_H
 #define CCAN_CAST_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stdint.h>
 #include <ccan/build_assert/build_assert.h>
 
diff --git a/ccan/ccan_tokenizer/_info b/ccan/ccan_tokenizer/_info
index ad01cea..8d1ba75 100644
--- a/ccan/ccan_tokenizer/_info
+++ b/ccan/ccan_tokenizer/_info
@@ -1,6 +1,6 @@
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * ccan_tokenizer - A full-text lexer for C source files
diff --git a/ccan/ccan_tokenizer/ccan_tokenizer.h b/ccan/ccan_tokenizer/ccan_tokenizer.h
index 9c40ae2..351c1ec 100644
--- a/ccan/ccan_tokenizer/ccan_tokenizer.h
+++ b/ccan/ccan_tokenizer/ccan_tokenizer.h
@@ -49,7 +49,7 @@ enum token_type {
 	TOK_CHAR,	   //character literal (e.g. 'a' or even '1234')
 	TOK_STRING,	   //string literal (e.g. "hello" or "zero\0inside")
 	TOK_LEADING_POUND, //leading # in a preprocessor directive (e.g. # include)
-	TOK_STRING_IQUOTE, // "config.h"
+	TOK_STRING_IQUOTE, // "ccan_config.h"
 	TOK_STRING_IANGLE, // <stdio.h>
 	
 	#define token_type_is_ignored(type) ((type)>=TOK_CCOMMENT && (type)<=TOK_WHITE)
diff --git a/ccan/charset/_info b/ccan/charset/_info
index e07d704..ce3c5bb 100644
--- a/ccan/charset/_info
+++ b/ccan/charset/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * charset - character set conversion and validation routines
diff --git a/ccan/check_type/_info b/ccan/check_type/_info
index cb19e20..68a0de1 100644
--- a/ccan/check_type/_info
+++ b/ccan/check_type/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * check_type - routines for compile time type checking
diff --git a/ccan/check_type/check_type.h b/ccan/check_type/check_type.h
index 77501a9..d4ebd01 100644
--- a/ccan/check_type/check_type.h
+++ b/ccan/check_type/check_type.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_CHECK_TYPE_H
 #define CCAN_CHECK_TYPE_H
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * check_type - issue a warning or build failure if type is not correct.
diff --git a/ccan/ciniparser/_info b/ccan/ciniparser/_info
index c252257..1f9ba8f 100644
--- a/ccan/ciniparser/_info
+++ b/ccan/ciniparser/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * ciniparser - easily parse and manipulate ini style configuration files
diff --git a/ccan/compiler/_info b/ccan/compiler/_info
index fc9318f..7c14a5f 100644
--- a/ccan/compiler/_info
+++ b/ccan/compiler/_info
@@ -1,6 +1,6 @@
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * compiler - macros for common compiler extensions
diff --git a/ccan/compiler/compiler.h b/ccan/compiler/compiler.h
index 651b47c..8800ecf 100644
--- a/ccan/compiler/compiler.h
+++ b/ccan/compiler/compiler.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_COMPILER_H
 #define CCAN_COMPILER_H
-#include "config.h"
+#include "ccan_config.h"
 
 #ifndef COLD
 #if HAVE_ATTRIBUTE_COLD
diff --git a/ccan/container_of/_info b/ccan/container_of/_info
index 77b3bd1..b2b691f 100644
--- a/ccan/container_of/_info
+++ b/ccan/container_of/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * container_of - routine for upcasting
diff --git a/ccan/container_of/container_of.h b/ccan/container_of/container_of.h
index 2943b8f..ef24278 100644
--- a/ccan/container_of/container_of.h
+++ b/ccan/container_of/container_of.h
@@ -3,7 +3,7 @@
 #define CCAN_CONTAINER_OF_H
 #include <stddef.h>
 
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/check_type/check_type.h>
 
 /**
diff --git a/ccan/crcsync/_info b/ccan/crcsync/_info
index 3713c77..9c3a071 100644
--- a/ccan/crcsync/_info
+++ b/ccan/crcsync/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * crcsync - routines to use crc for an rsync-like protocol.
diff --git a/ccan/daemon_with_notify/_info b/ccan/daemon_with_notify/_info
index be72b91..607b300 100644
--- a/ccan/daemon_with_notify/_info
+++ b/ccan/daemon_with_notify/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * daemon_with_notify - daemonize a process, can wait for child to signal readiness
diff --git a/ccan/daemonize/_info b/ccan/daemonize/_info
index f0e55bc..e7b0964 100644
--- a/ccan/daemonize/_info
+++ b/ccan/daemonize/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * daemonize - routine to turn a process into a well-behaved daemon.
diff --git a/ccan/darray/_info b/ccan/darray/_info
index 8be9a78..09efa9a 100644
--- a/ccan/darray/_info
+++ b/ccan/darray/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 #include "ccan/darray/darray.h"
 
diff --git a/ccan/darray/darray.h b/ccan/darray/darray.h
index b7e08db..c7de907 100644
--- a/ccan/darray/darray.h
+++ b/ccan/darray/darray.h
@@ -25,7 +25,7 @@
 
 #include <stdlib.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /*
  * SYNOPSIS
diff --git a/ccan/dgraph/_info b/ccan/dgraph/_info
index 10c8296..a3e8d6a 100644
--- a/ccan/dgraph/_info
+++ b/ccan/dgraph/_info
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <string.h>
 
 /**
diff --git a/ccan/dgraph/dgraph.h b/ccan/dgraph/dgraph.h
index 6c82798..8d0a5ad 100644
--- a/ccan/dgraph/dgraph.h
+++ b/ccan/dgraph/dgraph.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv2.1+ - see LICENSE file for details */
 #ifndef CCAN_DGRAPH_H
 #define CCAN_DGRAPH_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/tlist/tlist.h>
 #include <ccan/typesafe_cb/typesafe_cb.h>
 #include <stdbool.h>
diff --git a/ccan/endian/_info b/ccan/endian/_info
index a71b9ae..03c9c3d 100644
--- a/ccan/endian/_info
+++ b/ccan/endian/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * endian - endian conversion macros for simple types
diff --git a/ccan/endian/endian.h b/ccan/endian/endian.h
index 02f5a68..3631933 100644
--- a/ccan/endian/endian.h
+++ b/ccan/endian/endian.h
@@ -2,7 +2,7 @@
 #ifndef CCAN_ENDIAN_H
 #define CCAN_ENDIAN_H
 #include <stdint.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * BSWAP_16 - reverse bytes in a constant uint16_t value.
diff --git a/ccan/err/_info b/ccan/err/_info
index 64cc2ce..6bc48ed 100644
--- a/ccan/err/_info
+++ b/ccan/err/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * err - err(), errx(), warn() and warnx(), as per BSD's err.h.
diff --git a/ccan/err/err.h b/ccan/err/err.h
index 23e7f0c..ada6314 100644
--- a/ccan/err/err.h
+++ b/ccan/err/err.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_ERR_H
 #define CCAN_ERR_H
-#include "config.h"
+#include "ccan_config.h"
 
 #if HAVE_ERR_H
 #include <err.h>
diff --git a/ccan/failtest/_info b/ccan/failtest/_info
index ca2b60e..6ce28f0 100644
--- a/ccan/failtest/_info
+++ b/ccan/failtest/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * failtest - unit test helpers for testing malloc and other failures.
diff --git a/ccan/failtest/failtest.h b/ccan/failtest/failtest.h
index 9af5669..0732cd3 100644
--- a/ccan/failtest/failtest.h
+++ b/ccan/failtest/failtest.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPL - see LICENSE file for details */
 #ifndef CCAN_FAILTEST_H
 #define CCAN_FAILTEST_H
-#include "config.h"
+#include "ccan_config.h"
 #if HAVE_FILE_OFFSET_BITS
 #define _FILE_OFFSET_BITS 64
 #endif
diff --git a/ccan/failtest/failtest_override.h b/ccan/failtest/failtest_override.h
index b056d53..1efbf68 100644
--- a/ccan/failtest/failtest_override.h
+++ b/ccan/failtest/failtest_override.h
@@ -2,7 +2,7 @@
 #ifndef CCAN_FAILTEST_OVERRIDE_H
 #define CCAN_FAILTEST_OVERRIDE_H
 /* This file is included before the source file to test. */
-#include "config.h"
+#include "ccan_config.h"
 #if HAVE_FILE_OFFSET_BITS
 #define _FILE_OFFSET_BITS 64
 #endif
diff --git a/ccan/failtest/test/run-malloc.c b/ccan/failtest/test/run-malloc.c
index 5c492ad..d758315 100644
--- a/ccan/failtest/test/run-malloc.c
+++ b/ccan/failtest/test/run-malloc.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <stdlib.h>
 #include <setjmp.h>
 #include <stdio.h>
diff --git a/ccan/foreach/_info b/ccan/foreach/_info
index f1a3c01..aaa148a 100644
--- a/ccan/foreach/_info
+++ b/ccan/foreach/_info
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <string.h>
 
diff --git a/ccan/foreach/foreach.h b/ccan/foreach/foreach.h
index 71b4c02..6d58d98 100644
--- a/ccan/foreach/foreach.h
+++ b/ccan/foreach/foreach.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv3+ - see LICENSE file for details */
 #ifndef CCAN_FOREACH_H
 #define CCAN_FOREACH_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stddef.h>
 #include <assert.h>
 #include <stdbool.h>
diff --git a/ccan/grab_file/_info b/ccan/grab_file/_info
index 1f6e00d..194f7b0 100644
--- a/ccan/grab_file/_info
+++ b/ccan/grab_file/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * grab_file - file helper routines
diff --git a/ccan/hash/hash.h b/ccan/hash/hash.h
index 2170684..374ae85 100644
--- a/ccan/hash/hash.h
+++ b/ccan/hash/hash.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_HASH_H
 #define CCAN_HASH_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stdint.h>
 #include <stdlib.h>
 #include <ccan/build_assert/build_assert.h>
diff --git a/ccan/heap/_info b/ccan/heap/_info
index 552b139..1e48e99 100644
--- a/ccan/heap/_info
+++ b/ccan/heap/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * heap - a simple heap implementation
diff --git a/ccan/htable/htable.h b/ccan/htable/htable.h
index ed668e7..ce15712 100644
--- a/ccan/htable/htable.h
+++ b/ccan/htable/htable.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv2+ - see LICENSE file for details */
 #ifndef CCAN_HTABLE_H
 #define CCAN_HTABLE_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stdint.h>
 #include <stdbool.h>
 #include <stdlib.h>
diff --git a/ccan/htable/htable_type.h b/ccan/htable/htable_type.h
index 03cc46f..99ee41d 100644
--- a/ccan/htable/htable_type.h
+++ b/ccan/htable/htable_type.h
@@ -2,7 +2,7 @@
 #ifndef CCAN_HTABLE_TYPE_H
 #define CCAN_HTABLE_TYPE_H
 #include <ccan/htable/htable.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * HTABLE_DEFINE_TYPE - create a set of htable ops for a type
diff --git a/ccan/idtree/_info b/ccan/idtree/_info
index f04e00e..a070f86 100644
--- a/ccan/idtree/_info
+++ b/ccan/idtree/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * idtree - id allocation tree
diff --git a/ccan/ilog/_info b/ccan/ilog/_info
index d57c05d..b42b85d 100644
--- a/ccan/ilog/_info
+++ b/ccan/ilog/_info
@@ -37,7 +37,7 @@
  */
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 int main(int _argc,const char *_argv[]){
   /*Expect exactly one argument.*/
diff --git a/ccan/ilog/ilog.h b/ccan/ilog/ilog.h
index 9adbb82..4296954 100644
--- a/ccan/ilog/ilog.h
+++ b/ccan/ilog/ilog.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #if !defined(_ilog_H)
 # define _ilog_H (1)
-# include "config.h"
+# include "ccan_config.h"
 # include <stdint.h>
 # include <limits.h>
 # include <ccan/compiler/compiler.h>
diff --git a/ccan/io/_info b/ccan/io/_info
index 235e6ba..8b83db6 100644
--- a/ccan/io/_info
+++ b/ccan/io/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * io - simple library for asynchronous io handling.
diff --git a/ccan/isaac/_info b/ccan/isaac/_info
index 81c6ff2..c63b2dc 100644
--- a/ccan/isaac/_info
+++ b/ccan/isaac/_info
@@ -106,7 +106,7 @@
  */
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 int main(int _argc,const char *_argv[]){
   /*Expect exactly one argument.*/
diff --git a/ccan/iscsi/discovery.c b/ccan/iscsi/discovery.c
index 7b2ad23..1e97099 100644
--- a/ccan/iscsi/discovery.c
+++ b/ccan/iscsi/discovery.c
@@ -15,7 +15,7 @@
    along with this program; if not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/ccan/iscsi/login.c b/ccan/iscsi/login.c
index db9ee8f..0e380b0 100644
--- a/ccan/iscsi/login.c
+++ b/ccan/iscsi/login.c
@@ -15,7 +15,7 @@
    along with this program; if not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/ccan/iscsi/socket.c b/ccan/iscsi/socket.c
index 430be72..c682453 100644
--- a/ccan/iscsi/socket.c
+++ b/ccan/iscsi/socket.c
@@ -15,7 +15,7 @@
    along with this program; if not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/ccan/jmap/_info b/ccan/jmap/_info
index 966a51a..097f934 100644
--- a/ccan/jmap/_info
+++ b/ccan/jmap/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * jmap - map from indices to values (based on libJudy)
diff --git a/ccan/jset/_info b/ccan/jset/_info
index 6ff928f..3874f4a 100644
--- a/ccan/jset/_info
+++ b/ccan/jset/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * jset - set of pointers (based on libJudy)
diff --git a/ccan/jset/jset.h b/ccan/jset/jset.h
index ba72f09..3a86cc0 100644
--- a/ccan/jset/jset.h
+++ b/ccan/jset/jset.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv2.1+ - see LICENSE file for details */
 #ifndef CCAN_JSET_H
 #define CCAN_JSET_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/compiler/compiler.h>
 #include <ccan/tcon/tcon.h>
 #include <Judy.h>
diff --git a/ccan/json/_info b/ccan/json/_info
index 0544cf5..77c30c3 100644
--- a/ccan/json/_info
+++ b/ccan/json/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * json - Parse and generate JSON (JavaScript Object Notation)
diff --git a/ccan/lbalance/_info b/ccan/lbalance/_info
index 2121ed2..9412ceb 100644
--- a/ccan/lbalance/_info
+++ b/ccan/lbalance/_info
@@ -1,5 +1,5 @@
 /* Licensed under GPLv3+ - see LICENSE file for details */
-#include "config.h"
+#include "ccan_config.h"
 #include <string.h>
 
 /**
diff --git a/ccan/lbalance/lbalance.h b/ccan/lbalance/lbalance.h
index 943e163..127504b 100644
--- a/ccan/lbalance/lbalance.h
+++ b/ccan/lbalance/lbalance.h
@@ -1,7 +1,7 @@
 /* Licensed under GPLv3+ - see LICENSE file for details */
 #ifndef CCAN_LBALANCE_H
 #define CCAN_LBALANCE_H
-#include "config.h"
+#include "ccan_config.h"
 
 struct lbalance;
 struct lbalance_task;
diff --git a/ccan/lbalance/test/run.c b/ccan/lbalance/test/run.c
index 542501c..f547519 100644
--- a/ccan/lbalance/test/run.c
+++ b/ccan/lbalance/test/run.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <sys/time.h>
 #include <sys/resource.h>
 #include <unistd.h>
diff --git a/ccan/likely/_info b/ccan/likely/_info
index b6885ef..d27cf86 100644
--- a/ccan/likely/_info
+++ b/ccan/likely/_info
@@ -1,6 +1,6 @@
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * likely - macros for annotating likely/unlikely branches in the code
diff --git a/ccan/likely/likely.h b/ccan/likely/likely.h
index a8f003d..70503f6 100644
--- a/ccan/likely/likely.h
+++ b/ccan/likely/likely.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_LIKELY_H
 #define CCAN_LIKELY_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stdbool.h>
 
 #ifndef CCAN_LIKELY_DEBUG
diff --git a/ccan/list/_info b/ccan/list/_info
index 41a81fb..72eabd9 100644
--- a/ccan/list/_info
+++ b/ccan/list/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * list - double linked list routines
diff --git a/ccan/md4/_info b/ccan/md4/_info
index 6c6f9d8..62033ce 100644
--- a/ccan/md4/_info
+++ b/ccan/md4/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * md4 - MD4 Message Digest Algorithm (RFC1320).
diff --git a/ccan/net/_info b/ccan/net/_info
index b4b219f..df9807d 100644
--- a/ccan/net/_info
+++ b/ccan/net/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * net - simple IPv4/IPv6 socket library
diff --git a/ccan/nfs/init.c b/ccan/nfs/init.c
index 7108b5f..26ed080 100644
--- a/ccan/nfs/init.c
+++ b/ccan/nfs/init.c
@@ -15,7 +15,7 @@
    along with this program; if not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <stdarg.h>
 #include <unistd.h>
diff --git a/ccan/noerr/_info b/ccan/noerr/_info
index ebc407d..9410035 100644
--- a/ccan/noerr/_info
+++ b/ccan/noerr/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * noerr - routines for cleaning up without blatting errno
diff --git a/ccan/objset/_info b/ccan/objset/_info
index cf29028..c0610c5 100644
--- a/ccan/objset/_info
+++ b/ccan/objset/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * objset - unordered set of pointers.
diff --git a/ccan/objset/objset.h b/ccan/objset/objset.h
index 2492a52..a6051cb 100644
--- a/ccan/objset/objset.h
+++ b/ccan/objset/objset.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv2+ - see LICENSE file for details */
 #ifndef CCAN_OBJSET_H
 #define CCAN_OBJSET_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/htable/htable_type.h>
 #include <ccan/hash/hash.h>
 #include <ccan/tcon/tcon.h>
diff --git a/ccan/ogg_to_pcm/_info b/ccan/ogg_to_pcm/_info
index c987b22..954c384 100644
--- a/ccan/ogg_to_pcm/_info
+++ b/ccan/ogg_to_pcm/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * ogg_to_pcm - decode ogg vorbis audio files to PCM data using libvorbis 
diff --git a/ccan/opt/_info b/ccan/opt/_info
index 9595a16..2693b91 100644
--- a/ccan/opt/_info
+++ b/ccan/opt/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * opt - simple command line parsing
diff --git a/ccan/opt/test/run-checkopt.c b/ccan/opt/test/run-checkopt.c
index d54a752..cc92519 100644
--- a/ccan/opt/test/run-checkopt.c
+++ b/ccan/opt/test/run-checkopt.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <ccan/tap/tap.h>
 #include <setjmp.h>
diff --git a/ccan/opt/test/run-helpers.c b/ccan/opt/test/run-helpers.c
index 10b2419..780ac7f 100644
--- a/ccan/opt/test/run-helpers.c
+++ b/ccan/opt/test/run-helpers.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <ccan/tap/tap.h>
 #include <setjmp.h>
diff --git a/ccan/opt/test/utils.c b/ccan/opt/test/utils.c
index c2967fc..e34867e 100644
--- a/ccan/opt/test/utils.c
+++ b/ccan/opt/test/utils.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/tap/tap.h>
 #include <stdarg.h>
 #include <stdlib.h>
diff --git a/ccan/ptr_valid/_info b/ccan/ptr_valid/_info
index b577535..c569271 100644
--- a/ccan/ptr_valid/_info
+++ b/ccan/ptr_valid/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * ptr_valid - test whether a pointer is safe to dereference.
diff --git a/ccan/ptr_valid/ptr_valid.h b/ccan/ptr_valid/ptr_valid.h
index 3871cad..19d818e 100644
--- a/ccan/ptr_valid/ptr_valid.h
+++ b/ccan/ptr_valid/ptr_valid.h
@@ -1,7 +1,7 @@
 // Licensed under BSD-MIT: See LICENSE.
 #ifndef CCAN_PTR_VALID_H
 #define CCAN_PTR_VALID_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stdbool.h>
 #include <stdlib.h>
 
diff --git a/ccan/rbuf/_info b/ccan/rbuf/_info
index 30232db..91411dd 100644
--- a/ccan/rbuf/_info
+++ b/ccan/rbuf/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * rbuf - buffered I/O input primitive.
diff --git a/ccan/read_write_all/_info b/ccan/read_write_all/_info
index d70cbd1..728a097 100644
--- a/ccan/read_write_all/_info
+++ b/ccan/read_write_all/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * read_write_all - read_all and write_all routines.
diff --git a/ccan/rfc822/_info b/ccan/rfc822/_info
index dac530c..81a110b 100644
--- a/ccan/rfc822/_info
+++ b/ccan/rfc822/_info
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <stdio.h>
 #include <string.h>
 
diff --git a/ccan/rfc822/rfc822.c b/ccan/rfc822/rfc822.c
index 08c0541..10d95e2 100644
--- a/ccan/rfc822/rfc822.c
+++ b/ccan/rfc822/rfc822.c
@@ -1,6 +1,6 @@
 /* Licensed under LGPLv2.1+ - see LICENSE file for details */
 
-#include "config.h"
+#include "ccan_config.h"
 
 #include <string.h>
 
diff --git a/ccan/rfc822/test/run-default-alloc-failure.c b/ccan/rfc822/test/run-default-alloc-failure.c
index b81fd4c..19f7cfa 100644
--- a/ccan/rfc822/test/run-default-alloc-failure.c
+++ b/ccan/rfc822/test/run-default-alloc-failure.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <stdlib.h>
 #include <string.h>
 #include <assert.h>
diff --git a/ccan/rfc822/test/run-testdata.c b/ccan/rfc822/test/run-testdata.c
index d15a581..cb4d7a9 100644
--- a/ccan/rfc822/test/run-testdata.c
+++ b/ccan/rfc822/test/run-testdata.c
@@ -1,4 +1,4 @@
-#include <config.h>
+#include <ccan_config.h>
 
 #include <stdlib.h>
 #include <string.h>
diff --git a/ccan/short_types/_info b/ccan/short_types/_info
index f324e35..91b3f09 100644
--- a/ccan/short_types/_info
+++ b/ccan/short_types/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * short_types - shorter names for standard integer types
diff --git a/ccan/siphash/_info b/ccan/siphash/_info
index e6d518a..f135d41 100644
--- a/ccan/siphash/_info
+++ b/ccan/siphash/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * siphash - a keyed hash function
diff --git a/ccan/sparse_bsearch/_info b/ccan/sparse_bsearch/_info
index a2b77c1..993237e 100644
--- a/ccan/sparse_bsearch/_info
+++ b/ccan/sparse_bsearch/_info
@@ -1,6 +1,6 @@
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * sparse_bsearch - search a sorted array with some invalid entries
diff --git a/ccan/str/_info b/ccan/str/_info
index 548f059..6cf72de 100644
--- a/ccan/str/_info
+++ b/ccan/str/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * str - string helper routines
diff --git a/ccan/str/debug.c b/ccan/str/debug.c
index 8c51944..8d88e6f 100644
--- a/ccan/str/debug.c
+++ b/ccan/str/debug.c
@@ -1,5 +1,5 @@
 /* CC0 (Public domain) - see LICENSE file for details */
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/str/str_debug.h>
 #include <assert.h>
 #include <ctype.h>
diff --git a/ccan/str/str.h b/ccan/str/str.h
index 85491bc..9291650 100644
--- a/ccan/str/str.h
+++ b/ccan/str/str.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_STR_H
 #define CCAN_STR_H
-#include "config.h"
+#include "ccan_config.h"
 #include <string.h>
 #include <stdbool.h>
 #include <limits.h>
diff --git a/ccan/str_talloc/_info b/ccan/str_talloc/_info
index bcba699..22eba54 100644
--- a/ccan/str_talloc/_info
+++ b/ccan/str_talloc/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * str_talloc - string helper routines which use talloc
diff --git a/ccan/stringmap/_info b/ccan/stringmap/_info
index 49eff19..f3da851 100644
--- a/ccan/stringmap/_info
+++ b/ccan/stringmap/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * stringmap - Macros for mapping strings to things
diff --git a/ccan/strmap/_info b/ccan/strmap/_info
index 6d03b0c..805d1ad 100644
--- a/ccan/strmap/_info
+++ b/ccan/strmap/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * strmap - an ordered map of strings to values
diff --git a/ccan/strmap/strmap.h b/ccan/strmap/strmap.h
index 8fabc35..0300d5e 100644
--- a/ccan/strmap/strmap.h
+++ b/ccan/strmap/strmap.h
@@ -1,6 +1,6 @@
 #ifndef CCAN_STRMAP_H
 #define CCAN_STRMAP_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/tcon/tcon.h>
 #include <ccan/typesafe_cb/typesafe_cb.h>
 #include <stdlib.h>
diff --git a/ccan/strset/_info b/ccan/strset/_info
index 1c7426e..a293b52 100644
--- a/ccan/strset/_info
+++ b/ccan/strset/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * strset - an ordered set of strings
diff --git a/ccan/strset/strset.h b/ccan/strset/strset.h
index 9d6f1ae..217fda5 100644
--- a/ccan/strset/strset.h
+++ b/ccan/strset/strset.h
@@ -1,6 +1,6 @@
 #ifndef CCAN_STRSET_H
 #define CCAN_STRSET_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/typesafe_cb/typesafe_cb.h>
 #include <stdlib.h>
 #include <stdbool.h>
diff --git a/ccan/take/_info b/ccan/take/_info
index 34b0886..da2babf 100644
--- a/ccan/take/_info
+++ b/ccan/take/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * take - routines to mark pointers to be consumed by called functions.
diff --git a/ccan/take/take.h b/ccan/take/take.h
index b6ac4a9..8e74475 100644
--- a/ccan/take/take.h
+++ b/ccan/take/take.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_TAKE_H
 #define CCAN_TAKE_H
-#include "config.h"
+#include "ccan_config.h"
 #include <stdbool.h>
 
 /**
diff --git a/ccan/tal/_info b/ccan/tal/_info
index 0d75f56..4b312d6 100644
--- a/ccan/tal/_info
+++ b/ccan/tal/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tal - compact tree allocator routines (inspired by talloc)
diff --git a/ccan/tal/link/_info b/ccan/tal/link/_info
index d128e01..ed0102c 100644
--- a/ccan/tal/link/_info
+++ b/ccan/tal/link/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tal/link - link helper for tal
diff --git a/ccan/tal/link/link.h b/ccan/tal/link/link.h
index 18d598b..65cb935 100644
--- a/ccan/tal/link/link.h
+++ b/ccan/tal/link/link.h
@@ -1,7 +1,7 @@
 /* Licensed under BSD-MIT - see LICENSE file for details */
 #ifndef TAL_LINK_H
 #define TAL_LINK_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/tal/tal.h>
 
 /**
diff --git a/ccan/tal/path/_info b/ccan/tal/path/_info
index 24b9e46..0a23526 100644
--- a/ccan/tal/path/_info
+++ b/ccan/tal/path/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tal/path - routines to manipulate paths
diff --git a/ccan/tal/str/_info b/ccan/tal/str/_info
index 381dd98..f8aa7b9 100644
--- a/ccan/tal/str/_info
+++ b/ccan/tal/str/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tal/str - string helper routines which use tal
diff --git a/ccan/tal/tal.h b/ccan/tal/tal.h
index 0b05075..9d29857 100644
--- a/ccan/tal/tal.h
+++ b/ccan/tal/tal.h
@@ -1,7 +1,7 @@
 /* Licensed under BSD-MIT - see LICENSE file for details */
 #ifndef CCAN_TAL_H
 #define CCAN_TAL_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/compiler/compiler.h>
 #include <ccan/likely/likely.h>
 #include <ccan/typesafe_cb/typesafe_cb.h>
diff --git a/ccan/tal/talloc/_info b/ccan/tal/talloc/_info
index cf01d6c..031f481 100644
--- a/ccan/tal/talloc/_info
+++ b/ccan/tal/talloc/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tal/talloc - an implementation of the tal interface in terms of talloc.
diff --git a/ccan/tal/talloc/talloc.h b/ccan/tal/talloc/talloc.h
index 718f12c..999147d 100644
--- a/ccan/tal/talloc/talloc.h
+++ b/ccan/tal/talloc/talloc.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPL - see LICENSE file for details */
 #ifndef CCAN_TAL_TALLOC_H
 #define CCAN_TAL_TALLOC_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/compiler/compiler.h>
 #include <ccan/likely/likely.h>
 #include <ccan/typesafe_cb/typesafe_cb.h>
diff --git a/ccan/talloc/_info b/ccan/talloc/_info
index 0ae45e7..b8a614b 100644
--- a/ccan/talloc/_info
+++ b/ccan/talloc/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * talloc - tree allocator routines
diff --git a/ccan/talloc/talloc.h b/ccan/talloc/talloc.h
index 0ca338b..fede3b7 100644
--- a/ccan/talloc/talloc.h
+++ b/ccan/talloc/talloc.h
@@ -28,7 +28,7 @@
 #include <stdarg.h>
 #include <ccan/typesafe_cb/typesafe_cb.h>
 #include <ccan/compiler/compiler.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /*
   this uses a little trick to allow __LINE__ to be stringified
diff --git a/ccan/talloc_link/_info b/ccan/talloc_link/_info
index d1cdb24..fffb6c8 100644
--- a/ccan/talloc_link/_info
+++ b/ccan/talloc_link/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * talloc_link - link helper for talloc
diff --git a/ccan/tally/_info b/ccan/tally/_info
index 6dab9b7..8d1c024 100644
--- a/ccan/tally/_info
+++ b/ccan/tally/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tally - running tally of integers
diff --git a/ccan/tally/tally.h b/ccan/tally/tally.h
index c9272f1..de2ebd4 100644
--- a/ccan/tally/tally.h
+++ b/ccan/tally/tally.h
@@ -1,7 +1,7 @@
 /* Licensed under LGPLv3+ - see LICENSE file for details */
 #ifndef CCAN_TALLY_H
 #define CCAN_TALLY_H
-#include "config.h"
+#include "ccan_config.h"
 #include <sys/types.h>
 
 struct tally;
diff --git a/ccan/tap/_info b/ccan/tap/_info
index baea996..fcd1fa1 100644
--- a/ccan/tap/_info
+++ b/ccan/tap/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tap - Test Anything Protocol
diff --git a/ccan/tap/tap.c b/ccan/tap/tap.c
index bf8a276..551a313 100644
--- a/ccan/tap/tap.c
+++ b/ccan/tap/tap.c
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  */
-#include "config.h"
+#include "ccan_config.h"
 #include <ctype.h>
 #include <stdarg.h>
 #include <stdio.h>
diff --git a/ccan/tcon/_info b/ccan/tcon/_info
index 895da9e..972cb10 100644
--- a/ccan/tcon/_info
+++ b/ccan/tcon/_info
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include <string.h>
 
 /**
diff --git a/ccan/tcon/tcon.h b/ccan/tcon/tcon.h
index cf82f3e..5509e3c 100644
--- a/ccan/tcon/tcon.h
+++ b/ccan/tcon/tcon.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_TCON_H
 #define CCAN_TCON_H
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * TCON - declare a _tcon type containing canary variables.
diff --git a/ccan/time/_info b/ccan/time/_info
index 9d1301c..aebee7d 100644
--- a/ccan/time/_info
+++ b/ccan/time/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * time - routines for dealing with time
diff --git a/ccan/time/time.h b/ccan/time/time.h
index e4298d0..23e5330 100644
--- a/ccan/time/time.h
+++ b/ccan/time/time.h
@@ -1,7 +1,7 @@
 /* Licensed under BSD-MIT - see LICENSE file for details */
 #ifndef CCAN_TIME_H
 #define CCAN_TIME_H
-#include "config.h"
+#include "ccan_config.h"
 #include <sys/time.h>
 #if HAVE_STRUCT_TIMESPEC
 #include <time.h>
diff --git a/ccan/timer/_info b/ccan/timer/_info
index cb6808b..027a436 100644
--- a/ccan/timer/_info
+++ b/ccan/timer/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * timer - efficient implementation of rarely-expiring timers.
diff --git a/ccan/tlist/_info b/ccan/tlist/_info
index e18e2ef..828ecd9 100644
--- a/ccan/tlist/_info
+++ b/ccan/tlist/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * tlist - typesafe double linked list routines
diff --git a/ccan/ttxml/_info b/ccan/ttxml/_info
index 3ec4520..a23dc86 100644
--- a/ccan/ttxml/_info
+++ b/ccan/ttxml/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * ttxml - tiny XML library for parsing (trusted!) XML documents.
diff --git a/ccan/typesafe_cb/_info b/ccan/typesafe_cb/_info
index 4485aec..439acee 100644
--- a/ccan/typesafe_cb/_info
+++ b/ccan/typesafe_cb/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * typesafe_cb - macros for safe callbacks.
diff --git a/ccan/typesafe_cb/typesafe_cb.h b/ccan/typesafe_cb/typesafe_cb.h
index 942d5c2..78e2ed0 100644
--- a/ccan/typesafe_cb/typesafe_cb.h
+++ b/ccan/typesafe_cb/typesafe_cb.h
@@ -1,7 +1,7 @@
 /* CC0 (Public domain) - see LICENSE file for details */
 #ifndef CCAN_TYPESAFE_CB_H
 #define CCAN_TYPESAFE_CB_H
-#include "config.h"
+#include "ccan_config.h"
 
 #if HAVE_TYPEOF && HAVE_BUILTIN_CHOOSE_EXPR && HAVE_BUILTIN_TYPES_COMPATIBLE_P
 /**
diff --git a/ccan/version/_info b/ccan/version/_info
index 3aad1e8..68f92ee 100644
--- a/ccan/version/_info
+++ b/ccan/version/_info
@@ -1,5 +1,5 @@
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * version - helper functions for major.minor-style version numbers
diff --git a/ccan/wwviaudio/_info b/ccan/wwviaudio/_info
index ba92f8f..9e1b94d 100644
--- a/ccan/wwviaudio/_info
+++ b/ccan/wwviaudio/_info
@@ -1,6 +1,6 @@
 #include <stdio.h>
 #include <string.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * wwviaudio - realtime playback and mixing of 16 bit signed PCM audio data.
diff --git a/doc/ccanlint.1.txt b/doc/ccanlint.1.txt
index 4ba5249..185e4a0 100644
--- a/doc/ccanlint.1.txt
+++ b/doc/ccanlint.1.txt
@@ -59,7 +59,7 @@ OPTIONS
   for many tests.
 
 *--compiler*='COMPILER'::
-  *ccanlint* read config.h about finding 'CCAN_COMPILER'. Otherwise use the default
+  *ccanlint* read ccan_config.h about finding 'CCAN_COMPILER'. Otherwise use the default
   when it was built. The change, to use this compiler.
 
 *--cflags*='CFLAGS'::
@@ -113,7 +113,7 @@ test, but happy:
   the example or *ccanlint* unhappy.
 
 *hash_if*::
-  Module wants *ccanlint* 'config.h' "#define HAVE_FEATURE" for all
+  Module wants *ccanlint* 'ccan_config.h' "#define HAVE_FEATURE" for all
   feature. Function test "#if HAVE_FEATURE" no "#ifdef HAVE_FEATURE"
   because user might not know about the role at all.  Intelligent GCC
   flag '-Wundef' say HAVE_FEATURE not 0, not 1! but only if the
@@ -226,11 +226,11 @@ test, but happy:
   gimmick 'ccan/failtest'.
 
 *reduce_features*::
-  Code use 'HAVE_FEATURE' make special config.h turned off.  Not
+  Code use 'HAVE_FEATURE' make special ccan_config.h turned off.  Not
   stupid like HAVE_BIG_ENDIAN though!
 
 *depends_build_without_features*::
-  Make modules CCAN need. config.h but not more features.
+  Make modules CCAN need. ccan_config.h but not more features.
 
 *objects_build_without_features*::
   Make the module again, but not more features.
diff --git a/junkcode/iasoule32 at gmail.com-polynomial/_info.c b/junkcode/iasoule32 at gmail.com-polynomial/_info.c
index 03abb82..3e239fb 100644
--- a/junkcode/iasoule32 at gmail.com-polynomial/_info.c
+++ b/junkcode/iasoule32 at gmail.com-polynomial/_info.c
@@ -1,6 +1,6 @@
 #include <string.h>
 #include <stdio.h>
-#include "config.h"
+#include "ccan_config.h"
 
 /**
  * polynomial_adt - A polynomial module with ability to add,sub,mul derivate/integrate, compose ... polynomials 
diff --git a/tools/Makefile b/tools/Makefile
index 1ab69c9..8c133b8 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -23,7 +23,7 @@ DEP_OBJS = ccan/err/err.o \
 .PHONY: tools
 tools: $(ALL_TOOLS)
 
-tools/ccan_depends.o: config.h
+tools/ccan_depends.o: ccan_config.h
 
 tools/ccan_depends: tools/ccan_depends.o $(DEP_OBJS)
 
diff --git a/tools/ccanlint/Makefile b/tools/ccanlint/Makefile
index f09835a..e2aa30c 100644
--- a/tools/ccanlint/Makefile
+++ b/tools/ccanlint/Makefile
@@ -41,7 +41,7 @@ CORE_OBJS := \
 
 OBJS := $(CORE_OBJS) $(TEST_OBJS)
 
-$(CORE_OBJS): config.h
+$(CORE_OBJS): ccan_config.h
 
 tools/ccanlint/ccanlint: $(OBJS)
 
diff --git a/tools/ccanlint/ccanlint.h b/tools/ccanlint/ccanlint.h
index ae22fa8..ee581ad 100644
--- a/tools/ccanlint/ccanlint.h
+++ b/tools/ccanlint/ccanlint.h
@@ -1,6 +1,6 @@
 #ifndef CCAN_LINT_H
 #define CCAN_LINT_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/list/list.h>
 #include <ccan/tal/tal.h>
 #include <ccan/dgraph/dgraph.h>
@@ -196,7 +196,7 @@ extern bool non_ccan_deps;
 /* Did we fail to build? */
 extern bool build_failed;
 
-/* Contents of config.h (or NULL if not found) */
+/* Contents of ccan_config.h (or NULL if not found) */
 extern const char *config_header;
 
 /* Where is the ccan dir?   */
diff --git a/tools/ccanlint/file_analysis.c b/tools/ccanlint/file_analysis.c
index 8fbb718..667f273 100644
--- a/tools/ccanlint/file_analysis.c
+++ b/tools/ccanlint/file_analysis.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include "ccanlint.h"
 #include <ccan/str/str.h>
 #include <ccan/take/take.h>
diff --git a/tools/ccanlint/tests/info_exists.c b/tools/ccanlint/tests/info_exists.c
index 86101aa..b7eff4e 100644
--- a/tools/ccanlint/tests/info_exists.c
+++ b/tools/ccanlint/tests/info_exists.c
@@ -32,7 +32,7 @@ static void check_has_info(struct manifest *m,
 
 static const char template[] =
 	"#include <string.h>\n"
-	"#include \"config.h\"\n"
+	"#include \"ccan_config.h\"\n"
 	"\n"
 	"/**\n"
 	" * %s - YOUR-ONE-LINE-DESCRIPTION-HERE\n"
diff --git a/tools/ccanlint/tests/reduce_features.c b/tools/ccanlint/tests/reduce_features.c
index b46c85f..338480e 100644
--- a/tools/ccanlint/tests/reduce_features.c
+++ b/tools/ccanlint/tests/reduce_features.c
@@ -18,7 +18,7 @@ bool features_were_reduced;
 static const char *can_run(struct manifest *m)
 {
 	if (!config_header)
-		return tal_strdup(m, "Could not read config.h");
+		return tal_strdup(m, "Could not read ccan_config.h");
 	return NULL;
 }
 
@@ -164,7 +164,7 @@ static void do_reduce_features(struct manifest *m,
 	if (!options)
 		return;
 
-	/* Now make our own config.h variant, with our own options. */
+	/* Now make our own ccan_config.h variant, with our own options. */
 	hdr = tal_strcat(m, "/* Modified by reduce_features */\n",
 			 config_header);
 	for (sym = htable_option_first(options, &i);
@@ -175,18 +175,18 @@ static void do_reduce_features(struct manifest *m,
 	if (mkdir("reduced-features", 0700) != 0 && errno != EEXIST)
 		err(1, "Creating reduced-features directory");
 
-	fd = open("reduced-features/config.h", O_TRUNC|O_CREAT|O_RDWR, 0600);
+	fd = open("reduced-features/ccan_config.h", O_TRUNC|O_CREAT|O_RDWR, 0600);
 	if (fd < 0)
-		err(1, "Creating reduced-features/config.h");
+		err(1, "Creating reduced-features/ccan_config.h");
 	if (!write_all(fd, hdr, strlen(hdr)))
-		err(1, "Writing reduced-features/config.h");
+		err(1, "Writing reduced-features/ccan_config.h");
 	close(fd);
 	features_were_reduced = true;
 }
 
 struct ccanlint reduce_features = {
 	.key = "reduce_features",
-	.name = "Produce config.h with reduced features",
+	.name = "Produce ccan_config.h with reduced features",
 	.can_run = can_run,
 	.check = do_reduce_features,
 	/* We only want to compile up versions with reduced featuress once
diff --git a/tools/configurator/configurator.c b/tools/configurator/configurator.c
index 5ba8cb0..9959310 100644
--- a/tools/configurator/configurator.c
+++ b/tools/configurator/configurator.c
@@ -1,4 +1,4 @@
-/* Simple tool to create config.h.
+/* Simple tool to create ccan_config.h.
  * Would be much easier with ccan modules, but deliberately standalone.
  *
  * Copyright 2011 Rusty Russell <rusty at rustcorp.com.au>.  MIT license.
diff --git a/tools/manifest.c b/tools/manifest.c
index 762550e..10d5f38 100644
--- a/tools/manifest.c
+++ b/tools/manifest.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include "ccan_config.h"
 #include "manifest.h"
 #include "tools.h"
 #include <ccan/str/str.h>
diff --git a/tools/manifest.h b/tools/manifest.h
index d2de643..8fb3f85 100644
--- a/tools/manifest.h
+++ b/tools/manifest.h
@@ -1,6 +1,6 @@
 #ifndef CCAN_TOOLS_MANIFEST_H
 #define CCAN_TOOLS_MANIFEST_H
-#include "config.h"
+#include "ccan_config.h"
 #include "ccanlint/licenses.h"
 #include <ccan/list/list.h>
 
diff --git a/tools/read_config_header.c b/tools/read_config_header.c
index 2701c90..12ed134 100644
--- a/tools/read_config_header.c
+++ b/tools/read_config_header.c
@@ -89,7 +89,7 @@ static char *demangle_string(char *string)
 
 char *read_config_header(const char *ccan_dir, bool verbose)
 {
-	char *fname = path_join(NULL, ccan_dir, "config.h");
+	char *fname = path_join(NULL, ccan_dir, "ccan_config.h");
 	char **lines;
 	unsigned int i;
 	char *config_header;
diff --git a/tools/read_config_header.h b/tools/read_config_header.h
index 8554f76..fb800eb 100644
--- a/tools/read_config_header.h
+++ b/tools/read_config_header.h
@@ -8,7 +8,7 @@ bool get_token(const char **line, const char *token);
 /* Get an identifier token. */
 char *get_symbol_token(void *ctx, const char **line);
 
-/* Read config header from config_dir/config.h: sets compiler/cflags. */
+/* Read config_header from config_dir/ccan_config.h: sets compiler/cflags. */
 char *read_config_header(const char *config_dir, bool verbose);
 
 #endif /* CCAN_TOOLS_READ_CONFIG_HEADER_H */
diff --git a/tools/test_all.sh b/tools/test_all.sh
index 3c65c21..8d52c01 100755
--- a/tools/test_all.sh
+++ b/tools/test_all.sh
@@ -7,16 +7,16 @@ if ! make -s; then
 fi
 
 # Now, remove one HAVE_ at a time.
-cp config.h original-config.h
-trap "mv original-config.h config.h && rm -f .newconfig" EXIT
+cp ccan_config.h original-ccan_config.h
+trap "mv original-ccan_config.h ccan_config.h && rm -f .newconfig" EXIT
 
-while grep -q '1$' config.h; do
-    tr '\012' @ < config.h | sed 's/1@/0@/' | tr @ '\012' > .newconfig
-    diff -u config.h .newconfig
-    mv .newconfig config.h
+while grep -q '1$' ccan_config.h; do
+    tr '\012' @ < ccan_config.h | sed 's/1@/0@/' | tr @ '\012' > .newconfig
+    diff -u ccan_config.h .newconfig
+    mv .newconfig ccan_config.h
     if ! make -s; then
 	echo Failed config:
-	cat config.h
+	cat ccan_config.h
 	exit 1
     fi
 done
diff --git a/tools/tools.h b/tools/tools.h
index 6070749..e6bac78 100644
--- a/tools/tools.h
+++ b/tools/tools.h
@@ -1,6 +1,6 @@
 #ifndef CCAN_TOOLS_H
 #define CCAN_TOOLS_H
-#include "config.h"
+#include "ccan_config.h"
 #include <ccan/compiler/compiler.h>
 #include <ccan/rbuf/rbuf.h>
 #include <ccan/tal/tal.h>
diff --git a/web/staticindex.php b/web/staticindex.php
index d9a59d2..a412fdd 100644
--- a/web/staticindex.php
+++ b/web/staticindex.php
@@ -29,7 +29,7 @@ or clone our <a href="http://git.ozlabs.org/?p=ccan">git repository</a> (<tt>git
 <p>
 There are two ways to use it:
 <ol>
-<li> Put modules into a ccan/ subdirectory into your project.  Add a "config.h" (like
+<li> Put modules into a ccan/ subdirectory into your project.  Add a "ccan_config.h" (like
      <a href="example-config.h">this example</a>, or generate one using <a href="http://git.ozlabs.org/?p=ccan;a=blob_plain;f=tools/configurator/configurator.c">the configurator</a>) and compile every .c file
      in ccan/* (as in this <a href="Makefile-ccan">Makefile</a>)).
 
-- 
1.8.3



More information about the ccan mailing list