Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 02a6731f58 | |||
| 6ca65805bd | |||
| 2a0a397afa | |||
| 093bcd6204 | |||
| 6601ad2d38 | |||
| 578ebe2a8a | |||
| 8269dbd71e |
@@ -3,7 +3,7 @@ version: 2.1
|
|||||||
executors:
|
executors:
|
||||||
aebuilder:
|
aebuilder:
|
||||||
docker:
|
docker:
|
||||||
- image: aeternity/builder
|
- image: aeternity/builder:bionic-otp23
|
||||||
user: builder
|
user: builder
|
||||||
working_directory: ~/aebytecode
|
working_directory: ~/aebytecode
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
{application,aebytecode,
|
||||||
|
[{description,"A library and stand alone assembler for aeternity bytecode. This version supports AEVM bytecode and FATE bytecode."},
|
||||||
|
{registered,[]},
|
||||||
|
{included_applications,[]},
|
||||||
|
{applications,[stdlib,kernel]},
|
||||||
|
{vsn,"3.2.0"},
|
||||||
|
{modules,[aeb_fate_code_tests,aeb_fate_data_tests,
|
||||||
|
aeb_fate_encoding_tests,aefate_code_eqc,aefate_eqc,
|
||||||
|
aefate_type_eqc,aeb_aevm_abi,aeb_aevm_data,aeb_asm,
|
||||||
|
aeb_disassemble,aeb_fate_abi,aeb_fate_asm,
|
||||||
|
aeb_fate_code,aeb_fate_data,aeb_fate_encoding,
|
||||||
|
aeb_fate_generate_docs,aeb_fate_generate_ops,
|
||||||
|
aeb_fate_maps,aeb_heap,aeb_memory,aeb_opcodes,
|
||||||
|
aeb_primops,aefateasm,aeb_data_test,aeb_fate_asm_test,
|
||||||
|
aeb_serialize_test,aebytecode_SUITE]}]}.
|
||||||
+2
-2
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
{deps, [ {eblake2, "1.0.0"}
|
{deps, [ {eblake2, "1.0.0"}
|
||||||
, {aeserialization, {git, "https://github.com/aeternity/aeserialization.git",
|
, {aeserialization, {git, "https://github.com/aeternity/aeserialization.git",
|
||||||
{ref, "47aaa8f"}}}
|
{ref, "eb68fe3"}}}
|
||||||
, {getopt, "1.0.1"}
|
, {getopt, "1.0.1"}
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
]}.
|
]}.
|
||||||
|
|
||||||
|
|
||||||
{relx, [{release, {aebytecode, "2.0.1"},
|
{relx, [{release, {aebytecode, "3.2.0"},
|
||||||
[aebytecode, eblake2, getopt]},
|
[aebytecode, eblake2, getopt]},
|
||||||
|
|
||||||
{dev_mode, true},
|
{dev_mode, true},
|
||||||
|
|||||||
+7
-4
@@ -1,7 +1,7 @@
|
|||||||
{"1.1.0",
|
{"1.2.0",
|
||||||
[{<<"aeserialization">>,
|
[{<<"aeserialization">>,
|
||||||
{git,"https://github.com/aeternity/aeserialization.git",
|
{git,"https://github.com/aeternity/aeserialization.git",
|
||||||
{ref,"47aaa8f5434b365c50a35bfd1490340b19241991"}},
|
{ref,"eb68fe331bd476910394966b7f5ede7a74d37e35"}},
|
||||||
0},
|
0},
|
||||||
{<<"base58">>,
|
{<<"base58">>,
|
||||||
{git,"https://github.com/aeternity/erl-base58.git",
|
{git,"https://github.com/aeternity/erl-base58.git",
|
||||||
@@ -10,11 +10,14 @@
|
|||||||
{<<"eblake2">>,{pkg,<<"eblake2">>,<<"1.0.0">>},0},
|
{<<"eblake2">>,{pkg,<<"eblake2">>,<<"1.0.0">>},0},
|
||||||
{<<"enacl">>,
|
{<<"enacl">>,
|
||||||
{git,"https://github.com/aeternity/enacl.git",
|
{git,"https://github.com/aeternity/enacl.git",
|
||||||
{ref,"26180f42c0b3a450905d2efd8bc7fd5fd9cece75"}},
|
{ref,"793ddb502f7fe081302e1c42227dca70b09f8e17"}},
|
||||||
1},
|
1},
|
||||||
{<<"getopt">>,{pkg,<<"getopt">>,<<"1.0.1">>},0}]}.
|
{<<"getopt">>,{pkg,<<"getopt">>,<<"1.0.1">>},0}]}.
|
||||||
[
|
[
|
||||||
{pkg_hash,[
|
{pkg_hash,[
|
||||||
{<<"eblake2">>, <<"EC8AD20E438AAB3F2E8D5D118C366A0754219195F8A0F536587440F8F9BCF2EF">>},
|
{<<"eblake2">>, <<"EC8AD20E438AAB3F2E8D5D118C366A0754219195F8A0F536587440F8F9BCF2EF">>},
|
||||||
{<<"getopt">>, <<"C73A9FA687B217F2FF79F68A3B637711BB1936E712B521D8CE466B29CBF7808A">>}]}
|
{<<"getopt">>, <<"C73A9FA687B217F2FF79F68A3B637711BB1936E712B521D8CE466B29CBF7808A">>}]},
|
||||||
|
{pkg_hash_ext,[
|
||||||
|
{<<"eblake2">>, <<"3C4D300A91845B25D501929A26AC2E6F7157480846FAB2347A4C11AE52E08A99">>},
|
||||||
|
{<<"getopt">>, <<"53E1AB83B9CEB65C9672D3E7A35B8092E9BDC9B3EE80721471A161C10C59959C">>}]}
|
||||||
].
|
].
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@
|
|||||||
, to_hexstring/1
|
, to_hexstring/1
|
||||||
]).
|
]).
|
||||||
|
|
||||||
-include_lib("aebytecode/include/aeb_opcodes.hrl").
|
-include("aeb_opcodes.hrl").
|
||||||
|
|
||||||
|
|
||||||
pp(Asm) ->
|
pp(Asm) ->
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
format_address/1
|
format_address/1
|
||||||
]).
|
]).
|
||||||
|
|
||||||
-include_lib("aebytecode/include/aeb_opcodes.hrl").
|
-include("aeb_opcodes.hrl").
|
||||||
|
|
||||||
|
|
||||||
pp(Binary) ->
|
pp(Binary) ->
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
, get_function_type_from_function_hash/2
|
, get_function_type_from_function_hash/2
|
||||||
, abi_version/0 ]).
|
, abi_version/0 ]).
|
||||||
|
|
||||||
-include("../include/aeb_fate_data.hrl").
|
-include("aeb_fate_data.hrl").
|
||||||
|
|
||||||
%%%===================================================================
|
%%%===================================================================
|
||||||
%%% API
|
%%% API
|
||||||
|
|||||||
@@ -94,8 +94,8 @@
|
|||||||
, to_asm/1
|
, to_asm/1
|
||||||
]).
|
]).
|
||||||
|
|
||||||
-include_lib("aebytecode/include/aeb_fate_opcodes.hrl").
|
-include("aeb_fate_opcodes.hrl").
|
||||||
-include_lib("aebytecode/include/aeb_fate_data.hrl").
|
-include("aeb_fate_data.hrl").
|
||||||
-define(HASH_BYTES, 32).
|
-define(HASH_BYTES, 32).
|
||||||
|
|
||||||
assemble_file(InFile, OutFile, Options) ->
|
assemble_file(InFile, OutFile, Options) ->
|
||||||
|
|||||||
@@ -24,14 +24,12 @@
|
|||||||
, symbols/1
|
, symbols/1
|
||||||
]).
|
]).
|
||||||
|
|
||||||
-include("../include/aeb_fate_opcodes.hrl").
|
-include("aeb_fate_opcodes.hrl").
|
||||||
-include("../include/aeb_fate_data.hrl").
|
-include("aeb_fate_data.hrl").
|
||||||
|
|
||||||
-ifdef(EQC).
|
|
||||||
-export([ update_annotations/2
|
-export([ update_annotations/2
|
||||||
, update_functions/2
|
, update_functions/2
|
||||||
, update_symbols/2]).
|
, update_symbols/2]).
|
||||||
-endif.
|
|
||||||
|
|
||||||
-record(fcode, { functions = #{} :: map()
|
-record(fcode, { functions = #{} :: map()
|
||||||
, symbols = #{} :: map()
|
, symbols = #{} :: map()
|
||||||
|
|||||||
+2
-2
@@ -22,8 +22,8 @@
|
|||||||
|
|
||||||
-export_type([binary_value/0, heap_value/0, offset/0, heap_fragment/0]).
|
-export_type([binary_value/0, heap_value/0, offset/0, heap_fragment/0]).
|
||||||
|
|
||||||
-include_lib("aebytecode/include/aeb_typerep_def.hrl").
|
-include("aeb_typerep_def.hrl").
|
||||||
-include_lib("aebytecode/include/aeb_heap.hrl").
|
-include("aeb_heap.hrl").
|
||||||
|
|
||||||
-type word() :: non_neg_integer().
|
-type word() :: non_neg_integer().
|
||||||
-type pointer() :: word().
|
-type pointer() :: word().
|
||||||
|
|||||||
+1
-1
@@ -17,7 +17,7 @@
|
|||||||
, swap/1
|
, swap/1
|
||||||
]).
|
]).
|
||||||
|
|
||||||
-include_lib("aebytecode/include/aeb_opcodes.hrl").
|
-include("aeb_opcodes.hrl").
|
||||||
|
|
||||||
|
|
||||||
%%====================================================================
|
%%====================================================================
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{application, aebytecode,
|
{application, aebytecode,
|
||||||
[{description, "Bytecode definitions, serialization and deserialization for aeternity."},
|
[{description, "Bytecode definitions, serialization and deserialization for aeternity."},
|
||||||
{vsn, "2.1.0"},
|
{vsn, "3.2.0"},
|
||||||
{registered, []},
|
{registered, []},
|
||||||
{applications,
|
{applications,
|
||||||
[kernel,
|
[kernel,
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
{a_email,[]}.
|
||||||
|
{author,"Aeternity Authors"}.
|
||||||
|
{c_email,[]}.
|
||||||
|
{copyright,"Aeternity Authors"}.
|
||||||
|
{deps,[{"otpr","aeserialization",{0,1,0}},
|
||||||
|
{"otpr","eblake2",{1,0,0}},
|
||||||
|
{"otpr","getopt",{1,0,2}}]}.
|
||||||
|
{desc,"A library and stand alone assembler for aeternity bytecode. This version supports AEVM bytecode and FATE bytecode."}.
|
||||||
|
{file_exts,[]}.
|
||||||
|
{key_name,none}.
|
||||||
|
{license,skip}.
|
||||||
|
{modules,[]}.
|
||||||
|
{name,"AE Bytecode"}.
|
||||||
|
{package_id,{"otpr","aebytecode",{3,2,0}}}.
|
||||||
|
{prefix,none}.
|
||||||
|
{repo_url,"https://github.com/aeternity/aebytecode"}.
|
||||||
|
{tags,["aeternity","blockchain","fate","bytecode","crypto","ae"]}.
|
||||||
|
{type,lib}.
|
||||||
|
{ws_url,[]}.
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
#! /bin/bash
|
||||||
|
|
||||||
|
# This is a small pre-packaging source generation and include correction script that should be
|
||||||
|
# run before packaging this project for use with ZX/Zomp.
|
||||||
|
|
||||||
|
rm -rf _build
|
||||||
|
rm -f src/aeb_fate_opcodes.erl src/aeb_fate_ops.erl include/aeb_fate_opcodes.hrl src/aeb_fate_asm_scan.xrl src/aeb_fate_pp.erl
|
||||||
|
make sources
|
||||||
|
cd src
|
||||||
|
for f in $(ls --ignore=aeb_fate_generate_ops.erl | grep erl)
|
||||||
|
do
|
||||||
|
echo "Updating includes in: $f"
|
||||||
|
sed -i 's/aebytecode\/include\///g' "$f"
|
||||||
|
sed -i 's/\.\.\/include\///g' "$f"
|
||||||
|
sed -i 's/include_lib/include/g' "$f"
|
||||||
|
done
|
||||||
|
rm -f ebin/*.beam
|
||||||
|
cp aebytecode.app ebin/
|
||||||
Reference in New Issue
Block a user