* [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir
@ 2007-04-10 10:39 Bernhard Fischer
2007-04-10 11:23 ` Heikki Lindholm
2007-05-15 11:43 ` Bernhard Fischer
0 siblings, 2 replies; 5+ messages in thread
From: Bernhard Fischer @ 2007-04-10 10:39 UTC (permalink / raw)
To: buildroot
Hi,
This is a heads-up that i mean to correct the pathes to includes and
libs in the staging dir as suggested in bug
http://busybox.net/bugs/view.php?id=1290
Doing so is ment to ease moving the staging-dir (and it's
cross-compiler) to a different machine for re-use.
The theory of operation is that we aim to keep the positions of "normal"
desktop machines for the directory layout and also build the toolchain
with full sysroot-support to avoid trouble with hardcoded search pathes
to headers and libraries.
A preliminary incarnation which only takes care of gcc-4.x is here:
http://uclibc.org/~aldot/buildroot.mine.cow.20070406-1957.diff.bz2
(134688 Bytes)
diffstat:
toolchain/sstrip/sstrip.mk | 10
toolchain/binutils/binutils.mk | 38
toolchain/gcc/gcc-uclibc-3.x.mk | 6
toolchain/gcc/gcc-uclibc-4.x.mk | 451
toolchain/uClibc/uclibc.mk | 65
Config.in | 27
package/ncurses/ncurses.mk | 38
package/openssh/openssh.mk | 10
package/openssl/openssl.mk | 55
package/m4/m4.mk | 11
package/mpfr/mpfr.mk | 47
package/ltrace/ltrace-svn-20070406.01.autoreconf.patch | 5948 +++++
package/ltrace/ltrace.mk | 37
package/ltrace/ltrace-svn-20070406.00.patch |19000 +++++++++++++++++
package/Makefile.in | 54
package/zlib/zlib.mk | 56
package/gmp/gmp.mk | 49
Makefile | 7
18 files changed, 25681 insertions(+), 228 deletions(-)
The ltrace patch is not strictly related to the patch but i had to
pickup the latest version of it locally, fwiw.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir
2007-04-10 10:39 [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir Bernhard Fischer
@ 2007-04-10 11:23 ` Heikki Lindholm
2007-04-10 12:08 ` Bernhard Fischer
2007-05-15 11:43 ` Bernhard Fischer
1 sibling, 1 reply; 5+ messages in thread
From: Heikki Lindholm @ 2007-04-10 11:23 UTC (permalink / raw)
To: buildroot
Bernhard Fischer kirjoitti:
> Hi,
>
> This is a heads-up that i mean to correct the pathes to includes and
> libs in the staging dir as suggested in bug
> http://busybox.net/bugs/view.php?id=1290
> Doing so is ment to ease moving the staging-dir (and it's
> cross-compiler) to a different machine for re-use.
What was the original purpose of putting all headers under /include anyway?
-- Heikki Lindholm
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir
2007-04-10 11:23 ` Heikki Lindholm
@ 2007-04-10 12:08 ` Bernhard Fischer
0 siblings, 0 replies; 5+ messages in thread
From: Bernhard Fischer @ 2007-04-10 12:08 UTC (permalink / raw)
To: buildroot
On Tue, Apr 10, 2007 at 02:23:57PM +0300, Heikki Lindholm wrote:
>Bernhard Fischer kirjoitti:
>>Hi,
>>
>>This is a heads-up that i mean to correct the pathes to includes and
>>libs in the staging dir as suggested in bug
>>http://busybox.net/bugs/view.php?id=1290
>>Doing so is ment to ease moving the staging-dir (and it's
>>cross-compiler) to a different machine for re-use.
>
>What was the original purpose of putting all headers under /include anyway?
I don't know. Could be that the intention was to keep the cross-compiler
dir hierarchy as flat as possible. The fact that usr/lib is symlinked to
lib would also hint at that, so initially there was, perhaps, only
packages being installed into /
We would have to ask eric, but i don't see any benefit at all for this
layout of the staging dir.
Folks that want to do away with /usr on their targets can easily symlink
/usr/* down to ../ if they feel like, but that proposed patch doesn't
touch the target layout much (IIRC).
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir
2007-04-10 10:39 [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir Bernhard Fischer
2007-04-10 11:23 ` Heikki Lindholm
@ 2007-05-15 11:43 ` Bernhard Fischer
2007-06-20 11:36 ` Bernhard Fischer
1 sibling, 1 reply; 5+ messages in thread
From: Bernhard Fischer @ 2007-05-15 11:43 UTC (permalink / raw)
To: buildroot
On Tue, Apr 10, 2007 at 12:39:01PM +0200, Bernhard Fischer wrote:
>Hi,
>
>This is a heads-up that i mean to correct the pathes to includes and
>libs in the staging dir as suggested in bug
>http://busybox.net/bugs/view.php?id=1290
>Doing so is ment to ease moving the staging-dir (and it's
>cross-compiler) to a different machine for re-use.
>
>The theory of operation is that we aim to keep the positions of "normal"
>desktop machines for the directory layout and also build the toolchain
>with full sysroot-support to avoid trouble with hardcoded search pathes
>to headers and libraries.
>
>A preliminary incarnation which only takes care of gcc-4.x is here:
>
>http://uclibc.org/~aldot/buildroot.mine.cow.20070406-1957.diff.bz2
>(134688 Bytes)
updated patch is here:
http://uclibc.org/~aldot/buildroot.mine.cow.20070515-1321.diff.bz2
I converted a few more packages to install their files into the proper
place.
gcc-3.x support is (still) not done, 4.x works fine. Anyone willing to
fix gcc-3.x?
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir
2007-05-15 11:43 ` Bernhard Fischer
@ 2007-06-20 11:36 ` Bernhard Fischer
0 siblings, 0 replies; 5+ messages in thread
From: Bernhard Fischer @ 2007-06-20 11:36 UTC (permalink / raw)
To: buildroot
On Tue, May 15, 2007 at 01:43:35PM +0200, Bernhard Fischer wrote:
>On Tue, Apr 10, 2007 at 12:39:01PM +0200, Bernhard Fischer wrote:
>>Hi,
>>
>>This is a heads-up that i mean to correct the pathes to includes and
>>libs in the staging dir as suggested in bug
>>http://busybox.net/bugs/view.php?id=1290
>>Doing so is ment to ease moving the staging-dir (and it's
>>cross-compiler) to a different machine for re-use.
>>
>>The theory of operation is that we aim to keep the positions of "normal"
>>desktop machines for the directory layout and also build the toolchain
>>with full sysroot-support to avoid trouble with hardcoded search pathes
>>to headers and libraries.
>>
>>A preliminary incarnation which only takes care of gcc-4.x is here:
>>
>>http://uclibc.org/~aldot/buildroot.mine.cow.20070406-1957.diff.bz2
>>(134688 Bytes)
>
>updated patch is here:
>http://uclibc.org/~aldot/buildroot.mine.cow.20070515-1321.diff.bz2
>
>I converted a few more packages to install their files into the proper
>place.
>gcc-3.x support is (still) not done, 4.x works fine. Anyone willing to
>fix gcc-3.x?
I have applied this big patch as r18864.
A few notes:
- gcc-3.4.6 builds (tested against i386 and x86_64) but doesn not have
sysroot support (for obvious reasons).
- gcc-4.x now have sysroot support
Now you should be able to move your cross-compiler to a different
machine, with a completely different location (only staging_dir/*
should be kept intact.)
- separation of /usr/lib and /lib in the staging_dir; These should be
kept as closely to a "normal" filesystem-layout as possible.
If you do not want usr, then symlink it according to your needs
manually.
- the kernel headers are now fully copied to the staging area. This
fixes e.g. x86_64 and potentially other parts that previously failed
to find some kernel-internal headers.
The patch was tested against gcc-3.4.6 with binutils-2.17 and
2.17.50.0.16; for the gcc-4 series, gcc-4.2.0 was used.
It is possible that some packages now fail to install properly. These
need to fix their installation prefix to distinguish between usr/lib and
lib/ properly.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-06-20 11:36 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-10 10:39 [Buildroot] [patch] sysroot support in toolchain, use correct pathes in staging_dir Bernhard Fischer
2007-04-10 11:23 ` Heikki Lindholm
2007-04-10 12:08 ` Bernhard Fischer
2007-05-15 11:43 ` Bernhard Fischer
2007-06-20 11:36 ` Bernhard Fischer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox