diff options
author | yuri <yuri@FreeBSD.org> | 2019-01-23 17:31:55 +0800 |
---|---|---|
committer | yuri <yuri@FreeBSD.org> | 2019-01-23 17:31:55 +0800 |
commit | f8f5dcc2f33f3642ba6137823fd0b4ab2981e2f3 (patch) | |
tree | 6064619db9edd4a9ea5a135fb6065fc3659b9596 /misc | |
parent | 086fd1a3d6f864ee85adec538f079446fa068ae5 (diff) | |
download | freebsd-ports-gnome-f8f5dcc2f33f3642ba6137823fd0b4ab2981e2f3.tar.gz freebsd-ports-gnome-f8f5dcc2f33f3642ba6137823fd0b4ab2981e2f3.tar.zst freebsd-ports-gnome-f8f5dcc2f33f3642ba6137823fd0b4ab2981e2f3.zip |
New port: misc/elki: Data mining toolkit
Diffstat (limited to 'misc')
-rw-r--r-- | misc/Makefile | 1 | ||||
-rw-r--r-- | misc/elki/Makefile | 52 | ||||
-rw-r--r-- | misc/elki/distinfo | 5 | ||||
-rw-r--r-- | misc/elki/files/elki.sh.in | 25 | ||||
-rw-r--r-- | misc/elki/pkg-descr | 11 |
5 files changed, 94 insertions, 0 deletions
diff --git a/misc/Makefile b/misc/Makefile index 16a0ce52513d..3889c71f5366 100644 --- a/misc/Makefile +++ b/misc/Makefile @@ -83,6 +83,7 @@ SUBDIR += e2fsprogs-libuuid SUBDIR += elixir-mime SUBDIR += elixir-uuid + SUBDIR += elki SUBDIR += elscreen SUBDIR += erlang-mimerl SUBDIR += erlang-mimetypes diff --git a/misc/elki/Makefile b/misc/elki/Makefile new file mode 100644 index 000000000000..707a9632873b --- /dev/null +++ b/misc/elki/Makefile @@ -0,0 +1,52 @@ +# $FreeBSD$ + +PORTNAME= elki +DISTVERSIONPREFIX= release +DISTVERSION= 0.7.1-1166 +DISTVERSIONSUFFIX= -gfb1fffdf3 +CATEGORIES= misc java +MASTER_SITES= LOCAL/yuri/:deps +DISTFILES= ${PORTNAME}-${DISTVERSION}-deps${EXTRACT_SUFX}:deps +EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Data mining toolkit + +LICENSE= AGPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE.md + +BUILD_DEPENDS= gradle:devel/gradle + +USE_JAVA= yes +USE_GITHUB= yes +GH_ACCOUNT= elki-project + +SUB_FILES= ${PORTNAME}.sh +SUB_LIST= PORTNAME=${PORTNAME} PORTVERSION=${PORTVERSION} JAVA=${JAVA} + +DEPS_CACHE_DIR= /tmp # should be ${WRKDIR}, but workaround for the gradle bug that dependency cache is not relocable: https://github.com/gradle/gradle/issues/1338 + +PLIST_FILES= bin/${PORTNAME} \ + ${JAVAJARDIR}/${PORTNAME}-${PORTVERSION}.jar + +# to rebuild the deps archive: +# 1. remove post-extract +# 2. remove --offline +# 3. remove MASTER_SITES/DISTFILES/EXTRACT_ONLY +# 4. build +# 5. package ${DEPS_CACHE_DIR}/gradle-${PORTNAME} into the deps archive and upload it +# 6. restore the removed items + +post-extract: + @cd ${DEPS_CACHE_DIR} && ${TAR} xzf ${DISTDIR}/${PORTNAME}-${DISTVERSION}-deps${EXTRACT_SUFX} + +do-build: + @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} gradle \ + --gradle-user-home ${DEPS_CACHE_DIR}/gradle-${PORTNAME} --project-cache-dir ${DEPS_CACHE_DIR}/gradle-${PORTNAME} \ + --offline --build-cache shadowJar + +do-install: + ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME}.sh ${STAGEDIR}${PREFIX}/bin/${PORTNAME} + ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}-bundle-0.7.2-SNAPSHOT.jar ${STAGEDIR}${JAVAJARDIR}/${PORTNAME}-${PORTVERSION}.jar + +.include <bsd.port.mk> diff --git a/misc/elki/distinfo b/misc/elki/distinfo new file mode 100644 index 000000000000..6a2336fba5b0 --- /dev/null +++ b/misc/elki/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1548234819 +SHA256 (elki-0.7.1-1166-deps.tar.gz) = 67eb3b3d3c1b53b20f3bd47f45ea4fe523e6498f8d428f251105008a7bfb98c9 +SIZE (elki-0.7.1-1166-deps.tar.gz) = 40980776 +SHA256 (elki-project-elki-release0.7.1-1166-gfb1fffdf3_GH0.tar.gz) = 50e27a993c6a82b45fd6b179c77115fc6d233990826abdcc982a338b50ae4911 +SIZE (elki-project-elki-release0.7.1-1166-gfb1fffdf3_GH0.tar.gz) = 4909717 diff --git a/misc/elki/files/elki.sh.in b/misc/elki/files/elki.sh.in new file mode 100644 index 000000000000..ffdfd32a8ebc --- /dev/null +++ b/misc/elki/files/elki.sh.in @@ -0,0 +1,25 @@ +#!/bin/sh + +export LC_ALL=en_US.UTF-8 + +MEM_OPTS_SET_BY_USER="no" +for o in $@; do + case $o in + -X* ) + MEM_OPTS_SET_BY_USER="yes" + ;; + esac +done + +if [ $MEM_OPTS_SET_BY_USER = "no" ]; then + # memory options + physmem_b=$(sysctl -n hw.physmem) + physmem_mb=$((physmem_b/1024/1024)) + physmem_mb=$((physmem_mb*3/4)) # allow 3/4 of the memory + # -Xms<size> set initial Java heap size + # -Xmx<size> set maximum Java heap size + MEM_OPTS="-Xms512m -Xmx${physmem_mb}m" +fi + +# execute the command +%%JAVA%% $MEM_OPTS -jar %%JAVAJARDIR%%/%%PORTNAME%%-%%PORTVERSION%%.jar "$@" diff --git a/misc/elki/pkg-descr b/misc/elki/pkg-descr new file mode 100644 index 000000000000..2a6df9e5490a --- /dev/null +++ b/misc/elki/pkg-descr @@ -0,0 +1,11 @@ +ELKI is an open source (AGPLv3) data mining software written in Java. The focus +of ELKI is research in algorithms, with an emphasis on unsupervised methods in +cluster analysis and outlier detection. In order to achieve high performance and +scalability, ELKI offers data index structures such as the R*-tree that can +provide major performance gains. ELKI is designed to be easy to extend for +researchers and students in this domain, and welcomes contributions of +additional methods. ELKI aims at providing a large collection of highly +parameterizable algorithms, in order to allow easy and fair evaluation and +benchmarking of algorithms. + +WWW: https://elki-project.github.io/ |