From 7b0da6c54aced8d57650f3b5b2b7f40ff648671b Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 7 Apr 2003 23:20:57 +0000 Subject: [PATCH] Move cross-compilation info to reference manual. --- ChangeLog | 4 + ChangeLog.pre-2-10 | 4 + ChangeLog.pre-2-12 | 4 + ChangeLog.pre-2-4 | 4 + ChangeLog.pre-2-6 | 4 + ChangeLog.pre-2-8 | 4 + INSTALL | 116 +----------------- docs/reference/ChangeLog | 5 + docs/reference/glib/cross.sgml | 187 +++++++++++++++++++++++++++++ docs/reference/glib/glib-docs.sgml | 2 + 10 files changed, 223 insertions(+), 111 deletions(-) create mode 100644 docs/reference/glib/cross.sgml diff --git a/ChangeLog b/ChangeLog index df8e9785c..04c0709ab 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2003-04-08 Matthias Clasen + + * INSTALL: Move Cross-compliation information to reference manual. + Mon Apr 7 13:40:28 2003 Owen Taylor * glib/gmain.c (g_main_loop_run): When waiting for diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index df8e9785c..04c0709ab 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,7 @@ +2003-04-08 Matthias Clasen + + * INSTALL: Move Cross-compliation information to reference manual. + Mon Apr 7 13:40:28 2003 Owen Taylor * glib/gmain.c (g_main_loop_run): When waiting for diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index df8e9785c..04c0709ab 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,7 @@ +2003-04-08 Matthias Clasen + + * INSTALL: Move Cross-compliation information to reference manual. + Mon Apr 7 13:40:28 2003 Owen Taylor * glib/gmain.c (g_main_loop_run): When waiting for diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index df8e9785c..04c0709ab 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,7 @@ +2003-04-08 Matthias Clasen + + * INSTALL: Move Cross-compliation information to reference manual. + Mon Apr 7 13:40:28 2003 Owen Taylor * glib/gmain.c (g_main_loop_run): When waiting for diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index df8e9785c..04c0709ab 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,7 @@ +2003-04-08 Matthias Clasen + + * INSTALL: Move Cross-compliation information to reference manual. + Mon Apr 7 13:40:28 2003 Owen Taylor * glib/gmain.c (g_main_loop_run): When waiting for diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index df8e9785c..04c0709ab 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,7 @@ +2003-04-08 Matthias Clasen + + * INSTALL: Move Cross-compliation information to reference manual. + Mon Apr 7 13:40:28 2003 Owen Taylor * glib/gmain.c (g_main_loop_run): When waiting for diff --git a/INSTALL b/INSTALL index 1b9851f64..ea5f86511 100644 --- a/INSTALL +++ b/INSTALL @@ -179,117 +179,11 @@ application with: 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. +Information about cross-compilation of GLib can be found +in the file: -These notes cover things specific to cross-compiling GLib; -for general information about cross-compilation, see the -autoconf info pages. + docs/reference/glib/docs/reference/glib/html/glib-cross-compiling.html -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. +Or online at: -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] - - Whether your printf() family supports Unix98 style %N$ - positional parameters. Defaults to "no". - -ac_cv_func_vsnprintf_c99=[yes/no] - - 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 diff --git a/docs/reference/ChangeLog b/docs/reference/ChangeLog index a2310c273..396458ed0 100644 --- a/docs/reference/ChangeLog +++ b/docs/reference/ChangeLog @@ -1,3 +1,8 @@ +2003-04-08 Matthias Clasen + + * glib/cross.sgml: New file; cross-compilation information. + * glib/glib-docs.sgml: Include cross.sgml. + 2003-04-07 Matthias Clasen * gobject/tmpl/enumerations_flags.sgml: Additions. diff --git a/docs/reference/glib/cross.sgml b/docs/reference/glib/cross.sgml new file mode 100644 index 000000000..e20ecb3fb --- /dev/null +++ b/docs/reference/glib/cross.sgml @@ -0,0 +1,187 @@ + + +Cross-compiling the GLib package +3 +GLib Library + + + +Cross-compiling the GLib Package + +How to cross-compile GLib + + + + + Building the Library for a different architecture + + 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. + + + 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] + + + Whether your printf() family supports Unix98 + style %N$ positional parameters. Defaults to + "no". + + + + ac_cv_func_vsnprintf_c99=[yes/no] + + + Whether you have a vsnprintf() 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". + + + + + + diff --git a/docs/reference/glib/glib-docs.sgml b/docs/reference/glib/glib-docs.sgml index a0147f582..0d228e9aa 100644 --- a/docs/reference/glib/glib-docs.sgml +++ b/docs/reference/glib/glib-docs.sgml @@ -56,6 +56,7 @@ + @@ -105,6 +106,7 @@ implementations, e.g. POSIX threads, DCE threads or Solaris threads. &glib-Building; + &glib-Cross; &glib-Compiling; &glib-Running; &glib-Changes;