Skip to content

opensp: fix build with clang 16#240645

Merged
wegank merged 1 commit intoNixOS:stagingfrom
reckenrode:opensp-clang16
Jun 30, 2023
Merged

opensp: fix build with clang 16#240645
wegank merged 1 commit intoNixOS:stagingfrom
reckenrode:opensp-clang16

Conversation

@reckenrode
Copy link
Copy Markdown
Contributor

Description of changes

There are two issues preventing a build with clang 16:

  • The configure scripts are too old and generate invalid config.h. This is fixed by using autoreconfHook with clang.
  • Use of the register storage class specifier, which is not allowed in C++17 (the default when building with clang 16). This is fixed by removing that usage.
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

There are two issues preventing a build with clang 16:
* The configure scripts are too old and generate invalid `config.h`.
  This is fixed by using `autoreconfHook` with clang.
* Use of the `register` storage class specifier, which is not allowed in
  C++17 (the default when building with clang 16). This is fixed by
  removing that usage.
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels Jun 30, 2023
@wegank wegank merged commit 4133bc3 into NixOS:staging Jun 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants