Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Nov 1998 15:12:43 -0800
From:      John Polstra <jdp@polstra.com>
To:        current@FreeBSD.ORG
Cc:        msmith@FreeBSD.ORG, peter@FreeBSD.ORG
Subject:   make installworld problem in src/sys/modules
Message-ID:  <199811042312.PAA25274@austin.polstra.com>

next in thread | raw e-mail | index | archive | help
A "make -k installworld" on a recent ELF -current system failed today
in 3 places:

===> sys/modules/ibcs2
install -c -o root -g wheel -m 555   ibcs2.ko /modules
install -c -o root -g wheel -m 444 ibcs2.8.gz  /usr/share/man/man8
install -c -o root -g wheel -m 555  /usr/src/sys/modules/ibcs2/ibcs2 /usr/bin
install: /usr/src/sys/modules/ibcs2/ibcs2: No such file or directory
*** Error code 71 (continuing)
`install' not remade because of errors.
===> sys/modules/joy
install -c -o root -g wheel -m 555   joy.ko /modules
install -c -o root -g wheel -m 444 joy.8.gz  /usr/share/man/man8
install -c -o root -g wheel -m 555  /usr/src/sys/modules/joy/joy /usr/bin
install: /usr/src/sys/modules/joy/joy: No such file or directory
*** Error code 71 (continuing)
`install' not remade because of errors.
===> sys/modules/linux
install -c -o root -g wheel -m 555   linux.ko /modules
install -c -o root -g wheel -m 444 linux.8.gz  /usr/share/man/man8
install -c -o root -g wheel -m 555  /usr/src/sys/modules/linux/linux /usr/bin
install: /usr/src/sys/modules/linux/linux: No such file or directory
*** Error code 71 (continuing)
`install' not remade because of errors.

I think I understand why it failed.  The failing files "ibcs2", "joy",
and "linux" are all shell scripts in the source tree (not in the
object tree).  But the "make clean" rule deletes them, e.g.:

===> sys/modules/ibcs2
rm -f vnode_if.h vnode_if.c opt_spx_hack.h setdef0.c setdef1.c setdefs.h setdef0.o setdef1.o ibcs2.8.gz ibcs2.8.cat.gz ibcs2 ibcs2.ko ibcs2.o ibcs2_errno.o ibcs2_ipc.o ibcs2_stat.o ibcs2_misc.o ibcs2_fcntl.o ibcs2_signal.o ibcs2_sysent.o ibcs2_ioctl.o ibcs2_socksys.o ibcs2_util.o ibcs2_xenix.o ibcs2_xenix_sysent.o ibcs2_isc.o ibcs2_isc_sysent.o ibcs2_msg.o ibcs2_other.o ibcs2_sysi86.o ibcs2_sysvec.o @ machine lkm_verify_tmp symb.tmp tmp.o

(Look carefully in there, and you'll find "ibcs2".)

This is all fine and dandy if you've got a populated /usr/obj tree
when the make clean gets run.  But I started out in this case with
an empty /usr/obj tree.  As a result, the make clean step removed my
source file.

I'm not quite sure what the right fix is.  Maybe rename the source
files to "ibcs2.sh", etc.

On a related note, I don't think the shell scripts are correct anyway.
They invoke "modload", which is for LKMs, not the new-style kernel
modules.

John
--
  John Polstra                                               jdp@polstra.com
  John D. Polstra & Co., Inc.                        Seattle, Washington USA
  "Nobody ever went broke underestimating the taste of the American public."
                                                            -- H. L. Mencken

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199811042312.PAA25274>