[oe] [meta-oe][master-next][PATCH v2 1/2] nodejs: drop 'gyp' PACKAGECONFIG

André Draszik git at andred.net
Tue Mar 3 18:23:22 UTC 2020


On Tue, 2020-03-03 at 10:00 -0800, Khem Raj wrote:
> 
> On 3/3/20 9:28 AM, André Draszik wrote:
> > From: André Draszik <andre.draszik at jci.com>
> > 
> > During the python3 / nodejs update, the dependencies weren't updated, so
> > using system-gyp ends up trying to use the python2 version of system-
> > gyp, which will of course fail.
> > Fixing this to depend on the python3 version of gyp still doesn't
> > doesn't make things work, though:
> >      ERROR: nodejs-native-12.14.1-r0 do_configure: Execution of '.../nodejs-native/12.14.1-
> > r0/temp/run.do_configure.26054' failed with exit code 1:
> >      gyp: Error importing pymod_do_mainmodule (ForEachFormat): No module named 'ForEachFormat' while loading
> > dependencies of .../nodejs-native/12.14.1-r0/node-v12.14.1/node.gyp while trying to load .../nodejs-native/12.14.1-
> > r0/node-v12.14.1/node.gyp
> >      Error running GYP
> > 
> > The reason is the following patch nodejs has applied to its version of gyp as
> > of NodeJS v12 (commit fff922afee6e ("deps,build: compute torque_outputs in v8.gyp")
> > upstream):
> > 
> > --- gyp/pylib/gyp/input.py      2020-03-02 12:36:30.788248197 +0000
> > +++ node.git/tools/gyp/pylib/gyp/input.py    2020-03-02 12:16:09.956707788 +0000
> > @@ -890,6 +881,7 @@ def ExpandVariables(input, phase, variab
> >             oldwd = os.getcwd()  # Python doesn't like os.open('.'): no fchdir.
> >             if build_file_dir:  # build_file_dir may be None (see above).
> >               os.chdir(build_file_dir)
> > +          sys.path.append(os.getcwd())
> >             try:
> > 
> >               parsed_contents = shlex.split(contents)
> > @@ -900,6 +892,7 @@ def ExpandVariables(input, phase, variab
> >                                "module (%s): %s" % (parsed_contents[0], e))
> >               replacement = str(py_module.DoMain(parsed_contents[1:])).rstrip()
> >             finally:
> > +            sys.path.pop()
> >               os.chdir(oldwd)
> >             assert replacement != None
> >           elif command_string:
> 
> Please avoid adding diffs to commit message, this confuses git am
> perhaps better to express the change with few words.

Sorry Khem, I didn't think of that... Done.

A.

> 
> > Since I'm not sure how to deal with that when using system-gyp, and because
> > the original intention for using system-gyp was to make the previous nodejs
> > version compatible with python3 by ultimately switching to the python3 version
> > of system-gyp which isn't necessary anymore, and given nobody else seems to
> > be using this PACKAGECONFIG, just drop it.
> > 
> > Signed-off-by: André Draszik <andre.draszik at jci.com>
> > ---
> >   meta-oe/recipes-devtools/nodejs/nodejs_12.14.1.bb | 3 ---
> >   1 file changed, 3 deletions(-)
> > 
> > diff --git a/meta-oe/recipes-devtools/nodejs/nodejs_12.14.1.bb b/meta-oe/recipes-devtools/nodejs/nodejs_12.14.1.bb
> > index 6eb52c209..49bb71e28 100644
> > --- a/meta-oe/recipes-devtools/nodejs/nodejs_12.14.1.bb
> > +++ b/meta-oe/recipes-devtools/nodejs/nodejs_12.14.1.bb
> > @@ -53,7 +53,6 @@ ARCHFLAGS ?= ""
> >   
> >   PACKAGECONFIG ??= "ares icu libuv zlib"
> >   PACKAGECONFIG[ares] = "--shared-cares,,c-ares"
> > -PACKAGECONFIG[gyp] = ",,gyp-py2-native"
> >   PACKAGECONFIG[icu] = "--with-intl=system-icu,--without-intl,icu"
> >   PACKAGECONFIG[libuv] = "--shared-libuv,,libuv"
> >   PACKAGECONFIG[nghttp2] = "--shared-nghttp2,,nghttp2"
> > @@ -82,8 +81,6 @@ python do_unpack() {
> >       shutil.rmtree(d.getVar('S') + '/deps/openssl', True)
> >       if 'ares' in d.getVar('PACKAGECONFIG'):
> >           shutil.rmtree(d.getVar('S') + '/deps/cares', True)
> > -    if 'gyp' in d.getVar('PACKAGECONFIG'):
> > -        shutil.rmtree(d.getVar('S') + '/tools/gyp', True)
> >       if 'libuv' in d.getVar('PACKAGECONFIG'):
> >           shutil.rmtree(d.getVar('S') + '/deps/uv', True)
> >       if 'nghttp2' in d.getVar('PACKAGECONFIG'):
> > 



More information about the Openembedded-devel mailing list