public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Mike Pagano (mpagano)" <mpagano@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] gentoo-x86 commit in eclass: kernel-2.eclass
Date: Mon,  8 Aug 2011 14:14:15 +0000 (UTC)	[thread overview]
Message-ID: <20110808141415.DE7522004C@flycatcher.gentoo.org> (raw)

mpagano     11/08/08 14:14:15

  Modified:             kernel-2.eclass
  Log:
  Changes to handle_genpatches for 3.X kernels and chanegs for 3.1 kernels to keep up with Linus' decisions

Revision  Changes    Path
1.254                eclass/kernel-2.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kernel-2.eclass?rev=1.254&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kernel-2.eclass?rev=1.254&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/kernel-2.eclass?r1=1.253&r2=1.254

Index: kernel-2.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/kernel-2.eclass,v
retrieving revision 1.253
retrieving revision 1.254
diff -u -r1.253 -r1.254
--- kernel-2.eclass	3 Jun 2011 20:20:23 -0000	1.253
+++ kernel-2.eclass	8 Aug 2011 14:14:15 -0000	1.254
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/kernel-2.eclass,v 1.253 2011/06/03 20:20:23 mpagano Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kernel-2.eclass,v 1.254 2011/08/08 14:14:15 mpagano Exp $
 
 # Description: kernel.eclass rewrite for a clean base regarding the 2.6
 #              series of kernel with back-compatibility for 2.4
@@ -117,10 +117,30 @@
 	local tarball
 	[[ -z ${K_WANT_GENPATCHES} || -z ${K_GENPATCHES_VER} ]] && return 1
 
+	debug-print "Inside handle_genpatches"
+	local oldifs=${IFS}
+	export IFS="."
+	local OKV_ARRAY=( $OKV )
+	export IFS=${oldifs}
+
+	# for > 3.0 kernels, handle genpatches tarball name
+	# genpatches for 3.0 and 3.0.1 might be named
+	# genpatches-3.0-1.base.tar.bz2 and genpatches-3.0-2.base.tar.bz2
+	# respectively.  Handle this.
+
 	for i in ${K_WANT_GENPATCHES} ; do
+	if [[ ${KV_MAJOR} -ge 3 ]]; then
+		if [[ ${#OKV_ARRAY[@]} -ge 3 ]]; then
+			tarball="genpatches-${KV_MAJOR}.${KV_MINOR}-${K_GENPATCHES_VER}.${i}.tar.bz2"
+		else
+			tarball="genpatches-${KV_MAJOR}.${KV_PATCH}-${K_GENPATCHES_VER}.${i}.tar.bz2"
+		fi
+	else
 		tarball="genpatches-${OKV}-${K_GENPATCHES_VER}.${i}.tar.bz2"
-		GENPATCHES_URI="${GENPATCHES_URI} mirror://gentoo/${tarball}"
-		UNIPATCH_LIST_GENPATCHES="${UNIPATCH_LIST_GENPATCHES} ${DISTDIR}/${tarball}"
+	fi
+	debug-print "genpatches tarball: $tarball"
+	GENPATCHES_URI="${GENPATCHES_URI} mirror://gentoo/${tarball}"
+	UNIPATCH_LIST_GENPATCHES="${UNIPATCH_LIST_GENPATCHES} ${DISTDIR}/${tarball}"
 	done
 }
 
@@ -151,9 +171,15 @@
 	OKV=${OKV/_p*}
 
 	KV_MAJOR=$(get_version_component_range 1 ${OKV})
+	# handle if OKV is X.Y or X.Y.Z (e.g. 3.0 or 3.0.1)
+	local oldifs=${IFS}
+	export IFS="."
+	local OKV_ARRAY=( $OKV )
+	export IFS=${oldifs}
 
 	# if KV_MAJOR >= 3, then we have no more KV_MINOR
-	if [[ ${KV_MAJOR} -lt 3 ]]; then
+	#if [[ ${KV_MAJOR} -lt 3 ]]; then
+	if [[ ${#OKV_ARRAY[@]} -ge 3 ]]; then
 		KV_MINOR=$(get_version_component_range 2 ${OKV})
 		KV_PATCH=$(get_version_component_range 3 ${OKV})
 		if [[ ${KV_MAJOR}${KV_MINOR}${KV_PATCH} -ge 269 ]]; then
@@ -168,10 +194,13 @@
 		KV_EXTRA=${KV_EXTRA/[-_]*}
 	fi
 
+	debug-print "KV_EXTRA is ${KV_EXTRA}"
+
 	KV_PATCH=${KV_PATCH/[-_]*}
 
 	local v n=0 missing
-	if [[ ${KV_MAJOR} -lt 3 ]]; then
+	#if [[ ${KV_MAJOR} -lt 3 ]]; then
+	if [[ ${#OKV_ARRAY[@]} -ge 3 ]]; then
 		for v in CKV OKV KV_{MAJOR,MINOR,PATCH} ; do
 			[[ -z ${!v} ]] && n=1 && missing="${missing}${v} ";
 		done
@@ -186,18 +215,37 @@
 		die "Failed to extract kernel version (try explicit CKV in ebuild)!"
 	unset v n missing
 
-	if [[ ${KV_MAJOR} -ge 3 ]]; then
+#	if [[ ${KV_MAJOR} -ge 3 ]]; then
+	if [[ ${#OKV_ARRAY[@]} -lt 3 ]]; then
 		KV_PATCH_ARR=(${KV_PATCH//\./ })
-		KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.${KV_PATCH_ARR}"
+
+		# at this point 080811, Linus is putting 3.1 kernels in 3.0 directory
+		# revisit when 3.1 is released 
+		if [[ ${KV_PATCH} -gt 0 ]]; then
+			KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.$((${KV_PATCH_ARR} - 1))"
+		else
+			KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.${KV_PATCH_ARR}"
+		fi
+		# KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.${KV_PATCH_ARR}"
 		[[ -n "${K_LONGTERM}" ]] &&
 			KERNEL_BASE_URI="${KERNEL_BASE_URI}/longterm/v${KV_MAJOR}.${KV_PATCH_ARR}"
 	else
-		KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.${KV_MINOR}"
+		KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.0"
+		#KERNEL_BASE_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.${KV_MINOR}"
 		[[ -n "${K_LONGTERM}" ]] &&
 			KERNEL_BASE_URI="${KERNEL_BASE_URI}/longterm/v${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
 	fi
 
-	KERNEL_URI="${KERNEL_BASE_URI}/linux-${OKV}.tar.bz2"
+	if [[ ${#OKV_ARRAY[@]} -ge 3 ]] && [[ ${KV_MAJOR} -ge 3 ]]; then
+		# handle vanilla-sources-3.x.y correctly
+		if [[ ${PN/-*} == "vanilla" && ${KV_PATCH} -gt 0 ]]; then
+			KERNEL_URI="${KERNEL_BASE_URI}/patch-${OKV}.bz2"
+			UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV}.bz2"
+		fi
+		KERNEL_URI="${KERNEL_URI} ${KERNEL_BASE_URI}/linux-${KV_MAJOR}.${KV_MINOR}.tar.bz2"
+	else
+		KERNEL_URI="${KERNEL_BASE_URI}/linux-${OKV}.tar.bz2"
+	fi
 
 	RELEASE=${CKV/${OKV}}
 	RELEASE=${RELEASE/_beta}
@@ -215,7 +263,7 @@
 	# first of all, we add the release
 	EXTRAVERSION="${RELEASE}"
 	debug-print "0 EXTRAVERSION:${EXTRAVERSION}"
-	[[ -n ${KV_EXTRA} ]] && EXTRAVERSION=".${KV_EXTRA}${EXTRAVERSION}"
+	[[ -n ${KV_EXTRA} ]] && [[ ${KV_MAJOR} -lt 3 ]] && EXTRAVERSION=".${KV_EXTRA}${EXTRAVERSION}"
 
 	debug-print "1 EXTRAVERSION:${EXTRAVERSION}"
 	if [[ -n "${K_NOUSEPR}" ]]; then
@@ -513,13 +561,37 @@
 }
 
 universal_unpack() {
+	debug-print "Inside universal_unpack"
+
+	local oldifs=${IFS}
+	export IFS="."
+	local OKV_ARRAY=( $OKV )
+	export IFS=${oldifs}
+
 	cd "${WORKDIR}"
-	unpack linux-${OKV}.tar.bz2
+	if [[ ${#OKV_ARRAY[@]} -ge 3 ]] && [[ ${KV_MAJOR} -ge 3 ]]; then
+		unpack linux-${KV_MAJOR}.${KV_MINOR}.tar.bz2
+	else
+		unpack linux-${OKV}.tar.bz2
+	fi
+
 	if [[ -d "linux" ]]; then
+		debug-print "Moving linux to linux-${KV_FULL}"
 		mv linux linux-${KV_FULL} \
 			|| die "Unable to move source tree to ${KV_FULL}."
 	elif [[ "${OKV}" != "${KV_FULL}" ]]; then
-		mv linux-${OKV} linux-${KV_FULL} \
+		if [[ ${#OKV_ARRAY[@]} -ge 3 ]] && [[ ${KV_MAJOR} -ge 3 ]] &&
+			[[ "${ETYPE}" = "sources" ]]; then
+			debug-print "moving linux-${KV_MAJOR}.${KV_MINOR} to linux-${KV_FULL} "
+			mv linux-${KV_MAJOR}.${KV_MINOR} linux-${KV_FULL} \
+				|| die "Unable to move source tree to ${KV_FULL}."
+		else
+			debug-print "moving linux-${OKV} to linux-${KV_FULL} "
+			mv linux-${OKV} linux-${KV_FULL} \
+				|| die "Unable to move source tree to ${KV_FULL}."
+		fi
+	elif [[ ${#OKV_ARRAY[@]} -ge 3 ]] && [[ ${KV_MAJOR} -ge 3 ]]; then
+		mv linux-${KV_MAJOR}.${KV_MINOR} linux-${KV_FULL} \
 			|| die "Unable to move source tree to ${KV_FULL}."
 	fi
 	cd "${S}"






             reply	other threads:[~2011-08-08 14:14 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-08 14:14 Mike Pagano (mpagano) [this message]
  -- strict thread matches above, loose matches on Subject: below --
2015-02-13  1:30 [gentoo-commits] gentoo-x86 commit in eclass: kernel-2.eclass Mike Pagano (mpagano)
2013-11-22 13:35 Mike Frysinger (vapier)
2013-07-31 21:25 Julian Ospald (hasufell)
2011-12-10  7:57 Mike Frysinger (vapier)
2011-12-08 19:39 Mike Frysinger (vapier)
2011-12-02  4:34 Mike Frysinger (vapier)
2011-12-02  4:19 Mike Frysinger (vapier)
2011-12-02  2:37 Mike Frysinger (vapier)
2011-12-02  2:28 Mike Frysinger (vapier)
2011-12-02  1:54 Mike Frysinger (vapier)
2011-12-02  0:15 Mike Frysinger (vapier)
2011-12-01 23:34 Mike Frysinger (vapier)
2011-12-01 23:32 Mike Frysinger (vapier)
2011-10-24 23:58 Mike Pagano (mpagano)
2011-08-19 13:26 Mike Pagano (mpagano)
2011-08-15 21:38 Mike Pagano (mpagano)
2011-08-11 14:09 Mike Pagano (mpagano)
2011-08-08 23:14 Mike Pagano (mpagano)
2011-06-03 20:20 Mike Pagano (mpagano)
2011-06-03 13:07 Mike Pagano (mpagano)
2011-04-30 17:07 Ulrich Mueller (ulm)
2011-04-21 12:34 Mike Pagano (mpagano)
2011-04-14  6:10 Ulrich Mueller (ulm)
2011-03-22  0:39 Mike Pagano (mpagano)
2011-03-19 18:15 Samuli Suominen (ssuominen)
2011-03-15 13:16 Mike Pagano (mpagano)
2011-03-10  1:04 Mike Frysinger (vapier)
2011-02-18 20:07 Mike Pagano (mpagano)
2010-11-28  5:07 Robin H. Johnson (robbat2)
2010-11-26 23:41 Mike Pagano (mpagano)
2010-09-17 21:44 Tomas Chvatal (scarabeus)
2010-08-03 18:31 Robin H. Johnson (robbat2)
2010-08-03 17:22 Robin H. Johnson (robbat2)
2010-07-30  0:44 Mike Pagano (mpagano)
2010-07-19 20:19 Mike Frysinger (vapier)
2010-06-05 18:49 Mike Frysinger (vapier)
2010-05-28 21:00 Robin H. Johnson (robbat2)
2010-05-20 23:11 Robin H. Johnson (robbat2)
2010-05-02 11:05 Ulrich Mueller (ulm)
2010-05-02  8:48 Robin H. Johnson (robbat2)
2010-04-26  8:05 Robin H. Johnson (robbat2)
2010-04-26  7:26 Robin H. Johnson (robbat2)
2010-04-26  7:15 Robin H. Johnson (robbat2)
2010-04-26  6:48 Robin H. Johnson (robbat2)
2010-04-26  6:46 Robin H. Johnson (robbat2)
2010-04-26  6:44 Robin H. Johnson (robbat2)
2010-04-01 21:12 Robin H. Johnson (robbat2)
2009-12-13 18:56 Mike Pagano (mpagano)
2009-11-25 18:46 Mike Pagano (mpagano)
2009-10-20 19:51 Robin H. Johnson (robbat2)
2009-10-20 19:17 Zac Medico (zmedico)
2009-10-11 11:43 Markus Meier (maekke)
2009-08-28 16:28 Mike Pagano (mpagano)
2008-11-13 23:50 Mike Pagano (mpagano)
2008-08-07  2:05 Mike Pagano (mpagano)
2008-07-09 19:52 Friedrich Oslage (bluebird)
2008-06-01 23:29 Mike Pagano (mpagano)
2008-05-03 16:07 Daniel Drake (dsd)
2008-04-28 19:22 Mike Pagano (mpagano)
2008-04-12 22:45 Mike Frysinger (vapier)
2008-04-05 12:29 Mike Pagano (mpagano)
2008-03-01 18:47 Bo Oersted Andresen (zlin)
2007-12-17 16:05 Daniel Drake (dsd)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110808141415.DE7522004C@flycatcher.gentoo.org \
    --to=mpagano@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox