git.delta.rocks / unique-network / refs/commits / ce8ad2953820

difftreelog

CORE-302 Automation of the creation of solidity ABI

Trubnikov Sergey2022-04-15parent: #dc6d7fb.patch.diff
in: master

4 files changed

added.maintain/scripts/generate_abi.shdiffbeforeafterboth

no changes

deleted.maintain/scripts/generate_api.shdiffbeforeafterboth

no changes

added.maintain/scripts/generate_sol.shdiffbeforeafterboth

no changes

modifiedMakefilediffbeforeafterboth
1.PHONY: _help1.PHONY: _help
2_help:2_help:
3 @echo "regenerate_solidity - generate stubs/interfaces for contracts defined in native (via evm-coder)"3 @echo "regenerate_solidity - generate stubs/interfaces for contracts defined in native (via evm-coder)"
4 @echo "evm_stubs - recompile contract stubs"4 @echo "evm_stubs - recompile contract stubs and ABI"
5 @echo "bench - run frame-benchmarking"5 @echo "bench - run frame-benchmarking"
6 @echo " bench-evm-migration"6 @echo " bench-evm-migration"
7 @echo " bench-unique"7 @echo " bench-unique"
8
9.PHONY: regenerate_solidity
10regenerate_solidity:
11 PACKAGE=pallet-fungible NAME=erc::gen_iface OUTPUT=./tests/src/eth/api/UniqueFungible.sol ./.maintain/scripts/generate_api.sh
12 PACKAGE=pallet-nonfungible NAME=erc::gen_iface OUTPUT=./tests/src/eth/api/UniqueNFT.sol ./.maintain/scripts/generate_api.sh
13 PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_iface OUTPUT=./tests/src/eth/api/ContractHelpers.sol ./.maintain/scripts/generate_api.sh
14
15 PACKAGE=pallet-fungible NAME=erc::gen_impl OUTPUT=./pallets/fungible/src/stubs/UniqueFungible.sol ./.maintain/scripts/generate_api.sh
16 PACKAGE=pallet-nonfungible NAME=erc::gen_impl OUTPUT=./pallets/nonfungible/src/stubs/UniqueNFT.sol ./.maintain/scripts/generate_api.sh
17 PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_impl OUTPUT=./pallets/evm-contract-helpers/src/stubs/ContractHelpers.sol ./.maintain/scripts/generate_api.sh
188
19FUNGIBLE_EVM_STUBS=./pallets/fungible/src/stubs9FUNGIBLE_EVM_STUBS=./pallets/fungible/src/stubs
10FUNGIBLE_EVM_ABI=./tests/src/eth/fungibleAbi.json
11
20NONFUNGIBLE_EVM_STUBS=./pallets/nonfungible/src/stubs12NONFUNGIBLE_EVM_STUBS=./pallets/nonfungible/src/stubs
13NONFUNGIBLE_EVM_ABI=./tests/src/eth/nonFungibleAbi.json
14
21CONTRACT_HELPERS_STUBS=./pallets/evm-contract-helpers/src/stubs/15CONTRACT_HELPERS_STUBS=./pallets/evm-contract-helpers/src/stubs/
16CONTRACT_HELPERS_ABI=./tests/src/eth/util/contractHelpersAbi.json
17
18TESTS_API=./tests/src/eth/api/
2219
23$(FUNGIBLE_EVM_STUBS)/UniqueFungible.raw: $(FUNGIBLE_EVM_STUBS)/UniqueFungible.sol20.PHONY: regenerate_solidity
21regenerate_solidity: UniqueFungible.sol UniqueNFT.sol ContractHelpers.sol
22
23UniqueFungible.sol:
24 INPUT=$< OUTPUT=$@ ./.maintain/scripts/compile_stub.sh24 PACKAGE=pallet-fungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh
25 PACKAGE=pallet-fungible NAME=erc::gen_impl OUTPUT=$(FUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh
26
27UniqueNFT.sol:
28 PACKAGE=pallet-nonfungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh
29 PACKAGE=pallet-nonfungible NAME=erc::gen_impl OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh
30
25$(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw: $(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.sol31ContractHelpers.sol:
32 PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh
33 PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_impl OUTPUT=$(CONTRACT_HELPERS_STUBS)/$@ ./.maintain/scripts/generate_sol.sh
34
35UniqueFungible: UniqueFungible.sol
36 INPUT=$(FUNGIBLE_EVM_STUBS)/$< OUTPUT=$(FUNGIBLE_EVM_STUBS)/UniqueFungible.raw ./.maintain/scripts/compile_stub.sh
37 INPUT=$(FUNGIBLE_EVM_STUBS)/$< OUTPUT=$(FUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh
38
39UniqueNFT: UniqueNFT.sol
26 INPUT=$< OUTPUT=$@ ./.maintain/scripts/compile_stub.sh40 INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw ./.maintain/scripts/compile_stub.sh
41 INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh
42
27$(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw: $(CONTRACT_HELPERS_STUBS)/ContractHelpers.sol43ContractHelpers: ContractHelpers.sol
28 INPUT=$< OUTPUT=$@ ./.maintain/scripts/compile_stub.sh44 INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw ./.maintain/scripts/compile_stub.sh
45 INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_ABI) ./.maintain/scripts/generate_abi.sh
2946
30evm_stubs: $(FUNGIBLE_EVM_STUBS)/UniqueFungible.raw $(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw $(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw47evm_stubs: UniqueFungible UniqueNFT ContractHelpers
3148
32.PHONY: _bench49.PHONY: _bench
33_bench:50_bench: