FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo Embedded

 
 
LinkBack Thread Tools
 
Old 06-21-2008, 07:26 PM
Jason
 
Default Cross Wrappers

Ned Ludd wrote:
[snip]

http://dev.gentoo.org/~solar/embedded/cross-wrappers-20080621.tar.bz2


Wow. Amazing.

thx,

Jason.

--
gentoo-embedded@lists.gentoo.org mailing list
 
Old 06-22-2008, 03:29 AM
Mike Frysinger
 
Default Cross Wrappers

On Saturday 21 June 2008, Ned Ludd wrote:
> Ok with how you have SYSROOT + ROOT + PORTAGE_CONFIG working I think
> I've been able to come up with a decent set of cross compile wrappers
> that should be usable by everybody for the ideal cross compile setups.
> No more of the 'xmerge' foo. This should do it right.

for pkg-config, you may want to merge many of the things ive done here:
http://blackfin.uclinux.org/gf/project/uclinux-dist/scmsvn/?action=browse&path=%2Ftrunk%2Ftools%2Fstaging-pkg-config&revision=5937&view=markup

for the configure tests, ive been meaning to investigate switching over to a
config.site rather than exporting them through the environment ...

you should change the shebang to #!/bin/bash for all of those since they arent
POSIX ... easier that way too

for the CHOST, how about checking $0 ? so people can symlink like:
x86_64-pc-linux-gnu-emerge
and then they can just run that without needing anything set in the
environment ... that's how i generally multiplex my cross scripts for
multiple targets.

we could have crossdev manage the symlinks automatically as well so they get
the ...-emerge and ...-pkg-config by default. and setup the
PORTAGE_CONFIGROOT too ...

> I want you to review.. And then tell me if it should be apart of
> crossdev or another pkg.

crossdev should be fine i think
-mike
 
Old 06-22-2008, 05:14 AM
Ned Ludd
 
Default Cross Wrappers

On Sat, 2008-06-21 at 23:29 -0400, Mike Frysinger wrote:
> On Saturday 21 June 2008, Ned Ludd wrote:
> > Ok with how you have SYSROOT + ROOT + PORTAGE_CONFIG working I think
> > I've been able to come up with a decent set of cross compile wrappers
> > that should be usable by everybody for the ideal cross compile setups.
> > No more of the 'xmerge' foo. This should do it right.
>
> for pkg-config, you may want to merge many of the things ive done here:
> http://blackfin.uclinux.org/gf/project/uclinux-dist/scmsvn/?action=browse&path=%2Ftrunk%2Ftools%2Fstaging-pkg-config&revision=5937&view=markup

Ok I snagged the error checking and QA check.

> for the configure tests, ive been meaning to investigate switching over to a
> config.site rather than exporting them through the environment ...

I'll see what I can snag from here.
https://dev.openwrt.org/browser/trunk/include/site (hate traq)
Any tips/links to some others?

> you should change the shebang to #!/bin/bash for all of those since they arent
> POSIX ... easier that way too

ok

> for the CHOST, how about checking $0 ? so people can symlink like:
> x86_64-pc-linux-gnu-emerge and then they can just run that without
> needing anything set in the
> environment ... that's how i generally multiplex my cross scripts for
> multiple targets.

I have it right now as emerge-CHOST. When you run emerge-wrapper --init
it sets up all the symlink love which would probably be run a
pkg_postinst(). I figured the logic there that CHOST-* should be mostly
reserved for the toolchain, plus it's easier for me to emerge- and
pull in the right wrapper foo for whatever I'm working on.

> we could have crossdev manage the symlinks automatically as well so they get
> the ...-emerge and ...-pkg-config by default. and setup the
> PORTAGE_CONFIGROOT too ...

Yep that's what it does. I'll move the pkg over to usr/share/crossdev/
Got a crossdev in cvs/svn some place so I can create a ./wrappers
subdir?


> > I want you to review.. And then tell me if it should be apart of
> > crossdev or another pkg.
>
> crossdev should be fine i think
> -mike

