This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Always create lib32 and lib64 symlinks


All,

On Wednesday 29 September 2010 16:33:18 Anthony Foiani wrote:
> Always create lib32 and lib64 symlinks.
> Since we always remove them without checking CT_HOST, we need to
> create them without checking CT_HOST either.
> 
> Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
> 
> diff -r 5676bb6d9d7a -r 10f0f77c04eb scripts/crosstool-NG.sh.in
> --- a/scripts/crosstool-NG.sh.in	Wed Sep 29 08:27:56 2010 -0600
> +++ b/scripts/crosstool-NG.sh.in	Wed Sep 29 08:29:36 2010 -0600
> @@ -328,23 +328,22 @@
>          CT_DoExecLog ALL ln -sf "./${CT_SYSROOT_DIR_PREFIX}/sys-root/usr/include" "${CT_PREFIX_DIR}/${CT_TARGET}/include"
>      fi
>  
> -    # Now, in case we're 64 bits, just have lib64/ be a symlink to lib/
> -    # so as to have all libraries in the same directory (we can do that
> -    # because we are *not* multilib).
> -    # Mips64 with n32 emulation install its libs in lib32, so also prepare
> -    # these symlinks
> -    # Not all the symlinks are necessary, but better safe than sorry...
> -    if [ "${CT_ARCH_64}" = "y" ]; then
> -        for d in                            \
> -            "${CT_PREFIX_DIR}"              \
> -            "${CT_SYSROOT_DIR}"             \
> -            "${CT_SYSROOT_DIR}/usr"         \
> -            "${CT_PREFIX_DIR}/${CT_TARGET}" \
> -        ; do
> -            CT_DoExecLog ALL ln -sf "lib" "${d}/lib32"
> -            CT_DoExecLog ALL ln -sf "lib" "${d}/lib64"
> -        done
> -    fi
> +    # Since we're *not* multi-lib on the build side, we want all the

You meant: "on the target side", maybe?

> +    # libraries to end up in "lib".  We create "lib64" (for 64-bit
> +    # build or host architectures) and "lib32" (for 32-bit emulation
> +    # on 64-bit) as symlinks to "lib".
> +    #
> +    # Not all of these symlinks are necessary, but better safe than
> +    # sorry.  They are summarily removed by build/internals.sh:do_finish.
> +    for d in                            \
> +        "${CT_PREFIX_DIR}"              \
> +        "${CT_SYSROOT_DIR}"             \
> +        "${CT_SYSROOT_DIR}/usr"         \
> +        "${CT_PREFIX_DIR}/${CT_TARGET}" \
> +    ; do
> +        CT_DoExecLog ALL ln -sf "lib" "${d}/lib32"
> +        CT_DoExecLog ALL ln -sf "lib" "${d}/lib64"
> +    done
>  
>      # Determine build system if not set by the user
>      if [ -z "${CT_BUILD}" ]; then

The lib32 and lib64 issue should appear only for natively 64-bit target
archs. Why do you also need it for 32-bit target archs ?

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'



--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]