Re: CVS commit: src/share/mk
On Tue, 21 Jan 2014, Matt Thomas wrote: Module Name:src Committed By: matt Date: Tue Jan 21 16:40:24 UTC 2014 Modified Files: src/share/mk: bsd.own.mk Log Message: Make MKGCCCMDS default mirror MKGCC. (if MKGCC is no, MKGCCCMDS must be no). If that's true, then please adjust bsd.README to say so. Currently, they are documented as being independent (but there seem to be some accidental yes/no inversions in the documentation). --apb (Alan Barrett)
Re: CVS commit: src/share/mk
Date: Thu, 23 Jan 2014 03:11:14 + From: Taylor R Campbell campbell+netbsd-source-change...@mumble.net Date: Wed, 22 Jan 2014 13:15:44 -0500 From: chris...@zoulas.com (Christos Zoulas) On Jan 22, 7:29am, m...@3am-software.com (Matt Thomas) wrote: -- Subject: Re: CVS commit: src/share/mk | I always wondered why we don't use ln -sf | and avoid the race. That does not work because if the destnation is a directory it will try to link in the destination directory... (I tried). This is why I suggested that it needs to be done differently. ln -sfh? As an aside, it would be nice if there were an easy way to create a symlink at a temporary location and rename it over the permanent one. `ln -sfh' will unlink instead, and mv(1) is too smart for its own good about directories to be able to rename over a symlink reliably... Disregard me -- `ln -sfh' is just as bad as the other race precisely because of the unlink/symlink sequence, and `-h' is not POSIX to boot. If we do add a TOOL_LN, we ought to implement a symlink-to-temporary rename-to-permanent operation so that it actually doesn't race.
Re: CVS commit: src/share/mk
Is this all about symlink-to-directory in an OBJDIR, right? My theory is that directory creation in OBJDIR is all wrong... Kernel build *should* include static headers in $DESTDIR (#include foo.h) or generated headers (#include foo.h) IMO.
Re: CVS commit: src/share/mk
Sorry that I was lost, but I still believe that creating-directories-as-make-target is to avoid. Is there any counter-example (use case) where it should be there? On Fri, Jan 24, 2014 at 1:30 AM, Izumi Tsutsui tsut...@ceres.dti.ne.jp wrote: Is this all about symlink-to-directory in an OBJDIR, right? My theory is that directory creation in OBJDIR is all wrong... Kernel build *should* include static headers in $DESTDIR (#include foo.h) or generated headers (#include foo.h) IMO. bsd.klinks.mk is used only for standalone programs and it should not require installed DESTDIR. For kernel builds, config(1) creates symlinks in compile dirs. --- Izumi Tsutsui
Re: CVS commit: src/share/mk
Is this all about symlink-to-directory in an OBJDIR, right? My theory is that directory creation in OBJDIR is all wrong... Kernel build *should* include static headers in $DESTDIR (#include foo.h) or generated headers (#include foo.h) IMO. bsd.klinks.mk is used only for standalone programs and it should not require installed DESTDIR. For kernel builds, config(1) creates symlinks in compile dirs. --- Izumi Tsutsui
Re: CVS commit: src/distrib/sets
I agree that in an ideal reproducible world timestamp (== physical time and its order) has no value. But it is useful to detect unnecessary rebuild - reproducible but built repeatedly unnecessarily. I see some value in it. On Fri, Jan 24, 2014 at 6:45 AM, Alan Barrett a...@netbsd.org wrote: Module Name:src Committed By: apb Date: Thu Jan 23 21:45:27 UTC 2014 Modified Files: src/distrib/sets: Makefile Log Message: Remove time= keywords from METALOG.sanitised. The times add unnecessary differences to the DESTDIR trees for MKREPRO builds, and they are not needed by anything. (maketars, the chief consumer of METALOG.sanitised, explicitly ignores the time fields.) Also factor out some duplicated code and update comments. To generate a diff of this commit: cvs rdiff -u -r1.91 -r1.92 src/distrib/sets/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
re: CVS commit: src/sys/opencrypto
Log Message: Implement in-module ref-counting, and do not allow auto-unload if there are existing references. Note that manual unloading is not prevented. OK christos@ XXX Also note that there is still a small window where the ref-count can XXX be decremented, and then the process/thread preempted. If auto-unload XXX happens before that thread can return from the module's code, bad XXX things (tm) could happen. in this case, please simply disallow unload for this module always. if the race is fixed, it can be enabled again. .mrg.
re: CVS commit: src/share/mk
Module Name: src Committed By: christos Date: Wed Jan 22 15:19:05 UTC 2014 Modified Files: src/share/mk: bsd.klinks.mk Log Message: For now, ignore errors from creating klinks. This is racy and you can get it to trigger in 1/4 of the builds with -j 40 on a 24 processor box. Typical error is: ln: machine/include: File exists *** Failed target: .BEGIN *** Failed command: rm -f machine ln -s /p/netbsd/cvsroot/src/sys/arch/vax/include machine *** Error code 1 Stop. Another approach to fixing this is to create a lockfile or adding other flags to ln to change its behavior. make ${SRCS} depend upon machine? ie, fix this by fixing the dependancies? .mrg.
re: CVS commit: src/share/mk
Is this all about symlink-to-directory in an OBJDIR, right? My theory is that directory creation in OBJDIR is all wrong... Kernel build *should* include static headers in $DESTDIR (#include foo.h) or generated headers (#include foo.h) IMO. the kernel build 100% does not and should not depend upon $DESTDIR. .mrg.
Re: CVS commit: src/share/mk
How about kernel modules? On Fri, Jan 24, 2014 at 1:00 PM, matthew green m...@eterna.com.au wrote: Is this all about symlink-to-directory in an OBJDIR, right? My theory is that directory creation in OBJDIR is all wrong... Kernel build *should* include static headers in $DESTDIR (#include foo.h) or generated headers (#include foo.h) IMO. the kernel build 100% does not and should not depend upon $DESTDIR. .mrg.
re: CVS commit: src/share/mk
How about kernel modules? exactly the same. our userland does not have anything useful for building kernel code. you _need_ the kernel source tree, and it is bascially self-contained in src/sys (sans the src/common problem we haven't fixed yet, and config(1).) this is very much by design. On Fri, Jan 24, 2014 at 1:00 PM, matthew green m...@eterna.com.au wrote: Is this all about symlink-to-directory in an OBJDIR, right? My theory is that directory creation in OBJDIR is all wrong... Kernel build *should* include static headers in $DESTDIR (#include foo.h) or generated headers (#include foo.h) IMO. the kernel build 100% does not and should not depend upon $DESTDIR. .mrg. .mrg.