aboutsummaryrefslogtreecommitdiff
path: root/src/jsifier.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/jsifier.js')
-rw-r--r--src/jsifier.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/jsifier.js b/src/jsifier.js
index d20812ae..4af1223a 100644
--- a/src/jsifier.js
+++ b/src/jsifier.js
@@ -3,6 +3,23 @@
// Main function
function JSify(data, functionsOnly, givenFunctions, givenGlobalVariables) {
+ // Add additional necessary items for the main pass
+ if (!functionsOnly) {
+ var libFuncsToInclude;
+ if (INCLUDE_FULL_LIBRARY) {
+ assert(!BUILD_AS_SHARED_LIB, 'Cannot have both INCLUDE_FULL_LIBRARY and BUILD_AS_SHARED_LIB set.')
+ libFuncsToInclude = keys(Library);
+ } else {
+ libFuncsToInclude = ['memset', 'malloc', 'free'];
+ }
+ libFuncsToInclude.forEach(function(ident) {
+ data.functionStubs.push({
+ intertype: 'functionStub',
+ ident: '_' + ident
+ });
+ });
+ }
+
// Does simple 'macro' substitution, using Django-like syntax,
// {{{ code }}} will be replaced with |eval(code)|.
function processMacros(text) {