1 # Copyright 2003, 2005 Douglas Gregor
2 # Copyright 2004 John Maddock
3 # Copyright 2002, 2003, 2004, 2007 Vladimir Prus
4 # Distributed under the Boost Software License, Version 1.0.
5 # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
7 # This file is used to configure your Boost.Build installation. You can modify
8 # this file in place, or you can place it in a permanent location so that it
9 # does not get overwritten should you get a new version of Boost.Build. See:
11 # http://www.boost.org/boost-build2/doc/html/bbv2/overview/configuration.html
13 # for documentation about possible permanent locations.
15 # This file specifies which toolsets (C++ compilers), libraries, and other
16 # tools are available. Often, you should be able to just uncomment existing
17 # example lines and adjust them to taste. The complete list of supported tools,
18 # and configuration instructions can be found at:
20 # http://boost.org/boost-build2/doc/html/bbv2/reference/tools.html
23 # This file uses Jam language syntax to describe available tools. Mostly,
24 # there are 'using' lines, that contain the name of the used tools, and
25 # parameters to pass to those tools -- where paremeters are separated by
26 # semicolons. Important syntax notes:
28 # - Both ':' and ';' must be separated from other tokens by whitespace
29 # - The '\' symbol is a quote character, so when specifying Windows paths you
30 # should use '/' or '\\' instead.
32 # More details about the syntax can be found at:
34 # http://boost.org/boost-build2/doc/html/bbv2/advanced.html#bbv2.advanced.jam_language
41 # Configure gcc (default version).
44 # Configure specific gcc version, giving alternative name to use.
45 # using gcc : 3.2 : g++-3.2 ;
49 local androidNDK = [ os.environ ANDROID_NDK ] ;
50 local platform = [ os.environ PLATFORM ] ;
51 local version = [ os.environ VERSION ] ;
53 using gcc : : arm-linux-androideabi-g++ :
54 <archiver>arm-linux-androideabi-ar
55 <ranlib>arm-linux-androideabi-ranlib
56 <compileflags>-fexceptions
59 <compileflags>-ffunction-sections
60 <compileflags>-funwind-tables
61 <compileflags>-D__ARM_ARCH_5__
62 <compileflags>-D__ARM_ARCH_5T__
63 <compileflags>-D__ARM_ARCH_5E__
64 <compileflags>-D__ARM_ARCH_5TE__
65 <compileflags>-Wno-psabi
66 <compileflags>-march=armv5te
67 <compileflags>-mtune=xscale
68 <compileflags>-msoft-float
71 <compileflags>-fomit-frame-pointer
72 <compileflags>-fno-strict-aliasing
73 <compileflags>-finline-limit=64
74 <compileflags>-I$(androidNDK)/platforms/$(platform)/arch-arm/usr/include
75 <compileflags>-Wa,--noexecstack
76 <compileflags>-DANDROID
77 <compileflags>-D__ANDROID__
78 <compileflags>-DNDEBUG
81 <compileflags>-I$(androidNDK)/sources/cxx-stl/gnu-libstdc++/$(version)/include
82 <compileflags>-I$(androidNDK)/sources/cxx-stl/gnu-libstdc++/$(version)/libs/armeabi/include
83 # @Moss - Above are the 'oficial' android flags
85 <compileflags>-fvisibility=hidden
86 <compileflags>-fvisibility-inlines-hidden
87 <compileflags>-fdata-sections
89 <cxxflags>-D_REENTRANT
90 <cxxflags>-D_GLIBCXX__PTHREADS
97 # Configure msvc (default version, searched for in standard locations and PATH).
100 # Configure specific msvc version (searched for in standard locations and PATH).
104 # ----------------------
105 # Borland configuration.
106 # ----------------------
110 # ----------------------
111 # STLPort configuration.
112 # ----------------------
114 # Configure specifying location of STLPort headers. Libraries must be either
115 # not needed or available to the compiler by default.
116 # using stlport : : /usr/include/stlport ;
118 # Configure specifying location of both headers and libraries explicitly.
119 # using stlport : : /usr/include/stlport /usr/lib ;
126 # Configure assuming QTDIR gives the installation prefix.
129 # Configure with an explicit installation prefix.
130 # using qt : /usr/opt/qt ;
132 # ---------------------
133 # Python configuration.
134 # ---------------------
136 # Configure specific Python version.
137 # using python : 3.1 : /usr/bin/python3 : /usr/include/python3.1 : /usr/lib ;