commit: 5307342730267714f7019d62f77b2d9bf7624d8c
Author: Horea Christian <chr <AT> chymera <DOT> eu>
AuthorDate: Thu Jun 6 23:04:29 2024 +0000
Commit: Horea Christian <horea.christ <AT> gmail <DOT> com>
CommitDate: Thu Jun 6 23:05:15 2024 +0000
URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=53073427
sci-biology/afni: add 24.1.15, 24.1.16
Signed-off-by: Horea Christian <chr <AT> chymera.eu>
sci-biology/afni/afni-24.1.15.ebuild | 125 +++++++++++++++++++++
sci-biology/afni/afni-24.1.16.ebuild | 127 ++++++++++++++++++++++
sci-biology/afni/files/afni-24.1.16-niftiio.patch | 27 +++++
3 files changed, 279 insertions(+)
diff --git a/sci-biology/afni/afni-24.1.15.ebuild
b/sci-biology/afni/afni-24.1.15.ebuild
new file mode 100644
index 000000000..12d6c8f87
--- /dev/null
+++ b/sci-biology/afni/afni-24.1.15.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+DISTUTILS_USE_PEP517=setuptools
+inherit cmake distutils-r1 toolchain-funcs
+
+GTS_HASH="962155a01f5a1b87bd64e3e3d880b4dbc2347ac7"
+NIFTI_HASH="da476fd27f46098f37f5c9c4c1baee01e559572c"
+GIFTI_HASH="d3e873d8539d9b469daf7db04093da1d7e73d4f7"
+
+DESCRIPTION="Analysis of Functional Neuroimages by NIMH"
+HOMEPAGE="https://afni.nimh.nih.gov/pub/dist/doc/htmldoc/"
+SRC_URI="
+ https://github.com/afni/afni/archive/refs/tags/AFNI_${PV}.tar.gz ->
${P}.gh.tar.gz
+
https://github.com/NIFTI-Imaging/nifti_clib/archive/${NIFTI_HASH}.tar.gz ->
nifti-${NIFTI_HASH}.tar.gz
+
https://github.com/NIFTI-Imaging/gifti_clib/archive/${GIFTI_HASH}.tar.gz ->
gifti-${GIFTI_HASH}.tar.gz
+ "
+
+S="${WORKDIR}/afni-AFNI_${PV}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test whirlgif"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-build/ninja
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/libf2c
+ media-libs/freeglut
+ media-libs/glu
+ media-libs/netpbm
+ media-libs/qhull
+ media-video/mpeg-tools
+ sci-biology/afni-datasets
+ sci-libs/gsl
+ sci-libs/gts
+ sys-devel/llvm:*
+ sys-libs/libomp
+ virtual/jpeg-compat:62
+ x11-libs/libGLw
+ x11-libs/libXft
+ x11-libs/libXi
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt
+ x11-libs/motif[-static-libs]
+ "
+DEPEND="
+ ${RDEPEND}
+ app-shells/tcsh
+ "
+# Prospectively:
+#Update jpeg-compat to virtual/jpeg:0
+# look for xmhtlm
+
+ #tar xf "${DISTDIR}/${GTS_HASH}.tar.gz" || die
+src_prepare() {
+ tar xf "${DISTDIR}/nifti-${NIFTI_HASH}.tar.gz" || die
+ tar xf "${DISTDIR}/gifti-${GIFTI_HASH}.tar.gz" || die
+ cmake_src_prepare
+ default
+ }
+
+src_configure() {
+ if use !whirlgif; then
+ eapply "${FILESDIR}/${PN}-24.0.04-whirlgif.patch"
+ fi
+ # Fix AFNI version, no better way seemed to work
+ sed -i -e "s/GIT_REPO_VERSION \"99\.99\.99\"/GIT_REPO_VERSION ${PV}/g"
cmake/get_git_repo_version.cmake
+ export CFLAGS="-pthread ${CFLAGS}"
+ local mycmakeargs=(
+ -DLIBDIR=/usr/$(get_libdir)
+ -DNIFTI_INSTALL_LIBRARY_DIR=/usr/$(get_libdir)
+ -DGIFTI_INSTALL_LIBRARY_DIR=/usr/$(get_libdir)
+ -DGIFTI_INSTALL_LIB_DIR=/usr/$(get_libdir)
+ -DAFNI_INSTALL_LIBRARY_DIR=/usr/$(get_libdir)
+ -DCMAKE_INSTALL_LIBDIR=/usr/$(get_libdir)
+ -DCOMP_COREBINARIES=ON
+ -DUSE_SYSTEM_NIFTI=OFF
+ -DUSE_SYSTEM_GIFTI=OFF
+ -DUSE_SYSTEM_XMHTML=OFF
+ -DUSE_SYSTEM_GTS=ON
+
-DFETCHCONTENT_SOURCE_DIR_NIFTI_CLIB="${WORKDIR}/nifti_clib-${NIFTI_HASH}"
+
-DFETCHCONTENT_SOURCE_DIR_GIFTI_CLIB="${WORKDIR}/gifti_clib-${GIFTI_HASH}"
+ -DCOMP_GUI=ON
+ -DCOMP_PLUGINS=ON
+ -DUSE_OMP=ON
+ -DCOMP_PYTHON=OFF
+ -DUSE_SYSTEM_F2C=ON
+ )
+ tc-export CC
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ pushd src/python_scripts
+ distutils-r1_src_compile
+ popd
+}
+
+src_install() {
+ cmake_src_install
+ pushd src/python_scripts
+ distutils-r1_src_install
+ popd
+ cd "${D}"
+ rm usr/bin/mpeg_encode
+ doenvd "${FILESDIR}/97afni"
+}
+
+pkg_postinst() {
+ echo
+ einfo "Please run the following commands if you"
+ einfo "intend to use afni binaries from an existing shell:"
+ einfo "source /etc/profile"
+ echo
+}
diff --git a/sci-biology/afni/afni-24.1.16.ebuild
b/sci-biology/afni/afni-24.1.16.ebuild
new file mode 100644
index 000000000..0759d30a0
--- /dev/null
+++ b/sci-biology/afni/afni-24.1.16.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+DISTUTILS_USE_PEP517=setuptools
+inherit cmake distutils-r1 toolchain-funcs
+
+GTS_HASH="962155a01f5a1b87bd64e3e3d880b4dbc2347ac7"
+NIFTI_HASH="f24bec503f1a5d501c0413c1bb8aa3d6e04aebda"
+GIFTI_HASH="d3e873d8539d9b469daf7db04093da1d7e73d4f7"
+
+DESCRIPTION="Analysis of Functional Neuroimages by NIMH"
+HOMEPAGE="https://afni.nimh.nih.gov/pub/dist/doc/htmldoc/"
+SRC_URI="
+ https://github.com/afni/afni/archive/refs/tags/AFNI_${PV}.tar.gz ->
${P}.gh.tar.gz
+
https://github.com/NIFTI-Imaging/nifti_clib/archive/${NIFTI_HASH}.tar.gz ->
nifti-${NIFTI_HASH}.tar.gz
+
https://github.com/NIFTI-Imaging/gifti_clib/archive/${GIFTI_HASH}.tar.gz ->
gifti-${GIFTI_HASH}.tar.gz
+ "
+
+S="${WORKDIR}/afni-AFNI_${PV}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test whirlgif"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-build/ninja
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/libf2c
+ media-libs/freeglut
+ media-libs/glu
+ media-libs/netpbm
+ media-libs/qhull
+ media-video/mpeg-tools
+ sci-biology/afni-datasets
+ sci-libs/gsl
+ sci-libs/gts
+ sys-devel/llvm:*
+ sys-libs/libomp
+ virtual/jpeg-compat:62
+ x11-libs/libGLw
+ x11-libs/libXft
+ x11-libs/libXi
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt
+ x11-libs/motif[-static-libs]
+ "
+DEPEND="
+ ${RDEPEND}
+ app-shells/tcsh
+ "
+# Prospectively:
+#Update jpeg-compat to virtual/jpeg:0
+# look for xmhtlm
+
+PATCHES=("${FILESDIR}/afni-24.1.16-niftiio.patch")
+
+ #tar xf "${DISTDIR}/${GTS_HASH}.tar.gz" || die
+src_prepare() {
+ # We need a name without the hash to reference in patches
+ mv "${WORKDIR}/nifti_clib-${NIFTI_HASH}"
"${WORKDIR}/afni-AFNI_24.1.16/nifti_clib_from_github"
+ mv "${WORKDIR}/gifti_clib-${GIFTI_HASH}"
"${WORKDIR}/afni-AFNI_24.1.16/gifti_clib_from_github"
+ cmake_src_prepare
+}
+
+src_configure() {
+ if use !whirlgif; then
+ eapply "${FILESDIR}/${PN}-24.0.04-whirlgif.patch"
+ fi
+ # Fix AFNI version, no better way seemed to work
+ sed -i -e "s/GIT_REPO_VERSION \"99\.99\.99\"/GIT_REPO_VERSION ${PV}/g"
cmake/get_git_repo_version.cmake
+ export CFLAGS="-pthread ${CFLAGS}"
+ local mycmakeargs=(
+ -DLIBDIR=/usr/$(get_libdir)
+ -DNIFTI_INSTALL_LIBRARY_DIR=/usr/$(get_libdir)
+ -DGIFTI_INSTALL_LIBRARY_DIR=/usr/$(get_libdir)
+ -DGIFTI_INSTALL_LIB_DIR=/usr/$(get_libdir)
+ -DAFNI_INSTALL_LIBRARY_DIR=/usr/$(get_libdir)
+ -DCMAKE_INSTALL_LIBDIR=/usr/$(get_libdir)
+ -DCOMP_COREBINARIES=ON
+ -DUSE_SYSTEM_NIFTI=OFF
+ -DUSE_SYSTEM_GIFTI=OFF
+ -DUSE_SYSTEM_XMHTML=OFF
+ -DUSE_SYSTEM_GTS=ON
+
-DFETCHCONTENT_SOURCE_DIR_NIFTI_CLIB="${WORKDIR}/afni-AFNI_24.1.16/nifti_clib_from_github"
+
-DFETCHCONTENT_SOURCE_DIR_GIFTI_CLIB="${WORKDIR}/afni-AFNI_24.1.16/gifti_clib_from_github"
+ -DCOMP_GUI=ON
+ -DCOMP_PLUGINS=ON
+ -DUSE_OMP=ON
+ -DCOMP_PYTHON=OFF
+ -DUSE_SYSTEM_F2C=ON
+ )
+ tc-export CC
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ pushd src/python_scripts
+ distutils-r1_src_compile
+ popd
+}
+
+src_install() {
+ cmake_src_install
+ pushd src/python_scripts
+ distutils-r1_src_install
+ popd
+ cd "${D}"
+ rm usr/bin/mpeg_encode
+ doenvd "${FILESDIR}/97afni"
+}
+
+pkg_postinst() {
+ echo
+ einfo "Please run the following commands if you"
+ einfo "intend to use afni binaries from an existing shell:"
+ einfo "source /etc/profile"
+ echo
+}
diff --git a/sci-biology/afni/files/afni-24.1.16-niftiio.patch
b/sci-biology/afni/files/afni-24.1.16-niftiio.patch
new file mode 100644
index 000000000..a4eb35435
--- /dev/null
+++ b/sci-biology/afni/files/afni-24.1.16-niftiio.patch
@@ -0,0 +1,27 @@
+From 05dbcd2659fa6177b221a2686300036e4ae435d6 Mon Sep 17 00:00:00 2001
+From: Yaroslav Halchenko <[email protected]>
+Date: Mon, 3 Jun 2024 19:28:21 -0400
+Subject: [PATCH] Announce niftiio as PRIVATE for linking to prevent
+ propagating linking against it
+
+I am just a messanger from the cmake-wise @leej3 at
+https://github.com/afni/afni/issues/639#issuecomment-2145703256
+
+Supposedly closes #639
+---
+ src/nifti/nifticdf/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/nifti/nifticdf/CMakeLists.txt
b/src/nifti/nifticdf/CMakeLists.txt
+index 473be7e3be..01b18a14d8 100644
+--- a/nifti_clib_from_github/nifticdf/CMakeLists.txt
++++ b/nifti_clib_from_github/nifticdf/CMakeLists.txt
+@@ -8,7 +8,7 @@ set_target_properties(
+ "${CMAKE_CURRENT_LIST_DIR}/nifticdf.h"
+ )
+ target_compile_options(${NIFTI_CDFLIB_NAME} PRIVATE
"-D__COMPILE_UNUSED_FUNCTIONS__")
+-target_link_libraries(${NIFTI_CDFLIB_NAME} PUBLIC
${NIFTI_PACKAGE_PREFIX}niftiio)
++target_link_libraries(${NIFTI_CDFLIB_NAME} PRIVATE
${NIFTI_PACKAGE_PREFIX}niftiio)
+ get_lib_version_vars("nifticdf_version.h" NIFTICDF_VERSION
NIFTICDF_MAJOR_VERSION)
+ if(BUILD_SHARED_LIBS)
+ set_target_properties(${NIFTI_CDFLIB_NAME}