Skip to content

Symlink include folder instead of files for OpenSSL wrapper - #4199

Open
Flamefire wants to merge 1 commit into
easybuilders:developfrom
Flamefire:20260810140050_new_pr_openssl_wrapper
Open

Symlink include folder instead of files for OpenSSL wrapper#4199
Flamefire wants to merge 1 commit into
easybuilders:developfrom
Flamefire:20260810140050_new_pr_openssl_wrapper

Conversation

@Flamefire

@Flamefire Flamefire commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

(created using eb --new-pr)

Motivation is the PR for Tensorflow where it was observed on at least 2 systems that the system OpenSSL contained an additional include file after an update which makes compilation using the existing includes fail. E.g.:

/mnt/modules/easybuild/software/OpenSSL/3/include/openssl/ssl.h:29:10: fatal error: 'openssl/e_ostime.h' file not found

To avoid having to rebuild and hence temporarily delete the module we should just symlink the include folder instead of the files.

I did some (mostly consistency ) refactoring while digging through the source:

  • Use pathlib.Path where paths are stored
  • (selected) type hints to make it easier to follow
  • self.name in the only place where raw "openssl" was used in the include folder names (we should either use it always or never)
  • is_system_ssl property instead of duplicating the same check
  • include the warning which variant is used in the log file

Counterargument is this comment by @boegel in 2897480 of #2429:

            # note: symlink to individual files, not directories,
            # since directory symlinks get resolved easily...

It seems to clarify that explicit decision in 9feaf55 see #2429 (comment)
Maybe this does not apply to the headers or not anymore? @lexming

Requires:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant