summaryrefslogtreecommitdiff
path: root/math/py-faiss/Makefile
blob: 3a08c0498ee1cc5e29f0f4bae34340cc45c2f2f5 (plain)
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
PORTNAME=	faiss
DISTVERSIONPREFIX=	v
DISTVERSION=	1.7.4
PORTREVISION=	1
CATEGORIES=	math
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}

MAINTAINER=	yuri@FreeBSD.org
COMMENT=	Library for efficient similarity search & clustering of dense vectors
WWW=		https://github.com/facebookresearch/faiss

LICENSE=	MIT
LICENSE_FILE=	${WRKSRC}/../../LICENSE

BROKEN_i386=	clang crashes, see bug#261580

PY_DEPENDS=	${PYNUMPY}
BUILD_DEPENDS=	swig:devel/swig \
		${PY_DEPENDS}
LIB_DEPENDS=	libfaiss.so:math/faiss
RUN_DEPENDS=	${PY_DEPENDS}

USES=		cmake compiler:c++11-lang localbase python
USE_PYTHON=	flavors pytest

USE_GITHUB=	yes
GH_ACCOUNT=	facebookresearch

WRKSRC_SUBDIR=	faiss/python

CMAKE_ARGS=	-DPython_EXECUTABLE:STRING=${PYTHON_CMD}

TEST_WRKSRC=	${WRKSRC}/../..
TEST_ENV=	${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}

post-patch: # remove GPU testcases
	${RM} -r ${WRKSRC}/../../faiss/gpu

do-install: # see https://github.com/facebookresearch/faiss/issues/2194
	${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME}
	${INSTALL_LIB} ${BUILD_WRKSRC}/_swigfaiss.so ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME}
.for f in __init__.py array_conversions.py class_wrappers.py extra_wrappers.py gpu_wrappers.py loader.py swigfaiss.py
	${INSTALL_DATA} ${BUILD_WRKSRC}/${f} ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME}
.endfor
	cd ${BUILD_WRKSRC} && ${COPYTREE_SHARE} contrib ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PORTNAME}

.include <bsd.port.mk>