Files

78 lines
2.7 KiB
Tcl

# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup perl5 1.0
name mosh
version 1.4.0
revision 3
categories net
license {GPL-3+ OpenSSLException}
maintainers {mit.edu:quentin @quentinmit} \
openmaintainer
description Mobile Shell
long_description Mosh is a replacement for ssh that better handles \
high-latency, high-packet-loss, dynamically-addressed \
network links
homepage https://mosh.org/
master_sites ${homepage}
checksums rmd160 e5a06cbdee39cdf0259a4db08fe7919561ce52c5 \
sha256 872e4b134e5df29c8933dff12350785054d2fd2839b5ae6b5587b14db1465ddd \
size 393465
compiler.cxx_standard 2011
patchfiles-append patch-fix-AltiVec.diff
perl5.require_variant yes
perl5.conflict_variants yes
perl5.branches 5.34
perl5.default_branch 5.34
perl5.create_variants ${perl5.branches}
depends_build-append path:bin/pkg-config:pkgconfig
depends_lib-append port:ncurses \
port:p${perl5.major}-getopt-long \
port:p${perl5.major}-io-socket-ip \
port:protobuf3-cpp \
port:zlib
post-patch {
reinplace "s|#!/usr/bin/env perl|#!${prefix}/bin/perl${perl5.major}|" \
${worksrcpath}/scripts/mosh.pl
}
# https://github.com/protocolbuffers/protobuf/issues/9947
configure.cflags-append -DNDEBUG
# avoid overlinking abseil
configure.ldflags-append -Wl,-dead_strip_dylibs
# abseil uses C++17; use `gnu++17` as Mosh allows use of GNU extensions
configure.cxxflags-append -std=gnu++17
# force protobuf3-cpp into the no_threadlocal mode on older systems
if { ${os.platform} eq "darwin" && ${os.major} < 11 } {
configure.cppflags-append -DGOOGLE_PROTOBUF_NO_THREADLOCAL
}
# Apple commoncrypto available 10.8 or later
if {${os.platform} eq "darwin" && ${os.major} > 11} {
configure.args-append \
--with-crypto-library=apple-common-crypto
} else {
depends_lib-append path:lib/libssl.dylib:openssl
configure.args-append \
--with-crypto-library=openssl
}
configure.args-append \
--enable-completion \
--disable-silent-rules
livecheck.type regex
livecheck.url ${homepage}
livecheck.regex "[quotemeta ${name}]-(\[0-9a-z.\]+)[quotemeta ${extract.suffix}]"