~ubuntu-branches/ubuntu/trusty/gcc-4.6/trusty

« back to all changes in this revision

Viewing changes to debian/patches/gcc-multiarch-doc.diff

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2013-06-19 12:51:03 UTC
  • mfrom: (10.2.1 sid)
  • Revision ID: package-import@ubuntu.com-20130619125103-605d87zrkbme9ln9
Tags: 4.6.4-3ubuntu1
* Merge with Debian; remaining changes:
  - Build from the upstream source.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# DP: Document multiarch changes
2
 
 
3
 
--- a/src/gcc/doc/install.texi  (Revision 193696)
4
 
+++ b/src/gcc/doc/install.texi  (Arbeitskopie)
5
 
@@ -1005,6 +1005,14 @@
6
 
 workable alternative.  This requires gas and gdb, as the normal SVR4
7
 
 tools can not generate or interpret stabs.
8
 
 
9
 
+@item --enable-multiarch
10
 
+Specify whether to enable or disable multiarch support.  The default is
11
 
+to check for glibc start files in a multiarch location, and enable it
12
 
+if the files are found.  The auto detection is enabled for native builds,
13
 
+and for cross builds configured with @option{--with-sysroot}.
14
 
+More documentation about multiarch can be found at
15
 
+@uref{http://wiki.debian.org/Multiarch}.
16
 
+
17
 
 @item --disable-multilib
18
 
 Specify that multiple target
19
 
 libraries to support different target variants, calling
20
 
--- a/src/gcc/doc/fragments.texi        (Revision 193696)
21
 
+++ b/src/gcc/doc/fragments.texi        (Arbeitskopie)
22
 
@@ -115,6 +115,12 @@
23
 
 default value will be @code{MULTILIB_OPTIONS}, with all slashes treated
24
 
 as spaces.
25
 
 
26
 
+@code{MULTILIB_DIRNAMES} describes the multilib directories using GCC
27
 
+conventions and is applied to directories that are part of the GCC
28
 
+installation.  When multilib-enabled, the compiler will add a
29
 
+subdirectory of the form @var{prefix}/@var{multilib} before each
30
 
+directory in the search path for libraries and crt files.
31
 
+
32
 
 For example, if @code{MULTILIB_OPTIONS} is set to @samp{m68000/m68020
33
 
 msoft-float}, then the default value of @code{MULTILIB_DIRNAMES} is
34
 
 @samp{m68000 m68020 msoft-float}.  You may specify a different value if
35
 
@@ -157,6 +163,60 @@
36
 
 you must set this to the directory containing the headers.  This value
37
 
 should match the value of the @code{SYSTEM_INCLUDE_DIR} macro.
38
 
 
39
 
+@findex MULTILIB_OSDIRNAMES
40
 
+@item MULTILIB_OSDIRNAMES
41
 
+If @code{MULTILIB_OPTIONS} is used, this variable specifies 
42
 
+a list of subdirectory names, that are used to modify the search
43
 
+path depending on the chosen multilib.  Unlike @code{MULTILIB_DIRNAMES},
44
 
+@code{MULTILIB_OSDIRNAMES} describes the multilib directories using
45
 
+operating systems conventions, and is applied to the directories such as
46
 
+@code{lib} or those in the @env{LIBRARY_PATH} environment variable.
47
 
+The format is either the same as of
48
 
+@code{MULTILIB_DIRNAMES}, or a set of mappings.  When it is the same
49
 
+as @code{MULTILIB_DIRNAMES}, it describes the multilib directories
50
 
+using operating system conventions, rather than GCC conventions.  When it is a set
51
 
+of mappings of the form @var{gccdir}=@var{osdir}, the left side gives
52
 
+the GCC convention and the right gives the equivalent OS defined
53
 
+location.  If the @var{osdir} part begins with a @samp{!},
54
 
+GCC will not search in the non-multilib directory and use
55
 
+exclusively the multilib directory.  Otherwise, the compiler will
56
 
+examine the search path for libraries and crt files twice; the first
57
 
+time it will add @var{multilib} to each directory in the search path,
58
 
+the second it will not.
59
 
+
60
 
+For configurations that support both multilib and multiarch,
61
 
+@code{MULTILIB_OSDIRNAMES} also encodes the multiarch name, thus
62
 
+subsuming @code{MULTIARCH_DIRNAME}.  The multiarch name is appended to
63
 
+each directory name, separated by a colon (e.g.
64
 
+@samp{../lib32:i386-linux-gnu}).
65
 
+
66
 
+Each multiarch subdirectory will be searched before the corresponding OS
67
 
+multilib directory, for example @samp{/lib/i386-linux-gnu} before
68
 
+@samp{/lib/../lib32}.  The multiarch name will also be used to modify the
69
 
+system header search path, as explained for @code{MULTIARCH_DIRNAME}.
70
 
+
71
 
+@findex MULTIARCH_DIRNAME
72
 
+@item MULTIARCH_DIRNAME
73
 
+This variable specifies the multiarch name for configurations that are
74
 
+multiarch-enabled but not multilibbed configurations.
75
 
+
76
 
+The multiarch name is used to augment the search path for libraries, crt
77
 
+files and system header files with additional locations.  The compiler
78
 
+will add a multiarch subdirectory of the form
79
 
+@var{prefix}/@var{multiarch} before each directory in the library and
80
 
+crt search path.  It will also add two directories
81
 
+@code{LOCAL_INCLUDE_DIR}/@var{multiarch} and
82
 
+@code{NATIVE_SYSTEM_HEADER_DIR}/@var{multiarch}) to the system header
83
 
+search path, respectively before @code{LOCAL_INCLUDE_DIR} and
84
 
+@code{NATIVE_SYSTEM_HEADER_DIR}.
85
 
+
86
 
+@code{MULTIARCH_DIRNAME} is not used for configurations that support
87
 
+both multilib and multiarch.  In that case, multiarch names are encoded
88
 
+in @code{MULTILIB_OSDIRNAMES} instead.
89
 
+
90
 
+More documentation about multiarch can be found at
91
 
+@uref{http://wiki.debian.org/Multiarch}.
92
 
+
93
 
 @findex SPECS
94
 
 @item SPECS
95
 
 Unfortunately, setting @code{MULTILIB_EXTRA_OPTS} is not enough, since
96
 
--- a/src/gcc/doc/invoke.texi   (Revision 193696)
97
 
+++ b/src/gcc/doc/invoke.texi   (Arbeitskopie)
98
 
@@ -5787,6 +5787,11 @@
99
 
 @file{../lib32}, or if OS libraries are present in @file{lib/@var{subdir}}
100
 
 subdirectories it prints e.g.@: @file{amd64}, @file{sparcv9} or @file{ev6}.
101
 
 
102
 
+@item -print-multiarch
103
 
+@opindex print-multiarch
104
 
+Print the path to OS libraries for the selected multiarch,
105
 
+relative to some @file{lib} subdirectory.
106
 
+
107
 
 @item -print-prog-name=@var{program}
108
 
 @opindex print-prog-name
109
 
 Like @option{-print-file-name}, but searches for a program such as @samp{cpp}.