PORTNAME=	spdlog
PORTVERSION=	1.17.0
DISTVERSIONPREFIX=	v
CATEGORIES=	devel

MAINTAINER=	sunpoet@FreeBSD.org
COMMENT=	Super fast C++ logging library
WWW=		https://github.com/gabime/spdlog

LICENSE=	MIT
LICENSE_FILE=	${WRKSRC}/LICENSE

LIB_DEPENDS=	libfmt.so:devel/libfmt
TEST_DEPENDS=	catch2>=0:devel/catch2 \
		pkgconf>=0:devel/pkgconf

USES=		cmake:testing compiler:c++14-lang pathfix

CMAKE_OFF=	SPDLOG_BUILD_ALL \
		SPDLOG_BUILD_BENCH \
		SPDLOG_BUILD_EXAMPLE_HO \
		SPDLOG_BUILD_TESTS \
		SPDLOG_BUILD_TESTS_HO \
		SPDLOG_BUILD_WARNINGS \
		SPDLOG_DISABLE_DEFAULT_LOGGER \
		SPDLOG_ENABLE_PCH \
		SPDLOG_FMT_EXTERNAL_HO \
		SPDLOG_NO_ATOMIC_LEVELS \
		SPDLOG_NO_EXCEPTIONS \
		SPDLOG_NO_THREAD_ID \
		SPDLOG_NO_TLS \
		SPDLOG_NO_TZ_OFFSET \
		SPDLOG_PREVENT_CHILD_FD \
		SPDLOG_SANITIZE_ADDRESS \
		SPDLOG_SANITIZE_THREAD \
		SPDLOG_SYSTEM_INCLUDES \
		SPDLOG_TIDY \
		SPDLOG_USE_STD_FORMAT
CMAKE_ON=	SPDLOG_BUILD_EXAMPLE \
		SPDLOG_BUILD_PIC \
		SPDLOG_BUILD_SHARED \
		SPDLOG_FMT_EXTERNAL \
		SPDLOG_FWRITE_UNLOCKED \
		SPDLOG_INSTALL
CMAKE_TESTING_ON=	\
		SPDLOG_BUILD_TESTS
USE_LDCONFIG=	yes

PLIST_SUB=	PORTVERSION=${PORTVERSION} \
		SHLIB_VER=${PORTVERSION:R}

USE_GITHUB=	yes
GH_ACCOUNT=	gabime

EXTRACT_AFTER_ARGS=	--exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/include/spdlog/fmt/bundled

post-stage:
	${ECHO_CMD} '#define SPDLOG_FMT_EXTERNAL' >> ${STAGEDIR}${PREFIX}/include/spdlog/tweakme.h

.include <bsd.port.mk>
