Added
Link Here
|
1 |
PORTNAME= kleene-daemon |
2 |
DISTVERSIONPREFIX= v |
3 |
DISTVERSION= 0.1.0rc1 |
4 |
CATEGORIES= sysutils |
5 |
|
6 |
MAINTAINER= lasse@philomath.dk |
7 |
COMMENT= Kleened, the Kleene backend daemon for managing containers on FreeBSD |
8 |
WWW= https://kleene.dev |
9 |
|
10 |
LICENSE= BSD2CLAUSE |
11 |
|
12 |
BUILD_DEPENDS= mix:lang/elixir \ |
13 |
rebar3:devel/rebar3 \ |
14 |
${LOCALBASE}/lib/elixir/lib/hex/ebin:devel/elixir-hex |
15 |
|
16 |
USES= ssl gmake |
17 |
USE_GITHUB= yes |
18 |
GH_TUPLE= kleene-project:kleened:97b1934:DEFAULT |
19 |
USE_RC_SUBR= kleened |
20 |
|
21 |
SUB_FILES= pkg-message |
22 |
|
23 |
ETCDIR= ${PREFIX}/etc/kleened |
24 |
|
25 |
MIX_TARGET= release |
26 |
ELIXIR_LOCALE= en_US.UTF-8 |
27 |
ELIXIR_APP_NAME= ${PORTNAME} |
28 |
MIX_ENV= MIX_REBAR3=${LOCALBASE}/bin/rebar3 \ |
29 |
LANG=${ELIXIR_LOCALE} \ |
30 |
LC_ALL=${ELIXIR_LOCALE} \ |
31 |
MIX_PATH=${LOCALBASE}/lib/elixir/lib/hex/ebin \ |
32 |
MIX_HOME=mix |
33 |
MIX_ENV_NAME= prod |
34 |
MIX_COMPILE= ${SETENV} ${MIX_ENV} MIX_ENV=${MIX_ENV_NAME} mix ${MIX_TARGET} |
35 |
|
36 |
RELEASE_PATH= ${WRKSRC}/_build/prod/rel/kleened |
37 |
RELEASE_BINARIES= escript dialyzer erlexec beam.smp heart dyn_erl to_erl \ |
38 |
erlc epmd run_erl typer inet_gethost erl_child_setup ct_run \ |
39 |
erl_call yielding_c_fun |
40 |
|
41 |
.include <bsd.port.pre.mk> |
42 |
|
43 |
do-build: |
44 |
@cd ${WRKSRC} && ${MIX_COMPILE} |
45 |
|
46 |
do-install: |
47 |
${MKDIR} ${STAGEDIR}${PREFIX}/etc/kleened |
48 |
${INSTALL_DATA} ${WRKSRC}/example/kleened_config.yaml \ |
49 |
${STAGEDIR}${PREFIX}/etc/kleened/config.yaml.sample |
50 |
${INSTALL_DATA} ${WRKSRC}/example/pf.conf.kleene \ |
51 |
${STAGEDIR}${PREFIX}/etc/kleened/pf.conf.kleene.sample |
52 |
${INSTALL_PROGRAM} ${WRKSRC}/priv/bin/kleened_pty \ |
53 |
${STAGEDIR}${PREFIX}/bin/kleened_pty |
54 |
${MKDIR} ${STAGEDIR}${PREFIX}/lib/kleened/bin |
55 |
${INSTALL_SCRIPT} ${WRKSRC}/_build/prod/rel/kleened/bin/kleened \ |
56 |
${STAGEDIR}${PREFIX}/lib/kleened/bin/ |
57 |
cd ${RELEASE_PATH}/lib && \ |
58 |
${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/kleened/lib |
59 |
cd ${RELEASE_PATH} && ERTS_DIR=$$(${FIND} erts-* -depth 1 -type d) && \ |
60 |
${COPYTREE_SHARE} ./$$ERTS_DIR ${STAGEDIR}${PREFIX}/lib/kleened/ && \ |
61 |
${CHMOD} +x ${STAGEDIR}${PREFIX}/lib/kleened/$$ERTS_DIR/* |
62 |
cd ${RELEASE_PATH}/releases && \ |
63 |
${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/kleened/releases |
64 |
cd ${RELEASE_PATH}/releases && \ |
65 |
${INSTALL_DATA} ${WRKSRC}/_build/prod/rel/kleened/releases/start_erl.data ${STAGEDIR}${PREFIX}/lib/kleened/releases/ |
66 |
${INSTALL_SCRIPT} ${RELEASE_PATH}/releases/0.0.1/elixir \ |
67 |
${STAGEDIR}${PREFIX}/lib/kleened/releases/0.0.1/ |
68 |
${INSTALL_SCRIPT} ${RELEASE_PATH}/releases/0.0.1/iex \ |
69 |
${STAGEDIR}${PREFIX}/lib/kleened/releases/0.0.1/ |
70 |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/kleened/lib/asn1-*/priv/lib/asn1rt_nif.so |
71 |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/kleened/lib/crypto-*/priv/lib/*.so |
72 |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/kleened/lib/exqlite-0.20.0/priv/sqlite3_nif.so |
73 |
.for bin in ${RELEASE_BINARIES} |
74 |
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/kleened/erts-*/bin/${bin} |
75 |
.endfor |
76 |
|
77 |
post-install: |
78 |
@cd ${STAGEDIR}${PREFIX} && \ |
79 |
${FIND} lib/kleened/erts-* -type f -o -type l | ${SORT} >> ${TMPPLIST} |
80 |
@cd ${STAGEDIR}${PREFIX} && \ |
81 |
${FIND} lib/kleened/lib/* -type f -o -type l | ${SORT} >> ${TMPPLIST} |
82 |
|
83 |
.include <bsd.port.post.mk> |