Skip to content
  • Yann Droneaud's avatar
    IB: Allow build of hw/ and ulp/ subdirectories independently · 729ee4ef
    Yann Droneaud authored
    
    
    It is not possible to build only the drivers/infiniband/hw/ (or ulp/)
    subdirectory with command such as:
    
        $ make ARCH=x86_64 O=./obj-x86_64/ drivers/infiniband/hw/
    
    This fails with following error messages:
    
        make[2]: Nothing to be done for `all'.
        make[2]: Nothing to be done for `relocs'.
          CHK     include/config/kernel.release
          Using /home/ydroneaud/src/linux as source for kernel
          GEN     /home/ydroneaud/src/linux/obj-x86_64/Makefile
          CHK     include/generated/uapi/linux/version.h
          CHK     include/generated/utsrelease.h
          CALL    /home/ydroneaud/src/linux/scripts/checksyscalls.sh
        /home/ydroneaud/src/linux/scripts/Makefile.build:44: /home/ydroneaud/src/linux/drivers/infiniband/hw/Makefile: No such file or directory
        make[2]: *** No rule to make target `/home/ydroneaud/src/linux/drivers/infiniband/hw/Makefile'.  Stop.
        make[1]: *** [drivers/infiniband/hw/] Error 2
        make: *** [sub-make] Error 2
    
    This patch creates a Makefile in hw/ and ulp/ and moves each
    corresponding parts of drivers/infiniband/Makefile in the new
    Makefiles.
    
    It should not break build except if some hw/ drivers or ulp/ were
    allowed previously to be built while CONFIG_INFINIBAND is set to 'n',
    but according to drivers/infiniband/Kconfig, it's not possible. So it
    should be safe to apply.
    
    Signed-off-by: default avatarYann Droneaud <ydroneaud@opteya.com>
    Reviewed-by: default avatarBart Van Assche <bvanassche@acm.org>
    Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
    729ee4ef