lkml.org 
[lkml]   [2013]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 1/1] depmod: pass -P $CONFIG_SYMBOL_PREFIX
Date
On Thursday 31 January 2013 04:41:43 James Hogan wrote:
> --- a/Makefile
> +++ b/Makefile
>
> +ifneq ($(patsubst "%",%,$(CONFIG_SYMBOL_PREFIX)),)
> + depmod_args = -P $(patsubst "%",%,$(CONFIG_SYMBOL_PREFIX))
> +endif
> ...
> # Run depmod only if we have System.map and depmod is executable
> quiet_cmd_depmod = DEPMOD $(KERNELRELEASE)
> cmd_depmod = $(CONFIG_SHELL) $(srctree)/scripts/depmod.sh $(DEPMOD) \
> - $(KERNELRELEASE)
> + $(KERNELRELEASE) $(depmod_args)

scripts/Makefile.lib just does:
ifdef CONFIG_SYMBOL_PREFIX
so you should do the same

that said, cmd_depmod is just a shell command. and you're running another
script helper (depmod.sh). how about passing it unconditionally ?
cmd_depmod = ... -P "$(CONFIG_SYMBOL_PREFIX)"

since the default will be "no prefix", using -P "" is the same thing.

> --- a/scripts/depmod.sh
> +++ b/scripts/depmod.sh
>
> DEPMOD=$1
> -KERNELRELEASE=$2
> +shift
> +KERNELRELEASE=$1
> +shift

you can do:
DEPMOD=$1
KERNELRELEASE=$2
shift 2

> +# older versions of depmod don't support -P <symbol-prefix>
> +# support was added in module-init-tools 3.13
> +if test "$1" = "-P"; then
> + release=$("$DEPMOD" --version)
> + package=$(echo "$release" | cut -d' ' -f 1)
> + if test "$package" = "module-init-tools"; then
> + version=$(echo "$release" | cut -d' ' -f 2)
> + later=$({ echo "$version"; echo "3.13"; } | sort -V | tail -n 1)

you could do instead:
later=$(printf '%s\n' "$version" "3.13" | sort -V | tail -n 1)

> + if test "$later" != "$version"; then
> + # module-init-tools < 3.13, drop the next 2 args
> + shift
> + shift
> + fi

shift 2
-mike
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2013-02-03 08:01    [W:0.061 / U:0.400 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site