sci-biology/cmdock: fixes

Bug: https://bugs.gentoo.org/979500
Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
This commit is contained in:
Anna (cybertailor) Vyalkova committed 2026-08-03 02:26:11 +05:00
1 parent 6845067ccb
commit c8ae13091f
5 files changed
+37 -138

No files matched your search

-118
View File
@@ -1,118 +0,0 @@
# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_12 )
BOINC_APP_OPTIONAL=1
inherit boinc-app flag-o-matic meson optfeature python-any-r1
DESCRIPTION="Program for docking ligands to proteins and nucleic acids"
HOMEPAGE="https://gitlab.com/Jukic/cmdock"
SRC_URI="https://gitlab.com/Jukic/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2"
S="${WORKDIR}/${PN}-v${PV}"
LICENSE="LGPL-3 ZLIB"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="apidoc cpu_flags_x86_sse2 doc test"
# Flaky tests
RESTRICT="test"
DEPEND="
dev-cpp/eigen:3
>=dev-cpp/indicators-2.3-r1
>=dev-cpp/pcg-cpp-0.98.1_p20210406-r1
>=dev-libs/cxxopts-3
"
BDEPEND="
apidoc? (
app-text/doxygen
dev-texlive/texlive-fontutils
)
doc? (
$(python_gen_any_dep '
dev-python/insipid-sphinx-theme[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
')
)
test? ( ${PYTHON_DEPS} )
"
PATCHES=(
"${FILESDIR}"/${P}-include.patch
"${FILESDIR}"/${P}-cxxopts.patch
)
DOCS=( README.md changelog.md )
BOINC_MASTER_URL="https://www.sidock.si/sidock/"
BOINC_INVITATION_CODE="Crunch_4Science"
BOINC_APP_HELPTEXT=\
"The easiest way to do something useful with this application
is to attach it to SiDock@home BOINC project."
INSTALL_PREFIX="${EPREFIX}/opt/${P}"
boinc-app_add_deps
python_check_deps() {
use doc || return 0
python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/insipid-sphinx-theme[${PYTHON_USEDEP}]"
}
foreach_wrapper_job() {
sed -e "s:@PREFIX@:${INSTALL_PREFIX}:g" -i "${1}" || die
}
src_prepare() {
default
python_fix_shebang "${S}"/bin
}
src_configure() {
# very weird directory layout
local emesonargs=(
--prefix="${INSTALL_PREFIX:?}"
$(meson_use apidoc)
$(meson_use doc)
$(meson_use test tests)
-Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
)
meson_src_configure
use cpu_flags_x86_sse2 || append-cppflags "-DBUNDLE_NO_SSE"
}
src_install() {
meson_src_install
python_optimize "${D}${INSTALL_PREFIX:?}"/bin
if use boinc; then
boinc_install_appinfo "${FILESDIR}"/app_info_0.2.0-r1.xml
boinc_install_wrapper cmdock-l_wrapper \
"${FILESDIR}"/cmdock-l_job_0.2.0-r1.xml cmdock-l_job.xml
# install cmdock executable
exeinto "$(get_project_root)"
exeopts --owner root --group boinc
doexe "${D}${INSTALL_PREFIX:?}"/bin/cmdock
# install a blank file
insinto "$(get_project_root)"
insopts -m 0644 --owner root --group boinc
newins - docking_out
fi
}
pkg_postinst() {
optfeature "sdtether.py and sdrmsd.py scripts" "dev-python/numpy sci-chemistry/openbabel[python]"
use boinc && boinc-app_pkg_postinst
}
pkg_postrm() {
use boinc && boinc-app_pkg_postrm
}
@@ -3,7 +3,7 @@
EAPI=8
PYTHON_COMPAT=( python3_{12..13} )
PYTHON_COMPAT=( python3_{12..14} )
BOINC_APP_OPTIONAL=1
inherit boinc-app flag-o-matic meson optfeature python-any-r1
@@ -13,18 +13,20 @@ SRC_URI="https://gitlab.com/Jukic/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2"
S="${WORKDIR}/${PN}-v${PV}"
LICENSE="LGPL-3 ZLIB"
SLOT="0/${PV}"
SLOT="0"
KEYWORDS="~amd64"
IUSE="apidoc cpu_flags_x86_sse2 doc test"
# Flaky tests
RESTRICT="test"
RDEPEND="dev-libs/icu:="
DEPEND="
${RDEPEND}
dev-cpp/eigen:3
>=dev-cpp/indicators-2.3-r1
>=dev-cpp/pcg-cpp-0.98.1_p20210406-r1
>=dev-libs/cxxopts-3
>=dev-libs/cxxopts-3.1[icu]
"
BDEPEND="
apidoc? (
@@ -48,7 +50,6 @@ PATCHES=(
DOCS=( README.md changelog.md )
BOINC_MASTER_URL="https://www.sidock.si/sidock/"
BOINC_INVITATION_CODE="Crunch_4Science"
BOINC_APP_HELPTEXT=\
"The easiest way to do something useful with this application
is to attach it to SiDock@home BOINC project."
@@ -74,13 +75,28 @@ src_prepare() {
}
src_configure() {
# very weird directory layout
mkdir "${T}/pkg-config" || die
export PKG_CONFIG_PATH="${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}"
cat >> "${T}/pkg-config/pcg-cpp.pc" <<-EOF || die
Name: pcg-cpp
Version: 9999
Description:
EOF
cat >> "${T}/pkg-config/icu-cu.pc" <<-EOF || die
Name: icu-cu
Version: 9999
Description:
Requires: icu-uc
EOF
# extremely weird directory layout
local emesonargs=(
--prefix="${INSTALL_PREFIX:?}"
$(meson_use apidoc)
$(meson_use doc)
$(meson_use test tests)
-Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
-Dcpp_std=c++17
)
meson_src_configure
@@ -92,16 +108,16 @@ src_install() {
python_optimize "${D}${INSTALL_PREFIX:?}"/bin
if use boinc; then
boinc_install_appinfo "${FILESDIR}"/app_info_0.2.0-r1.xml
boinc_install_wrapper cmdock-l_wrapper \
"${FILESDIR}"/cmdock-l_job_0.2.0-r1.xml cmdock-l_job.xml
boinc_install_appinfo "${FILESDIR}"/app_info_0.2.0-r2.xml
boinc_install_wrapper cmdock_wrapper \
"${FILESDIR}"/sidock_job_0.2.0.xml sidock_job.xml
# install cmdock executable
# install the main executable
exeinto "$(get_project_root)"
exeopts --owner root --group boinc
doexe "${D}${INSTALL_PREFIX:?}"/bin/cmdock
# install a blank file
# install an empty file
insinto "$(get_project_root)"
insopts -m 0644 --owner root --group boinc
newins - docking_out
@@ -1,11 +1,11 @@
<app_info>
<app>
<name>cmdock-l</name>
<user_friendly_name>CurieMarieDock @PV@ long tasks</user_friendly_name>
<name>sidock</name>
<user_friendly_name>SiDock@home CurieMarieDock</user_friendly_name>
</app>
<file_info>
<name>cmdock-l_wrapper</name>
<name>cmdock_wrapper</name>
<sticky/>
<executable/>
</file_info>
@@ -16,7 +16,7 @@
</file_info>
<file_info>
<name>cmdock-l_job.xml</name>
<name>sidock_job.xml</name>
<sticky/>
</file_info>
<file_info>
@@ -25,19 +25,19 @@
</file_info>
<app_version>
<app_name>cmdock-l</app_name>
<app_name>sidock</app_name>
<version_num>100</version_num>
<file_ref>
<file_name>cmdock-l_wrapper</file_name>
<file_name>cmdock_wrapper</file_name>
<main_program/>
</file_ref>
<file_ref>
<file_name>cmdock</file_name>
<open_name>cmdock</open_name>
<open_name>sidock</open_name>
<copy_file/>
</file_ref>
<file_ref>
<file_name>cmdock-l_job.xml</file_name>
<file_name>sidock_job.xml</file_name>
<open_name>job.xml</open_name>
<copy_file/>
</file_ref>
@@ -46,5 +46,6 @@
<open_name>docking_out</open_name>
<copy_file/>
</file_ref>
<is_wrapper/>
</app_version>
</app_info>
@@ -1,6 +1,6 @@
<job_desc>
<task>
<application>cmdock</application>
<application>sidock</application>
<stdout_filename>docking_log</stdout_filename>
<command_line>-c -j 1 -b 1 -r target.prm -p "@PREFIX@/data/scripts/dock.prm" -f htvs.ptc -i ligands.sdf -o docking_out</command_line>
<checkpoint_filename>docking_out.chk</checkpoint_filename>
+1 -1
View File
@@ -7,7 +7,7 @@
</maintainer>
<upstream>
<remote-id type="gitlab">Jukic/cmdock</remote-id>
<bugs-to>https://gitlab.com/Jukic/cmdock/-/issues</bugs-to>
<bugs-to>https://gitlab.com/Jukic/cmdock/-/work_items</bugs-to>
<doc>https://rxdock.gitlab.io/documentation/devel/html/</doc>
</upstream>
<use>