Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 831397 - dev-libs/libgcrypt-1.9.4 fails on armv6j and armv7a (having NEON feature)
Summary: dev-libs/libgcrypt-1.9.4 fails on armv6j and armv7a (having NEON feature)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: ARM Linux
: Normal normal (vote)
Assignee: Mikle Kolyada (RETIRED)
URL: https://lists.gnupg.org/pipermail/gcr...
Whiteboard:
Keywords: PATCH
Depends on:
Blocks: 817935
  Show dependency tree
 
Reported: 2022-01-18 09:59 UTC by Xavier Miller
Modified: 2022-01-22 04:02 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build log (build.log,62.38 KB, text/plain)
2022-01-18 10:06 UTC, Xavier Miller
Details
0001-cipher-cipher-gcm-fix-build-failure-on-ARM-NEON.patch (file_831397.txt,1.32 KB, patch)
2022-01-18 12:50 UTC, Sam James
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Xavier Miller 2022-01-18 09:59:12 UTC
on armv7a:

libtool: compile:  armv7a-unknown-linux-gnueabihf-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher -I.. -I../src -I/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/src -I../mpi -I/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/mpi -O2 -pipe -mfloat-abi=hard -mfpu=vfpv3-d16 -mtls-dialect=gnu -mtune=cortex-a9 -marm -march=armv7-a+mp+sec+neon-fp16 -fvisibility=hidden -fno-delete-null-pointer-checks -Wall -c /var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c  -fPIC -DPIC -o .libs/cipher-gcm.o
/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c: In function ‘setupM’:
/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c:591:12: error: ‘features’ undeclared (first use in this function)
  591 |   else if (features & HWF_ARM_NEON)
      |            ^~~~~~~~
