[Note: Your Email handling rejects my Emails, probably
because of Yahoo being involved.]

On Apr 16, 2025, at 23:46, Chris <bsd-li...@bsdforge.com> wrote:

> On 2025-04-16 22:40, Mark Millard wrote:
>> Chris <bsd-lists_at_bsdforge.com>  wrote on
>> Date: Thu, 17 Apr 2025 05:06:35 UTC :
>>> In an attempt to take advantage of all the work
>>> done on iwlwifi recently. I pulled a fresh copy of src
>>> at:
>>> commit b836c229aa5ac345114f5986b6034ad3ed760da1 (HEAD -> main, freebsd/main,
>>> freebsd/HEAD)
>>> Author: Andrew Gallatin <galla...@freebsd.org>
>>> Date: Tue Apr 15 19:37:06 2025 -0400
>>> and proceeded to build world/kernel. The buildkernel stage
>>> stopped at:
>>> In file included from /usr/src/sys/dev/imcsmb/imcsmb.c:52:
>>> /usr/src/sys/dev/imcsmb/imcsmb_var.h:52:10: fatal error: 'smbus_if.h' file
>>> not found
>>> 52 | #include "smbus_if.h"
>>> 1 error generated.
>>> I used the same kernconf I used for the kernel I'm using now.
>>> A trip to /usr/src and a search with find(1) confirms the file doesn't
>>> exist. How would I best proceed?
>> I've no explicit use of such but when I looked on
>> a system here, I found a imcsmb/smbus_if.h inside
>> a build tree from a buildkernel :
>> # find -s / -name smbus_if.h -print | grep imcsmb
>> /usr/obj/BUILDs/main-ZNV4-nodbg-clang/usr/main-src/amd64.amd64/sys/GENERIC-NODBG/modules/usr/main-src/sys/modules/i2c/controllers/imcsmb/smbus_if.h
> Performing the same here returns nothing. In an effort to ensure adequate
> space prior to the build. I clobbered /usr/obj. :(

Do you have any paths that involve:

sys/modules/i2c/controllers/imcsmb/

? Do you have the likes of ( you likely
have /usr/src/, not /usr/main-src/ ):

# more /usr/main-src/sys/modules/i2c/controllers/imcsmb/Makefile
.PATH:          ${SRCTOP}/sys/dev/imcsmb
KMOD            = imcsmb
SRCS            = device_if.h bus_if.h pci_if.h smbus_if.h \
                  imcsmb.c imcsmb_pci.c imcsmb_reg.h imcsmb_var.h

.include <bsd.kmod.mk>

# grep -rl imcsmb /usr/main-src/sys/ | more
/usr/main-src/sys/modules/i2c/controllers/imcsmb/Makefile
/usr/main-src/sys/modules/i2c/controllers/Makefile
/usr/main-src/sys/x86/conf/NOTES
/usr/main-src/sys/dev/imcsmb/imcsmb_reg.h
/usr/main-src/sys/dev/imcsmb/imcsmb.c
/usr/main-src/sys/dev/imcsmb/imcsmb_var.h
/usr/main-src/sys/dev/imcsmb/imcsmb_pci.c
/usr/main-src/sys/conf/files.x86

# grep imcsmb /usr/main-src/sys/x86/conf/NOTES /usr/main-src/sys/conf/files.x86
/usr/main-src/sys/x86/conf/NOTES:# imcsmb integrated Memory Controller (iMC) 
SMBus controller
/usr/main-src/sys/x86/conf/NOTES:device imcsmb
/usr/main-src/sys/conf/files.x86:dev/imcsmb/imcsmb.c optional imcsmb
/usr/main-src/sys/conf/files.x86:dev/imcsmb/imcsmb_pci.c optional imcsmb pci

>> (Some of the naming and upper-level path structure is
>> unusual. See what is normal in your context.)
>> So it appears that sys/modules/i2c/controllers/imcsmb/smbus_if.h
>> needs to have been built first and that a -I PATH or such needs
>> to be used to find the file.
> Really appreciate the clues here, Mark. I'll keep investigating. The
> build worked last time with this kernconf. So there must be a way.

===
Mark Millard
marklmi at yahoo.com


Reply via email to