diff --git a/0001-add-loongarch64-support-for-target-lexicon.patch b/0001-add-loongarch64-support-for-target-lexicon.patch new file mode 100644 index 0000000000000000000000000000000000000000..ecb7a70149b9c5275eeb3587c664c70f777804a3 --- /dev/null +++ b/0001-add-loongarch64-support-for-target-lexicon.patch @@ -0,0 +1,73 @@ +From 5e7fda7253e30c955e97572914ba4cf99bab4ab7 Mon Sep 17 00:00:00 2001 +From: Wenlong Zhang +Date: Tue, 16 Dec 2025 08:59:28 +0800 +Subject: [PATCH] add loongarch64 support for target-lexicon + +--- + native/vendor/target-lexicon/.cargo-checksum.json | 2 +- + native/vendor/target-lexicon/src/targets.rs | 6 ++++++ + 2 files changed, 7 insertions(+), 1 deletion(-) + +diff --git a/native/vendor/target-lexicon/.cargo-checksum.json b/native/vendor/target-lexicon/.cargo-checksum.json +index 2ab0205..b5826d3 100644 +--- a/native/vendor/target-lexicon/.cargo-checksum.json ++++ b/native/vendor/target-lexicon/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.lock":"b9264c19ff518102b65fbe3727bfff730e671546f83c6d1375fb0c1f907710f6","Cargo.toml":"0cfc8c6ade28f12605500e0ec23192094a3e0a9eefcbce850f9a1b5a7652c646","LICENSE":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","README.md":"c3467056d91be3f59562158ee9604c729b5b5f473efbefb036032803eb76809e","build.rs":"4716b4f955c7a4cb39cb3b7521c1745d5110c1cbd1e054bca906e37f5e974675","examples/host.rs":"503bafddfb372123fe4dc0e7b8037808beb5bfe6df60c00d3315922bd3792c6c","examples/misc.rs":"49a579845450b7b020ed5c97dca142fc548725893cbc82f6f750ee0caab2beca","scripts/rust-targets.sh":"89564342916321c5bc35e772d374a7f0af22cc9ae6dcc0027eca48d2269f18cb","src/data_model.rs":"38c0c184ee65b882872298127d9c6878292bd12c139792e82328a5facc2428ae","src/host.rs":"fb543df4f362e9119a58523563e453110f4e3a426f0995911d0ca386657cf1d9","src/lib.rs":"8e507b48bd616e1fae0e4664770f66a6475b3c6b5377f88edae1e129d133c4eb","src/parse_error.rs":"b3735eabc0fd0a9dfdd6375662f20ec96a79852a00a05a98fb2e421545285e53","src/targets.rs":"b8eea045a1bc8d19e8e5b0cdd969727c8403982062772fab79dc982a7d237470","src/triple.rs":"f609b02ff35df25adae00b0965484043b37bb0e0c1cc5b6aa9729b69f6811879"},"package":"c02424087780c9b71cc96799eaeddff35af2bc513278cda5c99fc1f5d026d3c1"} +\ No newline at end of file ++{"files":{"Cargo.lock":"b9264c19ff518102b65fbe3727bfff730e671546f83c6d1375fb0c1f907710f6","Cargo.toml":"0cfc8c6ade28f12605500e0ec23192094a3e0a9eefcbce850f9a1b5a7652c646","LICENSE":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","README.md":"c3467056d91be3f59562158ee9604c729b5b5f473efbefb036032803eb76809e","build.rs":"4716b4f955c7a4cb39cb3b7521c1745d5110c1cbd1e054bca906e37f5e974675","examples/host.rs":"503bafddfb372123fe4dc0e7b8037808beb5bfe6df60c00d3315922bd3792c6c","examples/misc.rs":"49a579845450b7b020ed5c97dca142fc548725893cbc82f6f750ee0caab2beca","scripts/rust-targets.sh":"89564342916321c5bc35e772d374a7f0af22cc9ae6dcc0027eca48d2269f18cb","src/data_model.rs":"38c0c184ee65b882872298127d9c6878292bd12c139792e82328a5facc2428ae","src/host.rs":"fb543df4f362e9119a58523563e453110f4e3a426f0995911d0ca386657cf1d9","src/lib.rs":"8e507b48bd616e1fae0e4664770f66a6475b3c6b5377f88edae1e129d133c4eb","src/parse_error.rs":"b3735eabc0fd0a9dfdd6375662f20ec96a79852a00a05a98fb2e421545285e53","src/targets.rs":"784a43d0850d6d09074a7e935b23e72117f5aa429453dba07bbacab0fec5ecf5","src/triple.rs":"f609b02ff35df25adae00b0965484043b37bb0e0c1cc5b6aa9729b69f6811879"},"package":"c02424087780c9b71cc96799eaeddff35af2bc513278cda5c99fc1f5d026d3c1"} +diff --git a/native/vendor/target-lexicon/src/targets.rs b/native/vendor/target-lexicon/src/targets.rs +index 8ef23b2..0ba0d71 100644 +--- a/native/vendor/target-lexicon/src/targets.rs ++++ b/native/vendor/target-lexicon/src/targets.rs +@@ -34,6 +34,7 @@ pub enum Architecture { + Riscv32(Riscv32Architecture), + Riscv64(Riscv64Architecture), + S390x, ++ Loongarch64, + Sparc, + Sparc64, + Sparcv9, +@@ -550,6 +551,7 @@ impl Architecture { + | Powerpc + | Powerpc64 + | S390x ++ | Loongarch64 + | Sparc + | Sparc64 + | Sparcv9 => Ok(Endianness::Big), +@@ -586,6 +588,7 @@ impl Architecture { + | Nvptx64 + | Powerpc64 + | S390x ++ | Loongarch64 + | Sparc64 + | Sparcv9 + | Wasm64 => Ok(PointerWidth::U64), +@@ -770,6 +773,7 @@ impl fmt::Display for Architecture { + Riscv32(riscv32) => riscv32.fmt(f), + Riscv64(riscv64) => riscv64.fmt(f), + S390x => f.write_str("s390x"), ++ Loongarch64 => f.write_str("loongarch64"), + Sparc => f.write_str("sparc"), + Sparc64 => f.write_str("sparc64"), + Sparcv9 => f.write_str("sparcv9"), +@@ -949,6 +953,7 @@ impl FromStr for Architecture { + "powerpc64" => Powerpc64, + "powerpc64le" => Powerpc64le, + "s390x" => S390x, ++ "loongarch64" => Loongarch64, + "sparc" => Sparc, + "sparc64" => Sparc64, + "sparcv9" => Sparcv9, +@@ -1466,6 +1471,7 @@ mod tests { + "riscv64gc-unknown-none-elf", + "riscv64imac-unknown-none-elf", + "s390x-unknown-linux-gnu", ++ "loongarch64-unknown-linux-gnu", + "s390x-unknown-linux-musl", + "sparc-unknown-linux-gnu", + "sparc64-unknown-linux-gnu", +-- +2.43.0 + diff --git a/python-libcst.spec b/python-libcst.spec index de3b749e7d2824adc256f454bfa72a5b8b9cef02..a7fb7de522829f298e93c3f927d1d6790b8a7bfe 100644 --- a/python-libcst.spec +++ b/python-libcst.spec @@ -16,13 +16,14 @@ AST.} Name: python-%{pypi_name} Version: 1.2.0 -Release: 1 +Release: 2 Summary: A concrete syntax tree with AST-like properties for Python 3 License: MIT and (MIT and Python) and ASL 2.0 URL: https://github.com/Instagram/LibCST Source0: %{pypi_source %{pypi_name}} Source1: cargo-vendor-cache Patch1: 0001-set-cargo-vendor-cache-for-local-build.patch +Patch2: 0001-add-loongarch64-support-for-target-lexicon.patch BuildRequires: rust-packaging @@ -66,8 +67,9 @@ Documentation for %{name} %endif %prep -%autosetup -p1 -n %{pypi_name}-%{version} +%setup -n %{pypi_name}-%{version} tar xzvf %{SOURCE1} -C ./native/ +%autopatch -p1 %if %{with docs} sed -r \ @@ -98,6 +100,9 @@ rm -rf html/.{doctrees,buildinfo} %endif %changelog +* Mon Dec 15 2025 Wenlong Zhang - 1.2.0-2 +- add loongarch64 support for target-lexicon + * Thu Feb 29 2024 Dongxing Wang - 1.2.0-1 - Upgrade package with version 1.2.0 Support running LibCST on Python 3.12 and drop support for running it on 3.8