--
gentoo-embedded@lists.gentoo.org mailing list
 
Old 06-22-2008, 10:12 AM
Mike Frysinger
 
Default Cross Wrappers

On Sunday 22 June 2008, Ned Ludd wrote:
> On Sat, 2008-06-21 at 23:29 -0400, Mike Frysinger wrote:
> > On Saturday 21 June 2008, Ned Ludd wrote:
> > for the configure tests, ive been meaning to investigate switching over
> > to a config.site rather than exporting them through the environment ...
>
> I'll see what I can snag from here.
> https://dev.openwrt.org/browser/trunk/include/site (hate traq)
> Any tips/links to some others?

it's just an idea i had floating around. havent actually looked into
implementation details. but if another project is already maintaining the
site files, then we should push our little differences to them and then just
start using their work .

> > for the CHOST, how about checking $0 ? so people can symlink like:
> > x86_64-pc-linux-gnu-emerge and then they can just run that without
> > needing anything set in the
> > environment ... that's how i generally multiplex my cross scripts for
> > multiple targets.
>
> I have it right now as emerge-CHOST.
> I figured the logic there that CHOST-* should be mostly
> reserved for the toolchain, plus it's easier for me to emerge- and
> pull in the right wrapper foo for whatever I'm working on.

i think having it all be CHOST- prefixed rather than suffixed is better for
consistency. or just provide both .

> When you run emerge-wrapper --init
> it sets up all the symlink love which would probably be run a
> pkg_postinst().

i mean when you do `crossdev FOO`, it'll create symlinks in /usr/bin/ to the
wrappers already ... no need for the user to run any other commands in the
default case ...

cant really divine what targets need what love from a pkg_postinst()

> > we could have crossdev manage the symlinks automatically as well so they
> > get the ...-emerge and ...-pkg-config by default. and setup the
> > PORTAGE_CONFIGROOT too ...
>
> Yep that's what it does. I'll move the pkg over to usr/share/crossdev/
> Got a crossdev in cvs/svn some place so I can create a ./wrappers
> subdir?

ive been lazy and maintaining crossdev in $FILESDIR ... if you want to ask
robbat2 for a crossdev git or svn, we can transition to that.
-mike
 
Old 06-23-2008, 02:37 PM
Ned Ludd
 
Default Cross Wrappers

On Sun, 2008-06-22 at 06:12 -0400, Mike Frysinger wrote:
> On Sunday 22 June 2008, Ned Ludd wrote:
> > On Sat, 2008-06-21 at 23:29 -0400, Mike Frysinger wrote:
> > > On Saturday 21 June 2008, Ned Ludd wrote:
> > > for the configure tests, ive been meaning to investigate switching over
> > > to a config.site rather than exporting them through the environment ...
> >
> > I'll see what I can snag from here.
> > https://dev.openwrt.org/browser/trunk/include/site (hate traq)
> > Any tips/links to some others?
>
> it's just an idea i had floating around. havent actually looked into
> implementation details. but if another project is already maintaining the
> site files, then we should push our little differences to them and then just
> start using their work .


> > > for the CHOST, how about checking $0 ? so people can symlink like:
> > > x86_64-pc-linux-gnu-emerge and then they can just run that without
> > > needing anything set in the
> > > environment ... that's how i generally multiplex my cross scripts for
> > > multiple targets.
> >
> > I have it right now as emerge-CHOST.
> > I figured the logic there that CHOST-* should be mostly
> > reserved for the toolchain, plus it's easier for me to emerge- and
> > pull in the right wrapper foo for whatever I'm working on.
>
> i think having it all be CHOST- prefixed rather than suffixed is better for
> consistency. or just provide both .

done.

> > When you run emerge-wrapper --init
> > it sets up all the symlink love which would probably be run a
> > pkg_postinst().
>

> i mean when you do `crossdev FOO`, it'll create symlinks in /usr/bin/ to the
> wrappers already ... no need for the user to run any other commands in the
> default case ...
>
> cant really divine what targets need what love from a pkg_postinst()

