aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Mokrejš <mmokrejs@fold.natur.cuni.cz>2017-03-15 22:38:28 +0100
committerMartin Mokrejš <mmokrejs@fold.natur.cuni.cz>2017-03-15 22:38:28 +0100
commit395c7e7490baf0d7a6e6550fd47d966c285dc171 (patch)
treee5570ac1885074d72de6a58a621cbfdd48f88364
parentsci-biology/ncbi-tools++-12.0.0: do not force --without-downloaded-vdb (diff)
downloadsci-395c7e7490baf0d7a6e6550fd47d966c285dc171.tar.gz
sci-395c7e7490baf0d7a6e6550fd47d966c285dc171.tar.bz2
sci-395c7e7490baf0d7a6e6550fd47d966c285dc171.zip
sci-biology/imagej: new package
Ebuild taken over from https://bugs.gentoo.org/show_bug.cgi?id=112275 src_compile screams about: >>> Compiling source in /scratch/var/tmp/portage/sci-biology/imagej-1.51k/work/source ... !!! ERROR: Package jython was not found! but it builds fine using Apache ant. ImageJ2 is using maven as a build system ( https://imagej.net/ImageJ2 ) Package-Manager: Portage-2.3.3, Repoman-2.3.1
-rw-r--r--sci-biology/imagej/Manifest3
-rw-r--r--sci-biology/imagej/files/AutoThresholder.java.patch10
-rw-r--r--sci-biology/imagej/imagej-1.51k.ebuild132
-rw-r--r--sci-biology/imagej/metadata.xml15
4 files changed, 160 insertions, 0 deletions
diff --git a/sci-biology/imagej/Manifest b/sci-biology/imagej/Manifest
new file mode 100644
index 000000000..472f38d81
--- /dev/null
+++ b/sci-biology/imagej/Manifest
@@ -0,0 +1,3 @@
+DIST ImageJ.png 13012 SHA256 02b93e7614a2ab52ca5dbdc941dc99b4b461c91b28203d33e877746f97e12b86 SHA512 60c2ff73bcfc668931c59b0dfb299723a369b741601bdd591a407302e30fc58c6c626525b3f08b955a5dab37729d3f704db689317b42a94e7a3ccbfb72abc9b3 WHIRLPOOL c8f5328abd55b3ec23f0676d29bd47f91059f22de3ed6ad98c95670e504ffa3403bd91ee75d601b68034dd686d252163680b5fd57aaea8bb8b7b6d275ac9964f
+DIST ij150.zip 4179316 SHA256 97aba6fc5eb908f5160243aebcdc4965726693cb1353d9c0d71b8f5dd832cb7b SHA512 a6aae1813c9144692d7e11a82199cfc1d52e5f99d5716de890b58456c303eadc047a01e37822cdbd0c610bae944954d9e2ae46c8961710c63311f649976930e9 WHIRLPOOL 6df690327c54a5809b4e0b3f4e7c52998265de2685b4fb901702e12cb52936a685eed3f9db9610b4ed6c2e778b87ae8e73cb09d770955aac4d87f0327a3e4fa3
+DIST ij151k-src.zip 1580015 SHA256 186adf6756bb1008b1d9596ffb7e92efcaeca7411b19489368aa9e135751c0e1 SHA512 93249fb1c186e757dde78231d3064a1179f5c10d94dc02b9b0535febd5db78cb2666e9e952380de8847339c840d4e46e857eaa982340c6e5084d1003c44791e6 WHIRLPOOL f72fd0d4d3377247d21d9c46a1b5ac5e8068ebbceac790aba89a7ce35ee0f2ca00eed588f2bc924d1180c4774c6d6ce81cfc8765a2d610a9b913c05689ccaae4
diff --git a/sci-biology/imagej/files/AutoThresholder.java.patch b/sci-biology/imagej/files/AutoThresholder.java.patch
new file mode 100644
index 000000000..97c893244
--- /dev/null
+++ b/sci-biology/imagej/files/AutoThresholder.java.patch
@@ -0,0 +1,10 @@
+--- imagej-1.51k/work/source/ij/process/AutoThresholder.java.ori 2017-03-15 22:33:45.843801175 +0100
++++ imagej-1.51k/work/source/ij/process/AutoThresholder.java 2017-03-15 22:33:55.104053480 +0100
+@@ -650,7 +650,6 @@
+ }
+ // The threshold is the minimum between the two peaks.
+ for (int i=1; i<255; i++) {
+- //IJ.log(" "+i+"  "+iHisto[i]);
+ if (iHisto[i-1] > iHisto[i] && iHisto[i+1] >= iHisto[i]) {
+ threshold = i;
+ break;
diff --git a/sci-biology/imagej/imagej-1.51k.ebuild b/sci-biology/imagej/imagej-1.51k.ebuild
new file mode 100644
index 000000000..0467973e4
--- /dev/null
+++ b/sci-biology/imagej/imagej-1.51k.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=6
+
+inherit java-pkg-2 java-ant-2 eutils versionator
+
+MY_PN="ij"
+MY_PV=$(delete_all_version_separators)
+
+# NOTE:
+# as plugins are regularly lagging behind, we use the pack released for previous
+# version instead. Change to present version locally if you are sure proper
+# version has been released.
+# see https://bugs.gentoo.org/show_bug.cgi?id=112275
+IJ_PV=$(expr ${MY_PV::3} - 1)
+
+DESCRIPTION="Image Processing and Analysis in Java"
+HOMEPAGE="http://rsb.info.nih.gov/ij/"
+
+SRC_URI="http://imagej.nih.gov/ij/download/src/${MY_PN}${MY_PV}-src.zip
+ http://rsb.info.nih.gov/ij/images/ImageJ.png
+ plugins? ( http://wsr.imagej.net/distros/cross-platform/${MY_PN}${IJ_PV}.zip )"
+# plugins are under a different licenses and can be installed into user's $IJ_HOME/plugins
+# plugins? ( http://rsb.info.nih.gov/ij/download/zips/${MY_PN}${IJ_PV}.zip )"
+
+RESTRICT=""
+LICENSE="public-domain"
+SLOT="0"
+
+KEYWORDS=""
+
+IUSE="doc plugins debug"
+
+RDEPEND=">=virtual/jre-1.6:*
+ dev-java/java-config
+ dev-java/jython"
+DEPEND=">=virtual/jdk-1.6:*
+ dev-java/ant-core
+ ${RDEPEND}"
+
+S=${WORKDIR}/source
+IJ_S=${WORKDIR}/ImageJ
+
+src_prepare() {
+ cp "${DISTDIR}"/ImageJ.png "${WORKDIR}/${PN}.png" || die
+
+ if ! use debug ; then
+ sed -i 's: debug="on">: debug="off">:' "${S}"/build.xml || die
+ fi
+ epatch "${FILESDIR}"/AutoThresholder.java.patch
+ eapply_user
+}
+
+# in src_compile we get: !!! ERROR: Package jython was not found!
+# TODO: overwrite calls to jython ? See
+# ij/plugin/frame/Editor.java
+# plugin/PlugInInterpreter.java
+# plugin/Macro_Runner.java
+
+src_compile() {
+ local antflags="build"
+ use doc && antflags="${antflags} javadocs"
+
+ ant ${antflags} || die "ant build failed"
+
+ # Max memory usage depends on available memory and CPU type
+ MEM=$(grep MemTotal ${EPREFIX}/proc/meminfo | cut -d':' -f2 | grep -o [0-9]*)
+ IJ_MAX_MEM=$(expr ${MEM} / 1024)
+ if use x86 && $IJ_MAX_MEM -gt 2048 ; then
+ IJ_MAX_MEM=2048
+ fi
+ # build finished, generate startup wrapper
+ cat <<EOF > "${T}/${PN}"
+#!${EPREFIX}/bin/bash
+IJ_LIB=${EPREFIX}/usr/share/${PN}/lib
+if !([ "\${IJ_HOME}" ]) ; then
+ IJ_HOME=\${HOME}
+fi
+if [ -d \${IJ_HOME}/plugins ] ; then
+ IJ_PLG=\${IJ_HOME}
+else
+ IJ_PLG=${EPREFIX}/usr/share/${PN}/lib
+fi
+if !([ "\$IJ_MEM" ]) ; then
+ IJ_MEM=${IJ_MAX_MEM}
+fi
+if !([ "\$IJ_CP" ]) ; then
+ IJ_CP=\$(java-config -p imagej):\$(java-config -O)/lib/tools.jar
+else
+ IJ_CP=\$(java-config -p imagej):\$(java-config -O)/lib/tools.jar:\${IJ_CP}
+fi
+\$(java-config --java) \\
+ -Xmx\${IJ_MEM}m -Dswing.aatext=true \\
+ -Dawt.useSystemAAFontSettings=on\\
+ -cp \${IJ_CP} \\
+ -Duser.home=\${IJ_HOME} \\
+ -Dplugins.dir=\${IJ_PLG} \\
+ ij.ImageJ "\$@"
+EOF
+}
+
+src_install() {
+ java-pkg_dojar *.jar
+ dobin "${T}/${PN}"
+
+ if use plugins ; then
+ cp -R "${IJ_S}"/plugins "${ED}"/usr/share/"${PN}"/lib/
+ cp -R "${IJ_S}"/macros "${ED}"/usr/share/"${PN}"/lib/
+ fi
+
+ use doc && java-pkg_dohtml -r "${WORKDIR}"/api
+
+ insinto /usr/share/pixmaps
+ doins "${WORKDIR}/${PN}".png
+ make_desktop_entry "${PN}" ImageJ "${PN}".png Graphics
+}
+
+pkg_postinst() {
+ einfo ""
+ einfo "You can configure the path of a folder, which contains \"plugins\" directory and IJ_Prefs.txt,"
+ einfo "by setting the environmental variable, \$IJ_HOME."
+ einfo "Default setting is \$IJ_HOME=\${HOME}, i.e. \${HOME}/plugins and \${HOME}/IJ_Prefs.txt."
+ einfo ""
+ einfo "You can also configure the memory size by setting the environmental variable, \$IJ_MEM,"
+ einfo "and the class path by setting the environmental variable, \$IJ_CP."
+ einfo ""
+ einfo "If you want to use much more plugins, please see http://rsb.info.nih.gov/ij/plugins/index.html"
+ einfo "and add *.class files to \$IJ_HOME/plugins folder"
+ einfo ""
+}
diff --git a/sci-biology/imagej/metadata.xml b/sci-biology/imagej/metadata.xml
new file mode 100644
index 000000000..4f14b2e58
--- /dev/null
+++ b/sci-biology/imagej/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mmokrejs@fold.natur.cuni.cz</email>
+ <name>Martin Mokrejs</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>sci-biology@gentoo.org</email>
+ <name>Gentoo Biology Project</name>
+ </maintainer>
+ <use>
+ <flag name="plugins">Install additional plugins</flag>
+ </use>
+</pkgmetadata>