Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
An emerge wrapper for breaking emerges into chunks
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 28, 29, 30  Next  
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
slycordinator
Advocate
Advocate


Joined: 31 Jan 2004
Posts: 3065
Location: Korea

PostPosted: Fri May 19, 2006 7:53 pm    Post subject: Reply with quote

exclude seems to not work.

Code:
# ./emtst.sh -sepqt exclude libstdc++-v3
exclude


                               Runnig emwrap.sh 4.0.4
         if emwrap.sh is run and it detects a "failed' or "build" file
         then it will offer to build them. You can ignor this by not doing
         anything and what you wanted todo will start after 10 seconds.

           ToolChain updates found

                linux-headers
======================================================

sys-kernel/linux-headers-2.6.11-r5
sys-libs/glibc-2.4-r3
sys-devel/gcc-config-1.3.13-r2
sys-devel/binutils-config-1.8-r7
sys-devel/binutils-2.16.1-r2
sys-devel/gcc-3.4.6-r1
sys-libs/glibc-2.4-r3
sys-devel/binutils-2.16.1-r2
sys-devel/gcc-3.4.6-r1
sys-libs/libstdc++-v3-3.3.6
1 of 10 build [ebuild   R   ] sys-kernel/linux-headers-2.6.11-r5
2 of 10 build [ebuild   R   ] sys-libs/glibc-2.4-r3
3 of 10 build [ebuild   R   ] sys-devel/gcc-config-1.3.13-r2
4 of 10 build [ebuild   R   ] sys-devel/binutils-config-1.8-r7
5 of 10 build [ebuild   R   ] sys-devel/binutils-2.16.1-r2
6 of 10 build [ebuild   R   ] sys-devel/gcc-3.4.6-r1
7 of 10 build [ebuild   R   ] sys-libs/glibc-2.4-r3
8 of 10 build [ebuild   R   ] sys-devel/binutils-2.16.1-r2
9 of 10 build [ebuild   R   ] sys-devel/gcc-3.4.6-r1
10 of 10 build [ebuild   R   ] sys-libs/libstdc++-v3-3.3.6
End of ToolChain update


edit: I think the exclude is only in world.lst as opposed to doing a toolchain update. That's probably by design.
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Sat May 20, 2006 12:15 am    Post subject: Reply with quote

slycordinator Its working for me.
Code:
emtst.sh -setqp -X libstdc

             Runnig emwrap.sh 4.0.4 Fri May 19 16:47:11 PDT 2006
         if emwrap.sh is run and it detects a "failed' or "build" file
         then it will offer to build them. You can ignor this by not doing 
         anything and what you wanted todo will start after 10 seconds.

           ToolChain updates found

                linux-headers

======================================================

sys-kernel/linux-headers-2.6.11-r5
sys-libs/glibc-2.4-r3
sys-devel/gcc-config-1.3.13-r2
sys-devel/binutils-config-1.8-r7
sys-devel/binutils-2.16.92
sys-devel/gcc-4.2.0_alpha20060513
sys-libs/glibc-2.4-r3
sys-devel/binutils-2.16.92
sys-devel/gcc-4.2.0_alpha20060513

1 of 9 build [ebuild   R   ] sys-kernel/linux-headers-2.6.11-r5 
2 of 9 build [ebuild     U ] sys-libs/glibc-2.4-r3 [2.4-r2]
3 of 9 build [ebuild   R   ] sys-devel/gcc-config-1.3.13-r2 
4 of 9 build [ebuild   R   ] sys-devel/binutils-config-1.8-r7 
5 of 9 build [ebuild   R   ] sys-devel/binutils-2.16.92 
6 of 9 build [ebuild  NS   ] sys-devel/gcc-4.2.0_alpha20060513 
7 of 9 build [ebuild     U ] sys-libs/glibc-2.4-r3 [2.4-r2]
8 of 9 build [ebuild   R   ] sys-devel/binutils-2.16.92 
9 of 9 build [ebuild  NS   ] sys-devel/gcc-4.2.0_alpha20060513 

End of ToolChain update
I just posted what I'm useing, its what I posted yesterday., I did change somethings just now before reposting. If you look at the info it shows version and date info now and I added spaceing to the TC output info[. The date info should be within 1 or 2 minutes of the time stamp of whats on the download site. I did try this useing "exclude" also. Note exclude will only exclude libstdc, gcc-config and bin-config. You cant exclude gcc glibc linux-headers or binutils.

This script with the exclude feature is more than capable of borking your system so use with care. The way to permantly block something is /etc/portage/package.mask
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
slycordinator
Advocate
Advocate


Joined: 31 Jan 2004
Posts: 3065
Location: Korea

PostPosted: Sat May 20, 2006 8:40 am    Post subject: Reply with quote

hielvc wrote:
I just posted what I'm useing, its what I posted yesterday., I did change somethings just now before reposting. If you look at the info it shows version and date info now and I added spaceing to the TC output info[. The date info should be within 1 or 2 minutes of the time stamp of whats on the download site. I did try this useing "exclude" also. Note exclude will only exclude libstdc, gcc-config and bin-config. You cant exclude gcc glibc linux-headers or binutils.

This script with the exclude feature is more than capable of borking your system so use with care. The way to permantly block something is /etc/portage/package.mask


I think the libstdc++ should probably be not excludable from the toolchain.

On most systems it's a neccesary part of the toolchain and you already made it so that systems that don't need it don't get it anyway.

Like gcc-config and binutils-config, don't absolutely need to be updated for each toolchain so it's not a big deal for those.
Back to top
View user's profile Send private message
Bob P
Advocate
Advocate


Joined: 20 Oct 2004
Posts: 3355
Location: Jackass! Development Labs

PostPosted: Sun May 21, 2006 10:28 am    Post subject: Reply with quote

hielvc wrote:
B. emerge emerge emerge emerge (keeps the electons in your box from getting fat).

who wants fat electrons in their box? :P
_________________
.
Stage 1/3 | Jackass! | Rockhopper! | Thanks | Google Sucks
Back to top
View user's profile Send private message
curmudgeon
Veteran
Veteran


Joined: 08 Aug 2003
Posts: 1741

PostPosted: Mon May 22, 2006 11:10 am    Post subject: Reply with quote

I still get a lot more output, even when running the exact same command:
Code:
./emtst.sh -sepqt

                               Runnig emwrap.sh 4.0.4
         if emwrap.sh is run and it detects a "failed' or "build" file
         then it will offer to build them. You can ignor this by not doing
         anything and what you wanted todo will start after 10 seconds.

           ToolChain updates found

                linux-headers
======================================================

sys-kernel/linux-headers-2.6.11-r2
sys-libs/glibc-2.3.6-r3
sys-devel/gcc-config-1.3.13-r2
sys-devel/binutils-config-1.8-r7
sys-devel/binutils-2.16.1
sys-devel/gcc-3.4.5
sys-libs/glibc-2.3.6-r3
sys-devel/binutils-2.16.1
sys-devel/gcc-3.4.5
1 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-kernel/linux-headers-2.6.11-r2
2 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-libs/glibc-2.3.6-r3
3 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/gcc-config-1.3.13-r2
4 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/binutils-config-1.8-r7
5 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/binutils-2.16.1
6 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/gcc-3.4.5
7 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-libs/glibc-2.3.6-r3
8 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/binutils-2.16.1
9 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/gcc-3.4.5
End of ToolChain update


Again, why does it say "ToolChain updates found... linux-headers" when it has the current version?
Back to top
View user's profile Send private message
dol-sen
Retired Dev
Retired Dev


Joined: 30 Jun 2002
Posts: 2805
Location: Richmond, BC, Canada

PostPosted: Mon May 22, 2006 4:29 pm    Post subject: Reply with quote

You are not using the latest version of emtst.sh. The latest will show the version and time in the header, yours does not, so it is an older version which does not abreviate the output.
_________________
Brian
Porthole, the Portage GUI frontend irc@freenode: #gentoo-guis, #porthole, Blog
layman, gentoolkit, CoreBuilder, esearch...
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Mon May 22, 2006 4:33 pm    Post subject: Reply with quote

