OpenZWave / node-openzwave-shared

OpenZWave addon for Node.js (all versions) including management and security functions
Other
199 stars 113 forks source link

Compilation fails on Node 12 #280

Closed AlCalzone closed 5 years ago

AlCalzone commented 5 years ago

https://travis-ci.org/ioBroker/ioBroker.zwave/jobs/527514030#L686

make: Entering directory `/home/travis/build/ioBroker/ioBroker.zwave/node_modules/openzwave-shared/build'
  CXX(target) Release/obj.target/openzwave_shared/src/callbacks.o
  CXX(target) Release/obj.target/openzwave_shared/src/openzwave.o
../src/openzwave.cc:34:23: error: variable or field ‘init’ declared void
  extern "C" void init(Handle<Object> target, Handle<Object> module) {
                       ^
../src/openzwave.cc:34:23: error: ‘Handle’ was not declared in this scope
../src/openzwave.cc:34:36: error: expected primary-expression before ‘>’ token
  extern "C" void init(Handle<Object> target, Handle<Object> module) {
                                    ^
../src/openzwave.cc:34:38: error: ‘target’ was not declared in this scope
  extern "C" void init(Handle<Object> target, Handle<Object> module) {
                                      ^
../src/openzwave.cc:34:46: error: ‘Handle’ was not declared in this scope
  extern "C" void init(Handle<Object> target, Handle<Object> module) {
                                              ^
../src/openzwave.cc:34:59: error: expected primary-expression before ‘>’ token
  extern "C" void init(Handle<Object> target, Handle<Object> module) {
                                                           ^
../src/openzwave.cc:34:61: error: ‘module’ was not declared in this scope
  extern "C" void init(Handle<Object> target, Handle<Object> module) {
                                                             ^
In file included from /home/travis/build/ioBroker/ioBroker.zwave/node_modules/nan/nan.h:53:0,
                 from ../src/openzwave.hpp:27,
                 from ../src/openzwave.cc:18:
/home/travis/.node-gyp/12.1.0/include/node/node.h:565:3: error: expected ‘}’ at end of input
   }
   ^
/home/travis/.node-gyp/12.1.0/include/node/node.h:590:3: note: in expansion of macro ‘NODE_MODULE_X’
   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
   ^
../src/openzwave.cc:266:1: note: in expansion of macro ‘NODE_MODULE’
 NODE_MODULE(openzwave_shared, OZW::init)
 ^
make: *** [Release/obj.target/openzwave_shared/src/openzwave.o] Error 1
ekarak commented 5 years ago

sounds like we need to upgrade the NaN dependency...

velocityzen commented 5 years ago

Any updates with this one?

velocityzen commented 5 years ago

?

ekarak commented 5 years ago

I have raised a PR for this: https://github.com/OpenZWave/node-openzwave-shared/pull/302 but we're currently blocked by https://github.com/OpenZWave/open-zwave/issues/1831 As a very recent change in OpenZWave master is breaking all builds...

Fishwaldo commented 5 years ago

I’ll push a new Method for this tomorrow.

ekarak commented 5 years ago

thank you Justin!

Fishwaldo commented 5 years ago

Done: ValueID::GetTypeAsString and ValueID::GetGenreAsString implemented :)