xref: /aosp_15_r20/external/libconfig/README (revision 2e9d491483b805f09ea864149eadd5680efcc72a)
1*2e9d4914SAndroid Build Coastguard Worker
2*2e9d4914SAndroid Build Coastguard WorkerTo produce a PDF manual, issue the command "make pdf" after running
3*2e9d4914SAndroid Build Coastguard Worker`./configure'.
4*2e9d4914SAndroid Build Coastguard Worker
5*2e9d4914SAndroid Build Coastguard Worker				 -*-
6*2e9d4914SAndroid Build Coastguard Worker
7*2e9d4914SAndroid Build Coastguard WorkerIf you do not wish to build the C++ components, use:
8*2e9d4914SAndroid Build Coastguard Worker
9*2e9d4914SAndroid Build Coastguard Worker./configure --disable-cxx
10*2e9d4914SAndroid Build Coastguard Worker
11*2e9d4914SAndroid Build Coastguard Worker				 -*-
12*2e9d4914SAndroid Build Coastguard Worker
13*2e9d4914SAndroid Build Coastguard WorkerThe `examples' subdirectory contains some examples of using libconfig
14*2e9d4914SAndroid Build Coastguard Workerfrom C and C++.
15*2e9d4914SAndroid Build Coastguard Worker
16*2e9d4914SAndroid Build Coastguard Worker				 -*-
17*2e9d4914SAndroid Build Coastguard Worker
18*2e9d4914SAndroid Build Coastguard WorkerFlex and Bison are not required in order to build this
19*2e9d4914SAndroid Build Coastguard Workerpackage. However, you will need them, if you modify the .l or .y files. See
20*2e9d4914SAndroid Build Coastguard Workerthe list of required build tool versions below.
21*2e9d4914SAndroid Build Coastguard Worker
22*2e9d4914SAndroid Build Coastguard Worker				 -*-
23*2e9d4914SAndroid Build Coastguard Worker
24*2e9d4914SAndroid Build Coastguard WorkerTo successfully compile using MinGW (with gcc 4.4.0 or later), it may
25*2e9d4914SAndroid Build Coastguard Workerbe necessary to modify the file "mingw32\4.4.0\libstdc++.la", changing line 11
26*2e9d4914SAndroid Build Coastguard Workerfrom:
27*2e9d4914SAndroid Build Coastguard Worker
28*2e9d4914SAndroid Build Coastguard Workerlibrary_names='libstdc++.dll.a'
29*2e9d4914SAndroid Build Coastguard Worker
30*2e9d4914SAndroid Build Coastguard Workerto:
31*2e9d4914SAndroid Build Coastguard Worker
32*2e9d4914SAndroid Build Coastguard Workerlibrary_names='libstdc++.a'
33*2e9d4914SAndroid Build Coastguard Worker
34*2e9d4914SAndroid Build Coastguard Worker(See http://trac.osgeo.org/geos/ticket/282 for more information).
35*2e9d4914SAndroid Build Coastguard Worker
36*2e9d4914SAndroid Build Coastguard Worker				 -*-
37*2e9d4914SAndroid Build Coastguard Worker
38*2e9d4914SAndroid Build Coastguard WorkerTo cross-compile for Android:
39*2e9d4914SAndroid Build Coastguard Worker
40*2e9d4914SAndroid Build Coastguard Worker1) Create a standalone toolchain using the 'make-standalone-toolchain.sh'
41*2e9d4914SAndroid Build Coastguard Workerscript included with the Android NDK. For example:
42*2e9d4914SAndroid Build Coastguard Worker
43*2e9d4914SAndroid Build Coastguard Worker$ /pkg/android-ndk-r9d/build/tools/make-standalone-toolchain.sh \
44*2e9d4914SAndroid Build Coastguard Worker  --platform=android-19 \
45*2e9d4914SAndroid Build Coastguard Worker  --install-dir=/pkg/android-toolchain-19 \
46*2e9d4914SAndroid Build Coastguard Worker  --system=linux-x86_64 \
47*2e9d4914SAndroid Build Coastguard Worker  --arch=arm
48*2e9d4914SAndroid Build Coastguard Worker
49*2e9d4914SAndroid Build Coastguard Worker2) Add the standalone toolchain's bin directory to the front of the path:
50*2e9d4914SAndroid Build Coastguard Worker
51*2e9d4914SAndroid Build Coastguard Worker$ export PATH=/pkg/android-toolchain-19/bin:$PATH
52*2e9d4914SAndroid Build Coastguard Worker
53*2e9d4914SAndroid Build Coastguard Worker3) Configure libconfig for cross-compilation:
54*2e9d4914SAndroid Build Coastguard Worker
55*2e9d4914SAndroid Build Coastguard Worker$ ./configure --host=arm-linux-androideabi \
56*2e9d4914SAndroid Build Coastguard Worker  --with-sysroot=/pkg/android-toolchain-19/sysroot
57*2e9d4914SAndroid Build Coastguard Worker
58*2e9d4914SAndroid Build Coastguard Worker4) Build libconfig
59*2e9d4914SAndroid Build Coastguard Worker
60*2e9d4914SAndroid Build Coastguard Worker$ make
61*2e9d4914SAndroid Build Coastguard Worker
62*2e9d4914SAndroid Build Coastguard Worker				 -*-
63*2e9d4914SAndroid Build Coastguard Worker
64*2e9d4914SAndroid Build Coastguard WorkerBuild tools dependencies. (These are only required if you are a maintainer.)
65*2e9d4914SAndroid Build Coastguard Worker
66*2e9d4914SAndroid Build Coastguard WorkerAutoconf 2.69
67*2e9d4914SAndroid Build Coastguard WorkerAutomake 1.14.1
68*2e9d4914SAndroid Build Coastguard WorkerBison 3.0.2
69*2e9d4914SAndroid Build Coastguard WorkerFlex 2.5.39
70*2e9d4914SAndroid Build Coastguard WorkerLibtool 2.4.2
71*2e9d4914SAndroid Build Coastguard Worker
72*2e9d4914SAndroid Build Coastguard Worker				 -*-
73*2e9d4914SAndroid Build Coastguard Worker
74*2e9d4914SAndroid Build Coastguard WorkerLibconfig may be found on github at https://github.com/hyperrealm/libconfig
75*2e9d4914SAndroid Build Coastguard Worker
76*2e9d4914SAndroid Build Coastguard Worker
77*2e9d4914SAndroid Build Coastguard Worker
78*2e9d4914SAndroid Build Coastguard WorkerFor some reason, we need to symlink /pkg/android-toolchain-19/sysroot/pkg -> /pkg
79