Commit Graph

51 Commits

Author SHA1 Message Date
Olly Betts f2bcc41d48 [javascript] Fix v8 support and add CI coverage
Update the v8 support to work with recent v8 releases.

Fix bitrot in the testsuite and examples so they pass for v8.

Adjust configure probes so we can successfully probe for v8 without
assistance on Debian and Ubuntu (and probably other platforms; those
are just the two I've tested, and both use multiarch library
directories which weren't being allowed for).

Closes #3028
See #2537
2024-09-20 09:47:27 +12:00
Olly Betts 58475bfce6 javascript: Catch and report const char* exceptions
For example, we throw this if the requested engine isn't compiled in.
2024-09-20 09:26:07 +12:00
Rose 5932fff4e2 Use single characters instead of strings where possible
This makes the code clearer and faster
2023-10-16 17:51:48 -04:00
Olly Betts af87945aea Clean up double spaces between words in comments 2023-05-16 09:55:49 +12:00
Olly Betts fd6c0255a2 Remove superfluous semicolons 2022-02-15 14:00:12 +13:00
Olly Betts 48eba82ac8 Remove obsolete code to set SWIG_V8_VERSION
We've dropped support for the old V8 versions which lacked version
macros, and SWIG_V8_VERSION now gets automatically defined by
Lib/javascript/v8/javascriptruntime.swg which will #undef it first if
it's already defined.
2021-12-29 19:16:36 +13:00
Olly Betts 7c97bd5ab3 [js] Remove code to handle v8 < 5.0
We require at least node v6 which means v8 5.0, so code to handle
older v8 is no longer useful.
2021-12-02 14:04:25 +13:00
Andy Polyakov 1abb726d69 configure.ac: pick up javascriptcoregtk-4.0,3.0 if available.
Ubuntu 20 doesn't have libwebkitgtk-dev/libjavascriptcoregtk-1.0-dev,
but it has 4.0. Ubuntu 18 provides 3.0 as option.
2021-03-01 15:51:12 +01:00
Olly Betts b3bedc210c [Javascript] For v8 >= 4.3.0, use V8_MAJOR_VERSION.
Fixes https://github.com/swig/swig/issues/561.
2016-01-12 09:33:13 +13:00
William S Fulton c6f8aadc64 Cosmetic corrections - Mac OS X 2015-08-02 20:14:20 +01:00
William S Fulton 2b04d37b94 Tidy up Javascript build system 2014-12-28 16:13:22 +00:00
Bruce Mitchener 78de526b1d [js] v8-shell.cxx had some Windows line endings. 2014-10-15 18:38:39 +07:00
Richard 911fd761b0 Minor improvements 2014-08-28 19:46:52 -05:00
Richard 6fee208010 Fixes for v8 3.19.2 (0x031902) 2014-08-28 19:46:51 -05:00
Richard a6ffb22a2a Fixed for v8 3.27.34 2014-08-28 19:46:51 -05:00
Richard d4920591d4 Fixes for v8 3.24.3 (0x032403) 2014-08-28 19:46:51 -05:00
Richard c23375d39d Show V8 Deprecated warnings 2014-08-28 19:46:51 -05:00
Richard 1a0605bf45 Partial fixes for 3.24.40 (0x032440) - incomplete 2014-08-28 19:46:51 -05:00
Richard 98b1fca4d8 Fixed for v8 3.25.30 (0x032530) 2014-08-28 19:46:50 -05:00
Richard e98a659246 Fixes for v8 3.21.17 (0x032117) 2014-08-28 19:46:50 -05:00
Richard 3d63f9113b Fixes for v8 3.19.18 (0x031918) 2014-08-28 19:46:50 -05:00
Richard 8ee40e408b Fixes for v8 3.17.10 (0x031710) 2014-08-28 19:46:50 -05:00
Richard 44e57d9cfd Allow to compile for specific V8 version 2014-08-28 19:46:50 -05:00
Karl Wette 46ce4d3ba9 Distclean Tools/javascript 2014-05-29 02:24:33 +02:00
William S Fulton 18d72f4562 Add in CPPFLAGS and LDFLAGS to examples/test-suite
- Split current usage of CXXFLAGS into the conventional CPPFLAGS CXXFLAGS and LDFLAGS
- Split current usage of CFLAGS into the conventional CPPFLAGS CFLAGS and LDFLAGS
- This restores 'make whatever CXXFLAGS=-g' which stopped working during
  the recently added suppport for out of source builds.
- LDFLAGS is currently empty, but is there for future use
2014-05-15 23:11:08 +01:00
Karl Wette f574a34155 Allow examples and test-suite to be built out of source tree
- Examples/Makefile.in rules use SRCDIR as the relative source directory

- ./config.status replicates Examples/ source directory tree in build
  directory, and copies each Makefile to build directory, prefixed with
  a header which sets SRCDIR to source directory

- Examples/test-suite/.../Makefile.in set SRCDIR from Autoconf-set srcdir

- Examples/test-suite/errors/Makefile.in needs to filter out source
  directory from SWIG error messages

- Lua: embedded interpreters are passed location of run-time test

- Python: copy run-time scripts to build directory because of 2to3
  conversion; import_packages example copies __init__.py from source
  directory; test-suite sets SCRIPTDIR to location of run-time tests

- Javascript: binding.gyp renamed to binding.gyp.in so that $srcdir
  can be substituted with SRCDIR; removed './' from require() statements
  so that NODE_PATH can be used to point Node.js to build directory
2014-05-11 23:21:10 +02:00
Karl Wette 96153c7c0a Regenerate configured Makefile if Makefile.in or config.status have changed 2014-05-11 21:31:32 +02:00
Karl Wette 7cd9063b52 Remove execute permissions from various non-executable files
- source files and Makefiles need never be executable
- scripts are run directly by their interpreters in the
  test suites, so also do not need to be executable
2014-05-02 20:06:11 +02:00
William S Fulton a3ad811cee Makefile and autoconf file tidy up for Javascript 2014-04-16 07:38:52 +01:00
Oliver Buchtala c2f22bb2b8 Fix regression in custom v8 interpreter.
Issue showed up with newer v8 version.
2014-03-06 06:32:06 +01:00
Oliver Buchtala b5bc87667d Fix regressions.
- Adapted to changes in UTL
- Fixed detection of setters and getters.
2014-03-05 01:10:55 +01:00
Oliver Buchtala dbd61e40e1 Fix issues that were observed with newer JavascriptCore. 2014-03-04 10:41:35 +01:00
Oliver Buchtala 7e015e4acf Fix regression in Javascript configuration. 2014-02-26 23:26:19 +01:00
Oliver Buchtala 424e3f4712 Fix custom javascript interpreter configuration for OSX. 2014-02-26 22:46:24 +01:00
Oliver Buchtala b216a739c4 Introduced an extra Makefile for the custom javascript interpreter. 2014-02-26 20:51:38 +01:00
Oliver Buchtala 4794fa1884 Refactored custom javascript engines to support primitive 'require' statements. 2013-09-06 00:38:07 +03:00
Oliver Buchtala 22525249f2 Resolve compile warnings in v8_shell. 2013-08-31 03:34:37 +02:00
Oliver Buchtala 4ac7065c3b Bugfix: in javascript interpreter load extensions on MacOSX correctly. 2013-08-31 03:34:37 +02:00
Oliver Buchtala 31844ac72a Simplify the signature of the v8 module intializer. 2013-08-31 03:23:11 +02:00
Oliver Buchtala fb9c4955fb Not a real change: removed some trailing spaces. 2013-08-31 03:23:11 +02:00
Oliver Buchtala f9d6afbdfe Add a missing return statement in JS shell. 2013-08-31 03:23:11 +02:00
Oliver Buchtala caa6827daf Javascript interpreter supports for JSC and V8 simultaneously.
Before, one had to build two different versions.
2013-08-31 03:23:10 +02:00
Oliver Buchtala 008adca72f Provide more control about the target object/namespace where a v8 module is registered to. 2013-08-31 03:23:10 +02:00
Oliver Buchtala 058a27bf32 Simplify creation of a Javascript shell. 2013-08-31 03:23:10 +02:00
Oliver Buchtala 2092793868 Make v8 shell more quiet.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13820 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:14:14 +00:00
Oliver Buchtala 915e65135c Minor fix in v8 shell.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13803 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:09:43 +00:00
Oliver Buchtala 9a914af2b7 Fix v8 shell to initialize v8 context in proper order.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13797 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:08:16 +00:00
Oliver Buchtala 022c274256 Minor fixes in v8 javascript shell.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13794 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:07:21 +00:00
Oliver Buchtala 5fab9c8a38 Minor cleanup in javascript shell implementation.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13785 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:04:40 +00:00
Oliver Buchtala 10dc758cad Refactored javascript shell implementation to support JSC and v8.
Also changed configuration in examples Makefile.in to allow switching modes.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13783 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:03:42 +00:00