Project

General

Profile

Feature #3152

Task #2045: API design and language bindings

Infrastructure and patterns for expressing public interfaces

Added by Eric Irrgang 12 months ago. Updated 9 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
core library
Difficulty:
uncategorized
Close

Description

This issue can serve as the beginning of a roadmap for how GROMACS 2021 will handle API docs, installed headers, and modular expression of interfaces available in a GROMACS installation.


Subtasks

Task #3153: Let CMake process module directories earlier to support more modern CMake idioms.New
Feature #3288: Use build system infrastructure instead of custom scripts to manage API levels.New
Feature #3401: Policy and procedure for installed headers (public API)New
Feature #3402: Clarify distinction between public API documentation and developer docs.New

Related issues

Related to GROMACS - Feature #951: Multiple versions of Gromacs (e.g., single and double) in the same library/binaryNew

Associated revisions

Revision 325d2daa (diff)
Added by Eric Irrgang 2 months ago

Move sources for libgmxapi.

Sources in src/api/cpp exclusively supported the public libgmxapi
interface whose headers now live in api/include/gmxapi. The sources are
not coupled to anything in src/gromacs or src, and have been moved to
api/cpp/gmxapi to better enforce this decoupling.

Currently, the unit tests for this code still rely on infrastructure in
src/ and cannot yet be moved.

Refs #3152

History

#1 Updated by Eric Irrgang 7 months ago

  • Related to Feature #951: Multiple versions of Gromacs (e.g., single and double) in the same library/binary added

Also available in: Atom PDF