Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/packages/semgrep.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -92,3 +92,7 @@ versions:
gpl-sources:
filename: gpl-sources.tar
description: the shared libraries bundled next to semgrep-core
- version: 1.181.0
- version: 1.181.1
- version: 1.182.0
- version: 1.182.1
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From: RISE Project <info@riseproject.dev>
Subject: [PATCH] setup.py: tag riscv64 linux wheels as manylinux_2_39_riscv64

cli/setup.py rewrites the default linux_<arch> platform tag into a
manylinux/musllinux one through plat_libc_to_tag, which only knows x86_64
and aarch64. On riscv64 the lookup raises KeyError and no wheel can be
built at all.

Add the glibc riscv64 entry. Unlike x86_64/aarch64, riscv64 has no glibc
2.34 build environment available, so the tag names glibc 2.39 (Ubuntu
24.04 / Debian trixie), the oldest riscv64 userland in general use.

Upstream-Status: To upstream [only meaningful together with a riscv64 semgrep-core build job, which semgrep does not have yet]

--- a/cli/setup.py
+++ b/cli/setup.py
@@ -57,6 +57,9 @@ plat_libc_to_tag = {
("linux_x86_64", "musl"): "musllinux_1_2_x86_64",
("linux_aarch64", "glibc"): "manylinux_2_34_aarch64",
("linux_x86_64", "glibc"): "manylinux_2_34_x86_64",
+ # riscv64 has no glibc 2.34 build environment; the oldest widely available
+ # one is glibc 2.39 (Ubuntu 24.04 / Debian trixie), so tag it accordingly.
+ ("linux_riscv64", "glibc"): "manylinux_2_39_riscv64",
}


Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From: RISE Project <info@riseproject.dev>
Subject: [PATCH] setup.py: tag riscv64 linux wheels as manylinux_2_39_riscv64

cli/setup.py rewrites the default linux_<arch> platform tag into a
manylinux/musllinux one through plat_libc_to_tag, which only knows x86_64
and aarch64. On riscv64 the lookup raises KeyError and no wheel can be
built at all.

Add the glibc riscv64 entry. Unlike x86_64/aarch64, riscv64 has no glibc
2.34 build environment available, so the tag names glibc 2.39 (Ubuntu
24.04 / Debian trixie), the oldest riscv64 userland in general use.

Upstream-Status: To upstream [only meaningful together with a riscv64 semgrep-core build job, which semgrep does not have yet]

--- a/cli/setup.py
+++ b/cli/setup.py
@@ -57,6 +57,9 @@ plat_libc_to_tag = {
("linux_x86_64", "musl"): "musllinux_1_2_x86_64",
("linux_aarch64", "glibc"): "manylinux_2_34_aarch64",
("linux_x86_64", "glibc"): "manylinux_2_34_x86_64",
+ # riscv64 has no glibc 2.34 build environment; the oldest widely available
+ # one is glibc 2.39 (Ubuntu 24.04 / Debian trixie), so tag it accordingly.
+ ("linux_riscv64", "glibc"): "manylinux_2_39_riscv64",
}


Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From: RISE Project <info@riseproject.dev>
Subject: [PATCH] setup.py: tag riscv64 linux wheels as manylinux_2_39_riscv64

cli/setup.py rewrites the default linux_<arch> platform tag into a
manylinux/musllinux one through plat_libc_to_tag, which only knows x86_64
and aarch64. On riscv64 the lookup raises KeyError and no wheel can be
built at all.

Add the glibc riscv64 entry. Unlike x86_64/aarch64, riscv64 has no glibc
2.34 build environment available, so the tag names glibc 2.39 (Ubuntu
24.04 / Debian trixie), the oldest riscv64 userland in general use.

Upstream-Status: To upstream [only meaningful together with a riscv64 semgrep-core build job, which semgrep does not have yet]

--- a/cli/setup.py
+++ b/cli/setup.py
@@ -57,6 +57,9 @@ plat_libc_to_tag = {
("linux_x86_64", "musl"): "musllinux_1_2_x86_64",
("linux_aarch64", "glibc"): "manylinux_2_34_aarch64",
("linux_x86_64", "glibc"): "manylinux_2_34_x86_64",
+ # riscv64 has no glibc 2.34 build environment; the oldest widely available
+ # one is glibc 2.39 (Ubuntu 24.04 / Debian trixie), so tag it accordingly.
+ ("linux_riscv64", "glibc"): "manylinux_2_39_riscv64",
}


Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From: RISE Project <info@riseproject.dev>
Subject: [PATCH] setup.py: tag riscv64 linux wheels as manylinux_2_39_riscv64

cli/setup.py rewrites the default linux_<arch> platform tag into a
manylinux/musllinux one through plat_libc_to_tag, which only knows x86_64
and aarch64. On riscv64 the lookup raises KeyError and no wheel can be
built at all.

Add the glibc riscv64 entry. Unlike x86_64/aarch64, riscv64 has no glibc
2.34 build environment available, so the tag names glibc 2.39 (Ubuntu
24.04 / Debian trixie), the oldest riscv64 userland in general use.

Upstream-Status: To upstream [only meaningful together with a riscv64 semgrep-core build job, which semgrep does not have yet]

--- a/cli/setup.py
+++ b/cli/setup.py
@@ -57,6 +57,9 @@ plat_libc_to_tag = {
("linux_x86_64", "musl"): "musllinux_1_2_x86_64",
("linux_aarch64", "glibc"): "manylinux_2_34_aarch64",
("linux_x86_64", "glibc"): "manylinux_2_34_x86_64",
+ # riscv64 has no glibc 2.34 build environment; the oldest widely available
+ # one is glibc 2.39 (Ubuntu 24.04 / Debian trixie), so tag it accordingly.
+ ("linux_riscv64", "glibc"): "manylinux_2_39_riscv64",
}


Loading