Message ID | 4E5021E4.2060208@ubuntu.com |
---|---|
State | New |
Headers | show |
On Sat, 20 Aug 2011, Matthias Klose wrote: > +@findex MULTILIB_OSDIRNAMES > +@item MULTILIB_OSDIRNAMES > +If @code{MULTILIB_OPTIONS} is used, this variable specifies the list > +of OS subdirectory names. The format is either the same as of > +@code{MULTILIB_DIRNAMES}, or a set of mappings. When it is the same > +as @code{MULTILIB_DIRNAMES}, it describes the multilib directories > +using OS conventions, rather than GCC conventions. When it is a set I think more explanation is needed of what this means (where OS conventions are used and where GCC conventions are used). > +of mappings of the form @code{gccdir=osdir}, the left side gives the @var{gccdir}, @var{srcdir}. > +GCC convention and the right gives the equivalent OS defined location. > +If the osdir part begins with a !, the os directory names are used @var{osdir}, @samp{!}.
On 08/21/2011 12:21 AM, Joseph S. Myers wrote: > On Sat, 20 Aug 2011, Matthias Klose wrote: > >> +@findex MULTILIB_OSDIRNAMES >> +@item MULTILIB_OSDIRNAMES >> +If @code{MULTILIB_OPTIONS} is used, this variable specifies the list >> +of OS subdirectory names. The format is either the same as of >> +@code{MULTILIB_DIRNAMES}, or a set of mappings. When it is the same >> +as @code{MULTILIB_DIRNAMES}, it describes the multilib directories >> +using OS conventions, rather than GCC conventions. When it is a set > > I think more explanation is needed of what this means (where OS > conventions are used and where GCC conventions are used). well, could you point me to the GCC conventions?
On Sun, 21 Aug 2011, Matthias Klose wrote: > On 08/21/2011 12:21 AM, Joseph S. Myers wrote: > > On Sat, 20 Aug 2011, Matthias Klose wrote: > > > >> +@findex MULTILIB_OSDIRNAMES > >> +@item MULTILIB_OSDIRNAMES > >> +If @code{MULTILIB_OPTIONS} is used, this variable specifies the list > >> +of OS subdirectory names. The format is either the same as of > >> +@code{MULTILIB_DIRNAMES}, or a set of mappings. When it is the same > >> +as @code{MULTILIB_DIRNAMES}, it describes the multilib directories > >> +using OS conventions, rather than GCC conventions. When it is a set > > > > I think more explanation is needed of what this means (where OS > > conventions are used and where GCC conventions are used). > > well, could you point me to the GCC conventions? The directories named with the GCC conventions (for example, "64") are used under libsubdir for libraries and .o files, under libsubdir/include-fixed for fixed headers and under ($target/)include/c++/$version/$target for some C++ headers. The directories named with the OS conventions (for example, "../lib64") are used under ($target/)lib for libraries and under lib/ and usr/lib/ in any sysroot. The OS conventions are always relative to a "lib" directory and those directory names may start with "../" but names in the GCC conventions should never start with "../".
Index: gcc/doc/fragments.texi =================================================================== --- gcc/doc/fragments.texi (revision 177846) +++ gcc/doc/fragments.texi (working copy) @@ -128,6 +128,19 @@ of options to be used for all builds. If you set this, you should probably set @code{CRTSTUFF_T_CFLAGS} to a dash followed by it. +@findex MULTILIB_OSDIRNAMES +@item MULTILIB_OSDIRNAMES +If @code{MULTILIB_OPTIONS} is used, this variable specifies the list +of OS subdirectory names. The format is either the same as of +@code{MULTILIB_DIRNAMES}, or a set of mappings. When it is the same +as @code{MULTILIB_DIRNAMES}, it describes the multilib directories +using OS conventions, rather than GCC conventions. When it is a set +of mappings of the form @code{gccdir=osdir}, the left side gives the +GCC convention and the right gives the equivalent OS defined location. +If the osdir part begins with a !, the os directory names are used +exclusively. Use the mapping when there is no one-to-one equivalence +between GCC levels and the OS. + @findex NATIVE_SYSTEM_HEADER_DIR @item NATIVE_SYSTEM_HEADER_DIR If the default location for system headers is not @file{/usr/include},