Created
February 14, 2025 11:36
-
-
Save dch/41a35774b9a0e71c0b5b0c6a7206d524 to your computer and use it in GitHub Desktop.
kleene
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PORTNAME= kleene-daemon | |
DISTVERSIONPREFIX= v | |
DISTVERSION= 0.1.0 | |
DISTVERSIONSUFFIX= -rc.2 | |
CATEGORIES= sysutils | |
HEXPM_VERSION= 2.1.1 | |
MASTER_SITES+= https://builds.hex.pm/installs/1.16.0/:hex | |
DISTFILES+= hex-${HEXPM_VERSION}.ez:hex | |
MAINTAINER= [email protected] | |
COMMENT= Kleene backend daemon for managing containers on FreeBSD | |
WWW= https://kleene.dev | |
LICENSE= BSD2CLAUSE APACHE20 | |
LICENSE_COMB= multi | |
BUILD_DEPENDS= mix:lang/elixir \ | |
rebar3:devel/rebar3 | |
USES= gmake ssl | |
USE_GITHUB= yes | |
GH_ACCOUNT= kleene-project | |
GH_PROJECT= kleened | |
# not required once kleene tags their RC | |
GH_TUPLE= kleene-project:kleened:6a67380:DEFAULT | |
USE_RC_SUBR= kleened | |
ETCDIR= ${PREFIX}/etc/kleened | |
SUB_FILES= pkg-message | |
_ELIXIR_ARCHIVES= ${WRKSRC}/archives | |
MAKE_ENV= ERL_LIBS='' \ | |
HEX_HOME=${_ELIXIR_ARCHIVES}/.hex \ | |
HEX_OFFLINE=true \ | |
LANG=en_US_UTF-8 LC_ALL=en_US.UTF-8 \ | |
MIX_ENV=prod \ | |
MIX_HOME=${_ELIXIR_ARCHIVES}/.mix \ | |
MIX_PATH=${LOCALBASE}/lib/elixir/lib/hex/ebin \ | |
MIX_REBAR3=${LOCALBASE}/bin/rebar3 | |
RELEASE_PATH= ${WRKSRC}/_build/prod/rel/kleened | |
RELEASE_BINARIES= escript dialyzer erlexec beam.smp heart dyn_erl to_erl \ | |
erlc epmd run_erl typer inet_gethost erl_child_setup \ | |
ct_run erl_call yielding_c_fun | |
.include <bsd.port.pre.mk> | |
post-extract: | |
${MKDIR} ${_ELIXIR_ARCHIVES}/.mix ${_ELIXIR_ARCHIVES}/.hex/hex-${HEXPM_VERSION}/ | |
${TAR} -C ${_ELIXIR_ARCHIVES}/.hex/hex-${HEXPM_VERSION}/ -xf ${DISTDIR}/hex-${HEXPM_VERSION}.ez | |
do-build: | |
# this works fine | |
@echo ${MAKE_ENV} | |
# this does not show the same vars | |
@sh -c "export -p" | |
# so this fails | |
@(cd ${WRKSRC} && ${LOCALBASE}/bin/mix do deps.compile, compile, release) | |
do-install: | |
/usr/bin/false | |
${MKDIR} ${STAGEDIR}${PREFIX}/etc/kleened | |
${INSTALL_DATA} ${WRKSRC}/example/kleened_config.yaml \ | |
${STAGEDIR}${PREFIX}/etc/kleened/config.yaml.sample | |
${INSTALL_DATA} ${WRKSRC}/example/pf.conf.kleene \ | |
${STAGEDIR}${PREFIX}/etc/kleened/pf.conf.kleene.sample | |
${MKDIR} ${STAGEDIR}${PREFIX}/libexec/kleened/bin | |
${INSTALL_PROGRAM} ${WRKSRC}/priv/bin/kleened_pty \ | |
${STAGEDIR}${PREFIX}/libexec/kleened/bin/kleened_pty | |
${INSTALL_SCRIPT} ${WRKSRC}/_build/prod/rel/kleened/bin/kleened \ | |
${STAGEDIR}${PREFIX}/libexec/kleened/bin/ | |
cd ${RELEASE_PATH}/lib && \ | |
${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/libexec/kleened/lib | |
cd ${RELEASE_PATH} && \ | |
${COPYTREE_SHARE} ./erts-* ${STAGEDIR}${PREFIX}/libexec/kleened/ && \ | |
${CHMOD} +x ${STAGEDIR}${PREFIX}/libexec/kleened/erts-*/bin/* | |
cd ${RELEASE_PATH}/releases && \ | |
${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/libexec/kleened/releases | |
cd ${RELEASE_PATH}/releases && \ | |
${INSTALL_DATA} ${WRKSRC}/_build/prod/rel/kleened/releases/start_erl.data \ | |
${STAGEDIR}${PREFIX}/libexec/kleened/releases/ | |
${INSTALL_SCRIPT} ${RELEASE_PATH}/releases/0.0.1/elixir \ | |
${STAGEDIR}${PREFIX}/libexec/kleened/releases/0.0.1/ | |
${INSTALL_SCRIPT} ${RELEASE_PATH}/releases/0.0.1/iex \ | |
${STAGEDIR}${PREFIX}/libexec/kleened/releases/0.0.1/ | |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/kleened/lib/asn1-*/priv/lib/asn1rt_nif.so | |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/kleened/lib/crypto-*/priv/lib/*.so | |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/kleened/lib/exqlite-0.20.0/priv/sqlite3_nif.so | |
.for bin in ${RELEASE_BINARIES} | |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/kleened/erts-*/bin/${bin} | |
.endfor | |
post-install: | |
@cd ${STAGEDIR}${PREFIX} && \ | |
${FIND} libexec/kleened/erts-* -type f -o -type l | \ | |
${SORT} >> ${TMPPLIST} | |
@cd ${STAGEDIR}${PREFIX} && \ | |
${FIND} libexec/kleened/lib/* -type f -o -type l | \ | |
${SORT} >> ${TMPPLIST} | |
.include <bsd.port.post.mk> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
wat