/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c:591:12: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [Makefile:854: cipher-gcm.lo] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4-.arm/cipher'
make[1]: *** [Makefile:502: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4-.arm'
make: *** [Makefile:434: all] Error 2

and armv6j
libtool: compile:  armv6j-unknown-linux-gnueabihf-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher -I.. -I../src -I/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/src -I../mpi -I/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/mpi -O2 -pipe -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -fvisibility=hidden -fno-delete-null-pointer-checks -Wall -c /var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c  -fPIC -DPIC -o .libs/cipher-gcm.o
/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c: In function ‘setupM’:
/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c:591:12: error: ‘features’ undeclared (first use in this function)
  591 |   else if (features & HWF_ARM_NEON)
      |            ^~~~~~~~
/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4/cipher/cipher-gcm.c:591:12: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [Makefile:854: cipher-gcm.lo] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4-.arm/cipher'
make[1]: *** [Makefile:502: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/dev-libs/libgcrypt-1.9.4/work/libgcrypt-1.9.4-.arm'
make: *** [Makefile:434: all] Error 2
 * ERROR: dev-libs/libgcrypt-1.9.4::gentoo failed (compile phase):


Reproducible: Always




 # emerge --info '=dev-libs/libgcrypt-1.9.4::gentoo'
Portage 3.0.30 (python 3.9.10-final-0, default/linux/arm/17.0/armv7a, gcc-11.2.1, glibc-2.34-r6, 5.15.15-gentoo armv7l)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.15.15-gentoo-armv7l-ARMv7_Processor_rev_1_-v7l-with-glibc2.34
KiB Mem:     2070132 total,    968796 free
KiB Swap:    4194196 total,   4194196 free
Timestamp of repository gentoo: Tue, 18 Jan 2022 02:36:47 +0000
Head commit of repository gentoo: f213864c237a73a7bc30a26e0efc2d7279260d04

Head commit of repository audio-overlay: 6a99adb585566300b6c6a47c8253add4ee31b9f2

Head commit of repository local: 046b5f6bac2919338754c17c7e4dd8c47286a956

sh bash 5.1_p16
ld GNU ld (Gentoo 2.37_p1 p1) 2.37
app-misc/pax-utils:        1.3.3::gentoo
app-shells/bash:           5.1_p16::gentoo
dev-lang/perl:             5.34.0-r6::gentoo
dev-lang/python:           3.9.10::gentoo, 3.10.2::gentoo
dev-util/cmake:            3.22.1::gentoo
dev-util/meson:            0.60.3::gentoo
sys-apps/baselayout:       2.8::gentoo
sys-apps/openrc:           0.44.10::gentoo
sys-apps/sandbox:          2.29::gentoo
sys-devel/autoconf:        2.71-r1::gentoo
sys-devel/automake:        1.16.5::gentoo
sys-devel/binutils:        2.37_p1-r1::gentoo
sys-devel/binutils-config: 5.4::gentoo
sys-devel/gcc:             11.2.1_p20211127::gentoo
sys-devel/gcc-config:      2.5-r1::gentoo
sys-devel/libtool:         2.4.6-r6::gentoo
sys-devel/make:            4.3::gentoo
sys-kernel/linux-headers:  5.16::gentoo (virtual/os-headers)
sys-libs/glibc:            2.34-r6::gentoo
Repositories:

gentoo
    location: /var/portage/repos/gentoo
    sync-type: git
    sync-uri: git://anongit.gentoo.org/repo/sync/gentoo.git
    priority: -1000

audio-overlay
    location: /var/portage/repos/audio-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-audio/audio-overlay.git
    masters: gentoo

local
    location: /usr/local/portage
    sync-type: git
    sync-uri: /data/nas/xavier/git_repos/local_overlay.git/
    masters: gentoo

crossdev
    location: /data/nas/xavier/portage/helios4/var/db/repos/crossdev
    masters: gentoo
    priority: 10

ACCEPT_KEYWORDS="arm ~arm"
ACCEPT_LICENSE="@FREE as-is freedist"
CBUILD="armv7a-unknown-linux-gnueabihf"
CFLAGS="-O2 -pipe -mfloat-abi=hard -mfpu=vfpv3-d16 -mtls-dialect=gnu -mtune=cortex-a9 -marm -march=armv7-a+mp+sec+neon-fp16"
CHOST="armv7a-unknown-linux-gnueabihf"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -mfloat-abi=hard -mfpu=vfpv3-d16 -mtls-dialect=gnu -mtune=cortex-a9 -marm -march=armv7-a+mp+sec+neon-fp16"
DISTDIR="/var/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y --quiet-build=n --buildpkg"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH 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="-O2 -pipe -march=armv7-a"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg buildpkg-live candy config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -march=armv7-a"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="fr_BE.utf8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--hash-style=gnu -Wl,--as-needed"
MAKEOPTS="-j5 -l3"
PKGDIR="/var/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"
SHELL="/bin/bash"
USE="arm armv7 bzip2 cli crypt dri exif gif headless-awt iconv jpeg libglvnd mysql ncurses nls nptl openmp openssl pam pcre pdf png pnm readline seccomp split-usr sqlite ssl svg system-bootstrap system-llvm tiff truetype unicode xattr zlib" ADA_TARGET="gnat_2020" 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" CPU_FLAGS_ARM="edsp thumb thumb2 v4 v5 v6 v7 vfp" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" L10N="fr nl en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_9" PYTHON_TARGETS="python3_9" RUBY_TARGETS="ruby26 ruby27" SANE_BACKENDS="hp" USERLAND="GNU" VIDEO_CARDS="exynos fbdev omap dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

dev-libs/libgcrypt-1.9.4::gentoo was built with the following:
USE="asm -doc -o-flag-munging -static-libs" CPU_FLAGS_ARM="-neon"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg candy config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-01-18 10:01:58 UTC
Can you attach the full build.log please? Thanks.
Comment 2 Xavier Miller 2022-01-18 10:05:21 UTC
seems CPU_FLAGS_ARM="neon" is not set.

Is it a profile setting or a user setting?
Comment 3 Xavier Miller 2022-01-18 10:06:47 UTC
Created attachment 762484 [details]
build log
Comment 4 Xavier Miller 2022-01-18 10:13:06 UTC
same result with CPU_FLAGS_ARM="neon"
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-01-18 12:50:53 UTC
Created attachment 762501 [details, diff]
0001-cipher-cipher-gcm-fix-build-failure-on-ARM-NEON.patch

Does the attached patch help?
Comment 6 Larry the Git Cow gentoo-dev 2022-01-18 13:12:53 UTC
The bug has been closed via the following commit(s):

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

commit 092edcd917732ae0d21ef78f0484cc73d386225a
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2022-01-18 13:12:38 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-01-18 13:12:46 +0000

    dev-libs/libgcrypt: fix build on ARM
    
    Closes: https://bugs.gentoo.org/831397
    Signed-off-by: Sam James <sam@gentoo.org>

 .../libgcrypt-1.9.4-arm-neon-compile-fix.patch     | 42 ++++++++++++++++++++++
 dev-libs/libgcrypt/libgcrypt-1.9.4.ebuild          |  1 +
 2 files changed, 43 insertions(+)
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-01-18 13:48:56 UTC
Have submitted it upstream but waiting to see it appear on ML archive. Will update when I've got a link..
Comment 8 Larry the Git Cow gentoo-dev 2022-01-18 15:45:32 UTC
The bug has been referenced in the following commit(s):

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

commit c6f0de3208bf76236c54be104ff226200c0bbe8d
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2022-01-18 15:44:59 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-01-18 15:45:25 +0000

    dev-libs/libgcrypt: add link to upstream patch submission (arm/neon)
    
    Bug: https://bugs.gentoo.org/831397
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch | 2 ++
 1 file changed, 2 insertions(+)
Comment 9 Xavier Miller 2022-01-19 07:42:59 UTC
(In reply to Sam James from comment #5)
> Created attachment 762501 [details, diff] [details, diff]
> 0001-cipher-cipher-gcm-fix-build-failure-on-ARM-NEON.patch
> 
> Does the attached patch help?

Yes, thank you