mirror of https://github.com/swig/swig
[js] Turn on C++ output for node too
Nodejs is like V8 and needs C++ output enabled when wrapping C code. The testsuite was masking this bug by using SWIG options `-v8 -DBUILDING_NODE_EXTENSION=1` rather than `-node` when testing with nodejs, while the javascript examples currently all seem to all get processed with -c++.
This commit is contained in:
parent
d85fe418a8
commit
b508598a42
|
@ -49,7 +49,7 @@ _setup = \
|
|||
|
||||
ifeq (node,$(JSENGINE))
|
||||
|
||||
SWIGOPT += -v8 -DBUILDING_NODE_EXTENSION=1
|
||||
SWIGOPT += -node
|
||||
|
||||
# shut up some warnings
|
||||
|
||||
|
|
|
@ -566,6 +566,7 @@ void JAVASCRIPT::main(int argc, char *argv[]) {
|
|||
}
|
||||
|
||||
switch (engine) {
|
||||
case JSEmitter::NodeJS:
|
||||
case JSEmitter::V8:
|
||||
{
|
||||
emitter = swig_javascript_create_V8Emitter();
|
||||
|
@ -575,6 +576,9 @@ void JAVASCRIPT::main(int argc, char *argv[]) {
|
|||
if (!cparse_cplusplus) {
|
||||
Swig_cparse_cplusplusout(1);
|
||||
}
|
||||
if (engine == JSEmitter::NodeJS) {
|
||||
Preprocessor_define("BUILDING_NODE_EXTENSION 1", 0);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case JSEmitter::JavascriptCore:
|
||||
|
@ -584,14 +588,6 @@ void JAVASCRIPT::main(int argc, char *argv[]) {
|
|||
SWIG_library_directory("javascript/jsc");
|
||||
break;
|
||||
}
|
||||
case JSEmitter::NodeJS:
|
||||
{
|
||||
emitter = swig_javascript_create_V8Emitter();
|
||||
Preprocessor_define("SWIG_JAVASCRIPT_V8 1", 0);
|
||||
Preprocessor_define("BUILDING_NODE_EXTENSION 1", 0);
|
||||
SWIG_library_directory("javascript/v8");
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
Printf(stderr, "SWIG Javascript: Unknown engine. Please specify one of '-jsc', '-v8' or '-node'.\n");
|
||||
|
|
Loading…
Reference in New Issue