Comment 5 for bug 2012612

Revision history for this message
Roxana Nicolescu (roxanan) wrote :

Tested evdi-dkms module that already has this rule BUILD_EXCLUSIVE_KERNEL="CONFIG_I2C CONFIG_DRM" with
jammy:linux-kvm(5.15.0-1033-kvm) that has these configs disabled.

Scenario 1:
old dkms version(2.8.7-2ubuntu2.1) without BUILD_EXCLUSIVE_KERNEL. Expectation: build is done and it fails because of missing config options.
$ sudo apt install evdi-dkms
Building for 5.15.0-1033-kvm
Building initial module for 5.15.0-1033-kvm
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/evdi-dkms.0.crash'
Error! Bad return status for module build on kernel: 5.15.0-1033-kvm (x86_64)
Consult /var/lib/dkms/evdi/1.12.0+dfsg/build/make.log for more information.
...
/var/lib/dkms/evdi/1.12.0+dfsg/build/evdi_i2c.c: In function ‘evdi_i2c_add’:
/var/lib/dkms/evdi/1.12.0+dfsg/build/evdi_i2c.c:49:16: error: implicit declaration of function ‘i2c_add_adapter’; did you mean ‘i2c_verify_adapter’? [-Werror=implicit-function-declaration]
   49 | return i2c_add_adapter(adapter);
      | ^~~~~~~~~~~~~~~
      | i2c_verify_adapter
/var/lib/dkms/evdi/1.12.0+dfsg/build/evdi_i2c.c: In function ‘evdi_i2c_remove’:
/var/lib/dkms/evdi/1.12.0+dfsg/build/evdi_i2c.c:54:9: error: implicit declaration of function ‘i2c_del_adapter’; did you mean ‘i2c_verify_adapter’? [-Werror=implicit-function-declaration]
   54 | i2c_del_adapter(adapter);
      | ^~~~~~~~~~~~~~~
      | i2c_verify_adapter
cc1: some warnings being treated as errors
make[1]: *** [scripts/Makefile.build:297: /var/lib/dkms/evdi/1.12.0+dfsg/build/evdi_i2c.o] Error 1
make: *** [Makefile:1907: /var/lib/dkms/evdi/1.12.0+dfsg/build] Error 2

Scenario 2:
new dkms version(2.8.7-2ubuntu2.2) with BUILD_EXCLUSIVE_KERNEL. Expectation: build is skipped because of missing config options:
$ uname -a
Linux jammy-kvm 5.15.0-1033-kvm #38-Ubuntu SMP Fri Apr 21 17:30:00 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

$ sudo apt install evdi-dkms
Loading new evdi-1.12.0+dfsg DKMS files...
Building for 5.15.0-1033-kvm
Building initial module for 5.15.0-1033-kvm
Error! The /var/lib/dkms/evdi/1.12.0+dfsg/5.15.0-1033-kvm/x86_64/dkms.conf for module evdi includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch.
The /var/lib/dkms/evdi/1.12.0+dfsg/5.15.0-1033-kvm/x86_64/dkms.conf for module evdi includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch/config.
This indicates that it should not be built.
Skipped.

This new package works as expected, all good.