aboutsummaryrefslogtreecommitdiff
path: root/net-p2p/libtorrent-rasterbar/Makefile
blob: ec580b903b2138f2d4c403203e7c912cee8ab39c (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
68
69
70
71
72
# Created by: Doug Barton <dougb@FreeBSD.org>

PORTNAME=	libtorrent-rasterbar
DISTVERSION=	1.2.12
PORTEPOCH=	1
CATEGORIES=	net-p2p
MASTER_SITES=	https://github.com/arvidn/libtorrent/releases/download/v${DISTVERSION}/

MAINTAINER=	yuri@FreeBSD.org
COMMENT=	C++ library implementing a BitTorrent client

LICENSE=	BSD3CLAUSE
LICENSE_FILE=	${WRKSRC}/COPYING

LIB_DEPENDS=	libboost_chrono.so:devel/boost-libs \
		libboost_random.so:devel/boost-libs \
		libboost_system.so:devel/boost-libs

USES=		cmake compiler:c++11-lib iconv:wchar_t libtool localbase:ldflags pathfix pkgconfig python:test shebangfix ssl
SHEBANG_FILES=	test/socks.py test/web_server.py
USE_LDCONFIG=	yes

LDFLAGS+=	${ICONV_LIB}

SHLIB_VER=	10
PLIST_SUB+=	SHLIB_VER="${SHLIB_VER}" SO_VER="${DISTVERSION}"

DOCFILES=	AUTHORS ChangeLog
PORTDOCS=	${DOCFILES} docs/*
PORTEXAMPLES=	*.cpp

OPTIONS_DEFINE=		DOCS EXAMPLES LOGGING
OPTIONS_DEFAULT=	LOGGING
OPTIONS_SUB=		yes
LOGGING_DESC=		Enable logging to disk

EXAMPLES_CMAKE_BOOL=	build_examples
LOGGING_CMAKE_BOOL=	logging

PORTSCOUT=	limit:^1.* # 2.x is WIP and we don't accept it before qBittorrent does

post-patch:
	@${REINPLACE_CMD} -e 's|return "python3";|return "${PYTHON_CMD}";|' \
		${WRKSRC}/test/setup_transfer.cpp

post-install:
	@${RM} ${STAGEDIR}${PREFIX}/include/libtorrent/Makefile*
	# Workaround for -DTHREADS_HAVE_PTHREAD_ARG:BOOL=YES being set in
	# Mk/Uses/cmake.mk
	# References:   https://mariadb.atlassian.net/browse/MDEV-9388
	#               https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=206169
	@${REINPLACE_CMD} 's/-l-pthread/-lpthread/' \
		${STAGEDIR}${PREFIX}/libdata/pkgconfig/libtorrent-rasterbar.pc

post-install-DOCS-on:
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
	${INSTALL_DATA} ${DOCFILES:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
	cd ${WRKSRC} && ${COPYTREE_SHARE} docs ${STAGEDIR}${DOCSDIR}
	${RM} ${STAGEDIR}${DOCSDIR}/docs/._*

post-install-EXAMPLES-on:
	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
	${INSTALL_DATA} ${WRKSRC}/examples/${PORTEXAMPLES} \
		${STAGEDIR}${EXAMPLESDIR}

do-test:
	@cd ${BUILD_WRKSRC} && \
		${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -Dbuild_tests:BOOL=ON ${CMAKE_SOURCE_PATH} && \
		${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \
		${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} test

.include <bsd.port.mk>