Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#32101 - [binutils] using $tooldir in package PKGBUILD breaks cross-compilation with custom $PATH

Attached to Project: Arch Linux
Opened by Alexander (AlexanderR) - Friday, 19 October 2012, 20:03 GMT
Last edited by Allan McRae (Allan) - Sunday, 21 October 2012, 04:51 GMT
Task Type Feature Request
Category Packages: Core
Status Closed
Assigned To No-one
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

By default my build of cross-bunutils places binaries under /usr/arm-unknown-gnueabi/bin. To guard against Makefiles, calling ar, strip etc. directly, I add this directory to beginning of my PATH. As result, every time when autoconf initializes host gcc (i686-pc-linux-gnu-gcc) it erroneously calls /usr/arm-unknown-gnueabi/bin/as instead of it's own as - all because you set tooldir=/usr. Please, remove "tooldir" and "prefix" variables from calls to make and use DESTDIR instead.

Steps to reproduce:
Run in any situation, when native toolchain have to call as, strip etc. and native utilities are overridden by something in PATH.
This task depends upon

Closed by  Allan McRae (Allan)
Sunday, 21 October 2012, 04:51 GMT
Reason for closing:  Won't implement
Comment by Allan McRae (Allan) - Friday, 19 October 2012, 23:05 GMT
If you remove the tooldir lines then you end up with almost everything that gets installed in /usr/bin and /usr/lib in /usr/i686-pc-linux-gnu/{bin,lib}. That is a directory that we do not want on native systems.
Comment by Alexander (AlexanderR) - Sunday, 21 October 2012, 03:58 GMT
> That is a directory that we do not want on native systems.

Why? Various cross-compilers put files into /usr/$CHOST directory, so why don't let native gcc do the same? Also, is it official decision? Can I use this directory in my packages without constant checking if you started to use it or not?
Comment by Allan McRae (Allan) - Sunday, 21 October 2012, 04:51 GMT
I'd argue that poorly packaged cross compilers put files in that directory and they should use "/usr/lib/cross-${_target}".

And the toolchain will never put files in /usr/$CHOST while I am packaging it.

Loading...