That seems logical moving forward. But for ppl who installed crossdev
before "next-release" benefit from being able to quickly have everything
initialized without having to crossdev merge everything again.

> > > we could have crossdev manage the symlinks automatically as well so they
> > > get the ...-emerge and ...-pkg-config by default. and setup the
> > > PORTAGE_CONFIGROOT too ...
> >
> > Yep that's what it does. I'll move the pkg over to usr/share/crossdev/
> > Got a crossdev in cvs/svn some place so I can create a ./wrappers
> > subdir?
> ive been lazy and maintaining crossdev in $FILESDIR ... if you want to ask
> robbat2 for a crossdev git or svn, we can transition to that.
> -mike


done.

http://sources.gentoo.org/gitweb/?p=crossdev.git;a=summary

http://sources.gentoo.org/gitweb/?p=crossdev.git;a=snapshot;sf=tbz2

--
gentoo-embedded@lists.gentoo.org mailing list
 
Old 06-23-2008, 03:38 PM
Mike Frysinger
 
Default Cross Wrappers

On Monday 23 June 2008, Ned Ludd wrote:
> On Sun, 2008-06-22 at 06:12 -0400, Mike Frysinger wrote:
> > On Sunday 22 June 2008, Ned Ludd wrote:
> > > When you run emerge-wrapper --init
> > > it sets up all the symlink love which would probably be run a
> > > pkg_postinst().
> >
> > i mean when you do `crossdev FOO`, it'll create symlinks in /usr/bin/ to
> > the wrappers already ... no need for the user to run any other commands
> > in the default case ...
> >
> > cant really divine what targets need what love from a pkg_postinst()
>
> That seems logical moving forward. But for ppl who installed crossdev
> before "next-release" benefit from being able to quickly have everything
> initialized without having to crossdev merge everything again.

sure. i wasnt suggesting we get rid of the old method, just that we
streamline things in the default case.

> > > > we could have crossdev manage the symlinks automatically as well so
> > > > they get the ...-emerge and ...-pkg-config by default. and setup the
> > > > PORTAGE_CONFIGROOT too ...
> > >
> > > Yep that's what it does. I'll move the pkg over to usr/share/crossdev/
> > > Got a crossdev in cvs/svn some place so I can create a ./wrappers
> > > subdir?
> >
> > ive been lazy and maintaining crossdev in $FILESDIR ... if you want to
> > ask robbat2 for a crossdev git or svn, we can transition to that.
>
> done.
>
> http://sources.gentoo.org/gitweb/?p=crossdev.git;a=summary
>
> http://sources.gentoo.org/gitweb/?p=crossdev.git;a=snapshot;sf=tbz2

erm, i know how to access the old git site, but not the one on sources.g.o,
and gitweb isnt configured there to show URLs ...
-mike
 
Old 06-26-2008, 10:54 PM
Beber
 
Default Cross Wrappers

Le samedi 21 juin à 08:33:57, « Ned Ludd » à écrit :

> Mike,
>
> Ok with how you have SYSROOT + ROOT + PORTAGE_CONFIG working I think
> I've been able to come up with a decent set of cross compile wrappers
> that should be usable by everybody for the ideal cross compile setups.
> No more of the 'xmerge' foo. This should do it right.
>
> I want you to review.. And then tell me if it should be apart of
> crossdev or another pkg.
>
> Thanks in advance.
>
> http://dev.gentoo.org/~solar/embedded/cross-wrappers-20080621.tar.bz2

That's really nice. I started something like that some days ago, and
found the idea of integrating this in crossdev is something I smell
fine

Also, I've a regret, which take me a lot to think about is the
separation of SYSROOT for DEPENDS and RDEPENDS.

Here, SYSROOT is always /usr/${CHOST} which is fine to build system but
not to have an image of what you'll get (Or if you want build multiple
different system with same CHOST, different config, packages, debug
level or anything else). Yes, you can apply filter when building
initrd/fs/whatever, but that could benefic to don't have to. Same note
for PORTAGE_CONFIGROOT.

