[pacman-dev] [PATCH] makepkg: implement support for stripping kernel modules
I noticed when I built a kernel package with options 'strip' and 'debug' that the debug package was missing the debug information for the kernel modules. This patch adds kernel modules to the targets for 'strip' and is compatible with the split-out debug information packages. Signed-off-by: Steven Noonan <steven@uplinklabs.net> --- scripts/makepkg.sh.in | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 940e947..4981595 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1659,6 +1659,12 @@ tidy_install() { strip_flags="$STRIP_SHARED";; *application/x-archive*) # Libraries (.a) strip_flags="$STRIP_STATIC";; + *application/x-object*) + case "$binary" in + *.ko) # Kernel module + strip_flags="$STRIP_SHARED";; + esac + continue;; *application/x-executable*) # Binaries strip_flags="$STRIP_BINARIES";; *) -- 1.8.5.4
On Sun, Feb 09, 2014 at 03:15:42PM -0800, Steven Noonan wrote:
I noticed when I built a kernel package with options 'strip' and 'debug' that the debug package was missing the debug information for the kernel modules. This patch adds kernel modules to the targets for 'strip' and is compatible with the split-out debug information packages.
Signed-off-by: Steven Noonan <steven@uplinklabs.net> --- scripts/makepkg.sh.in | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 940e947..4981595 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1659,6 +1659,12 @@ tidy_install() { strip_flags="$STRIP_SHARED";; *application/x-archive*) # Libraries (.a) strip_flags="$STRIP_STATIC";; + *application/x-object*) + case "$binary" in
Quoting not necessary here.
+ *.ko) # Kernel module + strip_flags="$STRIP_SHARED";; + esac + continue;;
This continue looks very wrong. It means strip is never called for the module.
*application/x-executable*) # Binaries strip_flags="$STRIP_BINARIES";; *) -- 1.8.5.4
On Sun, Feb 9, 2014 at 3:34 PM, Dave Reisner <d@falconindy.com> wrote:
On Sun, Feb 09, 2014 at 03:15:42PM -0800, Steven Noonan wrote:
I noticed when I built a kernel package with options 'strip' and 'debug' that the debug package was missing the debug information for the kernel modules. This patch adds kernel modules to the targets for 'strip' and is compatible with the split-out debug information packages.
Signed-off-by: Steven Noonan <steven@uplinklabs.net> --- scripts/makepkg.sh.in | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 940e947..4981595 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1659,6 +1659,12 @@ tidy_install() { strip_flags="$STRIP_SHARED";; *application/x-archive*) # Libraries (.a) strip_flags="$STRIP_STATIC";; + *application/x-object*) + case "$binary" in
Quoting not necessary here.
+ *.ko) # Kernel module + strip_flags="$STRIP_SHARED";; + esac + continue;;
This continue looks very wrong. It means strip is never called for the module.
Please ignore versions 1 and 2. I originally wrote a proof-of-concept patch which did strip_flags on all application/x-object mime types, but I thought better of it when preparing a patch for submission. Unfortunately I failed to adequately test the final result before sending and made some incredibly stupid mistakes. Sorry for the noise.
*application/x-executable*) # Binaries strip_flags="$STRIP_BINARIES";; *) -- 1.8.5.4
participants (2)
-
Dave Reisner
-
Steven Noonan