86813e9ccf
Included all ports that have USES=java. PR: 293559
71 lines
2.1 KiB
Makefile
71 lines
2.1 KiB
Makefile
PORTNAME= USearch
|
|
DISTVERSIONPREFIX= v
|
|
DISTVERSION= 2.24.0
|
|
PORTREVISION= 1
|
|
CATEGORIES= math java
|
|
|
|
MAINTAINER= markus.graf@markusgraf.net
|
|
COMMENT= Search & Clustering engine library (C, C++ and Java JNI)
|
|
WWW= https://unum.cloud/usearch
|
|
|
|
LICENSE= APACHE20
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
|
|
|
NOT_FOR_ARCHS= i386
|
|
NOT_FOR_ARCHS_REASON= Tests crash on i386
|
|
|
|
USES= cmake java
|
|
|
|
USE_GITHUB= yes
|
|
GH_ACCOUNT= unum-cloud
|
|
|
|
CMAKE_ON= USEARCH_USE_FP16LIB \
|
|
USEARCH_USE_SIMSIMD \
|
|
USEARCH_BUILD_TEST_C \
|
|
USEARCH_BUILD_TEST_CPP \
|
|
USEARCH_BUILD_LIB_C \
|
|
USEARCH_USE_OPENMP \
|
|
USEARCH_BUILD_JNI
|
|
|
|
CMAKE_OFF= USEARCH_BUILD_BENCH_CPP
|
|
|
|
CMAKE_ARGS= -DJAVA_INCLUDE_PATH=${JAVA_HOME}/include \
|
|
-DJAVA_HOME=${JAVA_HOME}
|
|
|
|
JAVA_VERSION= 21
|
|
|
|
USE_LDCONFIG= yes
|
|
|
|
GH_TUPLE= maratyszcza:FP16:0a92994d729ff76a58f692d3028ca1b64b145d91:fp16/fp16 \
|
|
ashvardanian:StringZilla:v3.12.6:sz/stringzilla \
|
|
ashvardanian:SimSIMD:v6.5.13:sim/simsimd
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if ${ARCH} == amd64 # for simsimd
|
|
CXXFLAGS= -march=x86-64
|
|
.endif
|
|
|
|
post-build:
|
|
cd ${WRKSRC} && ${JAVAC} -classpath java -encoding UTF-8 -h java/cloud/unum/usearch -d bin java/cloud/unum/usearch/Index.java
|
|
${MKDIR} ${WRKSRC}/bin/usearch-native
|
|
${INSTALL_LIB} ${BUILD_WRKSRC}/libusearch_jni.so ${WRKSRC}/bin/usearch-native/
|
|
cd ${WRKSRC} && ${JAR} cvf usearch.jar -C bin .
|
|
|
|
do-install:
|
|
${MKDIR} ${STAGEDIR}${PREFIX}/include/usearch
|
|
${INSTALL_DATA} ${WRKSRC}/include/usearch/*.hpp ${STAGEDIR}${PREFIX}/include/usearch/
|
|
${INSTALL_DATA} ${WRKSRC}/c/usearch.h ${STAGEDIR}${PREFIX}/include/usearch/
|
|
${INSTALL_LIB} ${BUILD_WRKSRC}/libusearch_c.so ${STAGEDIR}${PREFIX}/lib/
|
|
${INSTALL_DATA} ${BUILD_WRKSRC}/libusearch_static_c.a ${STAGEDIR}${PREFIX}/lib/
|
|
${INSTALL_DATA} ${WRKSRC}/usearch.jar ${STAGEDIR}${JAVAJARDIR}/usearch-${DISTVERSION}.jar
|
|
${RLN} usearch-${DISTVERSION}.jar ${STAGEDIR}${JAVAJARDIR}/usearch.jar
|
|
|
|
do-test:
|
|
cd ${BUILD_WRKSRC} && ./test_c
|
|
cd ${BUILD_WRKSRC} && ./test_cpp
|
|
cd ${WRKSRC} && ${JAVA} -classpath bin cloud.unum.usearch.Index
|
|
cd ${WRKSRC} && ${JAVA} -classpath usearch.jar cloud.unum.usearch.Index
|
|
|
|
.include <bsd.port.post.mk>
|