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 User

 
 
LinkBack Thread Tools
 
Old 12-16-2009, 07:44 PM
Alan Mackenzie
 
Default Can I (partially) rebuild a package with emerge?

Hi, gentoo,

I've just emerged xorg-x11, and noticed that I had a wrong setting for
VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to rebuild
only those portions of xorg-x11 dependent on that setting, or do I have
to start again from scratch? I've perused the emerge man page, but not
found this situation addressed.

Thanks for the help!

--
Alan Mackenzie (Nuremberg, Germany).
 
Old 12-16-2009, 08:06 PM
Xavier Parizet
 
Default Can I (partially) rebuild a package with emerge?

Le mercredi 16 décembre 2009 21:44:29, Alan Mackenzie a écrit :
> Hi, gentoo,
>
> I've just emerged xorg-x11, and noticed that I had a wrong setting for
> VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to rebuild
> only those portions of xorg-x11 dependent on that setting, or do I have
> to start again from scratch? I've perused the emerge man page, but not
> found this situation addressed.
>
> Thanks for the help!
>

Actually it's not possible because when a package is merged with success, the
build tree is deleted from /var/tmp/portage.
The only choice you have is to rebuild the whole package using emerge --
oneshot package.
By the way, the rebuild will also pull the new dependencies implied by the new
use flags settings.

HTH.

--
Xavier Parizet
YaGB: http://gentooist.com
 
Old 12-16-2009, 09:05 PM
Neil Bothwick
 
Default Can I (partially) rebuild a package with emerge?

On Wed, 16 Dec 2009 20:44:29 +0000, Alan Mackenzie wrote:

> I've just emerged xorg-x11, and noticed that I had a wrong setting for
> VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to rebuild
> only those portions of xorg-x11 dependent on that setting, or do I have
> to start again from scratch? I've perused the emerge man page, but not
> found this situation addressed.

VIDEO_CARDS sets USE flags, so emerge -uavDN world.


--
Neil Bothwick

Angular Momentum Makes The World Go 'Round
 
Old 12-16-2009, 10:25 PM
Alan McKinnon
 
Default Can I (partially) rebuild a package with emerge?

On Wednesday 16 December 2009 23:06:00 Xavier Parizet wrote:
> Le mercredi 16 décembre 2009 21:44:29, Alan Mackenzie a écrit :
> > Hi, gentoo,
> >
> > I've just emerged xorg-x11, and noticed that I had a wrong setting for
> > VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to rebuild
> > only those portions of xorg-x11 dependent on that setting, or do I have
> > to start again from scratch? I've perused the emerge man page, but not
> > found this situation addressed.
> >
> > Thanks for the help!
>
> Actually it's not possible because when a package is merged with success,
> the build tree is deleted from /var/tmp/portage.
> The only choice you have is to rebuild the whole package using emerge --
> oneshot package.
> By the way, the rebuild will also pull the new dependencies implied by the
> new use flags settings.


OT for the original question, but there is a way to lessen the amount of work
done if a package may need to be merged (or attempted to be merged)
repeatedly. You have to do it manually though:

- ensure all needed deps are already installed
- ebuild <package> <command>

where <command> is on of fetch, unpack, compile, install, etc as detailed in
the ebuild man page. You can't restart a failed compile from where it left off
[you can do that if you are running make manually, but ebuild abstracts that
away] but at least some work can be omitted.

If course, this in no way answers the original question, but it's occasionally
useful to know

--
alan dot mckinnon at gmail dot com
 
Old 12-16-2009, 10:31 PM
Jesús Guerrero
 
Default Can I (partially) rebuild a package with emerge?

On Wed, 16 Dec 2009 20:44:29 +0000, Alan Mackenzie <acm@muc.de> wrote:
> Hi, gentoo,
>
> I've just emerged xorg-x11, and noticed that I had a wrong setting for
> VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to rebuild
> only those portions of xorg-x11 dependent on that setting, or do I have
> to start again from scratch? I've perused the emerge man page, but not
> found this situation addressed.

