2def06f5c3
Reported by: portscout
480 lines
11 KiB
Makefile
480 lines
11 KiB
Makefile
PORTNAME= cairo
|
|
DISTVERSIONPREFIX= v
|
|
DISTVERSION= 2.11.4
|
|
CATEGORIES= lang
|
|
PKGNAMESUFFIX= -language
|
|
|
|
MAINTAINER= yuri@FreeBSD.org
|
|
COMMENT= Turing-complete language for creating provable programs
|
|
WWW= https://www.cairo-lang.org/ \
|
|
https://cairo-by-example.com/ \
|
|
https://github.com/starkware-libs/cairo
|
|
|
|
LICENSE= APACHE20
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
|
|
|
BROKEN_i386= compilation fails: error: undefined symbol: __atomic_load
|
|
|
|
BUILD_DEPENDS= gmake:devel/gmake
|
|
LIB_DEPENDS= libzstd.so:archivers/zstd
|
|
|
|
USES= cargo perl5 pkgconfig
|
|
USE_PERL5= build
|
|
|
|
USE_GITHUB= yes
|
|
GH_ACCOUNT= starkware-libs
|
|
|
|
CARGO_CRATES= addr2line-0.24.2 \
|
|
adler2-2.0.0 \
|
|
aes-0.8.4 \
|
|
ahash-0.8.11 \
|
|
aho-corasick-1.1.3 \
|
|
allocator-api2-0.2.21 \
|
|
anstream-0.6.18 \
|
|
anstyle-1.0.10 \
|
|
anstyle-parse-0.2.6 \
|
|
anstyle-query-1.1.2 \
|
|
anstyle-wincon-3.0.7 \
|
|
anyhow-1.0.95 \
|
|
ark-ec-0.5.0 \
|
|
ark-ff-0.4.2 \
|
|
ark-ff-0.5.0 \
|
|
ark-ff-asm-0.4.2 \
|
|
ark-ff-asm-0.5.0 \
|
|
ark-ff-macros-0.4.2 \
|
|
ark-ff-macros-0.5.0 \
|
|
ark-poly-0.5.0 \
|
|
ark-secp256k1-0.5.0 \
|
|
ark-secp256r1-0.5.0 \
|
|
ark-serialize-0.4.2 \
|
|
ark-serialize-0.5.0 \
|
|
ark-serialize-derive-0.5.0 \
|
|
ark-std-0.4.0 \
|
|
ark-std-0.5.0 \
|
|
arrayvec-0.7.6 \
|
|
ascii-canvas-4.0.0 \
|
|
assert_matches-1.5.0 \
|
|
async-channel-2.3.1 \
|
|
atomic-waker-1.1.2 \
|
|
autocfg-1.4.0 \
|
|
backtrace-0.3.74 \
|
|
base64-0.22.1 \
|
|
base64ct-1.6.0 \
|
|
bimap-0.6.3 \
|
|
bincode-1.3.3 \
|
|
bincode-2.0.0-rc.3 \
|
|
bincode_derive-2.0.0-rc.3 \
|
|
bit-set-0.8.0 \
|
|
bit-vec-0.8.0 \
|
|
bitflags-2.8.0 \
|
|
bitvec-1.0.1 \
|
|
block-buffer-0.10.4 \
|
|
bstr-1.11.3 \
|
|
bumpalo-3.17.0 \
|
|
byte-slice-cast-1.2.2 \
|
|
byteorder-1.5.0 \
|
|
bytes-1.9.0 \
|
|
bzip2-0.4.4 \
|
|
bzip2-sys-0.1.11+1.0.8 \
|
|
cairo-lang-primitive-token-1.0.0 \
|
|
cairo-vm-1.0.2 \
|
|
cc-1.2.10 \
|
|
cfg-if-1.0.0 \
|
|
cipher-0.4.4 \
|
|
clap-4.5.29 \
|
|
clap_builder-4.5.29 \
|
|
clap_derive-4.5.28 \
|
|
clap_lex-0.7.4 \
|
|
colorchoice-1.0.3 \
|
|
colored-3.0.0 \
|
|
concurrent-queue-2.5.0 \
|
|
console-0.15.10 \
|
|
const-fnv1a-hash-1.1.0 \
|
|
const_format-0.2.34 \
|
|
const_format_proc_macros-0.2.34 \
|
|
constant_time_eq-0.1.5 \
|
|
convert_case-0.7.1 \
|
|
core-foundation-0.9.4 \
|
|
core-foundation-sys-0.8.7 \
|
|
cpufeatures-0.2.17 \
|
|
crc32fast-1.4.2 \
|
|
crossbeam-deque-0.8.6 \
|
|
crossbeam-epoch-0.9.18 \
|
|
crossbeam-utils-0.8.21 \
|
|
crypto-bigint-0.5.5 \
|
|
crypto-common-0.1.6 \
|
|
deranged-0.3.11 \
|
|
derivative-2.2.0 \
|
|
diff-0.1.13 \
|
|
diffy-0.4.2 \
|
|
digest-0.10.7 \
|
|
displaydoc-0.2.5 \
|
|
dyn-clone-1.0.17 \
|
|
educe-0.6.0 \
|
|
either-1.13.0 \
|
|
ena-0.14.3 \
|
|
encode_unicode-1.0.0 \
|
|
encoding_rs-0.8.35 \
|
|
enum-ordinalize-4.3.0 \
|
|
enum-ordinalize-derive-4.3.1 \
|
|
env_filter-0.1.3 \
|
|
env_logger-0.11.6 \
|
|
equivalent-1.0.1 \
|
|
errno-0.3.10 \
|
|
event-listener-5.4.0 \
|
|
event-listener-strategy-0.5.3 \
|
|
fastrand-2.3.0 \
|
|
fixedbitset-0.5.7 \
|
|
flate2-1.0.35 \
|
|
fnv-1.0.7 \
|
|
foldhash-0.1.4 \
|
|
foreign-types-0.3.2 \
|
|
foreign-types-shared-0.1.1 \
|
|
form_urlencoded-1.2.1 \
|
|
funty-2.0.0 \
|
|
futures-channel-0.3.31 \
|
|
futures-core-0.3.31 \
|
|
futures-macro-0.3.31 \
|
|
futures-sink-0.3.31 \
|
|
futures-task-0.3.31 \
|
|
futures-timer-3.0.3 \
|
|
futures-util-0.3.31 \
|
|
genco-0.17.10 \
|
|
genco-macros-0.17.10 \
|
|
generic-array-0.14.7 \
|
|
getopts-0.2.21 \
|
|
getrandom-0.2.15 \
|
|
getrandom-0.3.1 \
|
|
gimli-0.31.1 \
|
|
glob-0.3.2 \
|
|
globset-0.4.15 \
|
|
good_lp-1.11.0 \
|
|
h2-0.4.7 \
|
|
hashbrown-0.12.3 \
|
|
hashbrown-0.14.5 \
|
|
hashbrown-0.15.2 \
|
|
heck-0.4.1 \
|
|
heck-0.5.0 \
|
|
hex-0.4.3 \
|
|
hmac-0.12.1 \
|
|
home-0.5.11 \
|
|
http-1.2.0 \
|
|
http-body-1.0.1 \
|
|
http-body-util-0.1.2 \
|
|
httparse-1.10.0 \
|
|
humantime-2.1.0 \
|
|
hyper-1.6.0 \
|
|
hyper-rustls-0.27.5 \
|
|
hyper-tls-0.6.0 \
|
|
hyper-util-0.1.10 \
|
|
icu_collections-1.5.0 \
|
|
icu_locid-1.5.0 \
|
|
icu_locid_transform-1.5.0 \
|
|
icu_locid_transform_data-1.5.0 \
|
|
icu_normalizer-1.5.0 \
|
|
icu_normalizer_data-1.5.0 \
|
|
icu_properties-1.5.1 \
|
|
icu_properties_data-1.5.0 \
|
|
icu_provider-1.5.0 \
|
|
icu_provider_macros-1.5.0 \
|
|
id-arena-2.2.1 \
|
|
idna-1.0.3 \
|
|
idna_adapter-1.2.0 \
|
|
ignore-0.4.23 \
|
|
impl-trait-for-tuples-0.2.3 \
|
|
indent-0.1.1 \
|
|
indexmap-1.9.3 \
|
|
indexmap-2.7.1 \
|
|
indicatif-0.17.11 \
|
|
indoc-2.0.5 \
|
|
inout-0.1.3 \
|
|
ipnet-2.11.0 \
|
|
is_terminal_polyfill-1.70.1 \
|
|
itertools-0.10.5 \
|
|
itertools-0.13.0 \
|
|
itertools-0.14.0 \
|
|
itoa-1.0.14 \
|
|
jobserver-0.1.32 \
|
|
js-sys-0.3.77 \
|
|
keccak-0.1.5 \
|
|
lalrpop-0.22.1 \
|
|
lalrpop-util-0.22.1 \
|
|
lambdaworks-crypto-0.10.0 \
|
|
lambdaworks-math-0.10.0 \
|
|
lazy_static-1.5.0 \
|
|
libc-0.2.169 \
|
|
linux-raw-sys-0.4.15 \
|
|
litemap-0.7.4 \
|
|
lock_api-0.4.12 \
|
|
log-0.4.25 \
|
|
lru-0.12.5 \
|
|
matchers-0.1.0 \
|
|
matrixmultiply-0.3.9 \
|
|
memchr-2.7.4 \
|
|
microlp-0.2.9 \
|
|
mime-0.3.17 \
|
|
minimal-lexical-0.2.1 \
|
|
miniz_oxide-0.8.3 \
|
|
mio-1.0.3 \
|
|
native-tls-0.2.13 \
|
|
ndarray-0.16.1 \
|
|
new_debug_unreachable-1.0.6 \
|
|
nom-7.1.3 \
|
|
nu-ansi-term-0.46.0 \
|
|
nu-ansi-term-0.50.1 \
|
|
num-bigint-0.4.6 \
|
|
num-complex-0.4.6 \
|
|
num-conv-0.1.0 \
|
|
num-integer-0.1.46 \
|
|
num-modular-0.5.1 \
|
|
num-prime-0.4.4 \
|
|
num-traits-0.2.19 \
|
|
num_threads-0.1.7 \
|
|
number_prefix-0.4.0 \
|
|
object-0.36.7 \
|
|
once_cell-1.20.2 \
|
|
oorandom-11.1.4 \
|
|
openssl-0.10.71 \
|
|
openssl-macros-0.1.1 \
|
|
openssl-probe-0.1.6 \
|
|
openssl-src-300.4.1+3.4.0 \
|
|
openssl-sys-0.9.106 \
|
|
overload-0.1.1 \
|
|
parity-scale-codec-3.7.4 \
|
|
parity-scale-codec-derive-3.7.4 \
|
|
parking-2.2.1 \
|
|
parking_lot-0.12.3 \
|
|
parking_lot_core-0.9.10 \
|
|
password-hash-0.4.2 \
|
|
paste-1.0.15 \
|
|
path-clean-1.0.1 \
|
|
pbkdf2-0.11.0 \
|
|
percent-encoding-2.3.1 \
|
|
petgraph-0.7.1 \
|
|
phf_shared-0.10.0 \
|
|
pico-args-0.5.0 \
|
|
pin-project-lite-0.2.16 \
|
|
pin-utils-0.1.0 \
|
|
pkg-config-0.3.31 \
|
|
portable-atomic-1.10.0 \
|
|
portable-atomic-util-0.2.4 \
|
|
powerfmt-0.2.0 \
|
|
ppv-lite86-0.2.20 \
|
|
precomputed-hash-0.1.1 \
|
|
pretty_assertions-1.4.1 \
|
|
proc-macro-crate-3.2.0 \
|
|
proc-macro2-1.0.93 \
|
|
pulldown-cmark-0.13.0 \
|
|
pulldown-cmark-escape-0.11.0 \
|
|
quote-1.0.38 \
|
|
radium-0.7.0 \
|
|
rand-0.8.5 \
|
|
rand-0.9.0 \
|
|
rand_chacha-0.3.1 \
|
|
rand_chacha-0.9.0 \
|
|
rand_core-0.6.4 \
|
|
rand_core-0.9.0 \
|
|
rawpointer-0.2.1 \
|
|
rayon-1.10.0 \
|
|
rayon-core-1.12.1 \
|
|
redox_syscall-0.5.8 \
|
|
regex-1.11.1 \
|
|
regex-automata-0.1.10 \
|
|
regex-automata-0.4.9 \
|
|
regex-syntax-0.6.29 \
|
|
regex-syntax-0.8.5 \
|
|
relative-path-1.9.3 \
|
|
reqwest-0.12.12 \
|
|
rfc6979-0.4.0 \
|
|
ring-0.17.8 \
|
|
rstest-0.24.0 \
|
|
rstest_macros-0.24.0 \
|
|
rust-analyzer-salsa-0.17.0-pre.6 \
|
|
rust-analyzer-salsa-macros-0.17.0-pre.6 \
|
|
rust_decimal-1.36.0 \
|
|
rustc-demangle-0.1.24 \
|
|
rustc-hash-1.1.0 \
|
|
rustc_version-0.4.1 \
|
|
rustix-0.38.44 \
|
|
rustls-0.23.21 \
|
|
rustls-pemfile-2.2.0 \
|
|
rustls-pki-types-1.11.0 \
|
|
rustls-webpki-0.102.8 \
|
|
rustversion-1.0.19 \
|
|
ryu-1.0.19 \
|
|
same-file-1.0.6 \
|
|
schannel-0.1.27 \
|
|
schemars-0.8.21 \
|
|
schemars_derive-0.8.21 \
|
|
scopeguard-1.2.0 \
|
|
security-framework-2.11.1 \
|
|
security-framework-sys-2.14.0 \
|
|
semver-1.0.25 \
|
|
serde-1.0.217 \
|
|
serde_derive-1.0.217 \
|
|
serde_derive_internals-0.29.1 \
|
|
serde_json-1.0.138 \
|
|
serde_spanned-0.6.8 \
|
|
serde_urlencoded-0.7.1 \
|
|
sha1-0.10.6 \
|
|
sha2-0.10.8 \
|
|
sha3-0.10.8 \
|
|
sharded-slab-0.1.7 \
|
|
shlex-1.3.0 \
|
|
signal-hook-registry-1.4.2 \
|
|
siphasher-0.3.11 \
|
|
slab-0.4.9 \
|
|
smallvec-1.13.2 \
|
|
smol_str-0.2.2 \
|
|
socket2-0.5.8 \
|
|
spin-0.9.8 \
|
|
sprs-0.11.3 \
|
|
stable_deref_trait-1.2.0 \
|
|
starknet-crypto-0.6.2 \
|
|
starknet-crypto-codegen-0.3.3 \
|
|
starknet-curve-0.4.2 \
|
|
starknet-ff-0.3.7 \
|
|
starknet-types-core-0.1.7 \
|
|
string_cache-0.8.7 \
|
|
strsim-0.11.1 \
|
|
subtle-2.6.1 \
|
|
syn-1.0.109 \
|
|
syn-2.0.98 \
|
|
sync_wrapper-1.0.2 \
|
|
synstructure-0.13.1 \
|
|
system-configuration-0.6.1 \
|
|
system-configuration-sys-0.6.0 \
|
|
tap-1.0.1 \
|
|
tempfile-3.16.0 \
|
|
term-1.0.1 \
|
|
test-case-3.3.1 \
|
|
test-case-core-3.3.1 \
|
|
test-case-macros-3.3.1 \
|
|
test-log-0.2.17 \
|
|
test-log-macros-0.2.17 \
|
|
thiserror-1.0.69 \
|
|
thiserror-2.0.11 \
|
|
thiserror-impl-1.0.69 \
|
|
thiserror-impl-2.0.11 \
|
|
thiserror-impl-no-std-2.0.2 \
|
|
thiserror-no-std-2.0.2 \
|
|
thread_local-1.1.8 \
|
|
time-0.3.37 \
|
|
time-core-0.1.2 \
|
|
time-macros-0.2.19 \
|
|
tinystr-0.7.6 \
|
|
tokio-1.43.0 \
|
|
tokio-macros-2.5.0 \
|
|
tokio-native-tls-0.3.1 \
|
|
tokio-rustls-0.26.1 \
|
|
tokio-util-0.7.13 \
|
|
toml-0.8.20 \
|
|
toml_datetime-0.6.8 \
|
|
toml_edit-0.22.24 \
|
|
tower-0.5.2 \
|
|
tower-layer-0.3.3 \
|
|
tower-service-0.3.3 \
|
|
tracing-0.1.41 \
|
|
tracing-attributes-0.1.28 \
|
|
tracing-core-0.1.33 \
|
|
tracing-log-0.2.0 \
|
|
tracing-subscriber-0.3.19 \
|
|
triomphe-0.1.14 \
|
|
try-lock-0.2.5 \
|
|
typenum-1.17.0 \
|
|
unescaper-0.1.5 \
|
|
unicase-2.8.1 \
|
|
unicode-ident-1.0.16 \
|
|
unicode-segmentation-1.12.0 \
|
|
unicode-width-0.1.14 \
|
|
unicode-width-0.2.0 \
|
|
unicode-xid-0.2.6 \
|
|
untrusted-0.9.0 \
|
|
url-2.5.4 \
|
|
utf16_iter-1.0.5 \
|
|
utf8_iter-1.0.4 \
|
|
utf8parse-0.2.2 \
|
|
valuable-0.1.1 \
|
|
vcpkg-0.2.15 \
|
|
version_check-0.9.5 \
|
|
virtue-0.0.13 \
|
|
walkdir-2.5.0 \
|
|
want-0.3.1 \
|
|
wasi-0.11.0+wasi-snapshot-preview1 \
|
|
wasi-0.13.3+wasi-0.2.2 \
|
|
wasm-bindgen-0.2.100 \
|
|
wasm-bindgen-backend-0.2.100 \
|
|
wasm-bindgen-futures-0.4.50 \
|
|
wasm-bindgen-macro-0.2.100 \
|
|
wasm-bindgen-macro-support-0.2.100 \
|
|
wasm-bindgen-shared-0.2.100 \
|
|
web-sys-0.3.77 \
|
|
web-time-1.1.0 \
|
|
winapi-0.3.9 \
|
|
winapi-i686-pc-windows-gnu-0.4.0 \
|
|
winapi-util-0.1.9 \
|
|
winapi-x86_64-pc-windows-gnu-0.4.0 \
|
|
windows-registry-0.2.0 \
|
|
windows-result-0.2.0 \
|
|
windows-strings-0.1.0 \
|
|
windows-sys-0.52.0 \
|
|
windows-sys-0.59.0 \
|
|
windows-targets-0.52.6 \
|
|
windows_aarch64_gnullvm-0.52.6 \
|
|
windows_aarch64_msvc-0.52.6 \
|
|
windows_i686_gnu-0.52.6 \
|
|
windows_i686_gnullvm-0.52.6 \
|
|
windows_i686_msvc-0.52.6 \
|
|
windows_x86_64_gnu-0.52.6 \
|
|
windows_x86_64_gnullvm-0.52.6 \
|
|
windows_x86_64_msvc-0.52.6 \
|
|
winnow-0.7.2 \
|
|
wit-bindgen-rt-0.33.0 \
|
|
write16-1.0.0 \
|
|
writeable-0.5.5 \
|
|
wyz-0.5.1 \
|
|
xshell-0.2.7 \
|
|
xshell-macros-0.2.7 \
|
|
yansi-1.0.1 \
|
|
yoke-0.7.5 \
|
|
yoke-derive-0.7.5 \
|
|
zerocopy-0.7.35 \
|
|
zerocopy-0.8.14 \
|
|
zerocopy-derive-0.7.35 \
|
|
zerocopy-derive-0.8.14 \
|
|
zerofrom-0.1.5 \
|
|
zerofrom-derive-0.1.5 \
|
|
zeroize-1.8.1 \
|
|
zeroize_derive-1.4.2 \
|
|
zerovec-0.10.4 \
|
|
zerovec-derive-0.10.3 \
|
|
zip-0.6.6 \
|
|
zstd-0.11.2+zstd.1.5.2 \
|
|
zstd-safe-5.0.2+zstd.1.5.2 \
|
|
zstd-sys-2.0.13+zstd.1.5.6
|
|
|
|
OPENSSLINC= /usr/include
|
|
OPENSSLLIB= /usr/lib
|
|
|
|
PLIST_FILES= bin/cairo-compile bin/cairo-execute bin/cairo-format bin/cairo-run bin/cairo-test \
|
|
bin/generate-syntax bin/get-lowering \
|
|
bin/sierra-compile \
|
|
bin/starknet-compile bin/starknet-sierra-compile bin/starknet-sierra-extract-code bin/starknet-sierra-upgrade-validate
|
|
|
|
do-install: # workaround for error: found a virtual manifest at `/usr/ports/lang/cairo/work/cairo-2.0.1/Cargo.toml` instead of a package manifest
|
|
# executables
|
|
.for e in ${PLIST_FILES:S/bin\///}
|
|
${INSTALL_PROGRAM} ${WRKDIR}/target/release/${e} ${STAGEDIR}${PREFIX}/bin
|
|
.endfor
|
|
# corelib
|
|
${MKDIR} ${STAGEDIR}${PREFIX}/lib/cairo-lang
|
|
cd ${WRKSRC} && ${COPYTREE_SHARE} corelib ${STAGEDIR}${PREFIX}/lib/cairo-lang
|
|
|
|
do-test: install # quick tests
|
|
${PREFIX}/bin/cairo-run --single-file ${FILESDIR}/hello_world.cairo
|
|
${PREFIX}/bin/cairo-run --single-file ${FILESDIR}/op_overloading.cairo
|
|
|
|
# https://github.com/lambdaclass/cairo-by-example/issues/119: How to run the testsuite?
|
|
|
|
.include <bsd.port.mk>
|