multilib-fix: document why not to use __WORDSIZE

Fedora's PackagingDrafts/MultilibTricks suggests the following
c-header wrapper example:

  #include <bits/wordsize.h>
  #if __WORDSIZE == 32
  #include "config-32.h"
  #elif __WORDSIZE == 64
  #include "config-64.h"
  #else
  #error "Unknown word size"
  #endif

Installing and using this wrapper is not really no-op, however; it
has been proven to cause include-ordering issues.  So, even though
the shorter stub works in most cases, document why we still prefer
the longer #ifdef wrapper.  Thanks to Vít Ondruch for pointing
this out.

Related: rhbz#1412274
This commit is contained in:
Pavel Raiskup 2017-01-25 17:25:20 +01:00
parent d44f6e2a66
commit 5d02c918d6

View File

@ -48,6 +48,10 @@ cat <<EOF
* To avoid breaking arches not explicitly supported by Red Hat, we * To avoid breaking arches not explicitly supported by Red Hat, we
* use this indirection file *only* on known multilib arches. * use this indirection file *only* on known multilib arches.
* *
* We pay attention to include _only_ the original multilib-unclean
* header file. Including any other system-header file could cause
* unpredictable include-ordering issues (rhbz#1412274, comment #16).
*
* Note: this may well fail if user tries to use gcc's -I- option. * Note: this may well fail if user tries to use gcc's -I- option.
* But that option is deprecated anyway. * But that option is deprecated anyway.
*/ */