Commit b00b4b7
Separate compiler and linker flags to eliminate emcc warnings
Refactored the Emscripten build system to properly separate compiler flags
(used during .c -> .o compilation) from linker flags (used during .o -> .js
linking). This eliminates hundreds of "linker setting ignored during
compilation" warnings.
Changes:
- Split CFLAGS_WASM into CFLAGS_COMPILE and LDFLAGS_WASM in templates/Variant.mk
- Split flag constants in scripts/prepareVariants.ts into *CompileFlags and
*LinkFlags variants
- Fixed malformed `-s -lccall.js` flag to `-lccall.js`
- Moved MIN_NODE_VERSION and NODEJS_CATCH_EXIT to node-specific targets only
- Added scripts/validate-emcc-flags.ts for testing flag classification
Compiler flags (CFLAGS_COMPILE): optimization (-Oz, -O0, -flto), defines
(-DQTS_DEBUG_MODE, etc.), debug info (-gsource-map), sanitizers (-fsanitize)
Linker flags (LDFLAGS_WASM): -s settings (MODULARIZE, ENVIRONMENT, etc.),
--closure, --pre-js, library flags (-lccall.js, -lasync.js)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>1 parent df4efb9 commit b00b4b7
54 files changed
Lines changed: 1817 additions & 1463 deletions
File tree
- doc/@jitl
- quickjs-ng-wasmfile-debug-asyncify
- quickjs-ng-wasmfile-debug-sync
- quickjs-ng-wasmfile-release-asyncify
- quickjs-singlefile-browser-debug-asyncify
- quickjs-singlefile-browser-debug-sync
- quickjs-singlefile-browser-release-asyncify
- quickjs-singlefile-cjs-debug-asyncify
- quickjs-singlefile-cjs-debug-sync
- quickjs-singlefile-cjs-release-asyncify
- quickjs-singlefile-mjs-debug-asyncify
- quickjs-singlefile-mjs-debug-sync
- quickjs-singlefile-mjs-release-asyncify
- quickjs-wasmfile-debug-asyncify
- quickjs-wasmfile-debug-sync
- quickjs-wasmfile-release-asyncify
- packages
- variant-quickjs-asmjs-mjs-release-sync
- variant-quickjs-ng-wasmfile-debug-asyncify
- variant-quickjs-ng-wasmfile-debug-sync
- variant-quickjs-ng-wasmfile-release-asyncify
- variant-quickjs-ng-wasmfile-release-sync
- variant-quickjs-singlefile-browser-debug-asyncify
- variant-quickjs-singlefile-browser-debug-sync
- variant-quickjs-singlefile-browser-release-asyncify
- variant-quickjs-singlefile-browser-release-sync
- variant-quickjs-singlefile-cjs-debug-asyncify
- variant-quickjs-singlefile-cjs-debug-sync
- variant-quickjs-singlefile-cjs-release-asyncify
- variant-quickjs-singlefile-cjs-release-sync
- variant-quickjs-singlefile-mjs-debug-asyncify
- variant-quickjs-singlefile-mjs-debug-sync
- variant-quickjs-singlefile-mjs-release-asyncify
- variant-quickjs-singlefile-mjs-release-sync
- variant-quickjs-wasmfile-debug-asyncify
- variant-quickjs-wasmfile-debug-sync
- variant-quickjs-wasmfile-release-asyncify
- variant-quickjs-wasmfile-release-sync
- scripts
- templates
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
88 | | - | |
89 | 88 | | |
90 | 89 | | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | 90 | | |
96 | 91 | | |
97 | 92 | | |
98 | 93 | | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
99 | 100 | | |
100 | 101 | | |
101 | 102 | | |
102 | 103 | | |
103 | | - | |
104 | | - | |
| 104 | + | |
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
92 | 95 | | |
93 | 96 | | |
94 | 97 | | |
95 | 98 | | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
| 99 | + | |
100 | 100 | | |
101 | 101 | | |
102 | 102 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
88 | | - | |
89 | 88 | | |
90 | 89 | | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
91 | 93 | | |
92 | 94 | | |
93 | 95 | | |
94 | 96 | | |
95 | | - | |
96 | | - | |
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
| |||
Lines changed: 7 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | 76 | | |
78 | 77 | | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | 78 | | |
84 | 79 | | |
85 | 80 | | |
86 | 81 | | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
87 | 88 | | |
88 | 89 | | |
89 | 90 | | |
90 | 91 | | |
91 | 92 | | |
92 | | - | |
93 | | - | |
| 93 | + | |
94 | 94 | | |
95 | 95 | | |
96 | 96 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
80 | 83 | | |
81 | 84 | | |
82 | 85 | | |
83 | 86 | | |
84 | 87 | | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
| 88 | + | |
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| |||
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | 76 | | |
78 | 77 | | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
79 | 81 | | |
80 | 82 | | |
81 | 83 | | |
82 | 84 | | |
83 | | - | |
84 | | - | |
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | 76 | | |
78 | 77 | | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | 78 | | |
84 | 79 | | |
85 | 80 | | |
86 | 81 | | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
87 | 88 | | |
88 | 89 | | |
89 | 90 | | |
90 | 91 | | |
91 | 92 | | |
92 | | - | |
93 | | - | |
| 93 | + | |
94 | 94 | | |
95 | 95 | | |
96 | 96 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
80 | 83 | | |
81 | 84 | | |
82 | 85 | | |
83 | 86 | | |
84 | 87 | | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
| 88 | + | |
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| |||
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | 76 | | |
78 | 77 | | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
79 | 81 | | |
80 | 82 | | |
81 | 83 | | |
82 | 84 | | |
83 | | - | |
84 | | - | |
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | 76 | | |
78 | 77 | | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | 78 | | |
84 | 79 | | |
85 | 80 | | |
86 | 81 | | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
87 | 88 | | |
88 | 89 | | |
89 | 90 | | |
90 | 91 | | |
91 | 92 | | |
92 | | - | |
93 | | - | |
| 93 | + | |
94 | 94 | | |
95 | 95 | | |
96 | 96 | | |
| |||
0 commit comments