Date: Sun, 24 Jun 2001 00:18:10 +0300 From: Peter Pentchev <roam@orbitel.bg> To: Terry Lambert <tlambert2@mindspring.com> Cc: Valentin Nechayev <netch@iv.nn.kiev.ua>, John Baldwin <jhb@FreeBSD.ORG>, hackers@FreeBSD.ORG Subject: Re: Two Junior Kernel Hacker tasks.. Message-ID: <20010624001810.C564@ringworld.oblivion.bg> In-Reply-To: <3B350439.31AC9991@mindspring.com>; from tlambert2@mindspring.com on Sat, Jun 23, 2001 at 02:03:53PM -0700 References: <XFMail.010622105201.jhb@FreeBSD.org> <20010623081844.B982@iv.nn.kiev.ua> <3B34ECB7.CF7F4047@mindspring.com> <20010623225526.A564@ringworld.oblivion.bg> <3B350439.31AC9991@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jun 23, 2001 at 02:03:53PM -0700, Terry Lambert wrote: > Peter Pentchev wrote: > > 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. > > Rerunning config and make depend always result in more > things being recompiled for me, than just me typing > "make". Running 'make buildkernel' results in nothing at all recompiled for me (please read the whole of my message this time). > The "buildkernel" target also can not handle all of the > intricacies of all the parameters that you might want to > pass to "config": things are lost. If it's just parameters you want to pass, then use the CONFIG_ARGS make env variable. > It's not a reasonable workaround to the problem under > discussion (building multiple kernels for multiple > architectures using one tree). For multiple architectures, no, it is not - but that was the whole point of half this thread, wasn't it? Making the kernel build directories arch-specific.. > Example: > > All my PPC based NetBSD systems run different kernel > configurations, specific to the machine (not processor) > architecture. But everything other than the kernel and > modules should be shared, since all the systems kernels > present the same ABI to user space. Rebuilding everything > is not a reasonable option. So mount your /usr/obj accordingly - NFS mount of the whole, a local fs (or maybe even a nullfs, but I won't go into that) mount of the kernel-specific subdirs. Then, use buildkernel. > > [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... > > Next time, include the other things like param.c > and so on, created by config. > > I want to avoid _all_ unnecessary rebuilds. Uh.. excuse me? Did you read two lines further, where I pasted an ls of the *same* directory, and the two *most recent* files? Only the .depend file had a modification time two minutes ago, the kernel itself was the next file in the list, and it had a mtime of several hours earlier. Not param.c, not vers.c, nothing had beed changed by the buildkernel target. > (Technically, the vers.c rebuild is unnecessary, too, > since nothing is supposed to have changes, so vers.c > should not have been rewritten -- but that's another > discussion... 8-)). Look again. It was not rewritten. G'luck, Peter -- If I had finished this sentence, To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010624001810.C564>