Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 582712 - net-libs/nodejs-0.12.6 should support USE=cpu_flags_x86_sse2
Summary: net-libs/nodejs-0.12.6 should support USE=cpu_flags_x86_sse2
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-11 04:36 UTC by Alex Cannon
Modified: 2020-11-09 12:54 UTC (History)
1 user (show)

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


Attachments
build.log (build.log,239.49 KB, text/plain)
2016-05-15 20:45 UTC, Alex Cannon
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Cannon 2016-05-11 04:36:37 UTC
Based on the error message, nodejs-0.12.6 is built assuming that SSE2 is present. The package does not have an SSE2 use flag to turn on or off. nodejs-0.10 works, but 0.12 wont build on any pre Intel Pentium 4 or AMD Opteron system.

Calculating dependencies... done!
[ebuild     U  ] net-libs/nodejs-0.12.6::gentoo [0.10.30::gentoo] USE="npm snapshot ssl%* -debug% -icu%" PYTHON_TARGETS="python2_7%*" 0 KiB


According to http://stackoverflow.com/questions/29066734/why-does-v8-in-node-js-0-12-0-release-require-sse2-cpu-instructions :
It says to add this line to the options in config.gypi file:

'v8_target_arch': 'x87',



Reproducible: Always
Comment 1 Alex Cannon 2016-05-11 21:26:09 UTC
Portage 2.2.26 (python 2.7.10-final-0, default/linux/x86/13.0, gcc-4.7.3, glibc-2.20-r2, 3.2.72 i686)
=================================================================
System uname: Linux-3.2.72-i686-Pentium_III_-Coppermine-with-gentoo-2.2
KiB Mem:     2071616 total,    145488 free
KiB Swap:    8325240 total,   8166052 free
Timestamp of repository gentoo: Mon, 09 May 2016 02:00:01 +0000
sh bash 4.3_p42-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p42-r1::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.1.5-r1::gentoo, 3.2.5-r6::gentoo, 3.3.5-r2::gentoo, 3.4.1::gentoo
dev-util/cmake:           3.3.1-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.11.6::gentoo, 1.12.6::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            3.4.6-r2::gentoo, 4.3.6-r1::gentoo, 4.5.4::gentoo, 4.7.3-r1::gentoo, 4.8.4::gentoo, 4.9.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

twister
    location: /var/lib/layman/twister
    masters: gentoo
    priority: 0

ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA Oracle-BCLA-JavaSE IBM-J1.6"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -march=pentium3 -pipe"
CHOST="i686-pc-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-php5.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-Os -march=pentium3 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
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="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
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"
PORTAGE_TMPDIR="/var/tmp"
USE="7zip X a52 aac acc acl alsa apache2 apng bash-completion bazaar berkdb bittorrent bzip2 caps chappa clang cli cpudetection cracklib crypt cups cvs cxx dbus dga divx4linux dlz dri dvd dvdread emacs encode esd esound extras faac faad fdformat finger fltk fontconfig fortran ftp gd gdbm geoip gif gimp git gnutella gnutls gopher gpg gpm gtk html hwdb iconv idn imagemagick imap imlib ipv6 jadetex javascript jpeg kdeenablefinal libcaca libopts live lzo mad math mbox minizip mmx mmxext mng modules motif mp2 mp3 mpeg mpi multinet nas ncurses nls nntp nptl offensive ogg oident openft openmp openssl pam pcre perl png pnm pop proxy_http python qt3support readline rtmp scripting seccomp server session sidebar smtp snmp socks5 speex sqlite sse ssl subversion suexec syslog tcl tcpd theora threads tiff tk truetype tty-helpers unicode usb vim-syntax vorbis x264 x86 xa xattr xinetd xv xvid zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="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 ident proxy proxy_connect proxy_ftp proxy_http auth_digest" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" 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-5" PYTHON_SINGLE_TARGET="python3_3" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa 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, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 2 Amy Liffey gentoo-dev 2016-05-15 08:34:06 UTC
Can you please attach full build.log?

Thanks

Amy
Comment 3 Alex Cannon 2016-05-15 20:45:44 UTC
Created attachment 434372 [details]
build.log
Comment 4 Alex Cannon 2016-10-18 13:41:46 UTC
I paused the build of net-libs/nodejs-0.12.6 just after it finished configuring the package. I added 'v8_target_arch': 'x87', to config.gypy and it continued to build fine.
Comment 5 Alex Cannon 2016-10-26 14:49:39 UTC
The current stable net-libs/nodejs-4.4.6 has CPU_FLAGS_X86="-sse2%" but instead of adding the 'v8_target_arch': 'x87', line to config.gypy it just exits with an error like this:

>>> Verifying ebuild manifests
>>> Running pre-merge checks for net-libs/nodejs-4.4.6
 * ERROR: net-libs/nodejs-4.4.6::gentoo failed (pretend phase):
 *   Your CPU doesn't support the required SSE2 instruction.
 * 
 * Call stack:
 *             ebuild.sh, line 133:  Called pkg_pretend
 *   nodejs-4.4.6.ebuild, line  36:  Called die
 * The specific snippet of code:
 *      (use x86 && ! use cpu_flags_x86_sse2) && \
 *              die "Your CPU doesn't support the required SSE2 instruction."
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2017-11-25 09:18:09 UTC
(In reply to Alex Cannon from comment #5)
> The current stable net-libs/nodejs-4.4.6 has

This bug report is about 0.12* not having the USE flag, and now you're reporting about another version having implementation problems with that USE flag. So that's a wholly different and as yet unreported bug.
Comment 7 Alex Cannon 2017-11-26 02:37:26 UTC
Should I change the title of the bug or open a new bug then?
Comment 8 Jeroen Roovers (RETIRED) gentoo-dev 2017-11-26 11:20:11 UTC
(In reply to Alex Cannon from comment #7)
> Should I change the title of the bug or open a new bug then?

You should file a new bug report.
Comment 9 Marek Szuba archtester gentoo-dev 2020-11-09 12:54:33 UTC
Ebuilds currently in the tree die if CPU_FLAGS_X86: sse2 is not set.