handle GNUInstallDirs /opt special case in CMakeMake easyblock#2105
Conversation
|
I can reproduce the issue: https://gist.github.com/lexming/cef69fe274088f60395306835cd65e49 The installation |
|
Positive test with this PR: https://gist.github.com/lexming/6abbd018382fe46f10fec33b758ea352 Installing Installations outside |
|
Going in, thanks @migueldiascosta ! |
boegel
left a comment
There was a problem hiding this comment.
(looks like I never submitted this review, ugh... doing so now, may need to be followed up)
|
|
||
| if self.installdir.startswith('/opt'): | ||
| # https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html | ||
| options.append("-DCMAKE_INSTALL_SYSCONFDIR=%s/etc" % self.installdir) |
There was a problem hiding this comment.
@migueldiascosta Don't we need to set CMAKE_INSTALL_FULL_SYSCONFDIR instead?
Likewise for LOCALSTATEDIR and RUNSTATEDIR?
Should we also do something special in case the installation prefix starts with /usr?
There was a problem hiding this comment.
w.r.t. to CMAKE_INSTALL_FULL_<dir>, it's generated from CMAKE_INSTALL_<dir> and it will only be different from it if this value is not an absolute path, and we're setting it to an absolute path, so it's correct, no?
There was a problem hiding this comment.
Yes, I got a bit confused by the wording, should be OK.
a fix for easybuilders/easybuild-easyconfigs#10991 and similar