ares_private.h: use curl_memdebug.h instead of memdebug.h
[platform/upstream/c-ares.git] / README
1 c-ares
2 ======
3
4 This is c-ares, an asynchronous resolver library.  It is intended for
5 applications which need to perform DNS queries without blocking, or need to
6 perform multiple DNS queries in parallel.  The primary examples of such
7 applications are servers which communicate with multiple clients and programs
8 with graphical user interfaces.
9
10 The full source code is available in the 'c-ares' release archives, and in a
11 git repository: http://github.com/bagder/c-ares
12
13 If you find bugs, correct flaws, have questions or have comments in general in
14 regard to c-ares (or by all means the original ares too), get in touch with us
15 on the c-ares mailing list: http://cool.haxx.se/mailman/listinfo/c-ares
16
17 c-ares is of course distributed under the same MIT-style license as the
18 original ares.
19
20 You'll find all c-ares details and news here:
21
22         http://c-ares.haxx.se/
23
24
25 NOTES FOR C-ARES HACKERS
26
27 The following notes apply to c-ares version 1.7.0 and later.
28
29 * The distributed ares_build.h file is only intended to be used on systems
30   which can not run the also distributed configure script.
31
32 * The distributed ares_build.h file is generated as a copy of ares_build.h.dist
33   when the c-ares source code distribution archive file is originally created.
34
35 * If you check out from git on a non-configure platform, you must run the
36   appropriate buildconf* script to set up ares_build.h and other local files
37   before being able of compiling the library.
38
39 * On systems capable of running the configure script, the configure process
40   will overwrite the distributed ares_build.h file with one that is suitable
41   and specific to the library being configured and built, this new file is
42   generated from the ares_build.h.in template file.
43
44 * If you intend to distribute an already compiled c-ares library you _MUST_
45   also distribute along with it the generated ares_build.h which has been
46   used to compile it. Otherwise the library will be of no use for the users of
47   the library that you have built. It is _your_ responsibility to provide this
48   file. No one at the c-ares project can know how you have built the library.
49
50 * File ares_build.h includes platform and configuration dependent info,
51   and must not be modified by anyone. Configure script generates it for you.
52
53 * We cannot assume anything else but very basic compiler features being
54   present. While c-ares requires an ANSI C compiler to build, some of the
55   earlier ANSI compilers clearly can't deal with some preprocessor operators.
56
57 * Newlines must remain unix-style for older compilers' sake.
58
59 * Comments must be written in the old-style /* unnested C-fashion */
60