Roman Kurakin wrote: > I forget to say that this problem is for 4. branch > > Roman Kurakin wrote: > > >Hi, > > > > It seems that I've found another problem. If /modules dir would be > >removed, > >make install (of kernel and kernel modules) will not create modules > >dir and you'll > >get /modules file with one of the modules inside. > > > >One of the variants is to add flag -d to install or other to mkdir -p > >explicitly: > > > >--- Makefile.old Fri Mar 12 00:13:45 2004 > >+++ Makefile Fri Mar 12 00:15:03 2004 > >@@ -626,6 +626,7 @@ > > cp -p ${DESTDIR}/modules/* ${DESTDIR}/modules.old; \ > > fi; > >.endif > >+ mkdir -p ${DESTDIR}/modules > > cd $S/modules ; env ${MKMODULESENV} ${MAKE} install > > > >modules-reinstall modules-reinstall.debug:
An old problem. 5.x is only partly affected by this, because of a side effect of kern.post.mk creating the necessary directory, but if you attempt to install from src/sys/modules/ when /boot/kernel doesn't exist, it exhibits the same behavior. In RELENG_4 the situation is worse, as even "make installkernel" can exhibit such behavior. I once had a patch locally that adds "make hierarchy" to the installkernel path, similar to how this is done for installworld. The problem is not unique to just kernel modules; if you attempt to install "src/bin/" when /bin doesn't exist you'll see the same behavior, that's why I think the below change is not quite incorrect. I believe there's a PR open on this (probably even assigned to myself), but I just don't have a clever idea of how to fix it properly, sorry -- generally, standard directories are created with mtree(8), and not with mkdir(1). Cheers, -- Ruslan Ermilov FreeBSD committer [EMAIL PROTECTED]
pgp00000.pgp
Description: PGP signature