Skip to content

Make macros T8_ENABLE_VTK etc. available to linking libraries. #2007

@holke

Description

@holke

Feature request

When a library links against t8code, they cannot access T8_ENABLE_VTK, T8_ENABLE_OCC and other macros.
We should make these available in t8code header.
This is possible using cmake configure_file.

Is your feature request related to a problem? Please describe.
External libraries using t8code cannot see if t8code is linked against another library (for example VTK) and with which version of that library.

Describe the solution or feature you'd like
For each external library LIBNAME, create a header file containing at least these macros:

T8_ENABLE_LIBNAME // 0 or 1 depending on whether t8code is linked against LIBNAME or not.
T8_LIBNAME_MAJOR_VERSION // Defined only if T8_ENABLE_LIBNAME  is true. The major version number of LIBNAME that t8code links again.
T8_LIBNAME_MINOR_VERSION // Defined only if T8_ENABLE_LIBNAME  is true. The minor version number of LIBNAME that t8code links again.  

Describe alternatives you've considered
N/A

Estimated priority

"Priority: medium" Should be solved within half a year

Additional context
I already propose a solution and implemented it for VTK. See the PR.

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority:mediumShould be solved within half a yearworkload:lowWould take half a day or less

    Projects

    Status

    ToDo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions