aboutsummaryrefslogtreecommitdiffstats
path: root/devel/kore/Makefile
blob: 73d0a29d90d1d23614095a71e25a5071e1ebd19a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Created by: Tobias Kortkamp <t@tobik.me>
# $FreeBSD$

PORTNAME=   kore
PORTVERSION=    2.0.0
DISTVERSIONSUFFIX=  -release
PORTREVISION=   1
CATEGORIES= devel www

MAINTAINER= t@tobik.me
COMMENT=    Web application framework for writing web APIs in C

LICENSE=    ISCL
LICENSE_FILE=   ${WRKSRC}/LICENSE

USES=   gmake

USE_GITHUB= yes
GH_ACCOUNT= jorisvink

MAKE_ARGS=  INSTALL_DIR="${STAGEDIR}${PREFIX}/bin" \
        INCLUDE_DIR="${STAGEDIR}${PREFIX}/include/kore"

OPTIONS_DEFINE= DEBUG HTTP JSONRPC PGSQL TASKS TLS
OPTIONS_DEFAULT=    HTTP JSONRPC PGSQL TASKS TLS

HTTP_DESC=  Build with HTTP support
JSONRPC_DESC=   Build with JSON-RPC support
TASKS_DESC= Build with tasks support

TASKS_VARS= MAKE_ARGS+=TASKS=1

PGSQL_IMPLIES=  HTTP
PGSQL_VARS= MAKE_ARGS+=PGSQL=1
PGSQL_USES= pgsql

TLS_VARS_OFF=   MAKE_ARGS+=NOTLS=1
TLS_USES=   ssl

HTTP_VARS_OFF=  MAKE_ARGS+=NOHTTP=1
# If TLS=off and HTTP=on kore will still link with libcrypto, so add
# an OpenSSL dependency here.
HTTP_USES=  ssl

JSONRPC_IMPLIES=    HTTP
JSONRPC_VARS=   MAKE_ARGS+=JSONRPC=1
JSONRPC_LIB_DEPENDS=    libyajl.so:devel/yajl

DEBUG_VARS= MAKE_ARGS+=DEBUG=1

post-patch:
# Disable kore's own optimizations flags, make sure the correct flags
# are set when LOCALBASE is not /usr/local, and allow __generic on
# FreeBSD 12.0-CURRENT after r308264
    @${REINPLACE_CMD} -e 's|CFLAGS+=-O|#|g' \
        -e 's|/usr/local/|${LOCALBASE}/|g' \
        -e 's|-pedantic|-pedantic -Wno-error=c11-extensions|g' \
        ${WRKSRC}/Makefile

pre-install:
    ${STRIP_CMD} ${WRKSRC}/kore

post-install:
    cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}
    cd ${WRKSRC}/conf && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}

.include <bsd.port.mk>