Summary: | app-office/libreoffice-l10n-5.1.0.3: eshopts_pop: unbalanced push | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Andrew Udvare <audvare> |
Component: | Current packages | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | acm, andrzej.kardas, aoaaxy+gentoobugzilla, derk.tebokkel, mickael_boulet, moltonel |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=575702 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build log
environment working-environment |
Description
Andrew Udvare
2016-02-26 10:33:53 UTC
Related Created attachment 426598 [details]
build log
Created attachment 426600 [details]
environment
Hi,
Same here with python_single_target_python3_5 USE flag, with these errors:
>>> Install libreoffice-l10n-5.1.0.3 into /var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/image/ category app-office
/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment: line 657: estack_push: command not found
/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment: line 657: estack_push: command not found
/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment: line 646: estack_pop: command not found
* ERROR: app-office/libreoffice-l10n-5.1.0.3::gentoo failed (install phase):
* eshopts_pop: unbalanced push
*
* Call stack:
* ebuild.sh, line 133: Called src_install
* environment, line 1927: Called get_version_component_range '1-2'
* environment, line 1083: Called get_all_version_components '5.1.0.3'
* environment, line 967: Called eshopts_pop
* environment, line 646: Called die
* The specific snippet of code:
* estack_pop eshopts s || die "${FUNCNAME}: unbalanced push";
*
* If you need support, post the output of `emerge --info '=app-office/libreoffice-l10n-5.1.0.3::gentoo'`,
* the complete build log and the output of `emerge -pqv '=app-office/libreoffice-l10n-5.1.0.3::gentoo'`.
* The complete build log is located at '/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment'.
* Working directory: '/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/work'
* S: '/var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/work'
* QA Notice: command not found:
*
* /var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment: line 657: estack_push: command not found
* /var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment: line 657: estack_push: command not found
* /var/tmp/portage/app-office/libreoffice-l10n-5.1.0.3/temp/environment: line 646: estack_pop: command not found
looks to me like some kind of environment over ride is going on .. as the required commands are in your environment file.. where are you setting your use flags? are you using pre-command line arguments such as USE="example" emerge ...? which is not recommended and dangerous... Hi, I have only this line in my /etc/portage/package.use/myolduse.conf app-office/libreoffice bluetooth branding cups dbus gtk java kde opengl vba vlc webdav For app-office/libreoffice-l10n I have "en es fr" as LINGUAS and nothing more. Deactivating Linguas is the same result. (In reply to Andrew Udvare from comment #3) > Created attachment 426600 [details] > environment it appears your environment is corrupted .. should look like example ..working environment above Created attachment 426668 [details]
working-environment
here is my environment which includes all of eutils.eclass..
yours has only partial eutils.eclass .. lots of functions missing .. is your tree up to date?
missing is estack_pop estack_push for starters .. these are essential to the functions which are not working.. or shown as not found
I have /etc/portage/bashrc: post_src_unpack() { if ! type epatch_user > /dev/null 2>&1; then local names="epatch_user epatch evar_push evar_push_set evar_pop estack_push estack_pop" source <(awk "/^# @FUNCTION: / { p = 0 } /^# @FUNCTION: (${names// /|})\$/ { p = 1; } p { print }" /usr/portage/eclass/eutils.eclass) fi if [[ -d "${S}" ]]; then pushd "${S}" 2>/dev/null 2>&1 epatch_user popd 2>/dev/null 2>&1 else epatch_user fi for name in $names; do unset $name done } Is there a better way to do this (force every ebuild to run epatch_user)? Indeed the cause is was having /etc/portage/bashrc. But I still want to know if there's an adjutment I need in that file (or elsewhere) to force every ebuild to run epatch_user? I found this script in the Gentoo Wiki a while ago. EAPI=6 includes automatic support.. for epatch or its new equivalent you should set this up only for those ebuilds that need it not for all emerges .. as it appears to interfere with any build using eutils.eclass (same issue your related bug?) it maybe the unset loop is blowing away the portion of the eutils.eclass items listed .. remove it from the script .. the local variables should lose their scope when the block exits .. some one with wiki access needs to fix this bashrc to remove the unset loop in the wiki https://wiki.gentoo.org/wiki//etc/portage/patches i.e. for name in $names; do unset $name done Hi, I moved my /etc/portage/bashrc and tried, it worked, thanks. Now, I would like to know if I can delete /etc/portage/bashrc or if not, what do I have to put on it... My /etc/portage/bashrc have this: pre_src_prepare() { if ! type epatch_user > /dev/null 2>&1; then local names="epatch_user epatch evar_push evar_push_set evar_pop estack_push estack_pop" source <(awk "/^# @FUNCTION: / { p = 0 } /^# @FUNCTION: (${names// /|})\$/ { p = 1; } p { print }" /usr/portage/eclass/eutils.eclass) fi epatch_user for name in $names; do unset $name done } I never touched this file, so I don't understand why is causing problems... Thanks. confirmed that the unset loop causes removal of a portion of the eclass from the environment this applies to EAPI=6 builds calling eutils.eclass .. there is a newer version of this bashrc script on the wiki .. recently changed because of this issue elsewhere (bug #568640) this applies to EAPI=6 builds and perhaps others calling eutils.eclass .. there is a newer version of this bashrc script on the wiki .. recently changed because of this issue elsewhere (bug #568640) New version of pre_src_prepare() in the Wiki works for me. *** Bug 582570 has been marked as a duplicate of this bug. *** *** Bug 583094 has been marked as a duplicate of this bug. *** |