get program names from programs (#4273)
* get program names from programs * fixup
This commit is contained in:
parent
65a82ebf50
commit
e8ad822111
|
@ -2194,8 +2194,10 @@ dependencies = [
|
|||
"solana-budget-api 0.15.0",
|
||||
"solana-budget-program 0.15.0",
|
||||
"solana-client 0.15.0",
|
||||
"solana-config-program 0.15.0",
|
||||
"solana-drone 0.15.0",
|
||||
"solana-ed25519-dalek 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"solana-exchange-program 0.15.0",
|
||||
"solana-kvstore 0.15.0",
|
||||
"solana-logger 0.15.0",
|
||||
"solana-metrics 0.15.0",
|
||||
|
@ -2203,7 +2205,9 @@ dependencies = [
|
|||
"solana-runtime 0.15.0",
|
||||
"solana-sdk 0.15.0",
|
||||
"solana-stake-api 0.15.0",
|
||||
"solana-stake-program 0.15.0",
|
||||
"solana-storage-api 0.15.0",
|
||||
"solana-storage-program 0.15.0",
|
||||
"solana-vote-api 0.15.0",
|
||||
"solana-vote-program 0.15.0",
|
||||
"solana-vote-signer 0.15.0",
|
||||
|
@ -2457,13 +2461,18 @@ dependencies = [
|
|||
"serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"solana 0.15.0",
|
||||
"solana-budget-api 0.15.0",
|
||||
"solana-budget-program 0.15.0",
|
||||
"solana-config-api 0.15.0",
|
||||
"solana-config-program 0.15.0",
|
||||
"solana-exchange-api 0.15.0",
|
||||
"solana-exchange-program 0.15.0",
|
||||
"solana-sdk 0.15.0",
|
||||
"solana-stake-api 0.15.0",
|
||||
"solana-stake-program 0.15.0",
|
||||
"solana-storage-api 0.15.0",
|
||||
"solana-storage-program 0.15.0",
|
||||
"solana-token-api 0.15.0",
|
||||
"solana-token-program 0.15.0",
|
||||
"solana-vote-api 0.15.0",
|
||||
"solana-vote-program 0.15.0",
|
||||
]
|
||||
|
@ -2620,6 +2629,7 @@ dependencies = [
|
|||
"serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"solana-logger 0.15.0",
|
||||
"solana-metrics 0.15.0",
|
||||
"solana-noop-program 0.15.0",
|
||||
"solana-sdk 0.15.0",
|
||||
"solana-stake-api 0.15.0",
|
||||
"solana-vote-api 0.15.0",
|
||||
|
|
|
@ -930,7 +930,7 @@ mod tests {
|
|||
node_stakes: vec![100_000; NUM_NODES],
|
||||
cluster_lamports: 100_000_000_000_000,
|
||||
fullnode_config,
|
||||
native_instruction_processors: [("solana_exchange_program".to_string(), id())].to_vec(),
|
||||
native_instruction_processors: [solana_exchange_program!()].to_vec(),
|
||||
..ClusterConfig::default()
|
||||
});
|
||||
|
||||
|
|
|
@ -2,6 +2,9 @@ pub mod bench;
|
|||
mod cli;
|
||||
pub mod order_book;
|
||||
|
||||
#[macro_use]
|
||||
extern crate solana_exchange_program;
|
||||
|
||||
use crate::bench::{airdrop_lamports, do_bench_exchange, Config};
|
||||
use log::*;
|
||||
use solana::gossip_service::{discover_nodes, get_clients};
|
||||
|
@ -42,6 +45,7 @@ fn main() {
|
|||
}
|
||||
|
||||
info!("Funding keypair: {}", identity.pubkey());
|
||||
debug!("Exchange program name: {}", solana_exchange_program!().0);
|
||||
|
||||
let accounts_in_groups = batch_size * account_groups;
|
||||
const NUM_SIGNERS: u64 = 2;
|
||||
|
|
|
@ -58,9 +58,13 @@ solana-netutil = { path = "../netutil", version = "0.15.0" }
|
|||
solana-runtime = { path = "../runtime", version = "0.15.0" }
|
||||
solana-sdk = { path = "../sdk", version = "0.15.0" }
|
||||
solana-stake-api = { path = "../programs/stake_api", version = "0.15.0" }
|
||||
solana-stake-program = { path = "../programs/stake_program", version = "0.15.0" }
|
||||
solana-storage-api = { path = "../programs/storage_api", version = "0.15.0" }
|
||||
solana-storage-program = { path = "../programs/storage_program", version = "0.15.0" }
|
||||
solana-vote-api = { path = "../programs/vote_api", version = "0.15.0" }
|
||||
solana-vote-program = { path = "../programs/vote_program", version = "0.15.0" }
|
||||
solana-exchange-program = { path = "../programs/exchange_program", version = "0.15.0" }
|
||||
solana-config-program = { path = "../programs/config_program", version = "0.15.0" }
|
||||
solana-vote-signer = { path = "../vote-signer", version = "0.15.0" }
|
||||
sys-info = "0.5.6"
|
||||
tokio = "0.1"
|
||||
|
|
|
@ -409,7 +409,7 @@ pub fn new_fullnode_for_tests() -> (Fullnode, ContactInfo, Keypair, String) {
|
|||
create_genesis_block_with_leader(10_000, &contact_info.id, 42);
|
||||
genesis_block
|
||||
.native_instruction_processors
|
||||
.push(("solana_budget_program".to_string(), solana_budget_api::id()));
|
||||
.push(solana_budget_program!());
|
||||
|
||||
let (ledger_path, _blockhash) = create_new_tmp_ledger!(&genesis_block);
|
||||
|
||||
|
|
|
@ -70,6 +70,9 @@ pub mod tvu;
|
|||
pub mod voting_keypair;
|
||||
pub mod window_service;
|
||||
|
||||
#[macro_use]
|
||||
extern crate solana_budget_program;
|
||||
|
||||
#[cfg(test)]
|
||||
#[cfg(any(feature = "chacha", feature = "cuda"))]
|
||||
#[macro_use]
|
||||
|
|
|
@ -368,7 +368,7 @@ mod tests {
|
|||
// This test depends on the budget program
|
||||
genesis_block
|
||||
.native_instruction_processors
|
||||
.push(("solana_budget_program".to_string(), solana_budget_api::id()));
|
||||
.push(solana_budget_program!());
|
||||
|
||||
let bob_pubkey = Pubkey::new_rand();
|
||||
let witness = Keypair::new();
|
||||
|
|
|
@ -14,19 +14,24 @@ serde_json = "1.0.39"
|
|||
solana = { path = "../core", version = "0.15.0" }
|
||||
solana-sdk = { path = "../sdk", version = "0.15.0" }
|
||||
solana-budget-api = { path = "../programs/budget_api", version = "0.15.0" }
|
||||
solana-budget-program = { path = "../programs/budget_program", version = "0.15.0" }
|
||||
solana-vote-api = { path = "../programs/vote_api", version = "0.15.0" }
|
||||
solana-vote-program = { path = "../programs/vote_program", version = "0.15.0" }
|
||||
solana-stake-api = { path = "../programs/stake_api", version = "0.15.0" }
|
||||
solana-stake-program = { path = "../programs/stake_program", version = "0.15.0" }
|
||||
solana-storage-api = { path = "../programs/storage_api", version = "0.15.0" }
|
||||
solana-storage-program = { path = "../programs/storage_program", version = "0.15.0" }
|
||||
solana-token-api = { path = "../programs/token_api", version = "0.15.0" }
|
||||
solana-token-program = { path = "../programs/token_program", version = "0.15.0" }
|
||||
solana-config-api = { path = "../programs/config_api", version = "0.15.0" }
|
||||
solana-config-program = { path = "../programs/config_program", version = "0.15.0" }
|
||||
solana-exchange-api = { path = "../programs/exchange_api", version = "0.15.0" }
|
||||
|
||||
solana-exchange-program = { path = "../programs/exchange_program", version = "0.15.0" }
|
||||
|
||||
[dev-dependencies]
|
||||
hashbrown = "0.3.0"
|
||||
|
||||
|
||||
[features]
|
||||
cuda = ["solana/cuda"]
|
||||
erasure = []
|
||||
|
|
|
@ -3,6 +3,16 @@
|
|||
extern crate solana_vote_program;
|
||||
#[macro_use]
|
||||
extern crate solana_stake_program;
|
||||
#[macro_use]
|
||||
extern crate solana_budget_program;
|
||||
#[macro_use]
|
||||
extern crate solana_storage_program;
|
||||
#[macro_use]
|
||||
extern crate solana_token_program;
|
||||
#[macro_use]
|
||||
extern crate solana_config_program;
|
||||
#[macro_use]
|
||||
extern crate solana_exchange_program;
|
||||
|
||||
use clap::{crate_description, crate_name, crate_version, value_t_or_exit, App, Arg};
|
||||
use solana::blocktree::create_new_ledger;
|
||||
|
@ -150,17 +160,11 @@ fn main() -> Result<(), Box<dyn error::Error>> {
|
|||
&[
|
||||
solana_vote_program!(),
|
||||
solana_stake_program!(),
|
||||
("solana_budget_program".to_string(), solana_budget_api::id()),
|
||||
(
|
||||
"solana_storage_program".to_string(),
|
||||
solana_storage_api::id(),
|
||||
),
|
||||
("solana_token_program".to_string(), solana_token_api::id()),
|
||||
("solana_config_program".to_string(), solana_config_api::id()),
|
||||
(
|
||||
"solana_exchange_program".to_string(),
|
||||
solana_exchange_api::id(),
|
||||
),
|
||||
solana_budget_program!(),
|
||||
solana_storage_program!(),
|
||||
solana_token_program!(),
|
||||
solana_config_program!(),
|
||||
solana_exchange_program!(),
|
||||
],
|
||||
);
|
||||
genesis_block.fee_calculator.lamports_per_signature =
|
||||
|
|
|
@ -16,5 +16,4 @@ solana-sdk = { path = "../../sdk", version = "0.15.0" }
|
|||
|
||||
[lib]
|
||||
name = "solana_budget_program"
|
||||
crate-type = ["cdylib"]
|
||||
|
||||
crate-type = ["lib","cdylib"]
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
use solana_budget_api::budget_processor::process_instruction;
|
||||
#[macro_export]
|
||||
macro_rules! solana_budget_program {
|
||||
() => {
|
||||
("solana_budget_program".to_string(), solana_budget_api::id())
|
||||
};
|
||||
}
|
||||
|
||||
use solana_budget_api::budget_processor::process_instruction;
|
||||
solana_sdk::solana_entrypoint!(process_instruction);
|
||||
|
|
|
@ -16,5 +16,4 @@ solana-sdk = { path = "../../sdk", version = "0.15.0" }
|
|||
|
||||
[lib]
|
||||
name = "solana_config_program"
|
||||
crate-type = ["cdylib"]
|
||||
|
||||
crate-type = ["lib","cdylib"]
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
#[macro_export]
|
||||
macro_rules! solana_config_program {
|
||||
() => {
|
||||
("solana_config_program".to_string(), solana_config_api::id())
|
||||
};
|
||||
}
|
||||
use solana_config_api::config_processor::process_instruction;
|
||||
|
||||
solana_sdk::solana_entrypoint!(process_instruction);
|
||||
|
|
|
@ -16,6 +16,4 @@ solana-sdk = { path = "../../sdk", version = "0.15.0" }
|
|||
|
||||
[lib]
|
||||
name = "solana_exchange_program"
|
||||
crate-type = ["cdylib"]
|
||||
|
||||
|
||||
crate-type = ["lib","cdylib"]
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
#[macro_export]
|
||||
macro_rules! solana_exchange_program {
|
||||
() => {
|
||||
(
|
||||
"solana_exchange_program".to_string(),
|
||||
solana_exchange_api::id(),
|
||||
)
|
||||
};
|
||||
}
|
||||
use solana_exchange_api::exchange_processor::process_instruction;
|
||||
|
||||
solana_sdk::solana_entrypoint!(process_instruction);
|
||||
|
|
|
@ -16,5 +16,4 @@ solana-storage-api = { path = "../storage_api", version = "0.15.0" }
|
|||
|
||||
[lib]
|
||||
name = "solana_storage_program"
|
||||
crate-type = ["cdylib"]
|
||||
|
||||
crate-type = ["lib", "cdylib"]
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
use solana_storage_api::storage_processor::process_instruction;
|
||||
#[macro_export]
|
||||
macro_rules! solana_storage_program {
|
||||
() => {
|
||||
(
|
||||
"solana_storage_program".to_string(),
|
||||
solana_storage_api::id(),
|
||||
)
|
||||
};
|
||||
}
|
||||
|
||||
use solana_storage_api::storage_processor::process_instruction;
|
||||
solana_sdk::solana_entrypoint!(process_instruction);
|
||||
|
|
|
@ -16,5 +16,4 @@ solana-token-api = { path = "../token_api", version = "0.15.0" }
|
|||
|
||||
[lib]
|
||||
name = "solana_token_program"
|
||||
crate-type = ["cdylib"]
|
||||
|
||||
crate-type = ["lib","cdylib"]
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
#[macro_export]
|
||||
macro_rules! solana_token_program {
|
||||
() => {
|
||||
("solana_token_program".to_string(), solana_token_api::id())
|
||||
};
|
||||
}
|
||||
|
||||
use solana_token_api::token_processor::process_instruction;
|
||||
|
||||
solana_sdk::solana_entrypoint!(process_instruction);
|
||||
|
|
|
@ -29,6 +29,7 @@ solana-sdk = { path = "../sdk", version = "0.15.0" }
|
|||
solana-stake-api = { path = "../programs/stake_api", version = "0.15.0" }
|
||||
solana-vote-api = { path = "../programs/vote_api", version = "0.15.0" }
|
||||
solana-vote-program = { path = "../programs/vote_program", version = "0.15.0" }
|
||||
solana-noop-program = { path = "../programs/noop_program", version = "0.15.0" }
|
||||
|
||||
[lib]
|
||||
name = "solana_runtime"
|
||||
|
|
|
@ -284,10 +284,6 @@ impl Bank {
|
|||
"solana_bpf_loader",
|
||||
&solana_sdk::bpf_loader::id(),
|
||||
);
|
||||
self.register_native_instruction_processor(
|
||||
&solana_vote_program!().0,
|
||||
&solana_vote_program!().1,
|
||||
);
|
||||
|
||||
// Add additional native programs specified in the genesis block
|
||||
for (name, program_id) in &genesis_block.native_instruction_processors {
|
||||
|
|
|
@ -53,7 +53,7 @@ pub fn create_genesis_block_with_leader(
|
|||
),
|
||||
),
|
||||
],
|
||||
&[],
|
||||
&[solana_vote_program!()],
|
||||
);
|
||||
|
||||
(genesis_block, mint_keypair, voting_keypair)
|
||||
|
|
Loading…
Reference in New Issue