What you failed to see if that VIDEO_CARDS flags are just an special type
of USE flags. Using -auDvN world will fix everything. Truly speaking,
xorg-server wouldn't even need to be recompiled (though that's what portage
will do). As far as I know, all these special USE flags for xorg-server
just push one of another xf86-video-* package(s) as dependencies, which in
turn install the required driver(s).

The rest of Xorg components do not relate to this, you shouldn't need to
recompile anything else unless it also depends on VIDEO_CARDS (only several
packages do, like DirectFB if I remember right).

--
Jesús Guerrero
 
Old 12-17-2009, 02:37 AM
Joshua Murphy
 
Default Can I (partially) rebuild a package with emerge?

2009/12/16 Jesús Guerrero <i92guboj@terra.es>:
> On Wed, 16 Dec 2009 20:44:29 +0000, Alan Mackenzie <acm@muc.de> wrote:
>> Hi, gentoo,
>>
>> I've just emerged xorg-x11, and noticed that I had a wrong setting for
>> VIDEO_CARDS in /etc/make.conf. *Does emerge have a facility to rebuild
>> only those portions of xorg-x11 dependent on that setting, or do I have
>> to start again from scratch? *I've perused the emerge man page, but not
>> found this situation addressed.
>
> What you failed to see if that VIDEO_CARDS flags are just an special type
> of USE flags. Using -auDvN world will fix everything. Truly speaking,
> xorg-server wouldn't even need to be recompiled (though that's what portage
> will do). As far as I know, all these special USE flags for xorg-server
> just push one of another xf86-video-* package(s) as dependencies, which in
> turn install the required driver(s).
>
> The rest of Xorg components do not relate to this, you shouldn't need to
> recompile anything else unless it also depends on VIDEO_CARDS (only several
> packages do, like DirectFB if I remember right).
>
> --
> Jesús Guerrero

Actually, as I ran across on my ~x86 systems, x11-base/xorg-drivers is
now a separate ebuild from
xorg-server, keeping the latter from trying to be rebuilt every time
you change what drivers you want to have built... and looking at
gentoo-portage.com, xorg-drivers-1.6 is stable on both amd64 and x86.
It really is a much more sensible approach, and appears to work rather
well.

--
Poison [BLX]
Joshua M. Murphy
 
Old 12-17-2009, 02:14 PM
Alan Mackenzie
 
Default Can I (partially) rebuild a package with emerge?

Hi, Neil,

On Wed, Dec 16, 2009 at 10:05:40PM +0000, Neil Bothwick wrote:
> On Wed, 16 Dec 2009 20:44:29 +0000, Alan Mackenzie wrote:

> > I've just emerged xorg-x11, and noticed that I had a wrong setting
> > for VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to
> > rebuild only those portions of xorg-x11 dependent on that setting,
> > or do I have to start again from scratch? I've perused the emerge
> > man page, but not found this situation addressed.

> VIDEO_CARDS sets USE flags, so emerge -uavDN world.

I've done that, but it failed to rebuild my xorg-x11. I've still got
the version from last night, even though I've changed USE flags (via
setting VIDEO_CARDS) in /etc/make.conf.

/etc/make.conf has a later timestamp than /usr/bin/Xorg, yet this
doesn't trigger the -N flag. I'm misunderstanding something significant
here. The emerge man page is not explicit in how it determines "new"
USE flags.

If I wanted just to remove Xorg, together with the 188 other packages
installed with it, would it be correct to run these commands:

emerge --unmerge xorg-x11
emerge --depclean

?

TVM!

> --
> Neil Bothwick

--
Alan Mackenzie (Nuremberg, Germany).
 
Old 12-17-2009, 03:11 PM
Jesús Guerrero
 
Default Can I (partially) rebuild a package with emerge?

On Thu, 17 Dec 2009 15:14:48 +0000, Alan Mackenzie <acm@muc.de> wrote:
> Hi, Neil,
>
> On Wed, Dec 16, 2009 at 10:05:40PM +0000, Neil Bothwick wrote:
>> On Wed, 16 Dec 2009 20:44:29 +0000, Alan Mackenzie wrote:
>
>> > I've just emerged xorg-x11, and noticed that I had a wrong setting
>> > for VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to
>> > rebuild only those portions of xorg-x11 dependent on that setting,
>> > or do I have to start again from scratch? I've perused the emerge
>> > man page, but not found this situation addressed.
>
>> VIDEO_CARDS sets USE flags, so emerge -uavDN world.
>
> I've done that, but it failed to rebuild my xorg-x11. I've still got
> the version from last night, even though I've changed USE flags (via
> setting VIDEO_CARDS) in /etc/make.conf.

First, as I said in my other mail, the only relevant package that needs to
be rebuilt is xorg-server, nothing else. The drivers you add will be built
afresh as well as dependencies for xorg-server.

Second, xorg-x11 is *nothing*. It's just a meta package that pulls
dependencies, it doesn't actually install a single file on your hard disk,
and it doesn't compile anything at all. So, re-emerging it will do nothing.

> /etc/make.conf has a later timestamp than /usr/bin/Xorg, yet this
> doesn't trigger the -N flag.

-N flag is not triggered based on time stamps. Each time a package is
merged, the USE flags you used the last time you merged it are stored under
/var/db/pkg. All -N does is to check if these flags that are stored match
the current ones, and if not, the offending package is re-emerged.

> If I wanted just to remove Xorg, together with the 188 other packages
> installed with it, would it be correct to run these commands:
>
> emerge --unmerge xorg-x11
> emerge --depclean

As long as you didn't emerge any single X package by hand, yes. But it
will do nothing to help you, it will not solve your problem. And it's not
related to your problem either. You'd just be wasting time.

--
Jesús Guerrero
 
Old 12-17-2009, 03:44 PM
Alan McKinnon
 
Default Can I (partially) rebuild a package with emerge?

On Thursday 17 December 2009 17:14:48 Alan Mackenzie wrote:
> Hi, Neil,
>
> On Wed, Dec 16, 2009 at 10:05:40PM +0000, Neil Bothwick wrote:
> > On Wed, 16 Dec 2009 20:44:29 +0000, Alan Mackenzie wrote:
> > > I've just emerged xorg-x11, and noticed that I had a wrong setting
> > > for VIDEO_CARDS in /etc/make.conf. Does emerge have a facility to
> > > rebuild only those portions of xorg-x11 dependent on that setting,
> > > or do I have to start again from scratch? I've perused the emerge
> > > man page, but not found this situation addressed.
> >
> > VIDEO_CARDS sets USE flags, so emerge -uavDN world.
>
> I've done that, but it failed to rebuild my xorg-x11. I've still got
> the version from last night, even though I've changed USE flags (via
> setting VIDEO_CARDS) in /etc/make.conf.
>
> /etc/make.conf has a later timestamp than /usr/bin/Xorg, yet this
> doesn't trigger the -N flag. I'm misunderstanding something significant
> here. The emerge man page is not explicit in how it determines "new"
> USE flags.
>
> If I wanted just to remove Xorg, together with the 188 other packages
> installed with it, would it be correct to run these commands:
>
> emerge --unmerge xorg-x11
> emerge --depclean

timestamps on make.conf are utterly irrelevant here.

Portage has determined that you apparently do not need to update X.org so it
hasn't. You will have to look in the ebuilds to see exactly what the drivers
depend on, but obviously it is different to what you have assumed.

X and it's drivers are special in some regards - the dependencies cannot be
automatically fulfilled in all cases. So it is better to use the code snippet
in the xorg-server ebuild to determine your used drivers and rebuild those
manually. Use the -1 flag to avoid polluting worlld


--
alan dot mckinnon at gmail dot com
 

Thread Tools




All times are GMT. The time now is 06:37 PM.

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