Bob_P Dang electons, sigh, there are days when I could misspell " a ". I keep mine fit by running and testing this script and emerge. :wink:

curmudgeon could you get the latest emtst.sh ? If you look at slycordinator output
Quote:
Running emwrap.sh 4.0.4 Fri May 19 16:47:11 PDT 2006
you ll see it has a date stamp. As to why emtst.sh and/or emwrap.sh list linux-headers when run with " -setpq "
Quote:
From emwrap.sh help
Options:
These first flags are the same as what you use with emerge [options] See "man emerge"
-h, help Display this help (default)
-f Fetches files only
-u update
-D deep
-e Does an emerge "--emptytree" world/sytem
-p Just like pretend in emerge. Works with all other flags.
-N Tells emerge to include installed packages that are affected by the new USE flags
that have changed since the program was built.
-B/b build packages only or build them as you emerge packages
resume, -r Continues emwrap from where it stopped. To use rerun the same command
and add "r" DONT USE EMWRAP.SH FOR ANYTHING ELSE UNTIL YOU RUN THE -r
and emwrap will start from where it stopped without having to rebuild everything
already done.
-K/k use packages. For use if you have --buildpkg in your /etc/make.conf or use -B/b
-G/g use packages from a PORTAGE_BINHOST server.
system, -s "-s" is short for system.The same as "emerge system"
world, -w "-w" is short for world. The same as "emerge world"
--------------------------------------------------------------
For use by the script
-q Quite, it changes the output format in when you run pretend. Try it to see
which output you like.
-t Rebuilds the tool chain components only
-b Rebuilds the tool chain and resumes the emerge.
-1 For use with "t" or "b" only builds the TC once.
-S This is short for a "emerge system --emptytree" build.
-W builds the world files, "emerge world -e", BUT minus the system files.
failed builds the files in the failed list.
nc Turns off color in the script. You still get color in emerge out put.
exclude or -X After either must follow a space separated list of files to be excluded
from being built.EX: emwrap.sh world -uDX gentoo-source openoffice KDE my-liscened-program
or emwrap.sh -uDN system exclude (or -X) openoffice KDE my-liscened-program
Maybe this will help people to understand:
emwrap.sh -setqp >>> emwraper (emerge system -eqp) -t. When emerge runs --emptytree it list everything in system.and/or world. The TC check in emwrap sees "linux-headers" and calls this build list
Code:
 "TC="linux-headers glibc $tc_conf binutils-[0-9].* gcc-[0-9].* glibc binutils-[0-9].* gcc-[0-9].* $(echo $tc_stdc)"
" tc_config is gcc-config and binutils-config and $tc_stdc is for libstdc++-v3. If you run "emtst.sh world -uDNtp" then emerge runs "emerge world -uDNp" and emwrap test for TC updates and if found calls the appropriate TC build list. You'll find the list at the top of function "tc_emerge()" , line 401.

EDIT Yaaa !!!!! found an editor that has a working spell checker WooT WOOOT :lol:
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
curmudgeon
Veteran
Veteran


Joined: 08 Aug 2003
Posts: 1741

PostPosted: Tue May 23, 2006 6:09 am    Post subject: Reply with quote

Still no go on the brief output. I must have something different in my system, but I can't figure out what:
Code:
 ./emtst.sh -sepqt




                     Runnig emwrap.sh 4.0.4 Fri May 19 16:47:11 PDT 2006
         if emwrap.sh is run and it detects a "failed' or "build" file
         then it will offer to build them. You can ignor this by not doing
         anything and what you wanted todo will start after 10 seconds.

           ToolChain updates found

                linux-headers

======================================================

sys-kernel/linux-headers-2.6.11-r2
sys-libs/glibc-2.3.6-r3
sys-devel/gcc-config-1.3.13-r2
sys-devel/binutils-config-1.8-r7
sys-devel/binutils-2.16.1
sys-devel/gcc-3.4.5
sys-libs/glibc-2.3.6-r3
sys-devel/binutils-2.16.1
sys-devel/gcc-3.4.5

1 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-kernel/linux-headers-2.6.11-r2
2 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-libs/glibc-2.3.6-r3
3 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/gcc-config-1.3.13-r2
4 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/binutils-config-1.8-r7
5 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/binutils-2.16.1
6 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/gcc-3.4.5
7 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-libs/glibc-2.3.6-r3
8 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/binutils-2.16.1
9 of 9 build
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-devel/gcc-3.4.5

End of ToolChain update


OK, I think I understand why the linux-headers appears, but it would seem more clever to suppress it unless it represents a real update. :)
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Tue May 23, 2006 10:57 pm    Post subject: Reply with quote

What does " emerge system -uDqp " look like? If its there are no updates needed post the output "emerge system -eqp" . The output differences is strickly the differnce of emerge with and with and without out the "q" flag.
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
curmudgeon
Veteran
Veteran


Joined: 08 Aug 2003
Posts: 1741

PostPosted: Thu May 25, 2006 9:47 am    Post subject: Reply with quote

I don't see any difference. :(
Code:
# emerge -Dpqu system

These are the packages that I would merge, in order:

Calculating system dependencies ...done!
[ebuild     U ] sys-apps/man-pages-2.31 [2.30]


# emerge -Dpu system

These are the packages that I would merge, in order:

Calculating system dependencies ...done!
[ebuild     U ] sys-apps/man-pages-2.31 [2.30]
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Fri May 26, 2006 4:37 am    Post subject: Reply with quote

It must be a portage-2.1 thing. Actually now that I think of it it is. In portage-2.1 when you run emerge it shows USE flags. The "q" just quites the output to show just package names. Well they've been saying that the 2.1 series is gong to turn stabe one these days.
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
jsnorman
Tux's lil' helper
Tux's lil' helper


Joined: 24 Feb 2005
Posts: 131

PostPosted: Sat May 27, 2006 12:08 pm    Post subject: emtst.sh 4.0.4 resetting gcc-config profile???? Reply with quote

I have recently upgraded to gcc-4.1.x from gcc-3.6.y and used emtst 4.0.4 to do it (thanks!). However, I have run into a problem that really screwed things up on my last world build.

First, I started out doing purely manual gcc/glibc core emerging as follows: linux-headers, gcc (to 4.1), gcc-config, linux-headers, gcc, glibc, binutils, gcc, glibc in that order. That worked fine.

Second, I double checked gcc-config to confirm my 4.1 profile, and then ran emtst.sh -set1 (not twice since I had alread built gcc/glibc manually once correctly). That worked as well.

Third, I ran emtst.sh -web && emtst -W and let my system do its thing for a few days :-) However, I do not recall if I checked my gcc-config profile at this stage (probably did but not sure - even so, I ran this command immediately after -set1 finished so gcc should still have been set at 4.1, right?)

I have been monitoring things everyonce in a while, and saw that -web finished early yesterday, and -W had started. By this morning, -W was 400 or so out of 1000 files finished... BUT at some point I restarted my X server and my nvidia module crashed... investigation revealed it had been built with a different version of gcc than the kernel. looking at dmesg, i see that nvidia was built with 3.6!!! gcc-config -l confirms my fear, and I see that the current working gcc version is in fact 3.6!? which means that my emtst.sh has been recompiling everything using gcc 3.6. Ugh.

I shoudl mention this is the second time I have had this happen, so I was very careful doing the manual emerge's of linux-headers, gcc, glibc, binutils, and -set1 to make sure I had the correct gcc. Once -set1 finished I thought I was home free but apparantly something is causing gcc to flip backwards to 3.6.

How can I prevent this in the future?
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Mon May 29, 2006 5:37 am    Post subject: Reply with quote

jsnorman I dont know the cause of the problem. I delebertly installed gcc-3.4.6 knowing that there is a "r1" update. and I have upgraded to gcc-4.1.1 but Ive been unable to cause the problem. So I put in maguires auto gcc-config. Appearently it works becauce it there havint been any complaints about it.

emtst.sh new version 4.0.5 Sun May 28 21:49:26 PDT 2006
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
jsnorman
Tux's lil' helper
Tux's lil' helper


Joined: 24 Feb 2005
Posts: 131

PostPosted: Mon May 29, 2006 5:46 am    Post subject: Reply with quote

Just finished rebuilding 4.1.1 without a hitch. I think it may have been the fact that when I sstarted last week, 4.1 was still masked/unreleased ... somehhow this must have caused reversion at some point to 3,6 of gcc? anyway, 3d time;s the charm iguess, and seems ok with 4.1.1
Back to top
View user's profile Send private message
slycordinator
Advocate
Advocate


Joined: 31 Jan 2004
Posts: 3065
Location: Korea

PostPosted: Mon May 29, 2006 10:01 am    Post subject: Re: emtst.sh 4.0.4 resetting gcc-config profile???? Reply with quote

jsnorman wrote:
How can I prevent this in the future?


What's going on is that gcc-4 is slotted so you can have both it and gcc-3.

So the old gcc is still in your system or world somewhere. And when you ran emtsh.sh it reinstalled gcc-3 and I believe part of the ebuild for installing that version also runs "gcc-config" to choose that one.

So, what I did (once I noticed that gcc-4.1.1 was slotted and that I'd still have the old gcc around, which I didn't want), I pruned it off.

After doing "emtsh.sh -set" (which sets up a toolchain w/ gcc-4.1.1) I ran gcc-config to change to the 4.1.1 compiler. Then I did "emerge -P gcc" which "prunes" any unused versions; in this case, the old version 3.

So now I have gcc-4.1.1 only.
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Mon May 29, 2006 5:41 pm    Post subject: Reply with quote

slycordinator i agree that thats whats happening but I've never been able to see this behavuior. Like you I remove the older versions of gcc. The problem is that most peeps dont. I deliberately reinstalled gcc-3.4.6 last night so that I have gcc-4.1.1 and gcc-3.4.6 . Now there is an update to gcc-3.4.6 to gcc-3.4.6-r1. I then ran emtst.hs, emwrap.sh emerge system & world -ep and does the "r1" update show up ? No. Will it yes but when and why have me stumped. Right now I'm favouring the blue moon theroy but a close second is the earth sucks and its time to remind you of it :twisted:

So the problem with the script or portage is that Murphy strikes and gcc-3.4.6-r1 finally pops up and the script will happily change you to gcc-3.4.6 . Now I can change the gcc_config function to always select the highest version of gcc. But there are people who want the harden and such. versions of gcc. Well I think I should put a feature request in for gcc-config/portage to have something like GCC_PRFERNCE="hardenedpiessp" in /etc/make.conf. My thoughts for emwrap.sh is to have it select the highest plain version of gcc.

Slightly newer emtst.sh mainly color and formating changes to gcc_config and added credits and GPL back into top comments.
Timestamp May 29 10:46
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Tue May 30, 2006 1:09 am    Post subject: Reply with quote

The newest emtst.sh which will always select the highest gcc version when it runs gcc-config after updateing gcc.

TIMESTAMP .Mon May 29 18:10:20 PDT 2006
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Tue May 30, 2006 2:31 am    Post subject: Reply with quote

Submitted a feature request in regaurd to a GCC_PREFERNCE variable to be added to /etc/make.conf. If yourt interested its Bug# 134856
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
jsnorman
Tux's lil' helper
Tux's lil' helper


Joined: 24 Feb 2005
Posts: 131

PostPosted: Tue May 30, 2006 2:36 am    Post subject: Reply with quote

Wow, that was quick. New emtst.sh in my sbin.

Thanks!

Jeff
Back to top
View user's profile Send private message
jsnorman
Tux's lil' helper
Tux's lil' helper


Joined: 24 Feb 2005
Posts: 131

PostPosted: Tue May 30, 2006 2:41 am    Post subject: Reply with quote

