xref: /aosp_15_r20/external/double-conversion/README.md (revision a6021da3bd53a1cb979b0905bbb837249345d1b1)
1*a6021da3SAndroid Build Coastguard Workerhttps://github.com/google/double-conversion
2*a6021da3SAndroid Build Coastguard Worker
3*a6021da3SAndroid Build Coastguard WorkerThis project (double-conversion) provides binary-decimal and decimal-binary
4*a6021da3SAndroid Build Coastguard Workerroutines for IEEE doubles.
5*a6021da3SAndroid Build Coastguard Worker
6*a6021da3SAndroid Build Coastguard WorkerThe library consists of efficient conversion routines that have been extracted
7*a6021da3SAndroid Build Coastguard Workerfrom the V8 JavaScript engine. The code has been refactored and improved so that
8*a6021da3SAndroid Build Coastguard Workerit can be used more easily in other projects.
9*a6021da3SAndroid Build Coastguard Worker
10*a6021da3SAndroid Build Coastguard WorkerThere is extensive documentation in `double-conversion/string-to-double.h` and
11*a6021da3SAndroid Build Coastguard Worker`double-conversion/double-to-string.h`. Other examples can be found in
12*a6021da3SAndroid Build Coastguard Worker`test/cctest/test-conversions.cc`.
13*a6021da3SAndroid Build Coastguard Worker
14*a6021da3SAndroid Build Coastguard Worker
15*a6021da3SAndroid Build Coastguard WorkerBuilding
16*a6021da3SAndroid Build Coastguard Worker========
17*a6021da3SAndroid Build Coastguard Worker
18*a6021da3SAndroid Build Coastguard WorkerThis library can be built with [scons][0] or [cmake][1].
19*a6021da3SAndroid Build Coastguard WorkerThe checked-in Makefile simply forwards to scons, and provides a
20*a6021da3SAndroid Build Coastguard Workershortcut to run all tests:
21*a6021da3SAndroid Build Coastguard Worker
22*a6021da3SAndroid Build Coastguard Worker    make
23*a6021da3SAndroid Build Coastguard Worker    make test
24*a6021da3SAndroid Build Coastguard Worker
25*a6021da3SAndroid Build Coastguard WorkerScons
26*a6021da3SAndroid Build Coastguard Worker-----
27*a6021da3SAndroid Build Coastguard Worker
28*a6021da3SAndroid Build Coastguard WorkerThe easiest way to install this library is to use `scons`. It builds
29*a6021da3SAndroid Build Coastguard Workerthe static and shared library, and is set up to install those at the
30*a6021da3SAndroid Build Coastguard Workercorrect locations:
31*a6021da3SAndroid Build Coastguard Worker
32*a6021da3SAndroid Build Coastguard Worker    scons install
33*a6021da3SAndroid Build Coastguard Worker
34*a6021da3SAndroid Build Coastguard WorkerUse the `DESTDIR` option to change the target directory:
35*a6021da3SAndroid Build Coastguard Worker
36*a6021da3SAndroid Build Coastguard Worker    scons DESTDIR=alternative_directory install
37*a6021da3SAndroid Build Coastguard Worker
38*a6021da3SAndroid Build Coastguard WorkerCmake
39*a6021da3SAndroid Build Coastguard Worker-----
40*a6021da3SAndroid Build Coastguard Worker
41*a6021da3SAndroid Build Coastguard WorkerTo use cmake run `cmake .` in the root directory. This overwrites the
42*a6021da3SAndroid Build Coastguard Workerexisting Makefile.
43*a6021da3SAndroid Build Coastguard Worker
44*a6021da3SAndroid Build Coastguard WorkerUse `-DBUILD_SHARED_LIBS=ON` to enable the compilation of shared libraries.
45*a6021da3SAndroid Build Coastguard WorkerNote that this disables static libraries. There is currently no way to
46*a6021da3SAndroid Build Coastguard Workerbuild both libraries at the same time with cmake.
47*a6021da3SAndroid Build Coastguard Worker
48*a6021da3SAndroid Build Coastguard WorkerUse `-DBUILD_TESTING=ON` to build the test executable.
49*a6021da3SAndroid Build Coastguard Worker
50*a6021da3SAndroid Build Coastguard Worker    cmake . -DBUILD_TESTING=ON
51*a6021da3SAndroid Build Coastguard Worker    make
52*a6021da3SAndroid Build Coastguard Worker    test/cctest/cctest
53*a6021da3SAndroid Build Coastguard Worker
54*a6021da3SAndroid Build Coastguard Worker[0]: http://www.scons.org/
55*a6021da3SAndroid Build Coastguard Worker[1]: https://cmake.org/
56