Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r49529 - trunk/tools/build/v2/doc/src
From: ghost_at_[hidden]
Date: 2008-11-02 06:19:29


Author: vladimir_prus
Date: 2008-11-02 06:19:28 EST (Sun, 02 Nov 2008)
New Revision: 49529
URL: http://svn.boost.org/trac/boost/changeset/49529

Log:
Document cross-compilation
Text files modified:
   trunk/tools/build/v2/doc/src/reference.xml | 29 ++++++++++++++++++++++
   trunk/tools/build/v2/doc/src/tasks.xml | 49 +++++++++++++++++++++++++++++++++++++++
   2 files changed, 76 insertions(+), 2 deletions(-)

Modified: trunk/tools/build/v2/doc/src/reference.xml
==============================================================================
--- trunk/tools/build/v2/doc/src/reference.xml (original)
+++ trunk/tools/build/v2/doc/src/reference.xml 2008-11-02 06:19:28 EST (Sun, 02 Nov 2008)
@@ -557,6 +557,33 @@
         </listitem>
       </varlistentry>
 
+ <varlistentry><term><literal>target-os</literal></term>
+ <listitem>
+
+ <anchor id="bbv2.reference.features.target-os"/>
+
+ <para>
+ The operating system for which the code is to be generated. The
+ compiler you used should be the compiler for that operating
+ system. This option causes Boost.Build to use naming conventions
+ suitable for that operating system, and adjust build process
+ accordingly. For example, with gcc, it controls if import
+ libraries are produced for shared libraries or not.
+ </para>
+
+ <para>The complete list of possible values for this feature is:
+ amiga, aix, bsd, cygwin, darwin, dos, emx, freebsd, hpux, iphone,
+ linux, netbsd, openbsd, osf, qnx, qnxnto, sgi, solaris, sun,
+ sunos, svr4, sysv, ultrix, unix, unixware, windows.
+ </para>
+
+ <para>See <xref linkend="bbv2.tasks.crosscompile"/> for details of
+ crosscompilation</para>
+
+ </listitem>
+ </varlistentry>
+
+
       <varlistentry><term><literal>architecture</literal></term>
         <listitem>
 
@@ -865,7 +892,7 @@
             </varlistentry>
         </variablelist>
 
- <section>
+ <section id="v2.reference.tools.compiler.msvc.64">
             <title>64-bit support</title>
 
             <indexterm><primary>64-bit compilation</primary>

Modified: trunk/tools/build/v2/doc/src/tasks.xml
==============================================================================
--- trunk/tools/build/v2/doc/src/tasks.xml (original)
+++ trunk/tools/build/v2/doc/src/tasks.xml 2008-11-02 06:19:28 EST (Sun, 02 Nov 2008)
@@ -713,11 +713,58 @@
     </para>
   </section>
 
+ <section id="bbv2.tasks.crosscompile">
+ <title>Cross-compilation</title>
+
+ <indexterm><primary>cross compilation</primary></indexterm>
+
+ <para>Boost.Build supports cross compilation with the gcc and msvc
+ toolsets.</para>
+
+ <para>
+ When using gcc, you first need to specify your cross compiler
+ in <filename>user-config.jam</filename> (see <xref linkend="bbv2.advanced.configuration"/>),
+ for example:</para>
+<programlisting>
+using gcc : arm : arm-none-linux-gnueabi-g++ ;
+</programlisting>
+ <para>
+ After that, if the host and target os are the same, for example Linux, you can
+ just request that this compiler version to be used:
+ </para>
+<screen>
+bjam toolset=gcc-arm
+</screen>
+
+ <para>
+ If you want to target different operating system from the host, you need
+ to additionally specify the value for the <code>target-os</code> feature, for
+ example:
+ </para>
+<screen>
+# On windows box
+bjam toolset=gcc-arm <emphasis role="bold">target-os=linux</emphasis>
+# On Linux box
+bjam toolset=gcc-mingw <emphasis role="bold">target-os=windows</emphasis>
+</screen>
+ <para>
+ For the complete list of allowed opeating system names, please see the documentation for
+ <link linkend="bbv2.reference.features.target-os">target-os feature</link>.
+ </para>
+
+ <para>
+ When using the msvc compiler, it's only possible to cross-compiler to a 64-bit system
+ on a 32-bit host. Please see <xref linkend="v2.reference.tools.compiler.msvc.64"/> for
+ details.
+ </para>
+
+ </section>
+
 </chapter>
 
 <!--
      Local Variables:
- mode: xml
+ mode: nxml
      sgml-indent-data: t
      sgml-parent-document: ("userman.xml" "chapter")
      sgml-set-face: t


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk