Project

General

Profile

Feature #2961

Task #2045: API design and language bindings

Feature #2896: Python packaging

How should Python package find GROMACS resources under various circumstances?

Added by Eric Irrgang 3 months ago. Updated 3 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Difficulty:
uncategorized
Close

Description

Under different scenarios (see parent issue) during or after configuration, build, and installation, a Python package built from the GROMACS repo needs to know where to find GROMACS resources.

This issue does not yet enumerate all scenarios.

Client code (including the Python package, when build with Python packaging tools) should use the same C++ standard library when processing public headers. It could be helpful to write a CMakeToolchain.txt file with the GROMACS installation so that a dependent CMake configuration can be launched with effective hints before find_package() is run.

Early implementations need to know where the gmx wrapper binary is. We could configure a gmxrc.py module at the same time GMXRC files are configured. If we want to run tests from the build tree before installation, though, we need an alternative. Another option would be to attach properties to a CMake target that are different for the build tree target or an imported target.

If there are any other data that need to be provided to libgromacs through the posix environment, like GMXDATA, then that also needs to be addressed.

Associated revisions

Revision 6ec0f1f1 (diff)
Added by Eric Irrgang 15 days ago

Allow gmxapi Python package tests to be run from GROMACS build tree.

  • Configure gmxapi._gmxapi to build with the ability to find libgmxapi.
  • Add a gmxapi_pytest custom CMake target to invoke pytest.

Refs #2961
Refs #2756

Change-Id: I64ca82afbf37da3c37759ec302c2ac9cc1666de2

History

#1 Updated by Eric Irrgang 3 months ago

  • Description updated (diff)

Also available in: Atom PDF