Re: How to fix this in 5.1-REL??

2003-11-26 Thread David O'Brien
On Tue, Nov 25, 2003 at 09:14:10PM -0700, M. Warner Losh wrote:
 We recommend
 
 make buildworld
 make buildkernel
 make installkernel
 reboot -s - single user
 make installworld

make buildkernel ; make installkernel can be shortened to just
make kernel.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-26 Thread Matthew D. Fuller
On Tue, Nov 25, 2003 at 08:57:10AM -0800 I heard the voice of
Kevin Oberman, and lo! it spake thus:
 
 While UPDATING contain details on updating a system, the Makefile in
 /usr/src (actually Makefile.inc1) contains a target of 'world' and,
 through V3 of FreeBSD, this was considered the appropriate target for
 re-compiling sources.
 
 In the days of V4, a new methodology for updating that was far less
 prone to failure that would leave a system unusable was developed with
 two new targets, 'buildworld' and 'installworld'.

I think you're a wee bit off on dates there...

src/Makefile:
revision 1.109.2.9
date: 1997/08/05 03:46:23;  author: asami;  state: Exp;  lines: +192 -91
This patch splits world into two parts, buildworld and
installworld, which can be run together or separately (or even on
different machines).  The buildworld target does not install
anything outside /usr/obj; you still need to be root to run it (the
default install rules want to set the ownership, etc.), but it's now
possible to upgrade a bunch of -stable machines by running make
buildworld on a 2.1.5 NFS server and then running make installworld
on each of the clients, while not compromising the stability of the
server at all.

Reviewed by:too many many people to list here, special thanks to bde

1.109.2.9 was between 2.2.2 and 2.2.5.  It was committed in parallel to
HEAD at the same time (1.133).  That's all over a year before 3 became
-STABLE.


-- 
Matthew Fuller (MF4839)   |  [EMAIL PROTECTED]
Systems/Network Administrator |  http://www.over-yonder.net/~fullermd/

The only reason I'm burning my candle at both ends, is because I
  haven't figured out how to light the middle yet
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread Sheldon Hearn
On (2003/11/24 15:39), Kevin Oberman wrote:

I end up with the following when I run `make world` on  5.1-RELEASE-p10.
  
  Did you read UPDATING?
 
 I fear a bikeshed, but I really think it may be past time to remove
 the 'world' target from /usr/src/Makefile.inc1. It is rarely useful
 and only should be used by those who understand the process and know
 that it is safe. Removing it would remove a clear way to shoot one's
 foot and would really have trivial impact on those who use it
 properly.

I agree.  The job requires quite a lot of documentation work, though.

If you can get buy-in from the doc project folks, I doubt you'd meet
with serious objections from src people.

Ciao,
Sheldon.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread Odhiambo Washington
* Kevin Oberman [EMAIL PROTECTED] [20031125 02:39]: wrote:
  Date: Sat, 22 Nov 2003 06:07:03 -0800
  From: Kris Kennaway [EMAIL PROTECTED]
  Sender: [EMAIL PROTECTED]
  
  
  --nVMJ2NtxeReIH9PS
  Content-Type: text/plain; charset=us-ascii
  Content-Disposition: inline
  
  On Sat, Nov 22, 2003 at 03:16:06PM +0300, Odhiambo Washington wrote:
I end up with the following when I run `make world` on  5.1-RELEASE-p10.
  
  Did you read UPDATING?
 
 I fear a bikeshed, but I really think it may be past time to remove
 the 'world' target from /usr/src/Makefile.inc1. It is rarely useful
 and only should be used by those who understand the process and know
 that it is safe. Removing it would remove a clear way to shoot one's
 foot and would really have trivial impact on those who use it
 properly.


Hmm,