hielvc wrote:
slycordinator i agree that thats whats happening but I've never been able to see this behavuior. Like you I remove the older versions of gcc. The problem is that most peeps dont. I deliberately reinstalled gcc-3.4.6 last night so that I have gcc-4.1.1 and gcc-3.4.6 . Now there is an update to gcc-3.4.6 to gcc-3.4.6-r1. I then ran emtst.hs, emwrap.sh emerge system & world -ep and does the "r1" update show up ? No. Will it yes but when and why have me stumped. Right now I'm favouring the blue moon theroy but a close second is the earth sucks and its time to remind you of it :twisted:


Just for kicks, try masking 4.1.1 and 4.2.x so that 4.1.0 is forced (assuming it is unmasked), on a system that has 3.4.6 (not r1). That will replicate my system at the time and I bet you get the 3.4.6-r1 upgrade on the SECOND run through (first run through 4.1.0 will be installed and selected but not 3.4.6 because it is "lower; on the second run through it then notices the -r1 update and updates, selecting the "new" gcc at the end). FWIW, I think the automatic selection of new gcc is the real culprit. Selection of gcc should never be automatic IMHO, it should always require the user to manually do.
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Tue May 30, 2006 2:48 am    Post subject: Reply with quote

Tommorow or the day after my brain is fried.
_________________
An A-Z Index of the Linux BASH command line
Back to top
View user's profile Send private message
zigver
Tux's lil' helper
Tux's lil' helper


Joined: 09 May 2003
Posts: 87

PostPosted: Wed May 31, 2006 5:57 pm    Post subject: Reply with quote

Outstanding work, hielvc. I've spent a couple of hours reading through all the posts and would like to clarify a couple of things.

1) For emwrap.sh v. 4.0.2, the help says the "-S" is short for a "emerge system --emptytree" build. But it does not build the TC so it's really an "emerge system --emptytree minus the TC" build. Do I understand correctly?

2) From your post on Tue Apr 04, 2006 5:13 pm, the current (most current I could find) correct way to do a full rebuild using emwrap.sh v4.0.2 is:

Code:

gcc-config -l
emwrap.sh -set
gcc-config -l
emwrap.sh -se
emwrap.sh -set
emwrap.sh -W
emwrap.sh -W


But based on your explanation at the start of this thread concerning system libraries, why is it not necessary to do another "emwrap.sh -se" before starting with the "emwrap.sh -W" builds? In other words: -set, -se, -set, -se, -W, -W.
Back to top
View user's profile Send private message
hielvc
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2805
Location: Oceanside, Ca

PostPosted: Wed May 31, 2006 10:00 pm    Post subject: Reply with quote

FIRST moved emstst.sh to emwrap.sh. This is version 4.0.5 TIMESTAMP or Date " Mon May 29 18:10:20 PDT 2006 " . It has the new "exclude and/or -X" flag for excludeing things for things from being built. It also has the gcc-config form maguire's script that I moded so that will automaticly always set gcc-config to highest gcc-version.

Today or tomrorow I'm going to change the "exclude" function. What it does now is to remove anything that matches a simple regex. I was looking at my emerge system --emptytree which now numbers 261 files. One of the main purposes of this script was so that you break builds into smaller chunks and do them over night. What with system and world --emptytree becomeing so big it dawned on me that if the excluded files were put into exclude.lst and I modified function chk_failed_build to detect it then it could be used subdivide these large builds for slower systems, boxin that is (slow cpu's ok). On my box most of the added files to emptytree system are media-fonts and x11. So if I ran "emwrap.sh -se -X or emwrap.sh system --emptytree exclude x11 media-fonts " that reduces my list to 171 packages. Then the next time you run emwrap.sh or if you couldnt resist and ran it a bunch of times for whatever reason you could rerun "emwrap.sh -sep -X x11 media-fonts " to regenerate the exclude.lst and build it. Things to do on thsi figure out what to call this flag and write the code.

