Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 676704

Summary: dev-libs/dietlibc-0.34: sparc64/longjmp.S:14: Error: invalid operands (*UND* and *ABS* sections) for `*'
Product: Gentoo Linux Reporter: Rolf Eike Beer <eike>
Component: Current packagesAssignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>
Status: RESOLVED FIXED    
Severity: normal CC: sparc, whissi
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: Sparc64   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/25293
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 676460    
Attachments: build.log

Description Rolf Eike Beer archtester 2019-01-29 08:41:02 UTC
Created attachment 563168 [details]
build.log

Portage 2.3.51 (python 2.7.15-final-0, default/linux/sparc/17.0, gcc-8.2.0, glibc-2.27-r6, 4.16.8 sparc64)
=================================================================
System uname: Linux-4.16.8-sparc64-sun4v-with-gentoo-2.4.1
KiB Mem:    33133328 total,  11970736 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Tue, 29 Jan 2019 01:15:01 +0000
sh bash 4.4_p23
ld GNU ld (Gentoo 2.30 p5) 2.30.0
app-shells/bash:          4.4_p23::gentoo
dev-lang/perl:            5.26.2::gentoo
dev-lang/python:          2.7.15::gentoo, 3.6.5::gentoo
dev-util/cmake:           3.9.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.38.3-r1::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.30-r4::gentoo
sys-devel/gcc:            8.2.0-r6::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.14-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.27-r6::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: https://anongit.gentoo.org/git/repo/sync/gentoo.git
    priority: -1000
    sync-git-verify-commit-signature: yes

ACCEPT_KEYWORDS="sparc"
ACCEPT_LICENSE="* -@EULA"
CBUILD="sparc-unknown-linux-gnu"
CFLAGS="-O2 -mcpu=niagara2 -pipe -Wcast-align"
CHOST="sparc-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.2/ext-active/ /etc/php/cgi-php7.2/ext-active/ /etc/php/cli-php7.2/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -mcpu=niagara2 -pipe -Wcast-align"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS=""
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS=""
GENTOO_MIRRORS="ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j20 -l40"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl berkdb big-endian bzip2 cli crypt cxx dri fortran gdbm iconv ipv6 libtirpc ncurses nls nptl openmp pam pcre readline sparc ssl tcpd unicode xattr zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-1" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby24" USERLAND="GNU" VIDEO_CARDS="fbdev glint mga r128 radeon dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Rolf Eike Beer archtester 2019-01-30 15:48:27 UTC
I have asked Fefe about this, and he said this does not work because we are mixing 32 and 64 bit code. So, sparc probably needs a "-m32" somewhere in the CFLAGS.
Comment 2 Pacho Ramos gentoo-dev 2019-02-02 11:49:05 UTC
Does it work if you append it in the CFLAGS?
Comment 3 Rolf Eike Beer archtester 2019-02-02 13:06:53 UTC
Actually

  make ARCH=sparc

is enough. Almost. There are 2 places with bin-$(MYARCH) in the Makefile that I need to replace with bin-$(ARCH) so it will not look for the final binary in bin-sparc64/diet after placing it in bin-$(ARCH)/diet.

And the "-j1" can be removed, at least from the compile phase.
Comment 4 Larry the Git Cow gentoo-dev 2019-02-24 01:27:49 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82c681e1ef076384cf72d6c8041b7552e580880f

commit 82c681e1ef076384cf72d6c8041b7552e580880f
Author:     Thomas Deutschmann <whissi@gentoo.org>
AuthorDate: 2019-02-24 01:25:43 +0000
Commit:     Thomas Deutschmann <whissi@gentoo.org>
CommitDate: 2019-02-24 01:26:16 +0000

    dev-libs/dietlibc: enforce minimum sys-devel/binutils version
    
    While we are here, drop "-j1" for src_install [Bug 676704].
    
    Bug: https://bugs.gentoo.org/676460
    Bug: https://bugs.gentoo.org/676704
    Package-Manager: Portage-2.3.62, Repoman-2.3.12
    Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>

 dev-libs/dietlibc/dietlibc-0.34.ebuild | 19 +++----------------
 1 file changed, 3 insertions(+), 16 deletions(-)
Comment 5 Thomas Deutschmann (RETIRED) gentoo-dev 2019-02-24 01:28:23 UTC
Rolf, can you propose a patch?
Comment 6 Rolf Eike Beer archtester 2019-02-24 09:41:30 UTC
For sparc passing "ARCH=sparc MYARCH=sparc" should fix it, but one would have to check this for all other archs. MYARCH gives the host arch, so this would also need to handled different for cross builds. Sorry, I'm out here.
Comment 7 matoro archtester 2022-05-03 00:34:03 UTC
This testing seems to have been done on a 32-bit UL profile.  I can't replicate the specific issue on a 64-bit UL.

HOWEVER I did find that compiling required -fno-tree-pre, or else the intermediate binaries bin-sparc64/{elftrunc,dnsd} would segfault.  Applying this option allowed me to compile even up to -O3.
Comment 8 Larry the Git Cow gentoo-dev 2022-05-14 03:00:44 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f707e48b956f834b3beee2cc82435fdb669336e4

commit f707e48b956f834b3beee2cc82435fdb669336e4
Author:     matoro <matoro@users.noreply.github.com>
AuthorDate: 2022-05-03 03:17:04 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-05-14 02:57:11 +0000

    dev-libs/dietlibc: fix elftrunc segfault during build
    
    Closes: https://bugs.gentoo.org/676704
    Bug: https://bugs.gentoo.org/807667
    Signed-off-by: matoro <matoro@users.noreply.github.com>
    Closes: https://github.com/gentoo/gentoo/pull/25293
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-libs/dietlibc/dietlibc-0.34.ebuild | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)