Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

io_uring reactor backend not available when importing and using seastar as a module #2249

Closed
0xca11 opened this issue May 17, 2024 · 2 comments · Fixed by #2252
Closed

io_uring reactor backend not available when importing and using seastar as a module #2249

0xca11 opened this issue May 17, 2024 · 2 comments · Fixed by #2252
Labels
build build system

Comments

@0xca11
Copy link

0xca11 commented May 17, 2024

In src/CMakeLists.txt, the SEASTAR_HAVE_URING macro is never included in the target_compile_definitions for the seastar-module, and the URING::uring library is also never linked with target_link_libraries.

@tchaikov
Copy link
Contributor

@0xca11 #2252 should address this issue. but please note, the C++20 module support is still experimental.

avikivity added a commit that referenced this issue May 19, 2024
…rom Kefu Chai

before this change, when building seastar-module, we don't check for
the enabled features. so, for instance io uring backend is not enabled
even `Seastar_IO_URING` is set.

in this series we

* move `add_subdirectory(src)` down
* `#include` the used header files
* check for the enabled options,
* link against the related libraries, and
* add the required macro definitions

this should enable seastar-module to build with, for instance, io_uring
backend enabled. as `SEASTAR_HAVE_URING` enables this backend when
building `src/core/reactor_backend.cc`.

Fixes #2249

Closes #2252

* github.com:scylladb/seastar:
  build: support enabled options when building seastar-module
  treewide: include required header files
  build: move add_subdirectory(src) down
@tchaikov tchaikov removed their assignment May 20, 2024
@0xca11
Copy link
Author

0xca11 commented May 21, 2024

@0xca11 #2252 should address this issue. but please note, the C++20 module support is still experimental.

Thanks for the quick fix, @tchaikov!

I understand that the modules support is still experimental. I also noticed that some components are not yet exported within the Seastar module, like the WebSocket server, for example.
So I just switched back to including the required headers in the meantime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build build system
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants