# -*- 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 golang 1.0 PortGroup fuse 1.0 go.setup github.com/rfjakob/gocryptfs 2.3.1 v revision 0 categories fuse maintainers {bochtler.io:macports @MarcelBochtler} \ openmaintainer license MIT platforms darwin description Encrypted overlay filesystem written in Go long_description {*}${description} homepage https://nuetzlich.net/gocryptfs/ checksums ${distname}${extract.suffix} \ rmd160 b3ae8b01ad4219bc027378f6475b7f417a2c9647 \ sha256 0e440c66abe923792d11e9890fc893096f54a32347776589b25f9edb9e3eb8c2 \ size 1371916 set gitversionfuse "915cf5413cde" go.vendors gopkg.in/yaml.v3 \ lock 9f266ea9e77c \ rmd160 06dca2ede07b2f31c515b4711fbebc1d5359b5e4 \ sha256 e70dd42fb30b7b2d0129c5cdf0e079caaf5602cab24081fdac830ec01204fa59 \ size 86890 \ golang.org/x/term \ lock a9ba230a4035 \ rmd160 2011606ab7a7f34f3deffe211d32ef2c89ebb195 \ sha256 3f372803b6ee7e65988d483eaf3696ec479b2cc3e42873e8d8e147c9600e40e2 \ size 14845 \ golang.org/x/sys \ lock bc2c85ada10a \ rmd160 c4b2c26618cd3f02fe04653b3a4fbe6707de5716 \ sha256 b2526b52942c803a1687e16f87942bd0f0701b5d260fbaa35d53231e0a520577 \ size 1303117 \ golang.org/x/net \ lock 1185a9018129 \ rmd160 06766c092ba6050f64d884ea7319c7ba9225891d \ sha256 157ec6672ba40db471b1e5c4b9d08c9637388bafd475c93e3acf50b6bf2d2208 \ size 1228139 \ golang.org/x/crypto \ lock 32db794688a5 \ rmd160 02ab581de5510ce94205e0fe5a58aacd2cd375b8 \ sha256 2276178323ee1992d2e845e78ffb8fdce625ef24602b97719428fddaf9f2192f \ size 1732601 \ github.com/stretchr/testify \ lock v1.6.1 \ rmd160 7e5b798212a8f15cd58a63985ae0b928eede8e6b \ sha256 44d77d9b5c1dc08fa710eac9bb324898210660458085cdf965b78a39b1010f2a \ size 84248 \ github.com/spf13/pflag \ lock v1.0.5 \ rmd160 2ce81608a38c6f383a35bccd24d64361df5828c9 \ sha256 7f41acdcba65b1fab5b9b633947a139f9915b60f94bdab486cdbe9d90c54f61e \ size 50815 \ github.com/sabhiram/go-gitignore \ lock 54b8a0bf510f \ rmd160 a857fc463477e6b9f836e792a96a4685ae2e143f \ sha256 8da1f8a688c9217bad55da1738e9178017f5a9bb1e5ca2210b158f73d010219e \ size 8081 \ github.com/rfjakob/eme \ lock v1.1.2 \ rmd160 27b6194560dbcdfdad845bbad4d1ed456486f8e4 \ sha256 beb9d8c20398ee8bf71dfc69cd082fba1e79eac2d1ae7d031909a673ca003a45 \ size 23188 \ github.com/pmezard/go-difflib \ lock v1.0.0 \ rmd160 fc879bfbdef9e3ff50844def58404e2b5a613ab8 \ sha256 7cd492737641847266115f3060489a67f63581e521a8ec51efbc280c33fc991f \ size 11409 \ github.com/pkg/xattr \ lock v0.4.3 \ rmd160 fdba0ff090e7ef820728334392fb5667fcdefcc5 \ sha256 e1623ed7d3f052c532f0f97fcbbc43ae7371a4016c182e591fff37b6f2df9c82 \ size 9445 \ github.com/kylelemons/godebug \ lock d65d576e9348 \ rmd160 929cd615eff16a0c5ba2145b809b10016587a387 \ sha256 9cbb2db613bd3a62e2e3f39776c690fb0d2c320d2aa5391868ad16d2de28c10c \ size 14796 \ github.com/jacobsa/reqtrace \ lock 245c9e0234cb \ rmd160 872beac620d3eebbc1a343d1d2ca65f2dc6778bd \ sha256 e8ca3f8de13ce0f35c1cb2bb9c9be220c82f28a0a1ca80557e2afbbdf396a0c4 \ size 7808 \ github.com/jacobsa/ogletest \ lock 80d50a735a11 \ rmd160 d839d0d084bc62e25d23d65cee882b427b537c00 \ sha256 8e9eef43d47e4fc12b6e614bd6c97d102eabec107eabe72493763d45325501fd \ size 24200 \ github.com/jacobsa/oglemock \ lock e94d794d06ff \ rmd160 cee16f043ba80e59483d3bfadf783077f8239110 \ sha256 5474b9f5228d6eda866293feb9c07729a55195fabd2cd77cd1c30e5291830ad9 \ size 35506 \ github.com/jacobsa/oglematchers \ lock 141901ea67cd \ rmd160 5c5dd8416ee4a236632eaa4fc1a1e5ce737eee45 \ sha256 4a45ac5d5b5c15af45761f15e3e14f4739b1cd79cd9493ddcd4744f65edc4b52 \ size 43827 \ github.com/hanwen/go-fuse \ lock ${gitversionfuse} \ rmd160 02f4d3a41fe763097ac9f1b88f8b0cdad1ae4c4b \ sha256 d466c51b50238497708f40214587a06ee539f868c7c20833128b1f92d577abd9 \ size 187382 \ github.com/davecgh/go-spew \ lock v1.1.0 \ rmd160 0303eae19a01f38fe314921fd965e4d09b9ef3ad \ sha256 810a597004388d68bb92d8aa612375419ba1080dd5fc2c66dd41b58f0ba4442c \ size 42348 \ github.com/aperturerobotics/jacobsa-crypto \ lock v1.0.0 \ rmd160 6d34d0b1b4779666f969c1df6cb8934ed6468e6b \ sha256 f75a386f00a96aaf95975036513c3b837a601a66eb631e2d159c7f9322f33f60 \ size 3654688 # Build date should not be set to a variable value as this would prevent reproducible builds. # Not setting it results in defaulting to '0000-00-00' when using the --version flag. set builddate "build_date_not_set" set ldflags "-X \"main.GitVersion=${version}\" -X \"main.GitVersionFuse=${gitversionfuse}\" -X \"main.BuildDate=${builddate}\"" build.args -ldflags="${ldflags}" # According to [1] there is no benefit to build gocryptfs with openssl on M1 Macs. # According to [2] on most modern CPUs openssl provides no speed benefits. I confirmed this by tests on # my Intel i7 Macbook Pro 2019. Therefore reducing the dependencies and defaulting to build it without openssl. # [1]: https://github.com/rfjakob/gocryptfs/issues/556#issuecomment-848185514 # [2]: https://github.com/rfjakob/gocryptfs/wiki/CPU-Benchmarks variant openssl description {Build with openssl support} { depends_lib-append path:lib/libcrypto.dylib:openssl } variant doc description {Build man pages} { if {${configure.build_arch} eq "arm64"} { depends_build-append port:go-md2man post-build { system -W ${worksrcpath}/Documentation "${prefix}/bin/go-md2man -in=MANPAGE.md -out=${name}.1" system -W ${worksrcpath}/Documentation "${prefix}/bin/go-md2man -in=MANPAGE-XRAY.md -out=${name}-xray.1" system -W ${worksrcpath}/Documentation "${prefix}/bin/go-md2man -in=MANPAGE-STATFS.md -out=statfs.1" } } else { depends_build-append port:pandoc post-build { system -W ${worksrcpath}/Documentation "sh MANPAGE-render.bash" } } } default_variants +doc if {![variant_isset openssl]} { build.env CGO_ENABLED=0 build.args-append -tags without_openssl } destroot { xinstall -m 0755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/ xinstall -m 0755 ${worksrcpath}/Documentation/gocryptfs.1 ${destroot}${prefix}/share/man/man1 xinstall -m 0755 ${worksrcpath}/Documentation/gocryptfs-xray.1 ${destroot}${prefix}/share/man/man1 xinstall -m 0755 ${worksrcpath}/Documentation/statfs.1 ${destroot}${prefix}/share/man/man1 } # Exclude pre-release versions. github.livecheck.regex \ {([0-9.]+)}