[MacPorts] #29561: jslint fails to install due to Spidermonkey segfault in variant test
MacPorts
noreply at macports.org
Mon May 23 06:41:30 PDT 2011
#29561: jslint fails to install due to Spidermonkey segfault in variant test
---------------------------------------+------------------------------------
Reporter: macports.org@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 1.9.2
Keywords: spidermonkey segfault | Port: jslint
---------------------------------------+------------------------------------
When trying to install jslint, I get the following error:
{{{
> sudo port install jslint
---> Computing dependencies for jslint
---> Configuring jslint
Error: You need to install spidermonkey with the +fileobject variant in
order to use jslint.
Error: Target org.macports.configure returned: incompatible spidermonkey
installation
Log for jslint is at:
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_jslint/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>
}}}
Now the error message it reports does not really make sense considering:
{{{
> port installed spidermonkey
The following ports are currently installed:
spidermonkey @1.7.0_5+fileobject (active)
}}}
I looked for the test performed in the portfile, the test is the
following:
{{{
exec ${prefix}/bin/js -e "new File();"
}}}
which, when tried from the command-line, yields:
{{{
> js -e "new File();"
[1] 95301 segmentation fault js -e "new File();"
}}}
(this is with a freshly installed spidermonkey, by the way)
Makes sense that the jslint configure step would yield an error.
Still, the following passes with flying colors:
{{{
js -e "File"
}}}
while the following does not:
{{{
js -e "FooObject"
}}}
Would it be possible to avoid the {{{new File()}}} stuff, and use a bare
{{{File}}}, in the test? It is sufficient to get the js process to bail
out: (with a reinstalled spidermonkey without {{{+fileobject}}})
{{{
> js -e File
-e:1: ReferenceError: File is not defined
}}}
Note: the return code for the {{{js}}} process is {{{3}}} for a
ReferenceError (e.g. FooObject not defined) and {{{139}}} for the
segfault. I do not know if it's possible to test for a precise return
code.
PS: should I report the spidermonkey segfault as a different bug?
--
Ticket URL: <https://trac.macports.org/ticket/29561>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list