freebsd-ports/net-p2p/cardano-node/Makefile
Muhammad Moinur Rahman 9c70f9d483 net-p2p/cardano-node: Mark BROKEN with OpenSSL 3
Fails to compile with:
ld.lld: error: undefined symbol: DSA_generate_parameters

Approved by:	portmgr (blanket)
Sponsored by:	The FreeBSD Foundation
2023-08-17 20:34:19 +02:00

509 lines
13 KiB
Makefile

PORTNAME= cardano-node
PORTVERSION= 8.1.2
CATEGORIES= net-p2p
MASTER_SITES= https://input-output-hk.github.io/cardano-haskell-packages/package/:chap
MAINTAINER= arrowd@FreeBSD.org
COMMENT= Core component of the Cardano decentralized blockchain
WWW= https://cardano.org/
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
NOT_FOR_ARCHS= i386
BUILD_DEPENDS= ghc-8.10.7:lang/ghc810
LIB_DEPENDS= libsecp256k1.so:math/secp256k1
RUN_DEPENDS= ${LOCALBASE}/share/rc-subr-jail/rc.subr.jail:ports-mgmt/rc-subr-jail
USES= autoreconf:build cabal gmake libtool pkgconfig
USE_GITHUB= yes
GH_ACCOUNT= input-output-hk
GH_TUPLE+= input-output-hk:libsodium:${LIBSODIUM_HASH}:sodium
CARDANO_NODE_HASH= d2d90b48c5577b4412d5c9c9968b55f8ab4b9767
LIBSODIUM_HASH= dbb48cce5429cb6585c9034f002568964f1ce567
USE_RC_SUBR= cardano_node
LIBS_PREFIX= ${WRKDIR}/libs_install
BINARY_ALIAS= git=true
USERS= cardano
GROUPS= cardano
USE_CABAL= Diff-0.4.1 \
FailT-0.1.2.0 \
Glob-0.10.2_3 \
HUnit-1.6.2.0 \
Histogram-0.1.0.2 \
HsOpenSSL-0.11.7.5 \
ListLike-4.7.8_1 \
MonadRandom-0.6_3 \
OneTuple-0.3.1_3 \
Only-0.1_1 \
PyF-0.11.1.1 \
QuickCheck-2.14.2 \
SHA-1.6.4.4 \
SafeSemaphore-0.10.1_1 \
StateVar-1.2.2 \
Stream-0.4.7.2 \
Unique-0.4.7.9_1 \
Win32-network-0.1.1.1:chap \
adjunctions-4.4.2_1 \
aeson-2.1.2.1_3 \
aeson-pretty-0.8.9_2 \
algebraic-graphs-0.7_1 \
ansi-terminal-0.11.5 \
ansi-terminal-types-0.11.5_1 \
ansi-wl-pprint-0.6.9_4 \
ap-normalize-0.1.0.1 \
appar-0.1.8 \
asn1-encoding-0.9.6_2 \
asn1-parse-0.9.5 \
asn1-types-0.3.4 \
assoc-1.0.2_4 \
async-2.2.4_3 \
async-extras-0.1.3.2 \
async-timer-0.1.4.1 \
atomic-primops-0.8.4 \
attoparsec-0.14.4_4 \
attoparsec-iso8601-1.1.0.0_1 \
auto-update-0.1.6 \
barbies-2.0.4.0 \
base-compat-0.12.2 \
base-compat-batteries-0.12.2 \
base-deriving-via-0.1.0.2:chap \
base-orphans-0.9.0 \
base16-bytestring-1.0.2.0 \
base58-bytestring-0.1.0 \
base64-bytestring-1.2.1.0_1 \
base64-bytestring-type-1.0.1_18 \
basement-0.0.15 \
bech32-1.1.2 \
bifunctors-5.5.15 \
bimap-0.4.0_1 \
bin-0.1.3 \
binary-orphans-1.0.4.1_2 \
bitvec-1.1.4.0 \
blaze-builder-0.4.2.2_1 \
blaze-html-0.9.1.2_3 \
blaze-markup-0.8.2.8_5 \
boring-0.2.1 \
brick-0.73 \
bsb-http-chunked-0.0.0.4_3 \
byron-spec-chain-1.0.0.0:chap \
byron-spec-ledger-1.0.0.0:chap \
byteorder-1.0.4 \
bytestring-builder-0.10.8.2.0 \
cabal-doctest-1.0.9_3 \
call-stack-0.4.0 \
canonical-json-0.6.0.1 \
cardano-api-8.2.0.0:chap \
cardano-binary-1.7.0.1:chap \
cardano-crypto-1.1.2:chap \
cardano-crypto-class-2.1.1.0:chap \
cardano-crypto-praos-2.1.2.0:chap \
cardano-crypto-test-1.5.0.0:chap \
cardano-crypto-tests-2.1.1.0:chap \
cardano-crypto-wrapper-1.5.1.0:chap \
cardano-data-1.1.0.0:chap \
cardano-ledger-allegra-1.1.1.0:chap \
cardano-ledger-alonzo-1.2.1.0:chap \
cardano-ledger-alonzo-test-1.1.1.0:chap \
cardano-ledger-api-1.2.0.0:chap \
cardano-ledger-babbage-1.2.1.0:chap \
cardano-ledger-babbage-test-1.1.1.0:chap \
cardano-ledger-binary-1.1.1.0:chap \
cardano-ledger-byron-1.0.0.0:chap \
cardano-ledger-byron-test-1.5.0.0:chap \
cardano-ledger-conway-1.2.0.0:chap \
cardano-ledger-conway-test-1.1.1.0:chap \
cardano-ledger-core-1.2.0.0:chap \
cardano-ledger-mary-1.2.0.0:chap \
cardano-ledger-pretty-1.1.1.0:chap \
cardano-ledger-shelley-1.2.0.0:chap \
cardano-ledger-shelley-ma-test-1.2.0.0:chap \
cardano-ledger-shelley-test-1.1.1.0:chap \
cardano-ping-0.1.0.1:chap \
cardano-prelude-0.1.0.2:chap \
cardano-prelude-test-0.1.0.2:chap \
cardano-protocol-tpraos-1.0.3.0:chap \
cardano-slotting-0.1.1.1:chap \
cardano-strict-containers-0.1.2.1:chap \
case-insensitive-1.2.1.0 \
cassava-0.5.3.0_2 \
cborg-0.2.8.0_3 \
cereal-0.5.8.3 \
charset-0.3.9 \
clock-0.8.3 \
cmdargs-0.10.22 \
code-page-0.2.1 \
colour-2.3.6 \
comonad-5.0.8_1 \
composition-prelude-3.0.0.2 \
concurrent-output-1.10.17 \
conduit-1.3.4.3_1 \
conduit-extra-1.3.6 \
config-ini-0.2.5.0_1 \
connection-0.3.1_2 \
constraints-0.13.4 \
constraints-extras-0.4.0.0_1 \
contra-tracer-0.1.0.2:chap \
contravariant-1.5.5 \
cookie-0.4.6 \
criterion-1.6.0.0_1 \
criterion-measurement-0.2.1.0 \
cryptonite-0.30 \
data-accessor-0.2.3.1 \
data-accessor-transformers-0.2.1.8 \
data-array-byte-0.1.0.1_1 \
data-clist-0.2 \
data-default-0.7.1.1 \
data-default-class-0.1.2.0 \
data-default-instances-containers-0.0.1 \
data-default-instances-dlist-0.0.1 \
data-default-instances-old-locale-0.0.1 \
data-fix-0.3.2_4 \
dec-0.0.5_1 \
deferred-folds-0.9.18.3 \
dense-linear-algebra-0.1.0.0 \
dependent-map-0.4.0.0_1 \
dependent-sum-0.7.2.0_1 \
dependent-sum-template-0.1.1.1 \
deque-0.4.4 \
deriving-aeson-0.2.9 \
deriving-compat-0.6.3 \
dictionary-sharing-0.1.0.0_3 \
digest-0.0.1.7 \
distributive-0.6.2.1_1 \
dlist-1.0 \
dns-3.0.4_1 \
doctest-0.21.1 \
dom-lt-0.2.3 \
double-conversion-2.0.4.2_2 \
easy-file-0.2.5 \
ede-0.3.3.0 \
either-5.0.2_1 \
ekg-0.4.0.15.0.0.0.0.1_1:chap \
ekg-core-0.1.1.7_2 \
ekg-forward-0.3.0.4:chap \
ekg-json-0.1.0.7.0.0.0.0.1_1:chap \
entropy-0.4.1.10_1 \
erf-2.0.0.0 \
extra-1.7.13 \
fast-logger-3.2.1 \
fgl-5.8.1.1 \
file-embed-0.0.15.0 \
filelock-0.1.1.6 \
fin-0.3_1 \
fingertree-0.1.5.0 \
flat-0.4.4.0.0.0.0.2:chap \
fmlist-0.9.4 \
foldable1-classes-compat-0.1_2 \
foldl-1.4.14_2 \
formatting-7.1.3_2 \
foundation-0.0.29.0.0.0.0.2:chap \
free-5.2_1 \
fs-api-0.1.0.3:chap \
fs-sim-0.2.0.0:chap \
generic-data-1.1.0.0 \
generic-deriving-1.14.4 \
generic-monoid-0.1.0.1_2 \
generic-random-1.5.0.1 \
generically-0.1.1_1 \
generics-sop-0.5.1.3 \
genvalidity-1.1.0.0 \
ghc-paths-0.1.0.12_5 \
gnuplot-0.5.7 \
graphviz-2999.20.1.0_2 \
groups-0.5.3 \
half-0.3.1 \
happy-1.20.1.1 \
hashable-1.4.2.0_1 \
haskell-lexer-1.1.1 \
heapwords-0.1.0.2:chap \
hedgehog-1.2.0.0.0.0.1_1:chap \
hedgehog-extras-0.4.5.1 \
hedgehog-quickcheck-0.1.1_5 \
hostname-1.0 \
hourglass-0.2.12 \
hsc2hs-0.68.9 \
hspec-2.11.0.1 \
hspec-core-2.11.0.1 \
hspec-discover-2.11.0.1 \
hspec-expectations-0.8.2 \
http-api-data-0.5_1 \
http-client-0.7.13.1_1 \
http-client-tls-0.3.6.1 \
http-conduit-2.3.8_1 \
http-date-0.0.11 \
http-media-0.8.0.0_8 \
http-types-0.12.3 \
http2-4.1.2 \
hw-aeson-0.1.8.0_2 \
indexed-traversable-0.1.2.1 \
indexed-traversable-instances-0.1.1.2_1 \
int-cast-0.2.0.0.0.0.0.0.1:chap \
integer-logarithms-1.0.3.1_4 \
invariant-0.6.1 \
io-classes-1.1.0.0 \
io-classes-mtl-0.1.0.1_1 \
io-sim-1.1.0.0 \
io-streams-1.5.2.2_2 \
io-streams-haproxy-1.0.1.0_8 \
iohk-monitoring-0.1.11.3:chap \
iproute-1.7.12 \
isomorphism-class-0.1.0.9 \
js-chart-2.9.4.1 \
kan-extensions-5.2.5_1 \
katip-0.8.7.4 \
lazy-search-0.1.3.0 \
lazysmallcheck-0.6 \
lens-5.2.2_1 \
libyaml-0.1.2_1 \
lifted-async-0.10.2.4 \
lifted-base-0.2.3.12 \
list-t-1.0.5.6 \
lobemo-backend-aggregation-0.1.0.0:chap \
lobemo-backend-ekg-0.1.0.1:chap \
lobemo-backend-monitoring-0.1.0.0:chap \
lobemo-backend-trace-forwarder-0.1.0.0:chap \
logict-0.8.1.0 \
loop-0.3.0 \
markov-chain-usage-model-0.0.0 \
math-functions-0.3.4.2 \
matrix-0.3.6.1_1 \
measures-0.1.0.2:chap \
megaparsec-9.2.1_1 \
memory-0.18.0 \
microlens-0.4.13.1 \
microlens-mtl-0.2.0.3 \
microlens-th-0.4.3.13 \
microstache-1.0.2.3_2 \
mime-mail-0.5.1 \
mime-types-0.1.1.0 \
mmorph-1.2.0_3 \
monad-control-1.0.3.1 \
mono-traversable-1.0.15.3 \
monoidal-containers-0.6.4.0 \
monoidal-synchronisation-0.1.0.3:chap \
mtl-compat-0.2.2 \
multiset-0.3.4.3 \
mwc-random-0.15.0.2_1 \
network-3.1.2.9 \
network-bsd-2.8.1.0_4 \
network-byte-order-0.1.6_1 \
network-mux-0.4.0.0:chap \
network-uri-2.6.4.2 \
newtype-0.2.2.0_3 \
non-integral-1.0.0.0:chap \
nonempty-vector-0.2.2.0 \
nothunks-0.1.4 \
old-locale-1.0.0.7_2 \
old-time-1.1.0.3_2 \
openssl-streams-1.2.3.0_1 \
optparse-applicative-0.17.0.0 \
optparse-applicative-fork-0.16.2.0:chap \
optparse-generic-1.5.0_1 \
ouroboros-consensus-0.7.0.0:chap \
ouroboros-consensus-cardano-0.6.0.0:chap \
ouroboros-consensus-diffusion-0.6.0.0_2:chap \
ouroboros-consensus-protocol-0.5.0.2:chap \
ouroboros-network-0.8.1.1:chap \
ouroboros-network-api-0.5.0.0:chap \
ouroboros-network-framework-0.6.0.1:chap \
ouroboros-network-mock-0.1.0.1:chap \
ouroboros-network-protocols-0.5.0.3:chap \
ouroboros-network-testing-0.3.0.0:chap \
parallel-3.2.2.0_6 \
parser-combinators-1.3.0 \
parsers-0.12.11 \
partial-order-0.2.0.0 \
pem-0.2.4 \
pipes-4.3.16_6 \
plutus-core-1.5.0.1:chap \
plutus-ledger-api-1.5.0.1:chap \
plutus-tx-1.5.0.0:chap \
polyparse-1.13_7 \
pretty-show-1.10 \
prettyprinter-1.7.1 \
prettyprinter-ansi-terminal-1.1.3 \
prettyprinter-configurable-1.1.0.0:chap \
primitive-0.8.0.0 \
process-extras-0.7.4 \
profunctors-5.6.2_3 \
prometheus-2.2.3 \
protolude-0.3.3.0.0.0.0.1:chap \
psqueues-0.2.7.3 \
quickcheck-instances-0.3.29.1_2 \
quickcheck-io-0.2.0 \
quickcheck-state-machine-0.7.2 \
quickcheck-transformer-0.3.1.2 \
quiet-0.2 \
ral-0.2.1_2 \
random-1.2.1.1 \
random-shuffle-0.0.4 \
readable-0.3.1_1 \
recursion-schemes-5.2.2.4_2 \
recv-0.1.0 \
reducers-3.12.4_4 \
reflection-2.1.7 \
regex-base-0.94.0.2_2 \
regex-posix-0.96.0.1_2 \
resourcet-1.3.0 \
safe-0.3.19 \
safe-exceptions-0.1.7.3 \
scientific-0.3.7.0_5 \
selective-0.6_1 \
semialign-1.2.0.1_3 \
semigroupoids-5.3.7_1 \
semigroups-0.20 \
serialise-0.2.6.0_3 \
servant-0.19.1_2 \
servant-server-0.19.2.0.0.0.0.1_1:chap \
set-algebra-1.1.0.0:chap \
show-combinators-0.2.0.0_2 \
si-timers-1.1.0.0 \
signal-0.1.0.4 \
simple-sendfile-0.2.31 \
singleton-bool-0.1.6_2 \
size-based-0.1.3.1_1 \
small-steps-1.0.0.0:chap \
small-steps-test-1.0.0.0:chap \
smtp-mail-0.3.0.0 \
snap-blaze-0.2.1.5 \
snap-core-1.0.5.1_2 \
snap-server-1.1.2.1_2 \
socks-0.6.1 \
some-1.0.4.1 \
sop-core-0.5.0.2_2 \
split-0.2.3.5 \
splitmix-0.1.0.4_2 \
statistics-0.16.2.0 \
statistics-linreg-0.3 \
streaming-0.2.3.1.0.0.0.0.1:chap \
streaming-binary-0.2.2.0 \
streaming-bytestring-0.3.0 \
streaming-commons-0.2.2.6 \
strict-0.4.0.1_4 \
strict-list-0.1.7.1 \
strict-stm-1.1.0.0 \
string-conv-0.2.0 \
string-conversions-0.4.0.1_1 \
string-qq-0.0.4 \
syb-0.7.2.3 \
system-filepath-0.4.14_1 \
tagged-0.8.7 \
tar-0.5.1.1_6 \
tasty-1.4.3 \
tasty-expected-failure-0.12.3 \
tasty-golden-2.3.5 \
tasty-hedgehog-1.4.0.1_1 \
tasty-hunit-0.10.0.3 \
tasty-quickcheck-0.10.2 \
tdigest-0.3 \
temporary-1.3 \
terminal-size-0.3.4 \
testing-type-modifiers-0.1.0.1 \
text-builder-0.6.7 \
text-builder-dev-0.3.3.2 \
text-manipulate-0.3.1.0 \
text-short-0.1.5_2 \
text-zipper-0.13 \
tf-random-0.5 \
th-abstraction-0.5.0.0 \
th-compat-0.1.4_2 \
th-expand-syns-0.4.11.0_1 \
th-extras-0.0.0.6.0.0.0.0.1:chap \
th-lift-0.8.3 \
th-lift-instances-0.1.20 \
th-orphans-0.13.14_1 \
th-reify-many-0.1.10 \
th-utilities-0.2.5.0 \
these-1.1.1.1_6 \
threepenny-gui-0.9.4.0_2 \
time-compat-1.9.6.1_5 \
time-manager-0.0.0_1 \
time-units-1.0.0 \
tls-1.6.0 \
tracer-transformers-0.1.0.4:chap \
transformers-base-0.4.6 \
transformers-compat-0.6.6_1 \
transformers-except-0.1.3 \
tree-diff-0.3.0.1_3 \
trifecta-2.1.2_3 \
type-equality-1_5 \
typed-process-0.2.11.0 \
typed-protocols-0.1.0.6:chap \
typed-protocols-cborg-0.1.0.4:chap \
typed-protocols-examples-0.2.0.2:chap \
unagi-chan-0.4.1.4 \
unbounded-delays-0.1.1.1 \
universe-base-1.1.3.1 \
unix-bytestring-0.4.0 \
unix-compat-0.7 \
unix-time-0.4.9 \
unliftio-0.2.24.0 \
unliftio-core-0.2.1.0_2 \
unordered-containers-0.2.19.1_2 \
utf8-string-1.0.2 \
utility-ht-0.0.17 \
uuid-types-1.0.5_4 \
validation-selective-0.2.0.0.0.0.0.0.1:chap \
validity-0.12.0.1 \
vault-0.3.1.5_3 \
vector-0.12.3.1_4 \
vector-algorithms-0.9.0.1.0.0.0.0.1_1:chap \
vector-binary-instances-0.2.5.2_5 \
vector-map-1.0.1.0:chap \
vector-th-unbox-0.2.2_4 \
void-0.7.3 \
vty-5.38 \
wai-3.2.3 \
wai-app-static-3.1.7.4 \
wai-extra-3.1.13.0_1 \
wai-logger-2.4.0 \
warp-3.3.25 \
websockets-0.12.7.3_2 \
websockets-snap-0.10.3.1_1 \
witherable-0.4.2_4 \
wl-pprint-annotated-0.1.0.1_1 \
wl-pprint-text-1.2.0.2 \
word-wrap-0.5 \
word8-0.1.3 \
x509-1.7.7 \
x509-store-1.6.9 \
x509-system-1.6.7 \
x509-validation-1.6.12 \
yaml-0.11.11.0_2 \
zlib-0.6.3.0_2 \
zlib-bindings-0.1.1.5_2
CABAL_PROJECT= append
CABAL_EXECUTABLES= cardano-node cardano-cli cardano-submit-api cardano-tracer
CABAL_REPOSITORIES= chap
WITH_LTO= yes
.include <bsd.port.options.mk>
.if ( ${OPSYS} == FreeBSD && ${OSVERSION} >= 1400092 && ${SSL_DEFAULT} == base ) || ${SSL_DEFAULT:Mopenssl3*}
BROKEN= fails to compile undefined symbol: DSA_generate_parameters
.endif
post-patch:
${REINPLACE_CMD} -e 's/$$(gitRevFromGit)/"${CARDANO_NODE_HASH}"/' \
-e '/Cardano.Git.RevFromGit/d' \
${WRKSRC}/cardano-git-rev/src/Cardano/Git/Rev.hs
pre-build:
@${MKDIR} ${PKGCONFIG_LINKDIR}
cd ${WRKSRC_sodium} && ./autogen.sh
cd ${WRKSRC_sodium} && ./configure --prefix=${LIBS_PREFIX} --with-pthreads --disable-shared
cd ${WRKSRC_sodium} && ${GMAKE} -j${MAKE_JOBS_NUMBER} && ${GMAKE} ${INSTALL_TARGET}
${MV} ${LIBS_PREFIX}/lib/pkgconfig/libsodium.pc ${PKGCONFIG_LINKDIR}
.include <bsd.port.mk>