Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!sun-barr!cs.utexas.edu!uwm.edu!ogicse!usenet.ee.pdx.edu!pdxgate!parsely!agora!rgrimes
From: rgrimes@agora.rain.com (Rodney Grimes)
Newsgroups: comp.os.386bsd.questions
Subject: Re: buildworld.sh prob with cc
Message-ID: <C4xuxo.7sK@agora.rain.com>
Date: 4 Apr 93 02:58:35 GMT
Article-I.D.: agora.C4xuxo.7sK
References: <C4vDEu.38D@news.water.ca.gov> <C4vnHI.rA@agora.rain.com> <1pkmj2INN4u0@hrd769.brooks.af.mil>
Organization: Open Communications Forum
Lines: 88
burgess@hrd769.brooks.af.mil (Dave Burgess) writes:
>In article <C4vnHI.rA@agora.rain.com> rgrimes@agora.rain.com (Rodney Grimes) writes:
>>stevec@water.ca.gov (Steve Croft) writes:
>>
>>>I have a new installation upon which I installed the dist files (bin, src, etc).
>>>Got them going, then installed Patchkit 0.2.2. All was fine until I ran
>>>"buildworld.sh". It appears that cc became hosed (the error was a prob with
>>>"cc1" - my memory is failing).
>>
>>There are about 4 or 5 other bugs in the source tree that will cause
>>buildworld.sh to fail at various places.
> To help others that are trying to do this, some of the errors that I
>encountered when I started buildworld.sh were:
And to be of more help, since I now have all make {clean, cleandir, tags,
depend, all, } working... Here are some tips to the tips.
> 1. All of the subdirectories in cc should have the Makefile.symlinks
>run in them. The spooky thing is that the first time through, they don't
>get done, but the subsequent tries all work correctly. To solve the problem
>(until the new patchkit comes out), before you run buildworld.sh, try the
> following untested suggestion:
> cd /usr/src/usr.bin/gcc
> foreach i (`ls -l | grep '^d' | awk '{print $8}`)
> cd $i
> make -f /usr/src/usr.bin/gcc/Makefile.symlinks
> cd /usr/src/usr.bin/gcc
> end
>Note that This is the brute force method. There are probably a dozen slicker
>ways to do this.
Yes, brute force but works, another way to do it is:
cd /usr/src/usr.bin/gcc
make cleandir
make
NOTE: no make depend!
The error you saw above is cased by make depend not creating config.h,
I have fixed this in the top level Makefile (ie /usr/src/usr.bin/gcc/Makefile)
for the next patchkit.
> 2. The tn3270 directory does not make correctly. There is some debate
>on what to do about this, but for now, I suggest you just take it out of
>the Makefile that tries to make it.
Next patchkit does just that! Some one is working on a rewrite of the make
files. (They are in the old format and have not been updated to use the
template files)
> 3. One of the g++ libraries does not build correctly. I just commented it
>out of the library Makefile. I will get to it later.
>
The reason that g++ fails is that it fails a mkdep, mkdep does not understand
g++ files, and the way that /usr/share/mk/bsd.prog.mk is written does not
allow you to pass the -+ flag to mkdep to make it work. Fixed in the next
patchkit.
>Note that each of these error will stop the 'make' that is started in
>buildworld.sh. If you are not paying attention, you can end up with a
>whole bunch of bad makes that have not run through the complete list.
Quite right. As a much easier fix to ALL of these problems, simply
change all occurances of "make" to "make -k" in buildworld.sh. This
should cause make to continue with the next item when one fails.
>>>Did I miss any caveats with buildworld.sh?
One I will mention... /usr/src/usr.bin/rcs fails too. I have a fix for it.
coming in next patchkit. There are a few others, but then I have also
tested a lot more of the source tree than what build world attempts,
ie make tags, make cleandir are to options that buildworld.sh does not
do.
>Oh well, you knew the job was dangerous when you took it, Fred.
I hope this helps some of you out. I know that the new patchkit fixes
ALL of these and a few other nasty little bugs in the build treee..
*RUMOR* has it that we should be watching c.o.3.announce for some
important messages.
--
Rod Grimes rgrimes@agora.rain.com
Accurate Automation Company All opinions belong to me and my company!
Get your free copy of 386bsd from agate.berkeley.edu:/pub/386BSD via ftp!
An out of work contractor... You need unix work done.... Send me your project!