zigver For question 1 yes if you dont give the "t or b" flag then the TC is not built so its system-TC.
For question 2 if you get the latest emwrap.sh it will set gcc-config for your highest version of gcc. If this is not the behaviour you want then youll have build the TC on the command line and set gcc-config. After that you can use emwrap.sh again , just dont rebuild your TC with it. Ok back to 2 that code listing is the safe way to rebuild your system and world.

If your upgradeing to gcc-4.1.1 then
Code:
 emerge -O1 sys-devel/gcc-4.1.1
gcc-config -l 
gcc-config (put your number here)
emwrap.sh -seb1 or -Sb1  (builds your TC with the new complier and then your system files with the new TC)
emwrap.sh -seb1 
emwrap.sh -W
emwrap.sh -W


EDIT Decided to play it safe with all the x11 dependencies that are being built in system --emptytree
For additional info see Gentoo Linux GCC Upgrade Guide
_________________
An A-Z Index of the Linux BASH command line


Last edited by hielvc on Thu Jun 01, 2006 12:00 am; edited 1 time in total
Back to top
View user's profile Send private message
jsnorman
Tux's lil' helper
Tux's lil' helper


Joined: 24 Feb 2005
Posts: 131

PostPosted: Wed May 31, 2006 10:15 pm    Post subject: Reply with quote

hielvc wrote:

If your upgradeing to gcc-4.1.1 then
Code:
 emerge -O1 sys-devel/gcc-4.1.1
gcc-config -l 
gcc-config (put your number here)
emwrap.sh -seb1 or -Sb1  (builds your TC with the new complier and then your system files with the new TC)
emwrap.sh -seb1  ( if you want to be super safe, other wise skip this step)
emwrap.sh -W
emwrap.sh -W


For additional info see Gentoo Linux GCC Upgrade Guide


I cannot find the older post where this was discussed, but I thought that when doing any major compiler upgrade you recommended to rebuild manually first:

Code:
emerge linux-headers && emerge gcc //build new compiler
gcc-config -l
gcc-config (select new compiler)
emerge glibc && emerge binutils // build glibc and binutils with new compiler
emerge linux-headers && emerge gcc && emerge glibc && emerge binutils //first "correct" complete TC build
emwrap.sh -seb1
emwrap.sh -W
emwrap.sh -W


Does emwrap now do this automagically or is it still safer to manually rebuild?
Back to top
View user's profile Send private message
zigver
Tux's lil' helper
Tux's lil' helper


Joined: 09 May 2003
Posts: 87

PostPosted: Wed May 31, 2006 11:15 pm    Post subject: Reply with quote

hielvc wrote:
zigver For question 1 yes if you dont give the "t or b" flag then the TC is not built so its system-TC.


I'd like to suggest that the script Usage be updated to reflect this to reduce confusion. Currently, the Usage says they are the same as "emerge system" which also includes TC components. Also, is "-w" the same as "-W"? The Usage indicates they are different where "-w" is an emerge world and "-W" is an emerge world minus system files.

hielvc wrote:

For question 2 if you get the latest emwrap.sh it will set gcc-config for your highest version of gcc. If this is not the behaviour you want then youll have build the TC on the command line and set gcc-config. After that you can use emwrap.sh again , just dont rebuild your TC with it.


Ok, got emwrap.sh v4.0.2 so now we can skip the gcc-config step when building against the highest compiled gcc.

hielvc wrote:

Ok back to 2 that code listing is the safe way to rebuild your system and world.


I don't understand why a second system rebuild is not necessary if we are going for gold. It seems this build order should be:
Code:

emwrap.sh -set    (1st TC double build)
emwrap.sh -se     (1st system minus TC build)
emwrap.sh -set    (2nd TC double build)
emwrap.sh -se     (2nd system minus TC build)
emwrap.sh -W      (1st world minus TC/system build)
emwrap.sh -W      (2nd world minus TC/system build)

Are the comments in parenthesis correct? If so, it seems the previous code listing is only doing 2 double TC builds, 1 system build, and 2 world builds.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 28, 29, 30  Next
Page 20 of 30

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum