commit:     7facbc2cedd46417c537491d55ba38d77337b26f
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Sun Dec  4 21:20:55 2016 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Sun Dec  4 21:20:55 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7facbc2c

kernel-2.eclass: Convert eclass to use documentation standards

 eclass/kernel-2.eclass | 442 +++++++++++++++++++++++++++++++++++++------------
 1 file changed, 333 insertions(+), 109 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 91a24e9..b19a396 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -2,89 +2,199 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
-# Description: kernel.eclass rewrite for a clean base regarding the 2.6
-#              series of kernel with back-compatibility for 2.4
-#
-# Original author: John Mylchreest <jo...@gentoo.org>
-# Maintainer: ker...@gentoo.org
-#
+# @ECLASS: kernel-2.eclass
+# @MAINTAINER: 
+# Gentoo Kernel project <ker...@gentoo.org>
+# @AUTHOR: 
+# John Mylchreest <jo...@gentoo.org>
+# Mike Pagano <mpag...@gentoo.org>
+# <so many, many others, please add yourself>
+# @BLURB: Eclass for kernel packages
+# @DESCRIPTION:
+# This ia the kernel.eclass rewrite for a clean base regarding the 2.6
+# series of kernel with back-compatibility for 2.4
 # Please direct your bugs to the current eclass maintainer :)
-
 # added functionality:
 # unipatch             - a flexible, singular method to extract, add and 
remove patches.
 
-# A Couple of env vars are available to effect usage of this eclass
-# These are as follows:
-#
-# K_USEPV                              - When setting the EXTRAVERSION 
variable, it should
-#                                                add PV to the end.
-#                                                this is useful for thigns 
like wolk. IE:
-#                                                EXTRAVERSION would be 
something like : -wolk-4.19-r1
-# K_NOSETEXTRAVERSION  - if this is set then EXTRAVERSION will not be
-#                                                automatically set within the 
kernel Makefile
-# K_NOUSENAME                  - if this is set then EXTRAVERSION will not 
include the
-#                                                first part of ${PN} in 
EXTRAVERSION
-# K_NOUSEPR                            - if this is set then EXTRAVERSION will 
not include the
-#                                                anything based on ${PR}.
-# K_PREPATCHED                 - if the patchset is prepatched (ie: mm-sources,
-#                                                ck-sources, ac-sources) it 
will use PR (ie: -r5) as
-#                                                the patchset version for
-#                                                and not use it as a true 
package revision
-# K_EXTRAEINFO                 - this is a new-line seperated list of einfo 
displays in
-#                                                postinst and can be used to 
carry additional postinst
-#                                                messages
-# K_EXTRAELOG                  - same as K_EXTRAEINFO except using elog 
instead of einfo
-# K_EXTRAEWARN                 - same as K_EXTRAEINFO except using ewarn 
instead of einfo
-# K_SYMLINK                            - if this is set, then forcably create 
symlink anyway
-#
-# K_BASE_VER                   - for git-sources, declare the base version 
this patch is
-#                                                based off of.
-# K_DEFCONFIG                  - Allow specifying a different defconfig target.
-#                                                If length zero, defaults to 
"defconfig".
-# K_WANT_GENPATCHES            - Apply genpatches to kernel source. Provide any
-#                                                combination of "base", 
"extras" or "experimental".
-# K_EXP_GENPATCHES_PULL        - If set, we pull "experimental" regardless of 
the USE FLAG
-#                                                but expect the ebuild 
maintainer to use K_EXP_GENPATCHES_LIST.
-# K_EXP_GENPATCHES_NOUSE       - If set, no USE flag will be provided for 
"experimental";
-#                                                as a result the user cannot 
choose to apply those patches.
-# K_EXP_GENPATCHES_LIST        - A list of patches to pick from "experimental" 
to apply when
-#                                                the USE flag is unset and 
K_EXP_GENPATCHES_PULL is set.
-# K_FROM_GIT - If set, this variable signals that the kernel sources derives 
from a git tree and special
-#          handling will be applied so that any patches that are applied will 
actually apply.
-#
-# K_GENPATCHES_VER             - The version of the genpatches tarball(s) to 
apply.
-#                                                A value of "5" would apply 
genpatches-2.6.12-5 to
-#                                                my-sources-2.6.12.ebuild
-# K_SECURITY_UNSUPPORTED- If set, this kernel is unsupported by Gentoo Security
-# K_DEBLOB_AVAILABLE   - A value of "0" will disable all of the optional deblob
-#                                                code. If empty, will be set 
to "1" if deblobbing is
-#                                                possible. Test ONLY for "1".
-# K_DEBLOB_TAG                 - This will be the version of deblob script. 
It's a upstream SVN tag
-#                                                such asw -gnu or -gnu1.
-# K_PREDEBLOBBED               - This kernel was already deblobbed elsewhere.
-#                                                If false, either optional 
deblobbing will be available
-#                                                or the license will note the 
inclusion of freedist
-#                                                code.
-# K_LONGTERM                   - If set, the eclass will search for the kernel 
source
-#                                                in the long term directories 
on the upstream servers
-#                                                as the location has been 
changed by upstream
-# K_KDBUS_AVAILABLE            - If set, the ebuild contains the option of 
installing the
-#                                                kdbus patch.  This patch is 
not installed without the 'kdbus'
-#                                                and 'experimental' use flags.
-# H_SUPPORTEDARCH              - this should be a space separated list of 
ARCH's which
-#                                                can be supported by the 
headers ebuild
-
-# UNIPATCH_LIST                        - space delimetered list of patches to 
be applied to the
-#                                                kernel
-# UNIPATCH_EXCLUDE             - an addition var to support exlusion based 
completely
-#                                                on "<passedstring>*" and not 
"<passedno#>_*"
-#                                              - this should _NOT_ be used 
from the ebuild as this is
-#                                                reserved for end users 
passing excludes from the cli
-# UNIPATCH_DOCS                        - space delimemeted list of docs to be 
installed to
-#                                                the doc dir
-# UNIPATCH_STRICTORDER - if this is set places patches into directories of
-#                                                order, so they are applied in 
the order passed
+# @ECLASS-VARIABLE: K_USEPV
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# When setting the EXTRAVERSION variable, it should
+# add PV to the end.
+# this is useful for thigns like wolk. IE:
+# EXTRAVERSION would be something like : -wolk-4.19-r1
+
+# @ECLASS-VARIABLE:  K_NOSETEXTRAVERSION       
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# if this is set then EXTRAVERSION will not be
+# automatically set within the kernel Makefile
+
+# @ECLASS-VARIABLE: K_NOUSENAME                        
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# if this is set then EXTRAVERSION will not include the
+# first part of ${PN} in EXTRAVERSION
+
+# @ECLASS-VARIABLE: K_NOUSEPR                          
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# if this is set then EXTRAVERSION will not include the
+# anything based on ${PR}.
+
+# @ECLASS-VARIABLE: K_PREPATCHED                       
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# if the patchset is prepatched (ie: mm-sources,
+# ck-sources, ac-sources) it will use PR (ie: -r5) as
+# the patchset version for
+# and not use it as a true package revision
+
+# @ECLASS-VARIABLE:  K_EXTRAEINFO                      
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# this is a new-line seperated list of einfo displays in
+# postinst and can be used to carry additional postinst
+# messages
+
+# @ECLASS-VARIABLE:  K_EXTRAELOG                       
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# same as K_EXTRAEINFO except using elog instead of einfo
+
+# @ECLASS-VARIABLE:  K_EXTRAEWARN                      
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# same as K_EXTRAEINFO except using ewarn instead of einfo
+
+# @ECLASS-VARIABLE:  K_SYMLINK                         
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# if this is set, then forcably create symlink anyway
+
+# @ECLASS-VARIABLE:  K_BASE_VER                        
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# for git-sources, declare the base version this patch is
+# based off of.
+
+# @ECLASS-VARIABLE:  K_DEFCONFIG                       
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Allow specifying a different defconfig target.
+# If length zero, defaults to "defconfig".
+
+# @ECLASS-VARIABLE:  K_WANT_GENPATCHES         
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Apply genpatches to kernel source. Provide any
+# combination of "base", "extras" or "experimental".
+
+# @ECLASS-VARIABLE:  K_EXP_GENPATCHES_PULL     
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, we pull "experimental" regardless of the USE FLAG
+# but expect the ebuild maintainer to use K_EXP_GENPATCHES_LIST.
+
+# @ECLASS-VARIABLE:  K_EXP_GENPATCHES_NOUSE    
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, no USE flag will be provided for "experimental";
+# as a result the user cannot choose to apply those patches.
+
+# @ECLASS-VARIABLE:  K_EXP_GENPATCHES_LIST     
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# A list of patches to pick from "experimental" to apply when
+# the USE flag is unset and K_EXP_GENPATCHES_PULL is set.
+
+# @ECLASS-VARIABLE:  K_FROM_GIT 
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, this variable signals that the kernel sources derives 
+# from a git tree and special handling will be applied so that 
+# any patches that are applied will actually apply.
+
+# @ECLASS-VARIABLE:  K_GENPATCHES_VER          
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# The version of the genpatches tarball(s) to apply.
+# A value of "5" would apply genpatches-2.6.12-5 to
+# my-sources-2.6.12.ebuild
+
+# @ECLASS-VARIABLE:  K_SECURITY_UNSUPPORTED
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, this kernel is unsupported by Gentoo Security
+# to the current eclass maintainer :)
+# added functionality:
+# unipatch      - a flexible, singular method to extract, add and remove 
patches.
+
+# @ECLASS-VARIABLE:  K_DEBLOB_AVAILABLE        
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# A value of "0" will disable all of the optional deblob
+# code. If empty, will be set to "1" if deblobbing is
+# possible. Test ONLY for "1".
+
+# @ECLASS-VARIABLE:  K_DEBLOB_TAG              
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# This will be the version of deblob script. It's a upstream SVN tag
+# such asw -gnu or -gnu1.
+
+# @ECLASS-VARIABLE:  K_PREDEBLOBBED            
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# This kernel was already deblobbed elsewhere.
+# If false, either optional deblobbing will be available
+# or the license will note the inclusion of freedist code.
+
+# @ECLASS-VARIABLE:  K_LONGTERM                        
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, the eclass will search for the kernel source
+# in the long term directories on the upstream servers
+# as the location has been changed by upstream
 
+# @ECLASS-VARIABLE:  K_KDBUS_AVAILABLE         
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, the ebuild contains the option of installing the
+# kdbus patch.  This patch is not installed without the 'kdbus'
+# and 'experimental' use flags.
+
+# @ECLASS-VARIABLE:  H_SUPPORTEDARCH           
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# this should be a space separated list of ARCH's which
+# can be supported by the headers ebuild
+
+# @ECLASS-VARIABLE:  UNIPATCH_LIST                     
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# space delimetered list of patches to be applied to the kernel
+
+# @ECLASS-VARIABLE:  UNIPATCH_EXCLUDE          
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# An addition var to support exlusion based completely
+# on "<passedstring>*" and not "<passedno#>_*"
+# this should _NOT_ be used from the ebuild as this is
+# reserved for end users passing excludes from the cli
+
+# @ECLASS-VARIABLE:  UNIPATCH_DOCS                     
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# space delimemeted list of docs to be installed to
+# the doc dir
+
+# @ECLASS-VARIABLE:  UNIPATCH_STRICTORDER      
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# if this is set places patches into directories of
+# order, so they are applied in the order passed
 # Changing any other variable in this eclass is not supported; you can request
 # for additional variables to be added by contacting the current maintainer.
 # If you do change them, there is a chance that we will not fix resulting bugs;
@@ -129,11 +239,13 @@ RESTRICT="binchecks strip"
 # set LINUX_HOSTCFLAGS if not already set
 : ${LINUX_HOSTCFLAGS:="-Wall -Wstrict-prototypes -Os -fomit-frame-pointer 
-I${S}/include"}
 
-# debugging functions
-#==============================================================
+
+# @FUNCTION: debug-print-kernel2-variables
+# @DESCRIPTION: 
 # this function exists only to help debug kernel-2.eclass
 # if you are adding new functionality in, put a call to it
 # at the start of src_unpack, or during SRC_URI/dep generation.
+
 debug-print-kernel2-variables() {
        for v in PVR CKV OKV KV KV_FULL KV_MAJOR KV_MINOR KV_PATCH RELEASETYPE \
                        RELEASE UNIPATCH_LIST_DEFAULT UNIPATCH_LIST_GENPATCHES \
@@ -142,8 +254,10 @@ debug-print-kernel2-variables() {
        done
 }
 
-#Eclass functions only from here onwards ...
-#==============================================================
+# @FUNCTION: handle_genpatches
+# @DESCRIPTION:
+# add genpatches to list of patches to apply uf wanted 
+
 handle_genpatches() {
        local tarball want_unipatch_list
        [[ -z ${K_WANT_GENPATCHES} || -z ${K_GENPATCHES_VER} ]] && return 1
@@ -197,11 +311,13 @@ handle_genpatches() {
        done
 }
 
+# @FUNCTION: detect_version
+# @DESCRIPTION: 
+# this function will detect and set
+# - OKV: Original Kernel Version (2.6.0/2.6.0-test11)
+# - KV: Kernel Version (2.6.0-gentoo/2.6.0-test11-gentoo-r1)
+# - EXTRAVERSION: The additional version appended to OKV (-gentoo/-gentoo-r1)
 detect_version() {
-       # this function will detect and set
-       # - OKV: Original Kernel Version (2.6.0/2.6.0-test11)
-       # - KV: Kernel Version (2.6.0-gentoo/2.6.0-test11-gentoo-r1)
-       # - EXTRAVERSION: The additional version appended to OKV 
(-gentoo/-gentoo-r1)
 
        # We've already run, so nothing to do here.
        [[ -n ${KV_FULL} ]] && return 0
@@ -426,6 +542,12 @@ detect_version() {
        handle_genpatches
 }
 
+# @FUNCTION: kernel_is
+# @DESCRIPTION: 
+# user for comparing kernel versions
+# or just identifying a version
+# e.g kernel_is 2 4
+# e.g kernel_is ge 4.8.11
 # Note: duplicated in linux-info.eclass
 kernel_is() {
        # ALL of these should be set before we can safely continue this 
function.
@@ -453,10 +575,16 @@ kernel_is() {
        [ ${test} ${operator} ${value} ]
 }
 
+# @FUNCTION: kernel_is_2_4
+# @DESCRIPTION: 
+# return true if kernel is version 2.4 
 kernel_is_2_4() {
        kernel_is 2 4
 }
 
+# @FUNCTION: kernel_is_2_6
+# @DESCRIPTION: 
+# return true if kernel is version 2.6 
 kernel_is_2_6() {
        kernel_is 2 6 || kernel_is 2 5
 }
@@ -547,17 +675,27 @@ elif [[ ${ETYPE} == headers ]]; then
 fi
 
 # Cross-compile support functions
-#==============================================================
+
+# @FUNCTION: kernel_header_destdir
+# @DESCRIPTION: 
+# return header destination directory
 kernel_header_destdir() {
        [[ ${CTARGET} == ${CHOST} ]] \
                && echo /usr/include \
                || echo /usr/${CTARGET}/usr/include
 }
 
+# @FUNCTION: cross_pre_c_headers
+# @DESCRIPTION: 
+# set use if neccesary for cross compile support 
 cross_pre_c_headers() {
        use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 
+# @FUNCTION: env_setup_xmakeopts
+# @DESCRIPTION: 
+# set the ARCH/CROSS_COMPILE when cross compiling
+
 env_setup_xmakeopts() {
        # Kernel ARCH != portage ARCH
        export KARCH=$(tc-arch-kernel)
@@ -573,8 +711,10 @@ env_setup_xmakeopts() {
        export xmakeopts
 }
 
-# Unpack functions
-#==============================================================
+# @FUNCTION: unpack_2_4
+# @DESCRIPTION: 
+# unpack and generate .config for 2.4 kernels
+
 unpack_2_4() {
        # this file is required for other things to build properly,
        # so we autogenerate it
@@ -584,6 +724,10 @@ unpack_2_4() {
        echo ">>> version.h compiled successfully."
 }
 
+# @FUNCTION: unpack_2_6
+# @DESCRIPTION: 
+# unpack and generate .config for 2.6 kernels
+
 unpack_2_6() {
        # this file is required for other things to build properly, so we
        # autogenerate it ... generate a .config to keep version.h build from
@@ -605,6 +749,10 @@ unpack_2_6() {
        rm -f .config >/dev/null
 }
 
+# @FUNCTION: universal_unpack
+# @DESCRIPTION: 
+# unpack kernel sources 
+
 universal_unpack() {
        debug-print "Inside universal_unpack"
 
@@ -644,21 +792,32 @@ universal_unpack() {
 
 }
 
+# @FUNCTION: unpack_set_extraversion
+# @DESCRIPTION: 
+# handle EXTRAVERSION 
+
 unpack_set_extraversion() {
        cd "${S}"
        sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${EXTRAVERSION}:" Makefile
        cd "${OLDPWD}"
 }
 
+# @FUNCTION: unpack_fix_install_path
+# @DESCRIPTION: 
 # Should be done after patches have been applied
 # Otherwise patches that modify the same area of Makefile will fail
+
 unpack_fix_install_path() {
        cd "${S}"
        sed     -i -e 's:#export\tINSTALL_PATH:export\tINSTALL_PATH:' Makefile
 }
 
 # Compile Functions
-#==============================================================
+
+# @FUNCTION: compile_headers
+# @DESCRIPTION: 
+# header compilation
+
 compile_headers() {
        env_setup_xmakeopts
 
@@ -711,9 +870,12 @@ compile_headers() {
        fi
 }
 
+# @FUNCTION: compile_headers_tweak_config
+# @DESCRIPTION: 
+# some targets can be very very picky, so let's finesse the
+# .config based upon any info we may have
+
 compile_headers_tweak_config() {
-       # some targets can be very very picky, so let's finesse the
-       # .config based upon any info we may have
        case ${CTARGET} in
        sh*)
                sed -i '/CONFIG_CPU_SH/d' .config || die
@@ -726,15 +888,22 @@ compile_headers_tweak_config() {
 }
 
 # install functions
-#==============================================================
+
+# @FUNCTION: install_universal
+# @DESCRIPTION: 
+# Fix permissions in tarball
+
 install_universal() {
-       # Fix silly permissions in tarball
        cd "${WORKDIR}"
        chown -R 0:0 * >& /dev/null
        chmod -R a+r-w+X,u+w *
        cd ${OLDPWD}
 }
 
+# @FUNCTION: install_headers
+# @DESCRIPTION: 
+# Install headers 
+
 install_headers() {
        local ddir=$(kernel_header_destdir)
 
@@ -770,6 +939,10 @@ install_headers() {
        popd >/dev/null
 }
 
+# @FUNCTION: install_sources
+# @DESCRIPTION: 
+# Install sources 
+
 install_sources() {
        local file
 
@@ -804,16 +977,21 @@ install_sources() {
        fi
 }
 
-# pkg_preinst functions
-#==============================================================
+# @FUNCTION: preinst_headers
+# @DESCRIPTION: 
+# Headers preinst steps 
+
 preinst_headers() {
        local ddir=$(kernel_header_destdir)
        [[ -L ${EPREFIX}${ddir}/linux ]] && { rm "${EPREFIX}"${ddir}/linux || 
die; }
        [[ -L ${EPREFIX}${ddir}/asm ]] && { rm "${EPREFIX}"${ddir}/asm || die; }
 }
 
-# pkg_postinst functions
-#==============================================================
+# @FUNCTION: postinst_sources
+# @DESCRIPTION: 
+# Sources post installation function.
+# see inline comments
+
 postinst_sources() {
        local MAKELINK=0
 
@@ -902,7 +1080,11 @@ postinst_sources() {
 }
 
 # pkg_setup functions
-#==============================================================
+
+# @FUNCTION: setup_headers
+# @DESCRIPTION: 
+# Determine if ${PN} supports arch
+
 setup_headers() {
        [[ -z ${H_SUPPORTEDARCH} ]] && H_SUPPORTEDARCH=${PN/-*/}
        for i in ${H_SUPPORTEDARCH}; do
@@ -918,8 +1100,10 @@ setup_headers() {
        fi
 }
 
-# unipatch
-#==============================================================
+# @FUNCTION: unipatch
+# @DESCRIPTION: 
+# Universal function that will apply patches to source 
+
 unipatch() {
        local i x y z extention PIPE_CMD UNIPATCH_DROP KPATCH_DIR PATCH_DEPTH 
ELINE
        local STRICT_COUNT PATCH_LEVEL myLC_ALL myLANG
@@ -936,7 +1120,8 @@ unipatch() {
        # We're gonna need it when doing patches with a predefined patchlevel
        eshopts_push -s extglob
 
-       # This function will unpack all passed tarballs, add any passed 
patches, and remove any passed patchnumbers
+       # This function will unpack all passed tarballs, add any passed 
patches, 
+       # and remove any passed patchnumbers
        # usage can be either via an env var or by params
        # although due to the nature we pass this within this eclass
        # it shall be by param only.
@@ -1178,6 +1363,8 @@ unipatch() {
        eshopts_pop
 }
 
+# @FUNCTION: getfilevar
+# @DESCRIPTION: 
 # getfilevar accepts 2 vars as follows:
 # getfilevar <VARIABLE> <CONFIGFILE>
 # pulled from linux-info
@@ -1204,10 +1391,13 @@ getfilevar() {
        fi
 }
 
+# @FUNCTION: detect_arch
+# @DESCRIPTION: 
+# This function sets ARCH_URI and ARCH_PATCH
+# with the neccessary info for the arch sepecific compatibility
+# patchsets.
+
 detect_arch() {
-       # This function sets ARCH_URI and ARCH_PATCH
-       # with the neccessary info for the arch sepecific compatibility
-       # patchsets.
 
        local ALL_ARCH LOOP_ARCH COMPAT_URI i
 
@@ -1234,9 +1424,12 @@ detect_arch() {
        done
 }
 
+# @FUNCTION: headers___fix
+# @DESCRIPTION: 
+# Voodoo to partially fix broken upstream headers.
+# note: do not put inline/asm/volatile together (breaks "inline asm volatile")
+
 headers___fix() {
-       # Voodoo to partially fix broken upstream headers.
-       # note: do not put inline/asm/volatile together (breaks "inline asm 
volatile")
        sed -i \
                -e '/^\#define.*_TYPES_H/{:loop n; bloop}' \
                -e 's:\<\([us]\(8\|16\|32\|64\)\)\>:__\1:g' \
@@ -1246,8 +1439,10 @@ headers___fix() {
                "$@"
 }
 
-# common functions
-#==============================================================
+# @FUNCTION: kernel-2_src_unpack() 
+# @DESCRIPTION: 
+# unpack sources, handle genpatches, deblob 
+
 kernel-2_src_unpack() {
        universal_unpack
        debug-print "Doing unipatch"
@@ -1308,6 +1503,7 @@ kernel-2_src_unpack() {
 # @FUNCTION: kernel-2_src_prepare
 # @DESCRIPTION:
 # Apply any user patches 
+
 kernel-2_src_prepare() {
 
        debug-print "Applying any user patches"
@@ -1319,6 +1515,10 @@ kernel-2_src_prepare() {
        esac
 }
 
+# @FUNCTION: kernel-2_src_compile
+# @DESCRIPTION:
+# conpile headers or run deblob script 
+
 kernel-2_src_compile() {
        cd "${S}"
        [[ ${ETYPE} == headers ]] && compile_headers
@@ -1330,6 +1530,8 @@ kernel-2_src_compile() {
        fi
 }
 
+# @FUNCTION: kernel-2_src_test
+# @DESCRIPTION:
 # if you leave it to the default src_test, it will run make to
 # find whether test/check targets are present; since "make test"
 # actually produces a few support files, they are installed even
@@ -1338,20 +1540,37 @@ kernel-2_src_compile() {
 # Avoid this altogether by making the function moot.
 kernel-2_src_test() { :; }
 
+# @FUNCTION: kernel-2_pkg_preinst
+# @DESCRIPTION:
+# if ETYPE = headers, call preinst_headers 
+
 kernel-2_pkg_preinst() {
        [[ ${ETYPE} == headers ]] && preinst_headers
 }
 
+# @FUNCTION: kernel-2_src_install
+# @DESCRIPTION:
+# Install headers or sources dependant on ETYPE
+
 kernel-2_src_install() {
        install_universal
        [[ ${ETYPE} == headers ]] && install_headers
        [[ ${ETYPE} == sources ]] && install_sources
 }
 
+# @FUNCTION: kernel-2_pkg_postinst
+# @DESCRIPTION:
+# call postinst_sources for ETYPE = sources 
+
 kernel-2_pkg_postinst() {
        [[ ${ETYPE} == sources ]] && postinst_sources
 }
 
+# @FUNCTION: kernel-2_pkg_setup
+# @DESCRIPTION:
+# check for supported kernel version, die if ETYPE is unknown, call 
setup_headers
+# if necessary 
+
 kernel-2_pkg_setup() {
        if kernel_is 2 4; then
                if [[ $(gcc-major-version) -ge 4 ]] ; then
@@ -1377,6 +1596,11 @@ kernel-2_pkg_setup() {
        [[ ${ETYPE} == sources ]] && echo ">>> Preparing to unpack ..."
 }
 
+# @FUNCTION: kernel-2_pkg_postrm
+# @DESCRIPTION:
+# Notify the user that after a depclean, there may be sources
+# left behind that need to be manually cleaned
+
 kernel-2_pkg_postrm() {
        # This warning only makes sense for kernel sources.
        [[ ${ETYPE} == headers ]] && return 0

Reply via email to