|
1 | | -.PHONY: all omnilock anyone-can-pay xudt spore |
| 1 | +.PHONY: all omnilock anyone-can-pay xudt spore ckb-js-vm nostr-lock ckb-debugger apply-debugger-patches clean-debugger-patches |
2 | 2 |
|
3 | | -all: omnilock anyone-can-pay xudt spore |
| 3 | +all: omnilock anyone-can-pay xudt spore ckb-js-vm nostr-lock pw-lock secp256k1_multisig_v2 ckb-debugger |
4 | 4 |
|
5 | 5 | omnilock: |
6 | 6 | @echo "Building omnilock via submodule" |
@@ -28,3 +28,49 @@ spore: |
28 | 28 | cp ckb/spore-contract/build/release/cluster_agent ckb/devnet/specs/spore-scripts/ |
29 | 29 | cp ckb/spore-contract/build/release/cluster_proxy ckb/devnet/specs/spore-scripts/ |
30 | 30 | cp ckb/spore-contract/build/release/spore_extension_lua ckb/devnet/specs/spore-scripts/ |
| 31 | + |
| 32 | +ckb-js-vm: |
| 33 | + @echo "Building ckb-js-vm via submodule" |
| 34 | + cd ckb/ckb-js-vm && git submodule update --init && make all |
| 35 | + cp ckb/ckb-js-vm/build/ckb-js-vm ckb/devnet/specs/ckb_js_vm |
| 36 | + |
| 37 | +nostr-lock: |
| 38 | + @echo "Building nostr-lock via submodule" |
| 39 | + cd ckb/nostr-binding && make build |
| 40 | + cp ckb/nostr-binding/build/release/nostr-lock ckb/devnet/specs/nostr_lock |
| 41 | + |
| 42 | +pw-lock: |
| 43 | + @echo "Building pw-lock via submodule" |
| 44 | + cp patches/pw-lock-protocol.h ckb/pw-lock/protocol.h |
| 45 | + mkdir -p ckb/pw-lock/build |
| 46 | + cd ckb/pw-lock && make all-via-docker |
| 47 | + mkdir -p ckb/devnet/specs/pw-lock/ |
| 48 | + cp ckb/pw-lock/specs/cells/secp256k1_keccak256_sighash_all ckb/devnet/specs/pw-lock/ |
| 49 | + cp ckb/pw-lock/specs/cells/secp256k1_keccak256_sighash_all_acpl ckb/devnet/specs/pw-lock/ |
| 50 | + |
| 51 | +secp256k1_multisig_v2: |
| 52 | + @echo "Building secp256k1_multisig_v2 via submodule" |
| 53 | + cd ckb/ckb-system-scripts/ && make all-via-docker |
| 54 | + cp ckb/ckb-system-scripts/specs/cells/secp256k1_blake160_multisig_all ckb/devnet/specs/secp256k1_blake160_multisig_all_v2 |
| 55 | + |
| 56 | +ckb-debugger: |
| 57 | + @echo "Building ckb-debugger via submodule" |
| 58 | + @echo "Applying patches to ckb-standalone-debugger..." |
| 59 | + $(MAKE) apply-debugger-patches |
| 60 | + cd ckb/ckb-standalone-debugger/ckb-debugger && cargo build --target wasm32-wasip1 --release |
| 61 | + cp -r ckb/ckb-standalone-debugger/target/wasm32-wasip1/release/ckb-debugger.wasm src/tools/ckb-debugger.wasm |
| 62 | + |
| 63 | +apply-debugger-patches: |
| 64 | + @echo "Checking if patches need to be applied..." |
| 65 | + @cd ckb/ckb-standalone-debugger && \ |
| 66 | + if ! git diff --quiet HEAD -- ckb-debugger/src/syscall_file_operation.rs 2>/dev/null; then \ |
| 67 | + echo "Patches already applied."; \ |
| 68 | + else \ |
| 69 | + echo "Applying WASM FileOperation patches..."; \ |
| 70 | + git apply ../../patches/0001-Add-WASM-FileOperation-syscalls-implementation.patch; \ |
| 71 | + fi |
| 72 | + |
| 73 | +clean-debugger-patches: |
| 74 | + @echo "Reverting ckb-debugger patches..." |
| 75 | + @cd ckb/ckb-standalone-debugger && git reset --hard origin/develop && git clean -fd |
| 76 | + |
0 commit comments