On Sat, Jun 23, 2001 at 12:23:35PM -0700, Terry Lambert wrote:
> > make buildkernel is rather easy way to work it around: in
> > any case object tree is machine-dependent, and one yet
> > another directory does not destroy anything. ;|
> 
> The "make buildkernel" approach sucks for incremental
> builds, since you are unable to avoid the "config" run
> each time, and a lot of unnecessary stuff gets compiled
> again because of opt_*.h files whose contents have not
> changed (even if you defeat the clean of the compile
> directory).

Terry, this is simply not true.  Even in -stable, config(8)
is smart enough to try reading the opt_*.h files, and not
change them if they already contain the values it is about
to write there.

See for yourself:

[root@ringworld:v1 /usr/src]# LANG=C ls -lt /usr/obj/usr/src/sys/RINGWORLD/opt_*.h | 
head -2
-rw-r--r--  1 root  wheel    0 Jun 11 23:35 /usr/obj/usr/src/sys/RINGWORLD/opt_aac.h
-rw-r--r--  1 root  wheel    0 Jun 11 23:35 
/usr/obj/usr/src/sys/RINGWORLD/opt_wavelan.h
[root@ringworld:v1 /usr/src]#

As you can see, the two most recent files date back to June 11th...

[root@ringworld:v1 /usr/src]# LANG=C ls -lt /usr/obj/usr/src/sys/RINGWORLD | head -3
total 6187
-rw-r--r--  1 root  wheel   424510 Jun 23 22:51 .depend
-rwxr-xr-x  1 root  wheel  1963795 Jun 23 14:34 kernel
[root@ringworld:v1 /usr/src]#

..the kernel was rebuilt today at 14:34, and the .depend file was
regenerated by a 'make -DNOCLEAN buildkernel' about two minutes ago.
No opt*.h files were changed, NO recompilation was done, since
everything was completely up-to-date.

About the release process, you are right, it is a bit harder
to restart without some tweaks, but the buildkernel target
is about as restartable as it can be.  (I really don't think
anyone would ever advocate skipping the config(8) or
the 'make depend' stage..)

G'luck,
Peter

-- 
When you are not looking at it, this sentence is in Spanish.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to