Any plan to achieve this ?

Any interesment of what I did to "wrap" that ?

Thanks

--
Beber
 
Old 06-26-2008, 11:13 PM
Ned Ludd
 
Default Cross Wrappers

On Fri, 2008-06-27 at 00:54 +0200, Beber wrote:
> Le samedi 21 juin à 08:33:57, « Ned Ludd » à écrit :
>
> > Mike,
> >
> > Ok with how you have SYSROOT + ROOT + PORTAGE_CONFIG working I think
> > I've been able to come up with a decent set of cross compile wrappers
> > that should be usable by everybody for the ideal cross compile setups.
> > No more of the 'xmerge' foo. This should do it right.
> >
> > I want you to review.. And then tell me if it should be apart of
> > crossdev or another pkg.
> >
> > Thanks in advance.
> >
> > http://dev.gentoo.org/~solar/embedded/cross-wrappers-20080621.tar.bz2
>
> That's really nice. I started something like that some days ago, and
> found the idea of integrating this in crossdev is something I smell
> fine
>
> Also, I've a regret, which take me a lot to think about is the
> separation of SYSROOT for DEPENDS and RDEPENDS.
>
> Here, SYSROOT is always /usr/${CHOST} which is fine to build system but
> not to have an image of what you'll get (Or if you want build multiple
> different system with same CHOST, different config, packages, debug
> level or anything else). Yes, you can apply filter when building
> initrd/fs/whatever, but that could benefic to don't have to. Same note
> for PORTAGE_CONFIGROOT.
>
> Any plan to achieve this ?
>
> Any interesment of what I did to "wrap" that ?

Thats how the my old wrappers behaved more or less. But SYSPOOP kinda
locks us into using it. Thus having unique ROOT's with unique USE= flags
is a bit of a pita. But when following the SYSROOT system everything
worse pretty well. It's kinda a trade off.


--
gentoo-embedded@lists.gentoo.org mailing list
 
Old 07-03-2008, 01:45 PM
Christopher Friedt
 
Default Cross Wrappers

Hi Ned & Mike,

I like the fix_la_files() and fix_pkgconfig_files() functions in
cross-fix-root.


Prefixing emerge with CHOST- might be better because of tab completion -
i.e. using x86_64-pc-linux-gnu-[tab] would give you several results
including gcc, emerge, etc. At least it would be more uniform in any
case and uniformity makes it much easier to incorporate into other code.


If your changes were incorporated into crossdev, so that the wrappers
were automatically generated per-toolchain (or even if symlinks were
made and $0 was checked), that would be awesome.


Chris

Mike Frysinger wrote:

On Sunday 22 June 2008, Ned Ludd wrote:

On Sat, 2008-06-21 at 23:29 -0400, Mike Frysinger wrote:

On Saturday 21 June 2008, Ned Ludd wrote:
for the configure tests, ive been meaning to investigate switching over
to a config.site rather than exporting them through the environment ...

I'll see what I can snag from here.
https://dev.openwrt.org/browser/trunk/include/site (hate traq)
Any tips/links to some others?


it's just an idea i had floating around. havent actually looked into
implementation details. but if another project is already maintaining the
site files, then we should push our little differences to them and then just
start using their work .



for the CHOST, how about checking $0 ? so people can symlink like:
x86_64-pc-linux-gnu-emerge and then they can just run that without
needing anything set in the
environment ... that's how i generally multiplex my cross scripts for
multiple targets.

I have it right now as emerge-CHOST.
I figured the logic there that CHOST-* should be mostly
reserved for the toolchain, plus it's easier for me to emerge- and

pull in the right wrapper foo for whatever I'm working on.


i think having it all be CHOST- prefixed rather than suffixed is better for
consistency. or just provide both .


When you run emerge-wrapper --init
it sets up all the symlink love which would probably be run a

pkg_postinst().


i mean when you do `crossdev FOO`, it'll create symlinks in /usr/bin/ to the
wrappers already ... no need for the user to run any other commands in the
default case ...


