Skip to content

liburing@2.14.bcr.1#8253

Open
travisdowns wants to merge 4 commits intobazelbuild:mainfrom
travisdowns:liburing-2.14.bcr.1
Open

liburing@2.14.bcr.1#8253
travisdowns wants to merge 4 commits intobazelbuild:mainfrom
travisdowns:liburing-2.14.bcr.1

Conversation

@travisdowns
Copy link
Copy Markdown

Registry-only fixes to the liburing 2.14 BUILD overlay, addressing build
failures with hermetic toolchains and on non-Debian distros.

Three changes, one per commit:

  1. Rework the configure genrule to use an out-of-source build via symlinks
    instead of pushd/popd. This avoids changing CWD so that relative paths
    (e.g., --sysroot=external/...) resolve correctly. Upstream now supports
    out-of-source builds natively (configure: support out-of-source builds axboe/liburing#1558)
    but that landed after the 2.14 release.

  2. Propagate toolchain flags to configure: pass CFLAGS="$(CC_FLAGS)" so
    probes use the same flags as cc_library rules. Pass LDFLAGS="-c" to make
    configure probes compile-only -- none of them execute the output and they
    are all effectively compile-time checks of headers and compiler features.
    Without this, the system linker may fail on sysroot linker scripts on
    non-Debian distros like Fedora. This is the best workaround given that
    Bazel's cc toolchain does not expose a $(LDFLAGS) Make variable for
    genrules.

  3. Suppress -Wunused-parameter warnings from upstream register.c. A fix
    is pending upstream (register: fix unused parameter warnings axboe/liburing#1564) but for
    this release we suppress the warning.

@bazel-io skip_check unstable_url

@bazel-io
Copy link
Copy Markdown
Member

bazel-io commented Apr 1, 2026

Hello @metti, modules you maintain (liburing) have been updated in this PR.
Please review the changes. You can view a diff against the previous version in the "Generate module diff" check.

@travisdowns
Copy link
Copy Markdown
Author

@bazel-io skip_check unstable_url

@bazel-io bazel-io added the skip-url-stability-check Skip the URL stability check for the PR label Apr 1, 2026
Verbatim copy of the 2.14 overlay with version bumped to 2.14.bcr.1.
Subsequent commits apply the actual fixes.
Replace pushd/popd with symlink-based out-of-source build so that
CWD does not change and relative paths (e.g., --sysroot) resolve
correctly. Also simplify output copying to use parameter expansion
instead of realpath.

Upstream now supports out-of-source builds natively
(axboe/liburing#1558) but that landed after
the 2.14 release, so this workaround is needed for the current BCR
version.
Pass CFLAGS="$(CC_FLAGS)" so configure probes use the same flags
as cc_library rules. Pass LDFLAGS="-c" to skip linking in configure
probes: none of the configure tests execute the output and they are
all effectively compile-time checks of headers and compiler features,
so compile-only is sufficient. Without this, the system linker may
fail on sysroot linker scripts on non-Debian distros (e.g., Fedora).

LDFLAGS="-c" is the best workaround given that Bazel's cc toolchain
does not expose a $(LDFLAGS) Make variable for genrules.
Upstream liburing has unused parameters in register.c that trigger
-Wunused-parameter from -Wextra. A fix is pending upstream
(axboe/liburing#1564) but for this release
we suppress the warning with -Wno-unused-parameter.
@travisdowns travisdowns force-pushed the liburing-2.14.bcr.1 branch from 4f3d25c to e13c73e Compare April 1, 2026 15:41
@travisdowns
Copy link
Copy Markdown
Author

Reworked the series: the first commit is a straight copy of the existing 2.14 module (just bumping the version to 2.14.bcr.1), so the subsequent diffs in the series are meaningful.

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

Labels

skip-url-stability-check Skip the URL stability check for the PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants