The ready to cut ebuild at the bottom print it's environment (variable
and functions) to a bunch of files into /var/tmp/fakebuild/.
May be useful for who want to have a look at "what" and "when" is
avaible during the various emerge phases (but not limited to).
usage:
# env -i \
PORTDIR_OVERLAY=/the/path/ \
fakebuild_progr=100 \
ebuild fakebuild-1.ebuild digest

# env -i \
fakebuild_progr=200 \
PORTDIR_OVERLAY=/the/path/ \
emerge --buildpkgonly =fakebuild-1

hint: try also the following:
- remove the egrep, sort after "typeset" to have also the sorce code of
the functions
- remove "{pkg,src}*" functions  (after the previous step) to have a
look at the predefined functions.


--- app-misc/fakebuild --
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

DESCRIPTION="fake ebuild to test environment"
HOMEPAGE="http://dev.gentoo.org/~vivo/";
SRC_URI=""

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86"

print_env() {
    local fakebuild_output_dir="/var/tmp/fakebuild"
    mkdir -p "${fakebuild_output_dir}" || die

    [[ -z "${fakebuild_progr}" ]] && fakebuild_progr=100
    fakebuild_progr=$(( $fakebuild_progr +1 ))
    export fakebuild_progr

    local fakebuild_ext="${1}.${fakebuild_progr}"

    # not sorting, break multiline vars
    einfo "${fakebuild_output_dir}/env_${fakebuild_ext}"
    env \
        &> "${fakebuild_output_dir}/env_${fakebuild_ext}"

    # Remove egrep and sort to see the source of every fx
    einfo "${fakebuild_output_dir}/fxlist_${fakebuild_ext}"
    typeset \
        | egrep '^\b.* \(\)' \
        | sort \
        &> "${fakebuild_output_dir}/fxlist_${fakebuild_ext}"
}

print_env "global_scope"

pkg_setup()    { print_env "pkg_setup" ; }
src_unpack()   { print_env "src_unpack" ; }
src_compile()  { print_env "src_compile" ; }
src_test()     { print_env "src_test" ; }
src_install()  { print_env "src_install" ; }
pkg_preinst()  { print_env "pkg_preinst" ; }
pkg_postinst() { print_env "pkg_postinst" ; }
--- app-misc/fakebuild --

-- 
   ________ ___  _    _ ____ _____ ___ ____ ____     ___
  / ___/_  \_  \/ \  / / ___/ ___/  _ / ___/ _  \   /_  \
 / __/   _/__  / \ \/ / /__/ _/_ _\ \/ /__/ / / /  /   _/
/_/ /_/\_\/_/_/_/ \__/\___/____//___ \___/\____/  / /\_\o
 
Simultaneous breaking of databases and backups since '90s.
World wide since 2005.0

-- 
gentoo-dev@gentoo.org mailing list

Reply via email to