Skip to content

Commit f8f82fb

Browse files
Add initial packager plugin
This is very much a work in progress. It's just a proof of concept at this point and just works for very simple examples. The plugin invocation is as follows: ``` swift package --swift-sdk wasm32-unknown-wasi js ```
1 parent 2cd0a2c commit f8f82fb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+3298
-251
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,5 @@ node_modules
77
xcuserdata/
88
.swiftpm
99
.vscode
10+
Examples/*/Bundle
11+
Examples/*/package-lock.json

Examples/Basic/Package.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@ let package = Package(
1717
]
1818
)
1919
],
20-
swiftLanguageVersions: [.v5]
20+
swiftLanguageModes: [.v5]
2121
)

Examples/Basic/build.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
#!/bin/bash
2-
swift build --swift-sdk "${SWIFT_SDK_ID:-wasm32-unknown-wasi}" -Xswiftc -Xclang-linker -Xswiftc -mexec-model=reactor -Xlinker --export=__main_argc_argv
2+
set -ex
3+
swift package --swift-sdk "${SWIFT_SDK_ID:-wasm32-unknown-wasi}" -c "${1:-debug}" js --use-cdn

Examples/Basic/index.html

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@
66
</head>
77

88
<body>
9-
<script src="./index.js" type="module"></script>
9+
<script type="module">
10+
import { init } from "./.build/plugins/PackageToJS/outputs/Package/index.js";
11+
await init(fetch("./.build/plugins/PackageToJS/outputs/Package/main.wasm"));
12+
</script>
1013
</body>
1114

1215
</html>

Examples/Basic/index.js

Lines changed: 0 additions & 33 deletions
This file was deleted.

Examples/Embedded/_Runtime

Lines changed: 0 additions & 1 deletion
This file was deleted.

Examples/Embedded/build.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/bash
22
package_dir="$(cd "$(dirname "$0")" && pwd)"
33
JAVASCRIPTKIT_EXPERIMENTAL_EMBEDDED_WASM=true \
4-
swift build --package-path "$package_dir" --product EmbeddedApp \
5-
-c release --triple wasm32-unknown-none-wasm
4+
swift package --package-path "$package_dir" \
5+
-c release --triple wasm32-unknown-none-wasm js

Examples/Embedded/index.html

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@
66
</head>
77

88
<body>
9-
<script src="./index.js" type="module"></script>
9+
<script type="module">
10+
import { init } from "./.build/plugins/PackageToJS/outputs/Package/index.js";
11+
await init(fetch("./.build/plugins/PackageToJS/outputs/Package/main.wasm"));
12+
</script>
1013
</body>
1114

1215
</html>

Examples/Embedded/index.js

Lines changed: 0 additions & 33 deletions
This file was deleted.

Examples/Multithreading/Sources/JavaScript/index.js

Lines changed: 0 additions & 74 deletions
This file was deleted.

0 commit comments

Comments
 (0)