Gentoo Archives: gentoo-commits

From: Sebastian Pipping <sping@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/genkernel:master commit in: /
Date: Sun, 08 Jul 2012 17:22:19
Message-Id: 1341767830.0db56cdc9d5166abaaaf0b23406cf06d775e2bca.sping@gentoo
1 commit: 0db56cdc9d5166abaaaf0b23406cf06d775e2bca
2 Author: Sebastian Pipping <sebastian <AT> pipping <DOT> org>
3 AuthorDate: Sun Jul 1 12:03:51 2012 +0000
4 Commit: Sebastian Pipping <sping <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 8 17:17:10 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/genkernel.git;a=commit;h=0db56cdc
7
8 Support --kernel-config=/proc/config.gz (bug #421027)
9
10 ---
11 ChangeLog | 4 ++++
12 gen_configkernel.sh | 8 +++++++-
13 gen_package.sh | 19 +++++++++++++++++--
14 3 files changed, 28 insertions(+), 3 deletions(-)
15
16 diff --git a/ChangeLog b/ChangeLog
17 index 7d5ad59..7b90ca8 100644
18 --- a/ChangeLog
19 +++ b/ChangeLog
20 @@ -5,6 +5,10 @@
21 # Distributed under the GPL v2
22 # $Id$
23
24 + 01 Jul 2012; Sebastian Pipping <sping@g.o> gen_configkernel.sh,
25 + gen_package.sh:
26 + Support --kernel-config=/proc/config.gz (bug #421027)
27 +
28 11 Jun 2012; Sebastian Pipping <sping@g.o> genkernel:
29 Bump version to 3.4.36
30
31
32 diff --git a/gen_configkernel.sh b/gen_configkernel.sh
33 index 5d619fa..b0837dd 100755
34 --- a/gen_configkernel.sh
35 +++ b/gen_configkernel.sh
36 @@ -56,7 +56,13 @@ config_kernel() {
37 # or we might remove configurations someone is trying to test.
38 if isTrue "${MRPROPER}" || [ ! -f "${KERNEL_DIR}/.config" ]
39 then
40 - cp "${KERNEL_CONFIG}" "${KERNEL_DIR}/.config" || gen_die 'Could not copy configuration file!'
41 + local message='Could not copy configuration file!'
42 + if [[ "$(file --brief --mime-type "${KERNEL_CONFIG}")" == application/x-gzip ]]; then
43 + # Support --kernel-config=/proc/config.gz, mainly
44 + zcat "${KERNEL_CONFIG}" > "${KERNEL_DIR}/.config" || gen_die "${message}"
45 + else
46 + cp "${KERNEL_CONFIG}" "${KERNEL_DIR}/.config" || gen_die "${message}"
47 + fi
48 fi
49
50 if isTrue "${OLDCONFIG}"
51
52 diff --git a/gen_package.sh b/gen_package.sh
53 index e7c6142..b83ccc1 100755
54 --- a/gen_package.sh
55 +++ b/gen_package.sh
56 @@ -78,7 +78,13 @@ gen_kerncache()
57 cd "${KERNEL_DIR}"
58 cp "${tmp_kernel_binary}" "${TEMP}/kerncache/kernel-${ARCH}-${KV}" || gen_die 'Could not the copy kernel for the kernel package!'
59 cp "${KERNEL_DIR}/.config" "${TEMP}/kerncache/config-${ARCH}-${KV}"
60 - cp "${KERNEL_CONFIG}" "${TEMP}/kerncache/config-${ARCH}-${KV}.orig"
61 +
62 + if [[ "$(file --brief --mime-type "${KERNEL_CONFIG}")" == application/x-gzip ]]; then
63 + # Support --kernel-config=/proc/config.gz, mainly
64 + zcat "${KERNEL_CONFIG}" > "${TEMP}/kerncache/config-${ARCH}-${KV}.orig"
65 + else
66 + cp "${KERNEL_CONFIG}" "${TEMP}/kerncache/config-${ARCH}-${KV}.orig"
67 + fi
68 cp "${KERNEL_DIR}/System.map" "${TEMP}/kerncache/System.map-${ARCH}-${KV}"
69 if isTrue "${GENZIMAGE}"
70 then
71 @@ -180,7 +186,16 @@ gen_kerncache_is_valid()
72 else
73 test1=$(grep -v "^#" ${TEMP}/config-${ARCH}-${KV} | md5sum | cut -d " " -f 1)
74 fi
75 - test2=$(grep -v "^#" ${KERNEL_CONFIG} | md5sum | cut -d " " -f 1)
76 +
77 + if [[ "$(file --brief --mime-type "${KERNEL_CONFIG}")" == application/x-gzip ]]; then
78 + # Support --kernel-config=/proc/config.gz, mainly
79 + local CONFGREP=zgrep
80 + else
81 + local CONFGREP=grep
82 + fi
83 + test2=$("${CONFGREP}" -v "^#" ${KERNEL_CONFIG} | md5sum | cut -d " " -f 1)
84 +
85 +
86 if [ "${test1}" == "${test2}" ]
87 then
88 echo