mirror of
https://github.com/torvalds/linux.git
synced 2026-05-12 16:18:45 +02:00
rust: rust_is_available: remove warning for bindgen 0.66.[01]
It is not possible anymore to fall into the issue that this warning was alerting about given the `bindgen` version bump. Thus simplify by removing the machinery behind it, including tests. Reviewed-by: Tamir Duberstein <tamird@kernel.org> Link: https://patch.msgid.link/20260405235309.418950-19-ojeda@kernel.org Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
This commit is contained in:
parent
c3a00a3f31
commit
41cfbb4295
|
|
@ -163,19 +163,6 @@ if [ "$rust_bindings_generator_cversion" -lt "$rust_bindings_generator_min_cvers
|
|||
echo >&2 "***"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$rust_bindings_generator_cversion" -eq 6600 ] ||
|
||||
[ "$rust_bindings_generator_cversion" -eq 6601 ]; then
|
||||
# Distributions may have patched the issue (e.g. Debian did).
|
||||
if ! "$BINDGEN" $(dirname $0)/rust_is_available_bindgen_0_66.h >/dev/null; then
|
||||
echo >&2 "***"
|
||||
echo >&2 "*** Rust bindings generator '$BINDGEN' versions 0.66.0 and 0.66.1 may not"
|
||||
echo >&2 "*** work due to a bug (https://github.com/rust-lang/rust-bindgen/pull/2567),"
|
||||
echo >&2 "*** unless patched (like Debian's)."
|
||||
echo >&2 "*** Your version: $rust_bindings_generator_version"
|
||||
echo >&2 "***"
|
||||
warning=1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Check that the `libclang` used by the Rust bindings generator is suitable.
|
||||
#
|
||||
|
|
|
|||
|
|
@ -1,2 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
#define A "\0"
|
||||
|
|
@ -54,17 +54,12 @@ else:
|
|||
""")
|
||||
|
||||
@classmethod
|
||||
def generate_bindgen(cls, version_stdout, libclang_stderr, version_0_66_patched=False, libclang_concat_patched=False):
|
||||
def generate_bindgen(cls, version_stdout, libclang_stderr, libclang_concat_patched=False):
|
||||
if libclang_stderr is None:
|
||||
libclang_case = f"raise SystemExit({cls.bindgen_default_bindgen_libclang_failure_exit_code})"
|
||||
else:
|
||||
libclang_case = f"print({repr(libclang_stderr)}, file=sys.stderr)"
|
||||
|
||||
if version_0_66_patched:
|
||||
version_0_66_case = "pass"
|
||||
else:
|
||||
version_0_66_case = "raise SystemExit(1)"
|
||||
|
||||
if libclang_concat_patched:
|
||||
libclang_concat_case = "print('pub static mut foofoo: ::std::os::raw::c_int;')"
|
||||
else:
|
||||
|
|
@ -74,8 +69,6 @@ else:
|
|||
import sys
|
||||
if "rust_is_available_bindgen_libclang.h" in " ".join(sys.argv):
|
||||
{libclang_case}
|
||||
elif "rust_is_available_bindgen_0_66.h" in " ".join(sys.argv):
|
||||
{version_0_66_case}
|
||||
elif "rust_is_available_bindgen_libclang_concat.h" in " ".join(sys.argv):
|
||||
{libclang_concat_case}
|
||||
else:
|
||||
|
|
@ -83,8 +76,8 @@ else:
|
|||
""")
|
||||
|
||||
@classmethod
|
||||
def generate_bindgen_version(cls, stdout, version_0_66_patched=False):
|
||||
return cls.generate_bindgen(stdout, cls.bindgen_default_bindgen_libclang_stderr, version_0_66_patched)
|
||||
def generate_bindgen_version(cls, stdout):
|
||||
return cls.generate_bindgen(stdout, cls.bindgen_default_bindgen_libclang_stderr)
|
||||
|
||||
@classmethod
|
||||
def generate_bindgen_libclang_failure(cls):
|
||||
|
|
@ -245,19 +238,6 @@ else:
|
|||
result = self.run_script(self.Expected.FAILURE, { "BINDGEN": bindgen })
|
||||
self.assertIn(f"Rust bindings generator '{bindgen}' is too old.", result.stderr)
|
||||
|
||||
def test_bindgen_bad_version_0_66_0_and_0_66_1(self):
|
||||
for version in ("0.66.0", "0.66.1"):
|
||||
with self.subTest(version=version):
|
||||
bindgen = self.generate_bindgen_version(f"bindgen {version}")
|
||||
result = self.run_script(self.Expected.SUCCESS_WITH_WARNINGS, { "BINDGEN": bindgen })
|
||||
self.assertIn(f"Rust bindings generator '{bindgen}' versions 0.66.0 and 0.66.1 may not", result.stderr)
|
||||
|
||||
def test_bindgen_bad_version_0_66_0_and_0_66_1_patched(self):
|
||||
for version in ("0.66.0", "0.66.1"):
|
||||
with self.subTest(version=version):
|
||||
bindgen = self.generate_bindgen_version(f"bindgen {version}", True)
|
||||
result = self.run_script(self.Expected.SUCCESS, { "BINDGEN": bindgen })
|
||||
|
||||
def test_bindgen_libclang_failure(self):
|
||||
bindgen = self.generate_bindgen_libclang_failure()
|
||||
result = self.run_script(self.Expected.FAILURE, { "BINDGEN": bindgen })
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user