[kmods PATCH] linux/igb_uio: allow modules install
Ferruh Yigit
ferruh.yigit at xilinx.com
Tue Jun 14 12:25:43 CEST 2022
On 4/12/2022 2:14 PM, Bruce Richardson wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> For those still using the "igb_uio" kernel module, there may be
> occasions where the module is installed in /lib/modules/$VERSION folder
> rather than being insmod'ed from the build directory. To support this, a
> number of changes are needed to the makefile:
>
> * Change the "clean" command to a generic wildcard target where that
> target is just passed through to the top-level kernel makefile. This
> should allow all standard kernel module targets, including "clean" and
> "modules_install" to work.
ack
> * To install in /lib/modules, root permissions are needed, so it is
> likely that users may try installing the module using "sudo". However,
> under sudo there is often no $PWD environment variable, breaking the
> build. This can be fixed by changing the environment variable $PWD to
> the make built-in variable "CURDIR"[1].
It can be possible to use shell PWD:
"make -C $(KSRC)/ M=$$PWD"
or
"
PWD := $(shell pwd)
all:
make -C $(KSRC)/ M=$(PWD)
"
But '$(CURDIR)' also seems doing the job, so lgtm.
> * As a cleanup, the actual kernel module path is got directly by make
> from the shell, rather than relying on the shell substitution later
> when making the recursive make call. This improves things slightly for
> the user as the full recursive command is visible, with the kernel
> version appearing in place of `uname -r` in the output.
>
ack
> [1] While neither PWD nor CURDIR will work correctly in the case where
> one is building outside of the sources directory, this is an edge case,
> and a simple replacement of PWD by CURDIR keeps things simple while
> adding support for "sudo".
>
> Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit at xilinx.com>
> ---
> linux/igb_uio/Makefile | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/linux/igb_uio/Makefile b/linux/igb_uio/Makefile
> index 09ae5d9..bd2e356 100644
> --- a/linux/igb_uio/Makefile
> +++ b/linux/igb_uio/Makefile
> @@ -1,7 +1,7 @@
> -KSRC ?= /lib/modules/`uname -r`/build
> +KSRC ?= /lib/modules/$(shell uname -r)/build
>
> all:
> - make -C $(KSRC)/ M=$(PWD)
> + make -C $(KSRC)/ M=$(CURDIR)
>
> -clean:
> - make -C $(KSRC)/ M=$(PWD) clean
> +%:
> + make -C $(KSRC)/ M=$(CURDIR) $@
> --
> 2.32.0
>
More information about the dev
mailing list