dev-libs/nss-3.67 (and 3.66) fails to emerge on my system. The actual error that is reported is: ../../coreconf/rules.mk:202: *** multiple target patterns. Stop. FWIW, whis failure occurs during the build of the 32 bit api (which happens first) Reproducible: Always Steps to Reproduce: 1.emerge -1vabj dev-libs/nss Actual Results: * Messages for package dev-libs/nss-3.67: * Log file: /var/log/portage/build/dev-libs/nss-3.67:20210623-145334.log * ERROR: dev-libs/nss-3.67::gentoo failed (compile phase): * emake failed Expected Results: Successful emerge This is blocking updates of other packages that I care about. Emerge --info: Portage 3.0.18 (python 3.9.4-final-0, default/linux/amd64/17.1/desktop/plasma, gcc-11.1.0, glibc-2.33-r1, 5.12.12-gentoo-x86_64 x86_64) ================================================================= System uname: Linux-5.12.12-gentoo-x86_64-x86_64-Intel-R-_Core-TM-_i7-1065G7_CPU_@_1.30GHz-with-glibc2.33 KiB Mem: 16183120 total, 199276 free KiB Swap: 67108860 total, 61042172 free Timestamp of repository gentoo: Wed, 23 Jun 2021 01:15:01 +0000 Head commit of repository gentoo: e9053729cf3bbc30c1728a295294eb514f84971d Head commit of repository dlang: daa62b1afb66f09d875435e1ecb598bd5bc1aa84 Head commit of repository eclipse: 80b6b0802f9f65864a7064d7e0812154720423f4 Head commit of repository emacs: 2d849335502f87557049d486c1171a9e6e6bb045 Head commit of repository gitlab: 0c97e8fb6f735caaf749e97aa04f99e33a357609 Head commit of repository kde: 157382f0ef0dd37700c7d7c840c628b7eda69e8b Head commit of repository perl-experimental: f21d233792e5d6077f21cbb715b7ebbc0c4d48c5 sh bash 5.1_p8 ld GNU ld (Gentoo 2.34 p6) 2.34.0 app-shells/bash: 5.1_p8::gentoo dev-java/java-config: 2.3.1::gentoo dev-lang/perl: 5.34.0::gentoo dev-lang/python: 2.7.18_p8::gentoo, 3.6.13::gentoo, 3.7.10_p1::gentoo, 3.8.9::gentoo, 3.9.4::gentoo dev-lang/rust: 1.51.0::gentoo dev-util/cmake: 3.20.3::gentoo sys-apps/baselayout: 2.7-r3::gentoo sys-apps/openrc: 0.43.3::gentoo sys-apps/sandbox: 2.24::gentoo sys-devel/autoconf: 2.13-r1::gentoo, 2.69-r5::gentoo sys-devel/automake: 1.11.6-r3::gentoo, 1.13.4-r2::gentoo, 1.15.1-r2::gentoo, 1.16.3-r1::gentoo sys-devel/binutils: 2.32-r1::gentoo, 2.33.1-r1::gentoo, 2.34-r2::gentoo, 2.35.2::gentoo, 2.36.1-r1::gentoo sys-devel/gcc: 10.3.0::gentoo, 11.1.0-r1::gentoo sys-devel/gcc-config: 2.4::gentoo sys-devel/libtool: 2.4.6-r6::gentoo sys-devel/make: 4.3::gentoo sys-kernel/linux-headers: 5.12::gentoo (virtual/os-headers) sys-libs/glibc: 2.33-r1::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.au.gentoo.org/gentoo-portage masters: gentoo priority: -1000 sync-rsync-verify-metamanifest: yes sync-rsync-verify-max-age: 24 sync-rsync-verify-jobs: 1 sync-rsync-extra-opts: local location: /usr/local/portage masters: gentoo overlay location: /usr/local/portage/overlay masters: gentoo priority: 0 perl-gcpan location: /usr/local/portage/perl-gcpan masters: gentoo dlang location: /usr/local/portage/layman/dlang sync-type: git sync-uri: https://github.com/gentoo/dlang.git masters: gentoo priority: 50 eclipse location: /usr/local/portage/layman/eclipse sync-type: git sync-uri: https://github.com/gentoo/eclipse-overlay.git masters: gentoo priority: 50 emacs location: /usr/local/portage/layman/emacs sync-type: git sync-uri: https://anongit.gentoo.org/git/repo/proj/emacs.git masters: gentoo priority: 50 gitlab location: /usr/local/portage/layman/gitlab sync-type: git sync-uri: https://gitlab.awesome-it.de/overlays/gitlab.git masters: gentoo priority: 50 kde location: /usr/local/portage/layman/kde sync-type: git sync-uri: https://github.com/gentoo/kde.git masters: gentoo priority: 50 perl-experimental location: /usr/local/portage/layman/perl-experimental sync-type: git sync-uri: https://anongit.gentoo.org/git/proj/perl-overlay.git masters: gentoo priority: 50 Installed sets: @system ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe -frecord-gcc-switches" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0" 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.3/ext-active/ /etc/php/apache2-php7.4/ext-active/ /etc/php/apache2-php8.0/ext-active/ /etc/php/cgi-php7.3/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cgi-php8.0/ext-active/ /etc/php/cli-php7.3/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/php/cli-php8.0/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="-march=native -O2 -pipe -frecord-gcc-switches -std=gnu++17" DISTDIR="/var/cache/portage/distfiles" EMERGE_DEFAULT_OPTS="--buildpkg --quiet --verbose-conflicts --jobs" 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="-march=native -O2 -pipe -frecord-gcc-switches -std=legacy" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg candy clean-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync mount-sandbox multilib-strict network-sandbox network-sandbox-proxy news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms split-elog split-log splitdebug strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-march=native -O2 -pipe -frecord-gcc-switches -std=legacy" GENTOO_MIRRORS="http://ftp.swin.edu.au/gentoo ftp://ftp.swin.edu.au/gentoo" LANG="en_AU.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9 --trace" PKGDIR="/var/cache/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="X a52 aac aalib accessibility acl acpi activities ads aim alsa amd64 apache2 attica audiofile avahi bash-completion bcmath berkdb bidi bluetooth branding bzip2 cairo caps cdda cddb cdr cjk cli crypt css cups curl cvs dbus declarative designer dga dri dri3 dts dvd dvdr egl elogind emacs emboss encode evdev exif fbcon ffmpeg fftw flac fontconfig foomatic-db fortran freetds ftp fuse gcj gd gdbm geoip geolocation gif gimp git gles2 gles3 google gphoto2 gpm gsl gsm gstreamer gtk gui handbook hardened hdf5 iconv icq icu imagemagick imap initramfs inotify ipod ipv6 jack java javascript jbig jingle jpeg kde kerberos kipi kontact kwallet lame latex lcms libcaca libglvnd libnotify libtirpc lm_sensors lto lua lzma lzo mad maildir mbox mmap mng mp3 mp4 mpeg mpi msn mssql mtp multilib multimedia musepack musicbrainz mysql mysqli nas ncurses networkmanager nls nntp nptl nsplugin ocamlopt odbc ofx ogg openexr opengl openmp pam pango pch pcre pda pdf perl phonon php pkcs11 plasma png policykit postscript ppds pulseaudio python qml qt5 quicktime raw rdp readline rss samba sasl savedconfig scanner screencast sdl seccomp semantic-desktop share sharedmem skey slp snmp sound speech speex spell split-usr ssl startup-notification subversion svg symlink syslog sysvipc tcl tcpd theora threads tiff tk truetype udev udisks unicode upower usb v4l vaapi vcd vdpau vhosts vim-syntax vorbis wayland webengine widgets wifi wmf wxwidgets x264 xattr xcb xface xine xml xmpp xpm xv xvid yahoo zeroconf zlib zstd" ABI_X86="64 32" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 stage words flow" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512f avx512dq avx512cd avx512bw avx512vl avx512vbmi f16c fma3 mmx mmxext pclmul popcnt sha sse sse2 sse3 sse4_1 sse4_2 ssse3" 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" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput keyboard mouse evdev synaptics" KERNEL="linux" L10N="en-AU en-GB en-US" 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-3 php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_9" PYTHON_TARGETS="python3_9" RUBY_TARGETS="ruby25 ruby26 ruby27 ruby30" USERLAND="GNU" VIDEO_CARDS="i965 intel nvidia vesa fbdev" 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: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RUSTFLAGS
Created attachment 718401 [details] Build log
I have a question - why is the ebuild so different from the build process (gyp -> ninja) documented by Mozilla? Doesn't that make things hard for us?
I get the same with version 3.68.1: make[4]: Entering directory '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64/lib/nss' ../../coreconf/rules.mk:202: *** multiple target patterns. Stop. make[4]: Leaving directory '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64/lib/nss' make[3]: *** [../coreconf/rules.mk:44: nss] Error 2 make[3]: Leaving directory '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64/lib' make[2]: *** [coreconf/rules.mk:44: lib] Error 2 make[2]: Leaving directory '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64' make[1]: *** [manifest.mn:26: prepare_build] Error 2 make[1]: Leaving directory '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64' make: *** [Makefile:53: nss_build_all] Error 2 make: Leaving directory '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64' [31;01m*[0m ERROR: dev-libs/nss-3.68.1::gentoo failed (compile phase): [31;01m*[0m emake failed [31;01m*[0m [31;01m*[0m If you need support, post the output of `emerge --info '=dev-libs/nss-3.68.1::gentoo'`, [31;01m*[0m the complete build log and the output of `emerge -pqv '=dev-libs/nss-3.68.1::gentoo'`. [31;01m*[0m The complete build log is located at '/var/log/portage/ebuilds/dev-libs:nss-3.68.1:20220106-090019.log'. [31;01m*[0m For convenience, a symlink to the build log is located at '/tmp/portage/dev-libs/nss-3.68.1/temp/build.log'. [31;01m*[0m The ebuild environment file is located at '/tmp/portage/dev-libs/nss-3.68.1/temp/environment'. [31;01m*[0m Working directory: '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss-abi_x86_64.amd64' [31;01m*[0m S: '/tmp/portage/dev-libs/nss-3.68.1/work/nss-3.68.1/nss'
Dear All, I was looking at nss's website (https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Building), and saw a recommendetion to have gyp installed. So, I merged dev-util/gyp and retried dev-libs/nss. It went through and successfully merged. Maybe it's worth investigating nss<->gyp relations and/or add gyp to the build deps?
Yep, it's definitely worth a try. There's this warning message in nss's readme: **This build system is under development. It does not yet support all the features or platforms that NSS supports. To build on anything other than Mac or Linux please use the legacy build system as described below.** But it does sound like it's ready-to-go on linux... I'll investigate the switch to 3.75 _latest_, but for now, I'd like to keep the ESR-3.68.2 building with legacy make.
With 3.75 out, let's try to convert it to gyp.
Okay I've got something, but since this will most likely break on arches I can't test this on, need to re-request keywording (which to be honest was expected when migrating build systems). And since Firefox-97 will most likely require 3.75 I believe it's best to push 3.75 using GNU make, and work on gyp-ebuild getting support in parallel. I.e. do maybe a masked 3.75-r10 gyp release to be keyworded and tested separately.
(In reply to Joonas Niilola from comment #7) > Okay I've got something, but since this will most likely break on arches I > can't test this on, need to re-request keywording (which to be honest was > expected when migrating build systems). And since Firefox-97 will most > likely require 3.75 I believe it's best to push 3.75 using GNU make, and > work on gyp-ebuild getting support in parallel. I.e. do maybe a masked > 3.75-r10 gyp release to be keyworded and tested separately. Fair enough but note that you only need to worry about a handful of arches anyway for Firefox, not the full NSS arch set, which is used for other packages Thanks for looking into this!