Install this version:
emerge -a =sci-libs/inchi-1.07.5
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =sci-libs/inchi-1.07.5
Or alternatively:
emerge --autounmask-write -a =sci-libs/inchi-1.07.5
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{12..15} )
inherit cmake flag-o-matic python-any-r1
DESCRIPTION="Program and library for generating standard and non-standard InChI and InChIKeys"
HOMEPAGE="https://www.iupac.org/inchi/"
SRC_URI="https://github.com/IUPAC-InChI/InChI/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/InChI-${PV}"
LICENSE="IUPAC-InChi"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="test? ( dev-cpp/gtest )"
BDEPEND="
test? (
${PYTHON_DEPS}
$(python_gen_any_dep '
dev-python/pytest[${PYTHON_USEDEP}]
')
)
"
PATCHES=(
"${FILESDIR}"/${PN}-1.07.5-flags.patch
"${FILESDIR}"/${PN}-1.07.5-unbundle_gtest.patch
)
python_check_deps() {
python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
}
pkg_setup() {
use test && python-any-r1_pkg_setup
}
src_prepare() {
cmake_src_prepare
if use test; then
sed -e '/INCHI_LIB_PATH = (/,/)/s|"[^"]*"|"'"${BUILD_DIR}"'/INCHI-1-SRC/INCHI_API/libinchi/src/lib/libinchi.so"|' \
-i INCHI-1-TEST/tests/test_library/test_multithreading.py || die
else
cmake_comment_add_subdirectory INCHI-1-TEST/tests/test_unit
fi
}
src_configure() {
# gtest-1.17 requires at least C++17
use test && append-cxxflags -std=gnu++17
cmake_src_configure
}
src_test() {
BUILD_DIR="${BUILD_DIR}/INCHI-1-TEST/tests/test_unit/" cmake_src_test
local -x PYTHONPATH="${S}/INCHI-1-TEST/src"
EPYTEST_IGNORE=(
INCHI-1-TEST/tests/test_meta/test_performance.py # timeout
INCHI-1-TEST/tests/test_meta/test_permutation.py # missing rdkit
INCHI-1-TEST/tests/test_meta/test_drivers.py # needs pydantic
)
epytest . INCHI-1-TEST/tests/test_executable --exe-path="${BUILD_DIR}"/INCHI-1-SRC/INCHI_EXE/inchi-1/src/bin/inchi-1
"${EPYTHON}" INCHI-1-TEST/tests/test_library/test_multithreading.py 1>/dev/null
# this test is very verbose
if [[ $? -eq 0 ]]; then
einfo "test_library/test_multithreading.py PASSED"
else
die "test_library/test_multithreading.py FAILED"
fi
}
src_install() {
# no INSTALL in cmake files
dodoc INCHI-1-SRC/readme.txt INCHI-1-DOC/{readme.txt,*.pdf}
dobin "${BUILD_DIR}"/INCHI-1-SRC/INCHI_EXE/inchi-1/src/bin/inchi-1
dolib.so "${BUILD_DIR}"/INCHI-1-SRC/INCHI_API/libinchi/src/lib/libinchi.so
dosym libinchi.so /usr/$(get_libdir)/libinchi.so.${PV}
dosym libinchi.so /usr/$(get_libdir)/libinchi.so.$(ver_cut 1)
doheader "${S}/INCHI-1-SRC/INCHI_BASE/src/"{inchi_api,ixa}.h
}
Manage flags for this package:
euse -i <flag> -p sci-libs/inchi |
euse -E <flag> -p sci-libs/inchi |
euse -D <flag> -p sci-libs/inchi
test? ( dev-cpp/gtest )
test? (
${PYTHON_DEPS}
$(python_gen_any_dep '
dev-python/pytest[${PYTHON_USEDEP}]
')
)
| Type | File | Size | Source URLs |
|---|---|---|---|
| DIST | inchi-1.07.5.tar.gz | 109621215 bytes | https://github.com/IUPAC-InChI/InChI/archive/refs/tags/v1.07.5.tar.gz |