Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 40319 - kernel-2.eclass v1.24 UNIPATCH_STRICTORDER patches zips before all else
Summary: kernel-2.eclass v1.24 UNIPATCH_STRICTORDER patches zips before all else
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: John Mylchreest (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-03 14:45 UTC by Scott Taylor (RETIRED)
Modified: 2004-02-04 11:56 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
STRICTORDER change (kernel-2.eclass.patch,1.70 KB, patch)
2004-02-03 14:47 UTC, Scott Taylor (RETIRED)
Details | Diff
predefined patch names easier to reorder (kernel-2.eclass.patch.2,4.41 KB, patch)
2004-02-03 15:56 UTC, Scott Taylor (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Scott Taylor (RETIRED) gentoo-dev 2004-02-03 14:45:55 UTC
When trying to force a patch order like this (to call some of these before the mm-sources patches and some after it, for example), the current kernel-2.eclass first untars the tbz2 and numbers them, then it copies the plain .bz2 files and numbers those directories. The end effect is that the ${KV}.bz2 patches are applied last, no matter how the UNIPATCH_LIST is ordered.

UNIPATCH_LIST="
    ${DISTDIR}/linux-2.6.1-pax-openpax-20040109.tbz2
    ${DISTDIR}/${KV}.bz2
    ${DISTDIR}/linux-2.6.1-binfmt-hpomnibook-20040203.tbz2"
UNIPATCH_STRICTORDER="yes"

By changing the processing order from for[if(tar)++],for[cat++] to for[if(tar)else(cat)++] logic (patch to follow), the entire UNIPATCH_LIST is processed in one pass, handling tar files as they occur, but keeping the STRICT_ORDER counter consistent, and patches apply in the order they were passed from the ebuild. Despite the number of changed lines in the patch, the changes are mostly indentation.
Comment 1 Scott Taylor (RETIRED) gentoo-dev 2004-02-03 14:47:30 UTC
Created attachment 24904 [details, diff]
STRICTORDER change
Comment 2 Scott Taylor (RETIRED) gentoo-dev 2004-02-03 15:56:56 UTC
Created attachment 24905 [details, diff]
predefined patch names easier to reorder 

Suggesting this modification for clarity. Rather than be concerned with the
order
the functions get called in the ebuild, this allows the -bk -mm, and whatever
other patches to come before, after, or not at all. UNIPATCH_LIST_DEFAULT is
set with whatever values UNIPATCH_LIST would've been anyway, and it gets used
if UNIPATCH_LIST is otherwise undefined. 

UNIPATCH_LIST="${DISTDIR}/linux-2.6.1-pax-openpax-20040109.tbz2
${UNIPATCH_LIST_DEFAULT}
${DISTDIR}/linux-2.6.1-binfmt-hpomnibook-20040203.tbz2"
UNIPATCH_STRICTORDER="yes"

As some of these patches can be fussy about the order in which they run, any
way to make this clearer is a good thing in my book. Debugging banners are left

in this patch, as I don't realistically expect it to get dropped into portage
overnight, but I do thing changes along these lines would be handy...
Comment 3 John Mylchreest (RETIRED) gentoo-dev 2004-02-03 16:03:46 UTC
I must admit this was a very quick addition to the eclass.
Thank-you for pointing this out :)
I will investigate shortly, most likely tomorrow.
Comment 4 John Mylchreest (RETIRED) gentoo-dev 2004-02-04 11:56:24 UTC
some of your changes have been made and incorporating.
thanks for saving me some typing on that account :)

I am purposefully holding off on the strict prepatched, but i have a good reason for this.
there will some future improvements being made which will take advantage of this.