Re: Build failure in procfs module

From: Yar Tikhiy <yar_at_comp.chem.msu.su>
Date: Mon, 18 Jul 2005 19:19:24 +0400
On Thu, Jul 14, 2005 at 02:15:07PM +0400, Yar Tikhiy wrote:
> Hi folks,
> 
> I ran into a problem that might be triggered by Peter's recent
> changes to procfs.  Namely, the buildworld procedure would fail in
> the procfs module if MODULES_WITH_WORLD were set.  I noticed it
> first in CURRENT and then tested it in a clean environment by
> building a freshly CVSup'd RELENG_6 on a freshly installed 5.4-RELEASE,
> with MODULES_WITH_WORLD set.  I think it's a route of upgrading
> quite a few people will follow.
> 
> Here's the diagnostics:
> 
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> 
> ===> sys/modules/procfs (depend)
> _at_ -> /usr/src/sys
> machine -> /usr/src/sys/i386/include
> awk -f _at_/tools/vnode_if.awk _at_/kern/vnode_if.src -p
> awk -f _at_/tools/vnode_if.awk _at_/kern/vnode_if.src -q
> awk -f _at_/tools/vnode_if.awk _at_/kern/vnode_if.src -h
> rm -f .depend
> mkdep -f .depend -a   -nostdinc -D_KERNEL -DKLD_MODULE -I- -I. -I_at_ -I_at_/contrib/altq -I_at_/../include -I/usr/obj/usr/src/tmp/usr/include /usr/src/sys/modules/procfs/../../fs/procfs/procfs_ctl.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_dbregs.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_fpregs.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_ioctl.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_map.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_mem.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_note.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_regs.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_rlimit.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_status.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs_type.c /usr/src/sys/modules/procfs/../../fs/procfs/procfs.c
> /usr/src/sys/modules/procfs/../../fs/procfs/procfs_dbregs.c:46:24: opt_compat.h: No such file or directory
> /usr/src/sys/modules/procfs/../../fs/procfs/procfs_fpregs.c:40:24: opt_compat.h: No such file or directory
> /usr/src/sys/modules/procfs/../../fs/procfs/procfs_ioctl.c:31:24: opt_compat.h: No such file or directory
> /usr/src/sys/modules/procfs/../../fs/procfs/procfs_map.c:38:24: opt_compat.h: No such file or directory
> /usr/src/sys/modules/procfs/../../fs/procfs/procfs_regs.c:40:24: opt_compat.h: No such file or directory
> mkdep: compile failed
> *** Error code 1
> 
> Stop in /usr/src/sys/modules/procfs.
> 
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

The problem appears to have to do with Peter's changes to procfs:
The procfs source files now include opt_compat.h, which is not
available by default when building with MODULES_WITH_WORLD set.
The attached patch seems to fix the problem in the conventional
way.  However, I'm unsure which COMPAT_* options are really needed
to the procfs module.  COMPAT_43 should be enough according to my
quick examining /sys/fs/procfs.

-- 
Yar

Index: Makefile
===================================================================
RCS file: /home/ncvs/src/sys/modules/procfs/Makefile,v
retrieving revision 1.28
diff -u -r1.28 Makefile
--- Makefile	26 Oct 2002 14:38:22 -0000	1.28
+++ Makefile	18 Jul 2005 15:07:44 -0000
_at__at_ -3,7 +3,7 _at__at_
 .PATH: ${.CURDIR}/../../fs/procfs
 
 KMOD=		procfs
-SRCS=
+SRCS=		opt_compat.h
 SRCS+=		vnode_if.h
 SRCS+=		procfs_ctl.c
 SRCS+=		procfs_dbregs.c
_at__at_ -26,4 +26,7 _at__at_
 EXPORT_SYMS+=	procfs_doprocmem
 EXPORT_SYMS+=	procfs_notsystem
 
+opt_compat.h:
+	echo "#define COMPAT_43 1" > ${.TARGET}
+
 .include <bsd.kmod.mk>
Received on Mon Jul 18 2005 - 13:19:28 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:39 UTC