freebsd-ports/devel/kore/Makefile

90 lines
2.6 KiB
Makefile

# Created by: Tobias Kortkamp <t@tobik.me>
# $FreeBSD$
PORTNAME= kore
PORTVERSION= 3.1.0
PORTREVISION= 1
CATEGORIES= devel www
MASTER_SITES= https://kore.io/releases/
MAINTAINER= tobik@FreeBSD.org
COMMENT= Web application framework for writing web APIs in C
LICENSE= ISCL
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_powerpc64= fails to compile: cc1: error: -Werror=c11-extensions: No option -Wc11-extensions
FLAVORS= default notls
notls_PKGNAMESUFFIX= -notls
USES= compiler gmake ssl
CFLAGS+= ${CFLAGS_${CHOSEN_COMPILER_TYPE}} -I${OPENSSLINC}
CFLAGS_clang= -Wno-error=c11-extensions # 12.0 + -pedantic
LDFLAGS+= -L${OPENSSLLIB}
DATADIR= ${PREFIX}/share/kore${PKGNAMESUFFIX}
EXAMPLESDIR= ${PREFIX}/share/examples/kore${PKGNAMESUFFIX}
PLIST_SUB= SUFFIX=${PKGNAMESUFFIX}
OPTIONS_DEFINE= DEBUG EXAMPLES HTTP JSONRPC PGSQL PYTHON TASKS TLS
OPTIONS_DEFAULT= HTTP JSONRPC PGSQL PYTHON TASKS TLS
.if ${FLAVOR:U} == notls
OPTIONS_EXCLUDE= TLS
.endif
OPTIONS_SUB= yes
HTTP_DESC= Build with HTTP support
JSONRPC_DESC= Build with JSON-RPC support
TASKS_DESC= Build with tasks support
DEBUG_MAKE_ARGS= DEBUG=1
PORTEXAMPLES= *
JSONRPC_IMPLIES= HTTP
JSONRPC_LIB_DEPENDS= libyajl.so:devel/yajl
JSONRPC_MAKE_ARGS= JSONRPC=1
HTTP_MAKE_ARGS_OFF= NOHTTP=1
PGSQL_IMPLIES= HTTP
PGSQL_MAKE_ARGS= PGSQL=1
PGSQL_USES= pgsql
PYTHON_BINARY_ALIAS= python3-config=${PYTHON_CMD}-config
PYTHON_MAKE_ARGS= PYTHON=1
PYTHON_USES= gettext-runtime python:3.6+
TASKS_MAKE_ARGS= TASKS=1
TLS_MAKE_ARGS_OFF= NOTLS=1
post-patch:
# Disable kore's own optimizations flags, make sure the correct paths
# are set when LOCALBASE is not /usr/local
@${REINPLACE_CMD} -e 's|CFLAGS+=-O|#|g' \
-e 's|/usr/local/|${LOCALBASE}/|g' \
${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's|%%SUFFIX%%|${PKGNAMESUFFIX}|g' \
-e 's|%%OPENSSLINC%%|${OPENSSLINC}|g' \
${WRKSRC}/src/cli.c ${WRKSRC}/src/utils.c
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/kore ${STAGEDIR}${PREFIX}/bin/kore${PKGNAMESUFFIX}
${INSTALL_PROGRAM} ${WRKSRC}/kodev/kodev ${STAGEDIR}${PREFIX}/bin/kodev${PKGNAMESUFFIX}
@${MKDIR} ${STAGEDIR}${DATADIR}
${INSTALL_DATA} ${WRKSRC}/kore.features ${STAGEDIR}${DATADIR}/features
@${MKDIR} ${STAGEDIR}${PREFIX}/include/kore${PKGNAMESUFFIX}
@cd ${WRKSRC}/include && ${COPYTREE_SHARE} . \
${STAGEDIR}${PREFIX}/include/kore${PKGNAMESUFFIX}
@${MKDIR} ${STAGEDIR}${PREFIX}/man/man1
${INSTALL_DATA} ${WRKSRC}/share/man/kodev.1 \
${STAGEDIR}${PREFIX}/man/man1/kodev${PKGNAMESUFFIX}.1
do-install-EXAMPLES-on:
@cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}
@cd ${WRKSRC}/conf && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}
.include <bsd.port.mk>