This was meant to help me but instead I was left speechless, not knowing
how to say that I did not understand the context of this ;)
How am I supposed to go over the initial problem?
When Kris Kennaway asked me that question, I emphatically told him, YES,
I did. Then what he thought I should do was to rm /usr/include/g++/*
I did exactly that, but it did not help solve the problem and even so,
I wasn't quite sure why I was to do this, after re-reading from UPDATING.
So my problem is very much alive and kicking ;)



-Wash


--
+==+
|\  _,,,---,,_ | Odhiambo Washington[EMAIL PROTECTED]
Zzz /,`.-'`'-.  ;-;;,_ | Wananchi Online Ltd.   www.wananchi.com
   |,4-  ) )-,_. ,\ (  `'-'| Tel: +254 20 313985-9  +254 20 313922
  '---''(_/--'  `-'\_) | GSM: +254 722 743223   +254 733 744121
+==+
Every improvement in communication makes the bore more terrible.
-- Frank Moore Colby


smime.p7s
Description: S/MIME cryptographic signature


Re: How to fix this in 5.1-REL??

2003-11-25 Thread Kevin Oberman
 Date: Tue, 25 Nov 2003 17:47:29 +0300
 From: Odhiambo Washington [EMAIL PROTECTED]
 
 
 --+g7M9IMkV8truYOl
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 Content-Transfer-Encoding: quoted-printable
 
 * Kevin Oberman [EMAIL PROTECTED] [20031125 02:39]: wrote:
   Date: Sat, 22 Nov 2003 06:07:03 -0800
   From: Kris Kennaway [EMAIL PROTECTED]
   Sender: [EMAIL PROTECTED]
  =20
  =20
   --nVMJ2NtxeReIH9PS
   Content-Type: text/plain; charset=3Dus-ascii
   Content-Disposition: inline
  =20
   On Sat, Nov 22, 2003 at 03:16:06PM +0300, Odhiambo Washington wrote:
 I end up with the following when I run `make world` on  5.1-RELEASE-=
 p10.
  =20
   Did you read UPDATING?
 =20
  I fear a bikeshed, but I really think it may be past time to remove
  the 'world' target from /usr/src/Makefile.inc1. It is rarely useful
  and only should be used by those who understand the process and know
  that it is safe. Removing it would remove a clear way to shoot one's
  foot and would really have trivial impact on those who use it
  properly.
 
 
 Hmm,
 
 This was meant to help me but instead I was left speechless, not knowing
 how to say that I did not understand the context of this ;)
 How am I supposed to go over the initial problem?
 When Kris Kennaway asked me that question, I emphatically told him, YES,
 I did. Then what he thought I should do was to rm /usr/include/g++/*
 I did exactly that, but it did not help solve the problem and even so,
 I wasn't quite sure why I was to do this, after re-reading from UPDATING.
 So my problem is very much alive and kicking ;)

This was not addressed so much to you as to the list.

The following is a history lesson. Sorry to waste the time of those who
have been with FreeBSD for a long time and know all about it.

While UPDATING contain details on updating a system, the Makefile in
/usr/src (actually Makefile.inc1) contains a target of 'world' and,
through V3 of FreeBSD, this was considered the appropriate target for
re-compiling sources.

In the days of V4, a new methodology for updating that was far less
prone to failure that would leave a system unusable was developed with
two new targets, 'buildworld' and 'installworld'. The old 'world' target
was left in the file as it could still be used and people were used to
using it (POLA). But, as V4 developed, UPDATING specified only the new
method of updating and the developers could integrate changes in ways
that would not work with the 'world' target.

Now we are moving on to V5 and 'world' is growing increasingly dangerous
to use. Because changes are applied that will allow smooth upgrades
when the kernel is built after the new system is built, but before it is
installed, make world is increasingly unlikely to work.

I was suggesting that it's time to eliminate this excellent path to
foot-shooting once and for all. 

In addition, people often do miss the section of UPDATING on the V4 to
V5 upgrade and end up with the wrong version of loader (which is pretty
sure to get fixed promptly) and with the /usr/include/g++ headers
intact. This can produce all kinds of build problems down the road. I
have no idea how to get the message about this across any better, but I
know that when V5 is declared stable, we are going to see a flood of
failed builds as a result of this oversight.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: [EMAIL PROTECTED]   Phone: +1 510 486-8634
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread Alexander Leidinger
On Tue, 25 Nov 2003 08:57:10 -0800
Kevin Oberman [EMAIL PROTECTED] wrote:

 Now we are moving on to V5 and 'world' is growing increasingly dangerous
 to use. Because changes are applied that will allow smooth upgrades
 when the kernel is built after the new system is built, but before it is
 installed, make world is increasingly unlikely to work.
 
 I was suggesting that it's time to eliminate this excellent path to
 foot-shooting once and for all. 

By disabling it temporarily until 5-current becomes 5-stable and such
changes are very unlikely to get applied?

Bye,
Alexander.

-- 
   Reboot America.

http://www.Leidinger.net   Alexander @ Leidinger.net
  GPG fingerprint = C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread walt
Kevin Oberman wrote:

...Because changes are applied that will allow smooth upgrades
when the kernel is built after the new system is built, but before it is
installed, make world is increasingly unlikely to work...
The recent statfs changes demonstrated why the 'makeworld'  'makekernel'
sequence sometimes fails  :-(
But I'm still very fuzzy on why the 'makekernel'  'makeworld' sequence
is not recommended in FreeBSD the way it is, for example, in OpenBSD.
What does 'buildworld' give us that the new kernel might need?  Just a
simple example would help me more than anything.
Thanks.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread Brooks Davis
On Tue, Nov 25, 2003 at 03:35:54PM -0800, walt wrote:
 Kevin Oberman wrote:
 
 ...Because changes are applied that will allow smooth upgrades
 when the kernel is built after the new system is built, but before it is
 installed, make world is increasingly unlikely to work...
 
 The recent statfs changes demonstrated why the 'makeworld'  'makekernel'
 sequence sometimes fails  :-(
 
 But I'm still very fuzzy on why the 'makekernel'  'makeworld' sequence
 is not recommended in FreeBSD the way it is, for example, in OpenBSD.
 
 What does 'buildworld' give us that the new kernel might need?  Just a
 simple example would help me more than anything.

The correct toolchain including the compiler and config(8).

-- Brooks

-- 
Any statement of the form X is the one, true Y is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4


pgp0.pgp
Description: PGP signature


Re: How to fix this in 5.1-REL??

2003-11-25 Thread walt
Brooks Davis answered:

walt asked:
What does 'buildworld' give us that the new kernel might need?

The correct toolchain including the compiler and config(8).
Okay, thanks, that helps.

Just thinking out loud about worst-case examples for people who
do routinely use 'make world' (like I have for several years).
I found out first-hand why installworld quits halfway through
when the new executables won't run on the old kernel.  I need no
further education on that point ;-)
I'm thinking, though, that doing 'make kernel' first has a much
lower potential for disaster than 'make world':  if I reboot after
a 'make kernel' and the new kernel won't run on the old world, then
all I need to do to recover is to boot the old kernel again and
'make buildworld'. Seems difficult to do any real harm this way.
Is this completely wrong-headed?  Am I missing something important?

(Yes, I know I should just do it the right way every time -- but
I'm trying to reason through just why some ways are right and
some are wrong.)
Thanks for any insights.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread M. Warner Losh
In message: [EMAIL PROTECTED]
walt [EMAIL PROTECTED] writes:
:  ...Because changes are applied that will allow smooth upgrades
:  when the kernel is built after the new system is built, but before it is
:  installed, make world is increasingly unlikely to work...
: 
: The recent statfs changes demonstrated why the 'makeworld'  'makekernel'
: sequence sometimes fails  :-(

?

We recommend

make buildworld
make buildkernel
make installkernel
reboot -s   - single user
make installworld

In the build man page, as well as UPDATING.

Warner
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-25 Thread Brooks Davis
On Tue, Nov 25, 2003 at 06:51:15PM -0800, walt wrote:
 Brooks Davis answered:
 
 walt asked:
 What does 'buildworld' give us that the new kernel might need?
 
 The correct toolchain including the compiler and config(8).
 
 Okay, thanks, that helps.
 
 Just thinking out loud about worst-case examples for people who
 do routinely use 'make world' (like I have for several years).
 
 I found out first-hand why installworld quits halfway through
 when the new executables won't run on the old kernel.  I need no
 further education on that point ;-)
 
 I'm thinking, though, that doing 'make kernel' first has a much
 lower potential for disaster than 'make world':  if I reboot after
 a 'make kernel' and the new kernel won't run on the old world, then
 all I need to do to recover is to boot the old kernel again and
 'make buildworld'. Seems difficult to do any real harm this way.
 
 Is this completely wrong-headed?  Am I missing something important?

If you don't build world before building a kernel you may not be able to
build a kernel because you may not have toolchain features required to
build it.  If it builds, it's probably ok, but it may not build, so your
should do a make buildworld first.  As the statfs change demonstrates,
you should install a new kernel before attempting to install a new
world.  These requirements lead to our recomended order.  No other order
will insure that you can recover at each step.

It it worth noting, that neither the buildworld or buildkernel targets
have any effect on the running system other then consuming resources
so they are always safe.  They may not work, but they won't break your
install.  It's the installation stage that can get you in trouble if you
don't do it right.

-- Brooks

-- 
Any statement of the form X is the one, true Y is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4


pgp0.pgp
Description: PGP signature


Re: How to fix this in 5.1-REL??

2003-11-24 Thread Kevin Oberman
 Date: Sat, 22 Nov 2003 06:07:03 -0800
 From: Kris Kennaway [EMAIL PROTECTED]
 Sender: [EMAIL PROTECTED]
 
 
 --nVMJ2NtxeReIH9PS
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 On Sat, Nov 22, 2003 at 03:16:06PM +0300, Odhiambo Washington wrote:
   I end up with the following when I run `make world` on  5.1-RELEASE-p10.
 
 Did you read UPDATING?

I fear a bikeshed, but I really think it may be past time to remove
the 'world' target from /usr/src/Makefile.inc1. It is rarely useful
and only should be used by those who understand the process and know
that it is safe. Removing it would remove a clear way to shoot one's
foot and would really have trivial impact on those who use it
properly.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: [EMAIL PROTECTED]   Phone: +1 510 486-8634
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: How to fix this in 5.1-REL??

2003-11-22 Thread Kris Kennaway
On Sat, Nov 22, 2003 at 03:16:06PM +0300, Odhiambo Washington wrote:
  I end up with the following when I run `make world` on  5.1-RELEASE-p10.

Did you read UPDATING?

Kris


pgp0.pgp
Description: PGP signature


Re: How to fix this in 5.1-REL??

2003-11-22 Thread Kris Kennaway
On Sat, Nov 22, 2003 at 03:16:06PM +0300, Odhiambo Washington wrote:
  I end up with the following when I run `make world` on  5.1-RELEASE-p10.

Did you read UPDATING?

Kris


pgp0.pgp
Description: PGP signature


Re: How to fix this in 5.1-REL??

2003-11-22 Thread Michael L. Squires
  /usr/src/contrib/libstdc++/libsupc++/unwind-cxx.h:41:20: unwind.h: No such=
  file or directory
  mkdep: compile failed
  *** Error code 1
 =20
  Stop in /usr/src/gnu/lib/libstdc++.
  *** Error code 1

I'm running 5.1-CURRENT now, but I was able to build 5.1-RELEASE-p10.  I
suspect you need to re-cvsup your sources, which I've had to do several
times.

Mike Squires
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]