+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * INSTALL: Move Cross-compliation information to reference manual.
+
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * INSTALL: Move Cross-compliation information to reference manual.
+
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * INSTALL: Move Cross-compliation information to reference manual.
+
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * INSTALL: Move Cross-compliation information to reference manual.
+
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * INSTALL: Move Cross-compliation information to reference manual.
+
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * INSTALL: Move Cross-compliation information to reference manual.
+
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
Cross-compiling GLib
====================
-Cross-compilation is the proceess of compiling a program or
-library on a different architecture or operating system then
-it will be run upon. GLib is slightly more difficult to
-cross-compile than many packages because much of GLib is
-about hiding differences between different systems.
-
-These notes cover things specific to cross-compiling GLib;
-for general information about cross-compilation, see the
-autoconf info pages.
-
-GLib tries to detect as much information as possible about
-the target system by compiling and linking programs without
-actually running anything; however, some information GLib
-needs is not available this way. This information needs
-to be provided to the configure script via a "cache file"
-or by setting the cache variables in your environment.
-
-As an example of using a cache file, to cross compile for
-the "MingW32" Win32 runtine environment on a Linux system,
-create a file 'win32.cache' with the following contents:
-
-===
-glib_cv_long_long_format=ll
-glib_cv_stack_grows=no
-===
-
-Then execute the following commands:
-
-===
-PATH=/path/to/mingw32-compiler/bin:$PATH
-chmod a-w win32.cache # prevent configure from changing it
-./configure --cache-file=win32.cache --host=mingw32
-===
-
-The complete list of cache file variables follows. Most
-of these won't need to be set in most cases.
-
-Cache file variables
-====================
-
-glib_cv_long_long_format=[ll/q/I64]
-
- Format used by printf and scanf for 64 bit integers. "ll" is
- the C99 standard, and what is used by the 'trio' library
- that GLib builds if your printf() is insufficiently capable.
- Doesn't need to be set if you are compiling using trio.
-
-glib_cv_stack_grows=[yes/no]
-
- Whether the stack grows up or down. Most places will want "no",
- A few architectures, such as PA-RISC need "yes".
-
-glib_cv_working_bcopy=[yes/no]
-
- Whether your bcopy can handle overlapping copies. Only needs to be set
- if you don't have memmove. (Very unlikely)
-
-glib_cv_sane_realloc=[yes/np]
-
- Whether your realloc() conforms to ANSI C and can handle NULL as
- the first argument. Defaults to "yes" and probably doesn't need to be set.
-
-glib_cv_have_strlcpy=[yes/no]
-
- Whether you have strlcpy that matches OpenBSD. Defaults to "no",
- which is safe, since GLib uses a built-in version in that case.
-
-glib_cv_va_val_copy=[yes/no]
-
- Whether va_list can be copied as a pointer. If set to "no",
- then memcopy will be used. Only matters if you don't have
- va_copy or __va_copy. (So, doesn't matter for GCC.) Defaults
- to "yes" which is slightly more common than "no".
-
-glib_cv_rtldglobal_broken=[yes/no]
-
- Whether you have a bug found in OSF/1 v5.0. Defaults to "no".
-
-glib_cv_uscore=[yes/no]
-
- Whether an underscore needs to be prepended to symbols when
- looking them up via dlsym. Only needs to be set if your system
- uses dlopen/dlsym.
-
-ac_cv_func_posix_getpwuid_r=[yes/no]
-
- Whether you have a getpwuid_r function (in your C library,
- not your thread library) that conforms to the POSIX spec.
- (Takes a 'struct passwd **' as the final argument)
-
-ac_cv_func_nonposix_getpwuid_r=[yes/no]
-
- Whether you have some variant of getpwuid_r that doesn't
- conform to to the POSIX spec, but GLib might be able to
- use (or might segfault.) Only needs to be set if
- ac_cv_func_posix_getpwuid_r is not set. It's safest to set
- this to "no".
-
-glib_cv_use_pid_surrogate=[yes/no]
-
- Whether to use a setpriority() on the PID of the thread as
- a method for setting the priority of threads. This only
- needs to be set when using POSIX threads.
-
-ac_cv_func_printf_unix98=[yes/no]
+Information about cross-compilation of GLib can be found
+in the file:
- Whether your printf() family supports Unix98 style %N$
- positional parameters. Defaults to "no".
+ docs/reference/glib/docs/reference/glib/html/glib-cross-compiling.html
-ac_cv_func_vsnprintf_c99=[yes/no]
+Or online at:
- Whether you have a vsnprintf() with C99 semantics. (C99 semantics
- means returns the number of bytes that would have been written
- had the output buffer had enough space.). Defaults to "no".
+ http://developer.gnome.org/doc/API/2.0/glib/glib-cross-compiling.html
+2003-04-08 Matthias Clasen <maclas@gmx.de>
+
+ * glib/cross.sgml: New file; cross-compilation information.
+ * glib/glib-docs.sgml: Include cross.sgml.
+
2003-04-07 Matthias Clasen <maclas@gmx.de>
* gobject/tmpl/enumerations_flags.sgml: Additions.
--- /dev/null
+<refentry id="glib-cross-compiling" revision="8 Apr 2003">
+<refmeta>
+<refentrytitle>Cross-compiling the GLib package</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>GLib Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>Cross-compiling the GLib Package</refname>
+<refpurpose>
+How to cross-compile GLib
+</refpurpose>
+</refnamediv>
+
+ <refsect1 id="building">
+ <title>Building the Library for a different architecture</title>
+ <para>
+ Cross-compilation is the process of compiling a program or
+ library on a different architecture or operating system then
+ it will be run upon. GLib is slightly more difficult to
+ cross-compile than many packages because much of GLib is
+ about hiding differences between different systems.
+ </para>
+ <para>
+ These notes cover things specific to cross-compiling GLib;
+ for general information about cross-compilation, see the
+ <application>autoconf</application> info pages.
+ </para>
+ <para>
+ GLib tries to detect as much information as possible about
+ the target system by compiling and linking programs without
+ actually running anything; however, some information GLib
+ needs is not available this way. This information needs
+ to be provided to the configure script via a "cache file"
+ or by setting the cache variables in your environment.
+ </para>
+ <para>
+ As an example of using a cache file, to cross compile for
+ the "MingW32" Win32 runtine environment on a Linux system,
+ create a file 'win32.cache' with the following contents:
+ </para>
+ <programlisting>
+glib_cv_long_long_format=ll
+glib_cv_stack_grows=no
+ </programlisting>
+ <para>
+ Then execute the following commands:
+ </para>
+ <programlisting>
+PATH=/path/to/mingw32-compiler/bin:$PATH
+chmod a-w win32.cache # prevent configure from changing it
+./configure --cache-file=win32.cache --host=mingw32
+ </programlisting>
+ <para>
+ The complete list of cache file variables follows. Most
+ of these won't need to be set in most cases.
+ </para>
+ </refsect1>
+ <refsect1 id="cache-file-variables">
+ <title>Cache file variables</title>
+ <formalpara>
+ <title>glib_cv_long_long_format=[ll/q/I64]</title>
+
+ <para>
+ Format used by <function>printf()</function> and
+ <function>scanf()</function> for 64 bit integers. "ll" is
+ the C99 standard, and what is used by the 'trio' library
+ that GLib builds if your <function>printf()</function> is
+ insufficiently capable.
+ Doesn't need to be set if you are compiling using trio.
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_stack_grows=[yes/no]</title>
+
+ <para>
+ Whether the stack grows up or down. Most places will want "no",
+ A few architectures, such as PA-RISC need "yes".
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_working_bcopy=[yes/no]</title>
+
+ <para>
+ Whether your <function>bcopy()</function> can handle overlapping
+ copies. Only needs to be set if you don't have
+ <function>memmove()</function>. (Very unlikely)
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_sane_realloc=[yes/np]</title>
+
+ <para>
+ Whether your <function>realloc()</function> conforms to ANSI C
+ and can handle <literal>NULL</literal> as the first argument.
+ Defaults to "yes" and probably doesn't need to be set.
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_have_strlcpy=[yes/no]</title>
+
+ <para>
+ Whether you have <function>strlcpy()</function> that matches
+ OpenBSD. Defaults to "no", which is safe, since GLib uses a
+ built-in version in that case.
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_va_val_copy=[yes/no]</title>
+
+ <para>
+ Whether <type>va_list</type> can be copied as a pointer. If set
+ to "no", then <function>memcopy()</function> will be used. Only
+ matters if you don't have <function>va_copy()</function> or
+ <function>__va_copy()</function>. (So, doesn't matter for GCC.)
+ Defaults to "yes" which is slightly more common than "no".
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_rtldglobal_broken=[yes/no]</title>
+
+ <para>
+ Whether you have a bug found in OSF/1 v5.0. Defaults to "no".
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_uscore=[yes/no]</title>
+
+ <para>
+ Whether an underscore needs to be prepended to symbols when
+ looking them up via <function>dlsym()</function>. Only needs to
+ be set if your system uses
+ <function>dlopen()</function>/<function>dlsym()</function>.
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>ac_cv_func_posix_getpwuid_r=[yes/no]</title>
+
+ <para>
+ Whether you have a getpwuid_r function (in your C library,
+ not your thread library) that conforms to the POSIX spec.
+ (Takes a 'struct passwd **' as the final argument)
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>ac_cv_func_nonposix_getpwuid_r=[yes/no]</title>
+
+ <para>
+ Whether you have some variant of <function>getpwuid_r()</function>
+ that doesn't conform to to the POSIX spec, but GLib might be able
+ to use (or might segfault.) Only needs to be set if
+ <literal>ac_cv_func_posix_getpwuid_r</literal> is not set. It's
+ safest to set this to "no".
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>glib_cv_use_pid_surrogate=[yes/no]</title>
+
+ <para>
+ Whether to use a <function>setpriority()</function> on the PID of
+ the thread as a method for setting the priority of threads. This
+ only needs to be set when using POSIX threads.
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>ac_cv_func_printf_unix98=[yes/no]</title>
+
+ <para>
+ Whether your <function>printf()</function> family supports Unix98
+ style <literal>%N$</literal> positional parameters. Defaults to
+ "no".
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>ac_cv_func_vsnprintf_c99=[yes/no]</title>
+
+ <para>
+ Whether you have a <function>vsnprintf()</function> with C99
+ semantics. (C99 semantics means returning the number of bytes
+ that would have been written had the output buffer had enough
+ space.) Defaults to "no".
+ </para>
+ </formalpara>
+
+ </refsect1>
+
+</refentry>
<!ENTITY glib-Compiling SYSTEM "compiling.sgml">
<!ENTITY glib-Building SYSTEM "building.sgml">
+<!ENTITY glib-Cross SYSTEM "cross.sgml">
<!ENTITY glib-Running SYSTEM "running.sgml">
<!ENTITY glib-Resources SYSTEM "resources.sgml">
<!ENTITY glib-Changes SYSTEM "changes.sgml">
</para>
&glib-Building;
+ &glib-Cross;
&glib-Compiling;
&glib-Running;
&glib-Changes;