Page MenuHomeClusterLabs Projects

Drop support for dlm versions older than 4.2.0
Open, LowPublic

Description

Currently, stonith-ng.h is not allowed to include other Pacemaker headers. This is because dlm includes it.

Prior to dlm v4.2.0, dlm did not have Pacemaker headers along its include path. It included stonith-ng.h as pacemaker/crm/stonith-ng.h, relative to the default include path. So it fails to build if stonith-ng.h includes other Pacemaker headers.

dlm v4.2.0 fixes this (via commit 5afd9fd) by using pkg-config to add the Pacemaker headers to the include path.

So we need to decide how long we must support dlm versions older than 4.2.0. At that point, we can start including other headers in stonith-ng.h and probably simplify some code.

Note that we can't update our include directives inside stonith-ng.h to #include <pacemaker/whatever> for dlm's sake, because Pacemaker is NOT necessarily installed when we're building Pacemaker. (I tried.) Those includes have to start with crm/ and be relative to the source tree's include directory.

OS releases: I've only checked RHEL so far.

  • RHEL 8: The latest dlm version shipped is 4.1.0.
  • RHEL 9: The earliest dlm version shipped is 4.1.1. The latest is 4.3.0.

Event Timeline

nrwahl2 created this task.
nrwahl2 created this object with edit policy "Restricted Project (Project)".
nrwahl2 updated the task description. (Show Details)