cant really divine what targets need what love from a pkg_postinst()


we could have crossdev manage the symlinks automatically as well so they
get the ...-emerge and ...-pkg-config by default. and setup the
PORTAGE_CONFIGROOT too ...

Yep that's what it does. I'll move the pkg over to usr/share/crossdev/
Got a crossdev in cvs/svn some place so I can create a ./wrappers
subdir?


ive been lazy and maintaining crossdev in $FILESDIR ... if you want to ask
robbat2 for a crossdev git or svn, we can transition to that.

-mike

--
gentoo-embedded@lists.gentoo.org mailing list
 
Old 07-03-2008, 02:34 PM
Ned Ludd
 
Default Cross Wrappers

On Thu, 2008-07-03 at 09:45 -0400, Christopher Friedt wrote:
> Hi Ned & Mike,
>
> I like the fix_la_files() and fix_pkgconfig_files() functions in
> cross-fix-root.
>
> Prefixing emerge with CHOST- might be better because of tab completion -
> i.e. using x86_64-pc-linux-gnu-[tab] would give you several results
> including gcc, emerge, etc. At least it would be more uniform in any
> case and uniformity makes it much easier to incorporate into other code.
>
> If your changes were incorporated into crossdev, so that the wrappers
> were automatically generated per-toolchain (or even if symlinks were
> made and $0 was checked), that would be awesome.


Here is the updated version which does all that.

http://dev.gentoo.org/~solar/embedded/crossdev-wrappers-20080622.ebuild




> Chris
>
> Mike Frysinger wrote:
> > On Sunday 22 June 2008, Ned Ludd wrote:
> >> On Sat, 2008-06-21 at 23:29 -0400, Mike Frysinger wrote:
> >>> On Saturday 21 June 2008, Ned Ludd wrote:
> >>> for the configure tests, ive been meaning to investigate switching over
> >>> to a config.site rather than exporting them through the environment ...
> >> I'll see what I can snag from here.
> >> https://dev.openwrt.org/browser/trunk/include/site (hate traq)
> >> Any tips/links to some others?
> >
> > it's just an idea i had floating around. havent actually looked into
> > implementation details. but if another project is already maintaining the
> > site files, then we should push our little differences to them and then just
> > start using their work .
> >
> >>> for the CHOST, how about checking $0 ? so people can symlink like:
> >>> x86_64-pc-linux-gnu-emerge and then they can just run that without
> >>> needing anything set in the
> >>> environment ... that's how i generally multiplex my cross scripts for
> >>> multiple targets.
> >> I have it right now as emerge-CHOST.
> >> I figured the logic there that CHOST-* should be mostly
> >> reserved for the toolchain, plus it's easier for me to emerge- and
> >> pull in the right wrapper foo for whatever I'm working on.
> >
> > i think having it all be CHOST- prefixed rather than suffixed is better for
> > consistency. or just provide both .
> >
> >> When you run emerge-wrapper --init
> >> it sets up all the symlink love which would probably be run a
> >> pkg_postinst().
> >
> > i mean when you do `crossdev FOO`, it'll create symlinks in /usr/bin/ to the
> > wrappers already ... no need for the user to run any other commands in the
> > default case ...
> >
> > cant really divine what targets need what love from a pkg_postinst()
> >
> >>> we could have crossdev manage the symlinks automatically as well so they
> >>> get the ...-emerge and ...-pkg-config by default. and setup the
> >>> PORTAGE_CONFIGROOT too ...
> >> Yep that's what it does. I'll move the pkg over to usr/share/crossdev/
> >> Got a crossdev in cvs/svn some place so I can create a ./wrappers
> >> subdir?
> >
> > ive been lazy and maintaining crossdev in $FILESDIR ... if you want to ask
> > robbat2 for a crossdev git or svn, we can transition to that.
> > -mike

--
gentoo-embedded@lists.gentoo.org mailing list
 

Thread Tools




All times are GMT. The time now is 10:13 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org