Public bug reported: It looks like in most Ubuntu Linux kernel, building kernel scripts in /usr/scr/linux-headers-$(uname -r)/ fails with classmap.h missing. The security/selinux/include/ headers are not included in /usr/src to be packaged in linux-source-x.xx_xxx.deb package.
CONFIG_SECURITY_SELINUX is enabled. lab@test-server:/usr/src/linux-headers-5.15.0-43-generic$ zgrep CONFIG_SECURITY_SELINUX /boot/config-$(uname -r) CONFIG_SECURITY_SELINUX=y CONFIG_SECURITY_SELINUX_BOOTPARAM=y # CONFIG_SECURITY_SELINUX_DISABLE is not set CONFIG_SECURITY_SELINUX_DEVELOP=y CONFIG_SECURITY_SELINUX_AVC_STATS=y CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 lab@test-server:/usr/src/linux-headers-5.15.0-43-generic$ sudo make scripts [sudo] password for lab: SYNC include/config/auto.conf.cmd HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o HOSTCC scripts/kconfig/confdata.o HOSTCC scripts/kconfig/expr.o LEX scripts/kconfig/lexer.lex.c YACC scripts/kconfig/parser.tab.[ch] HOSTCC scripts/kconfig/lexer.lex.o HOSTCC scripts/kconfig/menu.o HOSTCC scripts/kconfig/parser.tab.o HOSTCC scripts/kconfig/preprocess.o HOSTCC scripts/kconfig/symbol.o HOSTCC scripts/kconfig/util.o HOSTLD scripts/kconfig/conf 6^[[18~ HOSTCC scripts/genksyms/genksyms.o YACC scripts/genksyms/parse.tab.[ch] HOSTCC scripts/genksyms/parse.tab.o LEX scripts/genksyms/lex.lex.c HOSTCC scripts/genksyms/lex.lex.o HOSTLD scripts/genksyms/genksyms HOSTCC scripts/selinux/genheaders/genheaders scripts/selinux/genheaders/genheaders.c:18:10: fatal error: classmap.h: No such file or directory 18 | #include "classmap.h" | ^~~~~~~~~~~~ compilation terminated. make[3]: *** [scripts/Makefile.host:95: scripts/selinux/genheaders/genheaders] Error 1 make[2]: *** [scripts/Makefile.build:548: scripts/selinux/genheaders] Error 2 make[1]: *** [scripts/Makefile.build:548: scripts/selinux] Error 2 make: *** [Makefile:1209: scripts] Error 2 lab@test-server:/usr/src/linux-headers-5.15.0-43-generic$ lab@test-server:~$ uname -a Linux test-server 5.15.0-43-generic #46-Ubuntu SMP Tue Jul 12 10:30:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux lab@test-server:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04 LTS Release: 22.04 Codename: jammy lab@test-server:~$ cat /proc/version_signature Ubuntu 5.15.0-43.46-generic 5.15.39 Should security/selinux/include/ headers be shipped in /usr/src/ as part of linux-source-x.xx.x_xxxx.deb or is there other proper workaround for this issue? I've tried with the following kernels: Ubuntu 20.04 5.4.0-120-generic amd64 kernel Ubuntu 20.04 5.4.0-64-generic arm64 kernel Ubuntu 22.04 5.15.0-43-generic amd64 kernel Ubuntu 20.04 custom build arm64 Ubuntu-unstable-5.17.0-6.6 from Ubuntu-unstable kernel tree An old Debian Bug report https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=988367 where they have a fix to copy the selinux headers to /usr/src to ship https://github.com/ilbers/isar/pull/67 https://github.com/ilbers/isar/pull/67/commits/7818e4f5e7495961c172511648476f5bf1c2e0fc Thanks - Jiandi ** Affects: linux (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1986378 Title: linux-headers make kernel script fails with fatal error: classmap.h: No such file or directory Status in linux package in Ubuntu: New Bug description: It looks like in most Ubuntu Linux kernel, building kernel scripts in /usr/scr/linux-headers-$(uname -r)/ fails with classmap.h missing. The security/selinux/include/ headers are not included in /usr/src to be packaged in linux-source-x.xx_xxx.deb package. CONFIG_SECURITY_SELINUX is enabled. lab@test-server:/usr/src/linux-headers-5.15.0-43-generic$ zgrep CONFIG_SECURITY_SELINUX /boot/config-$(uname -r) CONFIG_SECURITY_SELINUX=y CONFIG_SECURITY_SELINUX_BOOTPARAM=y # CONFIG_SECURITY_SELINUX_DISABLE is not set CONFIG_SECURITY_SELINUX_DEVELOP=y CONFIG_SECURITY_SELINUX_AVC_STATS=y CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 lab@test-server:/usr/src/linux-headers-5.15.0-43-generic$ sudo make scripts [sudo] password for lab: SYNC include/config/auto.conf.cmd HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o HOSTCC scripts/kconfig/confdata.o HOSTCC scripts/kconfig/expr.o LEX scripts/kconfig/lexer.lex.c YACC scripts/kconfig/parser.tab.[ch] HOSTCC scripts/kconfig/lexer.lex.o HOSTCC scripts/kconfig/menu.o HOSTCC scripts/kconfig/parser.tab.o HOSTCC scripts/kconfig/preprocess.o HOSTCC scripts/kconfig/symbol.o HOSTCC scripts/kconfig/util.o HOSTLD scripts/kconfig/conf 6^[[18~ HOSTCC scripts/genksyms/genksyms.o YACC scripts/genksyms/parse.tab.[ch] HOSTCC scripts/genksyms/parse.tab.o LEX scripts/genksyms/lex.lex.c HOSTCC scripts/genksyms/lex.lex.o HOSTLD scripts/genksyms/genksyms HOSTCC scripts/selinux/genheaders/genheaders scripts/selinux/genheaders/genheaders.c:18:10: fatal error: classmap.h: No such file or directory 18 | #include "classmap.h" | ^~~~~~~~~~~~ compilation terminated. make[3]: *** [scripts/Makefile.host:95: scripts/selinux/genheaders/genheaders] Error 1 make[2]: *** [scripts/Makefile.build:548: scripts/selinux/genheaders] Error 2 make[1]: *** [scripts/Makefile.build:548: scripts/selinux] Error 2 make: *** [Makefile:1209: scripts] Error 2 lab@test-server:/usr/src/linux-headers-5.15.0-43-generic$ lab@test-server:~$ uname -a Linux test-server 5.15.0-43-generic #46-Ubuntu SMP Tue Jul 12 10:30:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux lab@test-server:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04 LTS Release: 22.04 Codename: jammy lab@test-server:~$ cat /proc/version_signature Ubuntu 5.15.0-43.46-generic 5.15.39 Should security/selinux/include/ headers be shipped in /usr/src/ as part of linux-source-x.xx.x_xxxx.deb or is there other proper workaround for this issue? I've tried with the following kernels: Ubuntu 20.04 5.4.0-120-generic amd64 kernel Ubuntu 20.04 5.4.0-64-generic arm64 kernel Ubuntu 22.04 5.15.0-43-generic amd64 kernel Ubuntu 20.04 custom build arm64 Ubuntu-unstable-5.17.0-6.6 from Ubuntu-unstable kernel tree An old Debian Bug report https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=988367 where they have a fix to copy the selinux headers to /usr/src to ship https://github.com/ilbers/isar/pull/67 https://github.com/ilbers/isar/pull/67/commits/7818e4f5e7495961c172511648476f5bf1c2e0fc Thanks - Jiandi To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1986378/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp