Upstream version 9.37.197.0
[platform/framework/web/crosswalk.git] / src / third_party / libaddressinput / chromium / cpp / README
1 Intro
2 =====
3
4 The C++ version of libaddressinput library provides UI layout information and
5 validation for address input forms. All strings in the library use UTF-8
6 encoding.
7
8 The library does not provide a UI. The user of the library must provide the user
9 interface that uses libaddressinput. The user of the library must also provide a
10 way to store data on disk and download data from the internet.
11
12 The first client of the library is Chrome web browser. This motivates not
13 providing UI or networking capabilities. Chrome will provide those.
14
15 Dependencies
16 ============
17
18 The library depends on these tools and libraries:
19
20 GYP: Generates the build files.
21 Ninja: Executes the build files.
22 GTest: Used for unit tests.
23 Python: Used by GRIT, which generates localization files.
24 RE2: Used for validating postal code format.
25
26 Most of these packages are available on Debian-like distributions. You can
27 install them with this command:
28
29 $ sudo apt-get install gyp ninja-build libgtest-dev python libre2-dev
30
31 Make sure that your version of GYP is at least 0.1~svn1395. Older versions of
32 GYP do not generate the Ninja build files correctly. You can download a
33 new-enough version from http://packages.ubuntu.com/saucy/gyp.
34
35 If your distribution does not include the binary packages for the dependencies,
36 you can download them from these locations:
37
38 http://packages.ubuntu.com/saucy/gyp
39 http://packages.ubuntu.com/saucy/ninja-build
40 http://packages.ubuntu.com/saucy/libgtest-dev
41 http://packages.ubuntu.com/saucy/python
42 http://packages.debian.org/experimental/libre2-dev
43
44 Alternatively, you can download, build, and install these tools and libraries
45 from source code. Their home pages contain information on how to accomplish
46 that.
47
48 https://code.google.com/p/gyp/
49 http://martine.github.io/ninja/
50 https://code.google.com/p/googletest/
51 http://python.org/
52 https://code.google.com/p/re2/
53
54 Build
55 =====
56
57 Building the library involves generating an out/Default/build.ninja file and
58 running ninja:
59
60 $ export GYP_GENERATORS='ninja'
61 $ gyp --depth .
62 $ ninja -C out/Default
63
64 Overriding paths defined in the *.gyp files can be done by setting the
65 GYP_DEFINES environment variable before running gyp:
66
67 $ export GYP_DEFINES="gtest_dir='/xxx/include' gtest_src_dir='/xxx'"
68
69 Test
70 ====
71
72 This command will execute the unit tests for the library:
73
74 $ out/Default/unit_tests