announcing kmax, a symbolic build config evaluator; requesting useful application ideas

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

I'd like to announce a tool called Kmax and see if it can be of benefit to the developer community: https://github.com/paulgazz/kmax/

Kmax extracts symbolic constraints for compilation units from Kbuild Makefiles. For example, this snippet

    obj-y := fork.o
    ifeq ($(CONFIG_A),y)
      BITS := 32
    else
      BITS := 64
    endif
    obj-$(CONFIG_B) += probe_$(BITS).o

would yield this output

    probe_64.o ((! CONFIG_A) && CONFIG_B)
    probe_32.o (CONFIG_A && CONFIG_B)
    fork.o 1

I've used Kmax to collect the symbolic constraints for compilation units from the 5.3.11 (x86) kernel: https://drive.google.com/file/d/1q7dDzOvEKWUi7FlZ2YixValV6xlkq1yY/view?usp=sharing

Since this was proposed as a GSoC project last year (https://wiki.linuxfoundation.org/gsoc/2019-gsoc-safety-critical-linux#student_project_proposals_2018), I thought this might be useful for kernel developers.

What (if any) would be useful applications that developers would most benefit from?  Automatically generating configurations that include a particular C file?  Looking for dead (unconfigurable) compilation units?  Something more pressing?  Looking forward to any suggestions.

Best,
Paul Gazzillo




[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux