|
|
echo "${USE}" > USE | echo "${USE}" > USE |
echo "${EAPI:-0}" > EAPI | echo "${EAPI:-0}" > EAPI |
set +f | set +f |
set > environment |
|
export | sed 's:^declare -rx:declare -x:' >> environment |
save_ebuild_env > environment |
bzip2 -f9 environment | bzip2 -f9 environment |
| |
cp "${EBUILD}" "${PF}.ebuild" | cp "${EBUILD}" "${PF}.ebuild" |
|
|
PATH="${stripped_path}" | PATH="${stripped_path}" |
} | } |
| |
|
save_ebuild_env() { |
|
# In bash-3.2_p20+ an attempt to assign BASH_*, FUNCNAME, GROUPS or any |
|
# readonly variable cause the shell to exit while executing the "source" |
|
# builtin command. To avoid this problem, this function filters those |
|
# variables out and discards them. See bug #190128. |
|
local readonly_vars=$(readonly | while read line; \ |
|
do [[ ${line} == "declare -"*" "*"="* ]] || continue ; \ |
|
x=${line%%=*} ; echo ${x##* } ; done) |
|
local x var_grep="" |
|
for x in BASH SANDBOX ; do |
|
var_grep="${var_grep}|(^|^declare[[:space:]]+-[^[:space:]]+[[:space:]]+)${x}_[_[:alnum:]]*=.*" |
|
done |
|
for x in ${readonly_vars} var_grep LD_PRELOAD FAKEROOTKEY FUNCNAME GROUPS ; do |
|
var_grep="${var_grep}|(^|^declare[[:space:]]+-[^[:space:]]+[[:space:]]+)${x}=.*" |
|
done |
|
var_grep=${var_grep:1} # strip the first | |
|
unset x readonly_vars |
|
( |
|
# There's no need to bloat environment.bz2 with internally defined |
|
# functions and variables, so filter them out if possible. |
|
|
|
unset -f dump_trace diefunc quiet_mode vecho elog_base eqawarn elog \ |
|
esyslog einfo einfon ewarn eerror ebegin _eend eend KV_major \ |
|
KV_minor KV_micro KV_to_int get_KV unset_colors set_colors has \ |
|
hasv hasq qa_source qa_call addread addwrite adddeny addpredict \ |
|
lchown lchgrp esyslog use usev useq has_version portageq \ |
|
best_version use_with use_enable register_die_hook check_KV \ |
|
keepdir unpack strip_duplicate_slashes econf einstall gen_wrapper \ |
|
dyn_setup dyn_unpack dyn_clean into insinto exeinto docinto \ |
|
insopts diropts exeopts libopts abort_handler abort_compile \ |
|
abort_test abort_install dyn_compile dyn_test dyn_install \ |
|
dyn_preinst dyn_help debug-print debug-print-function \ |
|
debug-print-section inherit EXPORT_FUNCTIONS newdepend newrdepend \ |
|
newpdepend do_newdepend remove_path_entry killparent \ |
|
save_ebuild_env |
|
|
|
set |
|
export |
|
) | egrep -v -e "${var_grep}" |
|
} |
|
|
# === === === === === === === === === === === === === === === === === === | # === === === === === === === === === === === === === === === === === === |
# === === === === === functions end, main part begins === === === === === | # === === === === === functions end, main part begins === === === === === |
# === === === === === functions end, main part begins === === === === === | # === === === === === functions end, main part begins === === === === === |
|
|
unset myarg | unset myarg |
# Save current environment and touch a success file. (echo for success) | # Save current environment and touch a success file. (echo for success) |
umask 002 | umask 002 |
set | egrep -v -e "^SANDBOX_" -e "^LD_PRELOAD=" -e "^FAKEROOTKEY=" > "${T}/environment" 2>/dev/null |
save_ebuild_env > "${T}/environment" 2>/dev/null |
export | egrep -v -e "^declare -x SANDBOX_" -e "^declare -x LD_PRELOAD=" -e "^declare -x FAKEROOTKEY=" | \ |
|
sed 's:^declare -rx:declare -x:' >> "${T}/environment" 2>/dev/null |
|
chown portage:portage "${T}/environment" &>/dev/null | chown portage:portage "${T}/environment" &>/dev/null |
chmod g+w "${T}/environment" &>/dev/null | chmod g+w "${T}/environment" &>/dev/null |
fi | fi |