PORTNAME= solana DISTVERSIONPREFIX= v DISTVERSION= 1.9.4 PORTREVISION= 12 CATEGORIES= security MAINTAINER= yuri@FreeBSD.org COMMENT= Web-scale blockchain for decentralized apps and marketplaces WWW= https://solana.com/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN= Fails to build with rust 1.61.0+, see https://github.com/quinn-rs/quinn/issues/1142 BROKEN_i386= Fails on 32-bit systems: https://github.com/solana-labs/solana/issues/16811 BUILD_DEPENDS= llvm-config${LLVM_VERSION}:devel/llvm${LLVM_VERSION} \ protoc:devel/protobuf \ gmake:devel/gmake LIB_DEPENDS= libhidapi.so:comms/hidapi USES= cargo pkgconfig ssl USE_GITHUB= yes GH_ACCOUNT= solana-labs CARGO_CRATES= Inflector-0.11.4 \ addr2line-0.16.0 \ adler-1.0.2 \ ahash-0.4.7 \ ahash-0.7.6 \ aho-corasick-0.7.18 \ aliasable-0.1.3 \ ansi_term-0.11.0 \ anyhow-1.0.51 \ arc-swap-1.5.0 \ arrayref-0.3.6 \ arrayvec-0.5.2 \ arrayvec-0.7.2 \ ascii-0.9.3 \ assert_cmd-2.0.2 \ assert_matches-1.5.0 \ async-stream-0.3.2 \ async-stream-impl-0.3.2 \ async-trait-0.1.51 \ atty-0.2.14 \ autocfg-0.1.7 \ autocfg-1.0.1 \ backoff-0.3.0 \ backtrace-0.3.62 \ base-x-0.2.8 \ base32-0.4.0 \ base64-0.9.3 \ base64-0.10.1 \ base64-0.12.3 \ base64-0.13.0 \ bincode-1.3.3 \ bindgen-0.59.1 \ bit-set-0.5.2 \ bit-vec-0.6.3 \ bitflags-1.3.2 \ bitvec-0.19.5 \ blake3-0.3.8 \ blake3-1.2.0 \ block-buffer-0.7.3 \ block-buffer-0.9.0 \ block-padding-0.1.5 \ block-padding-0.2.1 \ borsh-0.9.1 \ borsh-derive-0.9.1 \ borsh-derive-internal-0.9.1 \ borsh-schema-derive-internal-0.9.1 \ bs58-0.3.1 \ bs58-0.4.0 \ bstr-0.2.17 \ bumpalo-3.8.0 \ bv-0.11.1 \ byte-tools-0.3.1 \ byte-unit-4.0.13 \ bytecount-0.6.2 \ bytemuck-1.7.2 \ bytemuck_derive-1.0.1 \ byteorder-1.4.3 \ bytes-0.4.12 \ bytes-1.1.0 \ bytesize-1.1.0 \ bzip2-0.4.3 \ bzip2-sys-0.1.11+1.0.8 \ camino-1.0.5 \ caps-0.5.3 \ cargo-platform-0.1.2 \ cargo_metadata-0.14.1 \ cast-0.2.7 \ cc-1.0.71 \ cexpr-0.5.0 \ cfg-if-0.1.10 \ cfg-if-1.0.0 \ chrono-0.4.19 \ chrono-humanize-0.2.1 \ clang-sys-1.2.2 \ clap-2.33.3 \ clap-3.0.0-beta.5 \ clap_derive-3.0.0-beta.5 \ cloudabi-0.0.3 \ combine-3.8.1 \ console-0.15.0 \ console_error_panic_hook-0.1.7 \ console_log-0.2.0 \ const_fn-0.4.8 \ const_format-0.2.22 \ const_format_proc_macros-0.2.22 \ constant_time_eq-0.1.5 \ convert_case-0.4.0 \ core-foundation-0.9.2 \ core-foundation-sys-0.8.3 \ core_affinity-0.5.10 \ cpufeatures-0.2.1 \ crc32fast-1.2.1 \ criterion-stats-0.3.0 \ crossbeam-channel-0.5.1 \ crossbeam-deque-0.8.1 \ crossbeam-epoch-0.9.5 \ crossbeam-utils-0.7.2 \ crossbeam-utils-0.8.5 \ crunchy-0.2.2 \ crypto-mac-0.8.0 \ crypto-mac-0.9.1 \ crypto-mac-0.11.1 \ csv-1.1.6 \ csv-core-0.1.10 \ ctrlc-3.2.1 \ curve25519-dalek-2.1.3 \ curve25519-dalek-3.2.0 \ dashmap-4.0.2 \ derivation-path-0.1.3 \ derivative-2.2.0 \ derive_more-0.99.16 \ dialoguer-0.9.0 \ difflib-0.4.0 \ digest-0.8.1 \ digest-0.9.0 \ dir-diff-0.3.2 \ dirs-next-2.0.0 \ dirs-sys-next-0.1.2 \ discard-1.0.4 \ dlopen-0.1.8 \ dlopen_derive-0.1.4 \ doc-comment-0.3.3 \ dtoa-0.4.8 \ ed25519-1.2.0 \ ed25519-dalek-1.0.1 \ ed25519-dalek-bip32-0.1.1 \ educe-0.4.18 \ either-1.6.1 \ encode_unicode-0.3.6 \ encoding_rs-0.8.29 \ enum-iterator-0.7.0 \ enum-iterator-derive-0.7.0 \ enum-ordinalize-3.1.10 \ env_logger-0.8.4 \ env_logger-0.9.0 \ errno-0.2.8 \ errno-dragonfly-0.1.2 \ etcd-client-0.8.1 \ failure-0.1.8 \ failure_derive-0.1.8 \ fake-simd-0.1.2 \ fallible-iterator-0.2.0 \ fast-math-0.1.1 \ fd-lock-3.0.1 \ feature-probe-0.1.1 \ filedescriptor-0.8.1 \ filetime-0.2.15 \ fixedbitset-0.4.0 \ flate2-1.0.22 \ fnv-1.0.7 \ foreign-types-0.3.2 \ foreign-types-shared-0.1.1 \ form_urlencoded-1.0.1 \ fs_extra-1.2.0 \ fuchsia-cprng-0.1.1 \ fuchsia-zircon-0.3.3 \ fuchsia-zircon-sys-0.3.3 \ funty-1.1.0 \ futures-0.1.31 \ futures-0.3.18 \ futures-channel-0.3.18 \ futures-core-0.3.18 \ futures-executor-0.3.18 \ futures-io-0.3.18 \ futures-macro-0.3.18 \ futures-sink-0.3.18 \ futures-task-0.3.18 \ futures-util-0.3.18 \ gag-1.0.0 \ generic-array-0.12.4 \ generic-array-0.14.4 \ gethostname-0.2.1 \ getrandom-0.1.16 \ getrandom-0.2.3 \ gimli-0.25.0 \ glob-0.3.0 \ globset-0.4.8 \ goauth-0.10.0 \ goblin-0.4.3 \ h2-0.3.7 \ half-1.8.2 \ hash32-0.1.1 \ hashbrown-0.9.1 \ hashbrown-0.11.2 \ heck-0.3.3 \ hermit-abi-0.1.19 \ hex-0.4.3 \ hidapi-1.3.0 \ histogram-0.6.9 \ hmac-0.8.1 \ hmac-0.9.0 \ hmac-0.11.0 \ hmac-drbg-0.3.0 \ http-0.2.5 \ http-body-0.4.4 \ httparse-1.5.1 \ httpdate-1.0.1 \ humantime-2.1.0 \ hyper-0.10.16 \ hyper-0.14.14 \ hyper-rustls-0.22.1 \ hyper-timeout-0.4.1 \ hyper-tls-0.5.0 \ idna-0.1.5 \ idna-0.2.3 \ ieee754-0.2.6 \ indexmap-1.7.0 \ indicatif-0.16.2 \ instant-0.1.12 \ iovec-0.1.4 \ ipnet-2.3.1 \ itertools-0.9.0 \ itertools-0.10.1 \ itoa-0.4.8 \ jobserver-0.1.24 \ js-sys-0.3.55 \ jsonrpc-client-transports-18.0.0 \ jsonrpc-core-18.0.0 \ jsonrpc-core-client-18.0.0 \ jsonrpc-derive-18.0.0 \ jsonrpc-http-server-18.0.0 \ jsonrpc-ipc-server-18.0.0 \ jsonrpc-pubsub-18.0.0 \ jsonrpc-server-utils-18.0.0 \ jsonrpc-ws-server-18.0.0 \ keccak-0.1.0 \ kernel32-sys-0.2.2 \ language-tags-0.2.2 \ lazy_static-1.4.0 \ lazycell-1.3.0 \ libc-0.2.108 \ libloading-0.7.2 \ libm-0.2.1 \ librocksdb-sys-6.20.3 \ libsecp256k1-0.5.0 \ libsecp256k1-0.6.0 \ libsecp256k1-core-0.2.2 \ libsecp256k1-gen-ecmult-0.2.1 \ libsecp256k1-gen-genmult-0.2.1 \ linked-hash-map-0.5.4 \ lock_api-0.3.4 \ lock_api-0.4.5 \ log-0.3.9 \ log-0.4.14 \ lru-0.7.1 \ matches-0.1.9 \ maybe-uninit-2.0.0 \ md-5-0.9.1 \ memchr-2.4.1 \ memmap2-0.1.0 \ memmap2-0.5.0 \ memoffset-0.6.4 \ mime-0.2.6 \ mime-0.3.16 \ minimal-lexical-0.1.4 \ miniz_oxide-0.4.4 \ mio-0.6.23 \ mio-0.7.14 \ mio-extras-2.0.6 \ miow-0.2.2 \ miow-0.3.7 \ multimap-0.8.3 \ native-tls-0.2.8 \ net2-0.2.37 \ nix-0.23.0 \ nom-6.1.2 \ nom-7.0.0 \ ntapi-0.3.6 \ num-bigint-0.4.2 \ num-derive-0.3.3 \ num-integer-0.1.44 \ num-traits-0.2.14 \ num_cpus-1.13.0 \ num_enum-0.5.4 \ num_enum_derive-0.5.4 \ number_prefix-0.4.0 \ object-0.27.1 \ once_cell-1.8.0 \ opaque-debug-0.2.3 \ opaque-debug-0.3.0 \ openssl-0.10.38 \ openssl-probe-0.1.4 \ openssl-src-300.0.4+3.0.1 \ openssl-sys-0.9.70 \ opentelemetry-0.16.0 \ os_str_bytes-4.2.0 \ ouroboros-0.13.0 \ ouroboros_macro-0.13.0 \ parity-tokio-ipc-0.9.0 \ parity-ws-0.11.1 \ parking_lot-0.9.0 \ parking_lot-0.11.2 \ parking_lot_core-0.6.2 \ parking_lot_core-0.8.5 \ pbkdf2-0.4.0 \ pbkdf2-0.9.0 \ peeking_take_while-0.1.2 \ percent-encoding-1.0.1 \ percent-encoding-2.1.0 \ pest-2.1.3 \ petgraph-0.6.0 \ phf-0.10.0 \ phf_shared-0.10.0 \ pickledb-0.4.1 \ pin-project-1.0.8 \ pin-project-internal-1.0.8 \ pin-project-lite-0.2.7 \ pin-utils-0.1.0 \ pkg-config-0.3.22 \ plain-0.2.3 \ postgres-0.19.2 \ postgres-derive-0.4.0 \ postgres-protocol-0.6.2 \ postgres-types-0.2.2 \ ppv-lite86-0.2.15 \ predicates-2.0.3 \ predicates-core-1.0.2 \ predicates-tree-1.0.4 \ pretty-hex-0.2.1 \ proc-macro-crate-0.1.5 \ proc-macro-crate-1.1.0 \ proc-macro-error-1.0.4 \ proc-macro-error-attr-1.0.4 \ proc-macro-hack-0.5.19 \ proc-macro2-0.4.30 \ proc-macro2-1.0.32 \ proptest-1.0.0 \ prost-0.9.0 \ prost-build-0.9.0 \ prost-derive-0.9.0 \ prost-types-0.9.0 \ qstring-0.7.2 \ quick-error-1.2.3 \ quick-error-2.0.1 \ quote-0.6.13 \ quote-1.0.10 \ radium-0.5.3 \ rand-0.4.6 \ rand-0.6.5 \ rand-0.7.3 \ rand-0.8.4 \ rand_chacha-0.1.1 \ rand_chacha-0.2.2 \ rand_chacha-0.3.1 \ rand_core-0.3.1 \ rand_core-0.4.2 \ rand_core-0.5.1 \ rand_core-0.6.3 \ rand_hc-0.1.0 \ rand_hc-0.2.0 \ rand_hc-0.3.1 \ rand_isaac-0.1.1 \ rand_jitter-0.1.4 \ rand_os-0.1.3 \ rand_pcg-0.1.2 \ rand_pcg-0.2.1 \ rand_xorshift-0.1.1 \ rand_xorshift-0.3.0 \ raptorq-1.6.4 \ rayon-1.5.1 \ rayon-core-1.9.1 \ rdrand-0.4.0 \ redox_syscall-0.1.57 \ redox_syscall-0.2.10 \ redox_users-0.4.0 \ reed-solomon-erasure-5.0.1 \ regex-1.5.4 \ regex-automata-0.1.10 \ regex-syntax-0.6.25 \ remove_dir_all-0.5.3 \ reqwest-0.11.6 \ retain_mut-0.1.5 \ ring-0.16.20 \ rocksdb-0.17.0 \ rpassword-5.0.1 \ rustc-demangle-0.1.21 \ rustc-hash-1.1.0 \ rustc_version-0.2.3 \ rustc_version-0.3.3 \ rustc_version-0.4.0 \ rustls-0.19.1 \ rustls-0.20.0 \ rustversion-1.0.5 \ rusty-fork-0.3.0 \ ryu-1.0.5 \ safemem-0.3.3 \ same-file-1.0.6 \ schannel-0.1.19 \ scopeguard-1.1.0 \ scroll-0.10.2 \ scroll_derive-0.10.5 \ sct-0.6.1 \ sct-0.7.0 \ security-framework-2.4.2 \ security-framework-sys-2.4.2 \ semver-0.9.0 \ semver-0.11.0 \ semver-1.0.4 \ semver-parser-0.7.0 \ semver-parser-0.10.2 \ serde-1.0.130 \ serde_bytes-0.11.5 \ serde_cbor-0.11.2 \ serde_derive-1.0.130 \ serde_json-1.0.72 \ serde_urlencoded-0.7.0 \ serde_yaml-0.8.21 \ serial_test-0.5.1 \ serial_test_derive-0.5.1 \ sha-1-0.8.2 \ sha-1-0.9.8 \ sha1-0.6.0 \ sha2-0.9.8 \ sha3-0.9.1 \ sharded-slab-0.1.4 \ shlex-1.1.0 \ signal-hook-0.3.10 \ signal-hook-registry-1.4.0 \ signature-1.4.0 \ simpl-0.1.0 \ siphasher-0.3.7 \ slab-0.4.5 \ smallvec-0.6.14 \ smallvec-1.7.0 \ smpl_jwt-0.6.1 \ socket2-0.4.2 \ soketto-0.7.1 \ solana-frozen-abi-1.8.2 \ solana-frozen-abi-macro-1.8.2 \ solana-logger-1.8.2 \ solana-program-1.8.2 \ solana-sdk-macro-1.8.2 \ solana_rbpf-0.2.21 \ spin-0.5.2 \ spin-0.9.2 \ spl-associated-token-account-1.0.3 \ spl-memo-3.0.1 \ spl-token-3.2.0 \ stable_deref_trait-1.2.0 \ standback-0.2.17 \ static_assertions-1.1.0 \ stdweb-0.4.20 \ stdweb-derive-0.5.3 \ stdweb-internal-macros-0.2.9 \ stdweb-internal-runtime-0.1.5 \ stream-cancel-0.8.1 \ stringprep-0.1.2 \ strsim-0.8.0 \ strsim-0.10.0 \ subtle-2.4.1 \ symlink-0.1.0 \ syn-0.15.44 \ syn-1.0.81 \ synstructure-0.12.6 \ sys-info-0.9.1 \ sysctl-0.4.3 \ systemstat-0.1.10 \ tap-1.0.1 \ tar-0.4.37 \ tarpc-0.27.2 \ tarpc-plugins-0.12.0 \ tempfile-3.2.0 \ termcolor-1.1.2 \ terminal_size-0.1.17 \ termtree-0.2.3 \ textwrap-0.11.0 \ textwrap-0.14.2 \ thiserror-1.0.30 \ thiserror-impl-1.0.30 \ thread-scoped-1.0.2 \ thread_local-1.1.3 \ tikv-jemalloc-sys-0.4.2+5.2.1-patched.2 \ tikv-jemallocator-0.4.1 \ time-0.1.43 \ time-0.2.27 \ time-0.3.5 \ time-macros-0.1.1 \ time-macros-impl-0.1.2 \ tiny-bip39-0.8.2 \ tinyvec-1.5.0 \ tinyvec_macros-0.1.0 \ tokio-1.14.0 \ tokio-codec-0.1.2 \ tokio-executor-0.1.10 \ tokio-io-0.1.13 \ tokio-io-timeout-1.1.1 \ tokio-macros-1.6.0 \ tokio-native-tls-0.3.0 \ tokio-postgres-0.7.5 \ tokio-reactor-0.1.12 \ tokio-rustls-0.22.0 \ tokio-serde-0.8.0 \ tokio-stream-0.1.8 \ tokio-sync-0.1.8 \ tokio-tcp-0.1.4 \ tokio-tls-0.2.1 \ tokio-util-0.6.9 \ toml-0.5.8 \ tonic-0.6.1 \ tonic-build-0.6.0 \ tower-0.4.10 \ tower-layer-0.3.1 \ tower-service-0.3.1 \ tracing-0.1.29 \ tracing-attributes-0.1.18 \ tracing-core-0.1.21 \ tracing-futures-0.2.5 \ tracing-opentelemetry-0.15.0 \ tracing-subscriber-0.2.25 \ traitobject-0.1.0 \ trees-0.4.2 \ try-lock-0.2.3 \ tungstenite-0.16.0 \ typeable-0.1.2 \ typenum-1.14.0 \ ucd-trie-0.1.3 \ unicase-1.4.2 \ unicase-2.6.0 \ unicode-bidi-0.3.7 \ unicode-normalization-0.1.19 \ unicode-segmentation-1.8.0 \ unicode-width-0.1.9 \ unicode-xid-0.1.0 \ unicode-xid-0.2.2 \ unix_socket2-0.5.4 \ unreachable-1.0.0 \ untrusted-0.7.1 \ uriparse-0.6.3 \ url-1.7.2 \ url-2.2.2 \ users-0.10.0 \ utf-8-0.7.6 \ utf8-width-0.1.5 \ vcpkg-0.2.15 \ vec_map-0.8.2 \ version_check-0.1.5 \ version_check-0.9.3 \ void-1.0.2 \ wait-timeout-0.2.0 \ walkdir-2.3.2 \ want-0.3.0 \ wasi-0.9.0+wasi-snapshot-preview1 \ wasi-0.10.2+wasi-snapshot-preview1 \ wasm-bindgen-0.2.78 \ wasm-bindgen-backend-0.2.78 \ wasm-bindgen-futures-0.4.28 \ wasm-bindgen-macro-0.2.78 \ wasm-bindgen-macro-support-0.2.78 \ wasm-bindgen-shared-0.2.78 \ web-sys-0.3.55 \ webpki-0.21.4 \ webpki-0.22.0 \ webpki-roots-0.21.1 \ webpki-roots-0.22.1 \ websocket-0.24.0 \ websocket-base-0.24.0 \ which-4.2.2 \ winapi-0.2.8 \ winapi-0.3.9 \ winapi-build-0.1.1 \ winapi-i686-pc-windows-gnu-0.4.0 \ winapi-util-0.1.5 \ winapi-x86_64-pc-windows-gnu-0.4.0 \ windows-sys-0.28.0 \ windows_aarch64_msvc-0.28.0 \ windows_i686_gnu-0.28.0 \ windows_i686_msvc-0.28.0 \ windows_x86_64_gnu-0.28.0 \ windows_x86_64_msvc-0.28.0 \ winreg-0.7.0 \ winreg-0.10.1 \ ws2_32-sys-0.2.1 \ wyz-0.2.0 \ xattr-0.2.2 \ yaml-rust-0.4.5 \ zeroize-1.4.2 \ zeroize_derive-1.2.0 \ zstd-0.9.0+zstd.1.5.0 \ zstd-safe-4.1.1+zstd.1.5.0 \ zstd-sys-1.6.1+zstd.1.5.0 XARCH= ${ARCH:S/amd64/x86_64/:tu} MAKE_ENV= ${XARCH}_UNKNOWN_FREEBSD_OPENSSL_INCLUDE_DIR=${OPENSSLINC} \ ${XARCH}_UNKNOWN_FREEBSD_OPENSSL_LIB_DIR=${OPENSSLLIB} LLVM_VERSION= 12 BINARY_ALIAS= llvm-config=${PREFIX}/bin/llvm-config${LLVM_VERSION} do-install: for f in ${CARGO_TARGET_DIR}/${CARGO_BUILD_TARGET}/*/${PORTNAME}*; do \ if [ -f $$f -a -x $$f ]; then \ ${INSTALL_PROGRAM} $$f ${STAGEDIR}${PREFIX}/bin; \ fi \ done do-test: @${CARGO_CARGO_RUN} test .include