359 lines
8.6 KiB
Makefile
359 lines
8.6 KiB
Makefile
# $FreeBSD$
|
|
|
|
PORTNAME= sequoia
|
|
PORTVERSION= 1.3.0
|
|
DISTVERSIONPREFIX= v
|
|
CATEGORIES= security
|
|
|
|
MAINTAINER= phryk-ports@wzff.de
|
|
COMMENT= Modern PGP implementation, written in rust
|
|
|
|
LICENSE= GPLv2+
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
|
|
|
|
BUILD_DEPENDS+= llvm${LLVM_DEFAULT}>0:devel/llvm${LLVM_DEFAULT}
|
|
LIB_DEPENDS+= libcapnp.so:devel/capnproto
|
|
LIB_DEPENDS+= libgmp.so:math/gmp
|
|
LIB_DEPENDS+= libnettle.so:security/nettle
|
|
RUN_DEPENDS+= nettle>=3.7.3:security/nettle # define a minimum version for nettle
|
|
TEST_DEPENDS+= gmake>0:devel/gmake
|
|
|
|
USES= cargo ssl
|
|
USE_LDCONFIG= yes
|
|
USE_GITLAB= yes
|
|
GL_ACCOUNT= sequoia-pgp
|
|
GL_PROJECT= sequoia
|
|
GL_COMMIT= f44d645fe665b031a1286e70075b69f92e5bb919
|
|
CARGO_BUILD_ARGS+= --all
|
|
|
|
#SOVERSION= 0.22.0 # ffi and openpgp-ffi version, not automatically readable right now.
|
|
SOVERSION= ${PORTVERSION} # test suite fails when actual ffi lib versions are used, probably an upstream issue
|
|
|
|
SUB_LIST= VERSION=${PORTVERSION} SOVERSION=${SOVERSION}
|
|
SUB_FILES= sequoia-openpgp.pc
|
|
SUB_FILES+= sequoia.pc
|
|
|
|
PLIST_SUB+= ${SUB_LIST} # %%FOO%% style substitutions for pkg-plist
|
|
|
|
# autogenerated by make cargo-crates
|
|
CARGO_CRATES= addr2line-0.14.1 \
|
|
adler-1.0.2 \
|
|
aead-0.3.2 \
|
|
ahash-0.4.7 \
|
|
aho-corasick-0.7.15 \
|
|
ansi_term-0.11.0 \
|
|
anyhow-1.0.40 \
|
|
arrayref-0.3.6 \
|
|
arrayvec-0.5.2 \
|
|
ascii-canvas-2.0.0 \
|
|
assert_cli-0.6.3 \
|
|
atty-0.2.14 \
|
|
autocfg-0.1.7 \
|
|
autocfg-1.0.1 \
|
|
backtrace-0.3.56 \
|
|
base64-0.13.0 \
|
|
bindgen-0.57.0 \
|
|
bit-set-0.5.2 \
|
|
bit-vec-0.6.3 \
|
|
bitflags-1.2.1 \
|
|
blake2b_simd-0.5.11 \
|
|
block-buffer-0.7.3 \
|
|
block-buffer-0.9.0 \
|
|
block-padding-0.1.5 \
|
|
bstr-0.2.15 \
|
|
bumpalo-3.6.1 \
|
|
byte-tools-0.3.1 \
|
|
byteorder-1.4.3 \
|
|
bytes-0.5.6 \
|
|
bytes-1.0.1 \
|
|
bzip2-0.4.2 \
|
|
bzip2-sys-0.1.10+1.0.8 \
|
|
capnp-0.13.6 \
|
|
capnp-futures-0.13.2 \
|
|
capnp-rpc-0.13.1 \
|
|
capnpc-0.13.1 \
|
|
cast-0.2.3 \
|
|
cc-1.0.67 \
|
|
cexpr-0.4.0 \
|
|
cfg-if-0.1.10 \
|
|
cfg-if-1.0.0 \
|
|
chrono-0.4.19 \
|
|
cipher-0.2.5 \
|
|
clang-sys-1.1.1 \
|
|
clap-2.33.3 \
|
|
cmac-0.5.1 \
|
|
colored-1.9.3 \
|
|
constant_time_eq-0.1.5 \
|
|
core-foundation-0.9.1 \
|
|
core-foundation-sys-0.8.2 \
|
|
cpuid-bool-0.1.2 \
|
|
crc32fast-1.2.1 \
|
|
criterion-0.3.4 \
|
|
criterion-plot-0.4.3 \
|
|
crossbeam-channel-0.5.0 \
|
|
crossbeam-deque-0.8.0 \
|
|
crossbeam-epoch-0.9.3 \
|
|
crossbeam-utils-0.8.3 \
|
|
crunchy-0.2.2 \
|
|
crypto-mac-0.10.0 \
|
|
csv-1.1.6 \
|
|
csv-core-0.1.10 \
|
|
ctor-0.1.20 \
|
|
ctr-0.6.0 \
|
|
curve25519-dalek-3.0.2 \
|
|
dbl-0.3.1 \
|
|
diff-0.1.12 \
|
|
difference-2.0.0 \
|
|
digest-0.8.1 \
|
|
digest-0.9.0 \
|
|
dirs-1.0.5 \
|
|
dirs-2.0.2 \
|
|
dirs-sys-0.3.5 \
|
|
doc-comment-0.3.3 \
|
|
dyn-clone-1.0.4 \
|
|
eax-0.3.0 \
|
|
ed25519-1.0.3 \
|
|
ed25519-dalek-1.0.1 \
|
|
either-1.6.1 \
|
|
ena-0.14.0 \
|
|
environment-0.1.1 \
|
|
failure-0.1.8 \
|
|
failure_derive-0.1.8 \
|
|
fake-simd-0.1.2 \
|
|
fallible-iterator-0.2.0 \
|
|
fallible-streaming-iterator-0.1.9 \
|
|
filetime-0.2.14 \
|
|
fixedbitset-0.2.0 \
|
|
flate2-1.0.20 \
|
|
fnv-1.0.7 \
|
|
foreign-types-0.3.2 \
|
|
foreign-types-shared-0.1.1 \
|
|
form_urlencoded-1.0.1 \
|
|
fs2-0.4.3 \
|
|
fuchsia-zircon-0.3.3 \
|
|
fuchsia-zircon-sys-0.3.3 \
|
|
futures-0.3.13 \
|
|
futures-channel-0.3.13 \
|
|
futures-core-0.3.13 \
|
|
futures-executor-0.3.13 \
|
|
futures-io-0.3.13 \
|
|
futures-macro-0.3.13 \
|
|
futures-sink-0.3.13 \
|
|
futures-task-0.3.13 \
|
|
futures-util-0.3.13 \
|
|
generic-array-0.12.4 \
|
|
generic-array-0.14.4 \
|
|
getrandom-0.1.16 \
|
|
getrandom-0.2.2 \
|
|
gimli-0.23.0 \
|
|
glob-0.3.0 \
|
|
h2-0.2.7 \
|
|
half-1.7.1 \
|
|
hashbrown-0.9.1 \
|
|
hashlink-0.6.0 \
|
|
hermit-abi-0.1.18 \
|
|
http-0.2.3 \
|
|
http-body-0.3.1 \
|
|
httparse-1.3.5 \
|
|
httpdate-0.3.2 \
|
|
hyper-0.13.10 \
|
|
hyper-tls-0.4.3 \
|
|
idna-0.2.2 \
|
|
indexmap-1.6.2 \
|
|
iovec-0.1.4 \
|
|
itertools-0.9.0 \
|
|
itertools-0.10.0 \
|
|
itoa-0.4.7 \
|
|
js-sys-0.3.50 \
|
|
kernel32-sys-0.2.2 \
|
|
lalrpop-0.19.5 \
|
|
lalrpop-util-0.19.5 \
|
|
lazy_static-1.4.0 \
|
|
lazycell-1.3.0 \
|
|
libc-0.2.92 \
|
|
libm-0.2.1 \
|
|
libsqlite3-sys-0.20.1 \
|
|
log-0.4.14 \
|
|
matches-0.1.8 \
|
|
memchr-2.3.4 \
|
|
memoffset-0.6.3 \
|
|
memsec-0.6.0 \
|
|
miniz_oxide-0.4.4 \
|
|
mio-0.6.23 \
|
|
mio-named-pipes-0.1.7 \
|
|
mio-uds-0.6.8 \
|
|
miow-0.2.2 \
|
|
miow-0.3.7 \
|
|
native-tls-0.2.7 \
|
|
net2-0.2.37 \
|
|
nettle-7.0.2 \
|
|
nettle-sys-2.0.6 \
|
|
new_debug_unreachable-1.0.4 \
|
|
nom-5.1.2 \
|
|
num-bigint-dig-0.6.1 \
|
|
num-integer-0.1.44 \
|
|
num-iter-0.1.42 \
|
|
num-traits-0.2.14 \
|
|
num_cpus-1.13.0 \
|
|
object-0.23.0 \
|
|
once_cell-1.7.2 \
|
|
oorandom-11.1.3 \
|
|
opaque-debug-0.2.3 \
|
|
opaque-debug-0.3.0 \
|
|
openssl-0.10.33 \
|
|
openssl-probe-0.1.2 \
|
|
openssl-sys-0.9.61 \
|
|
peeking_take_while-0.1.2 \
|
|
percent-encoding-2.1.0 \
|
|
petgraph-0.5.1 \
|
|
phf_shared-0.8.0 \
|
|
pico-args-0.4.0 \
|
|
pin-project-1.0.6 \
|
|
pin-project-internal-1.0.6 \
|
|
pin-project-lite-0.1.12 \
|
|
pin-project-lite-0.2.6 \
|
|
pin-utils-0.1.0 \
|
|
pkg-config-0.3.19 \
|
|
plotters-0.3.0 \
|
|
plotters-backend-0.3.0 \
|
|
plotters-svg-0.3.0 \
|
|
ppv-lite86-0.2.10 \
|
|
precomputed-hash-0.1.1 \
|
|
proc-macro-hack-0.5.19 \
|
|
proc-macro-nested-0.1.7 \
|
|
proc-macro2-1.0.26 \
|
|
quickcheck-0.9.2 \
|
|
quote-1.0.9 \
|
|
rand-0.7.3 \
|
|
rand-0.8.3 \
|
|
rand_chacha-0.2.2 \
|
|
rand_chacha-0.3.0 \
|
|
rand_core-0.5.1 \
|
|
rand_core-0.6.2 \
|
|
rand_hc-0.2.0 \
|
|
rand_hc-0.3.0 \
|
|
rayon-1.5.0 \
|
|
rayon-core-1.9.0 \
|
|
redox_syscall-0.1.57 \
|
|
redox_syscall-0.2.5 \
|
|
redox_users-0.3.5 \
|
|
regex-1.4.5 \
|
|
regex-automata-0.1.9 \
|
|
regex-syntax-0.6.23 \
|
|
remove_dir_all-0.5.3 \
|
|
rpassword-5.0.1 \
|
|
rusqlite-0.24.2 \
|
|
rust-argon2-0.8.3 \
|
|
rustc-demangle-0.1.18 \
|
|
rustc-hash-1.1.0 \
|
|
rustc_version-0.2.3 \
|
|
ryu-1.0.5 \
|
|
same-file-1.0.6 \
|
|
schannel-0.1.19 \
|
|
scopeguard-1.1.0 \
|
|
security-framework-2.2.0 \
|
|
security-framework-sys-2.2.0 \
|
|
semver-0.9.0 \
|
|
semver-parser-0.7.0 \
|
|
serde-1.0.125 \
|
|
serde_cbor-0.11.1 \
|
|
serde_derive-1.0.125 \
|
|
serde_json-1.0.64 \
|
|
sha1collisiondetection-0.2.3 \
|
|
sha2-0.8.2 \
|
|
sha2-0.9.3 \
|
|
shlex-0.1.1 \
|
|
signal-hook-registry-1.3.0 \
|
|
signature-1.3.0 \
|
|
siphasher-0.3.5 \
|
|
slab-0.4.2 \
|
|
smallvec-1.6.1 \
|
|
socket2-0.3.19 \
|
|
spin-0.5.2 \
|
|
string_cache-0.8.1 \
|
|
strsim-0.8.0 \
|
|
subtle-2.4.0 \
|
|
syn-1.0.68 \
|
|
synstructure-0.12.4 \
|
|
tempfile-3.2.0 \
|
|
term-0.5.2 \
|
|
term_size-0.3.2 \
|
|
textwrap-0.11.0 \
|
|
thiserror-1.0.24 \
|
|
thiserror-impl-1.0.24 \
|
|
time-0.1.43 \
|
|
tiny-keccak-2.0.2 \
|
|
tinytemplate-1.2.1 \
|
|
tinyvec-1.1.1 \
|
|
tinyvec_macros-0.1.0 \
|
|
tokio-0.2.25 \
|
|
tokio-macros-0.2.6 \
|
|
tokio-tls-0.3.1 \
|
|
tokio-util-0.3.1 \
|
|
tower-service-0.3.1 \
|
|
tracing-0.1.25 \
|
|
tracing-core-0.1.17 \
|
|
tracing-futures-0.2.5 \
|
|
try-lock-0.2.3 \
|
|
typenum-1.13.0 \
|
|
unicode-bidi-0.3.4 \
|
|
unicode-normalization-0.1.17 \
|
|
unicode-width-0.1.8 \
|
|
unicode-xid-0.2.1 \
|
|
url-2.2.1 \
|
|
vcpkg-0.2.11 \
|
|
vec_map-0.8.2 \
|
|
version_check-0.9.3 \
|
|
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.73 \
|
|
wasm-bindgen-backend-0.2.73 \
|
|
wasm-bindgen-macro-0.2.73 \
|
|
wasm-bindgen-macro-support-0.2.73 \
|
|
wasm-bindgen-shared-0.2.73 \
|
|
web-sys-0.3.50 \
|
|
win-crypto-ng-0.4.0 \
|
|
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 \
|
|
ws2_32-sys-0.2.1 \
|
|
zbase32-0.1.2 \
|
|
zeroize-1.2.0 \
|
|
zeroize_derive-1.0.1
|
|
|
|
do-install:
|
|
${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d \
|
|
${STAGEDIR}${PREFIX}/share/fish/completions \
|
|
${STAGEDIR}${PREFIX}/share/zsh/site-functions
|
|
|
|
.for f in ffi ffi_macros openpgp_ffi
|
|
${STRIP_CMD} ${CARGO_TARGET_DIR}/release/libsequoia_${f}.so
|
|
${INSTALL_LIB} ${CARGO_TARGET_DIR}/release/libsequoia_${f}.so ${STAGEDIR}${PREFIX}/lib/libsequoia_${f}.so.${SOVERSION}
|
|
${LN} -sf libsequoia_${f}.so.${SOVERSION} ${STAGEDIR}${PREFIX}/lib/libsequoia_${f}.so
|
|
.endfor
|
|
|
|
.for f in sq sqv sequoia-public-key-store
|
|
${STRIP_CMD} ${CARGO_TARGET_DIR}/release/${f}
|
|
${INSTALL_PROGRAM} ${CARGO_TARGET_DIR}/release/${f} ${STAGEDIR}${PREFIX}/bin
|
|
.endfor
|
|
|
|
(cd ${WRKSRC}/ffi/include && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/include)
|
|
(cd ${WRKSRC}/openpgp-ffi/include/sequoia && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/include/sequoia)
|
|
|
|
${INSTALL_DATA} ${CARGO_TARGET_DIR}/sq.bash ${STAGEDIR}${PREFIX}/etc/bash_completion.d/sq
|
|
${INSTALL_DATA} ${CARGO_TARGET_DIR}/sqv.bash ${STAGEDIR}${PREFIX}/etc/bash_completion.d/sqv
|
|
${INSTALL_DATA} ${CARGO_TARGET_DIR}/sq.fish ${STAGEDIR}${PREFIX}/share/fish/completions
|
|
${INSTALL_DATA} ${CARGO_TARGET_DIR}/sqv.fish ${STAGEDIR}${PREFIX}/share/fish/completions
|
|
${INSTALL_DATA} ${CARGO_TARGET_DIR}/_sq ${STAGEDIR}${PREFIX}/share/zsh/site-functions
|
|
${INSTALL_DATA} ${CARGO_TARGET_DIR}/_sqv ${STAGEDIR}${PREFIX}/share/zsh/site-functions
|
|
|
|
${INSTALL_DATA} ${WRKDIR}/sequoia.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig/
|
|
${INSTALL_DATA} ${WRKDIR}/sequoia-openpgp.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig/
|
|
|
|
.include <bsd.port.mk>
|