]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
ci: update CI configuration to support riscv64 architecture and Rocky Linux
authorMiguel Liezun <miguel.liezun@gencove.com>
Tue, 28 Oct 2025 12:27:00 +0000 (13:27 +0100)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Thu, 30 Oct 2025 02:46:28 +0000 (02:46 +0000)
.github/workflows/packages-bin.yml
tools/ci/build_libpq.sh
tools/ci/wheel_linux_before_all.sh

index cb2913bf2540527c6d199fa5e4ba99f05a7c998f..e55947275a70d2d10bf9b8660f7513d8f327ac06 100644 (file)
@@ -48,7 +48,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        arch: [x86_64, ppc64le, aarch64]
+        arch: [x86_64, ppc64le, aarch64, riscv64]
         pyver: [cp310, cp311, cp312, cp313, cp314]
         platform: [manylinux, musllinux]
 
@@ -79,8 +79,9 @@ jobs:
           CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
           CIBW_MANYLINUX_AARCH64_IMAGE: manylinux_2_28
           CIBW_MANYLINUX_PPC64LE_IMAGE: manylinux2014
+          CIBW_MANYLINUX_RISCV64_IMAGE: quay.io/pypa/manylinux_2_39_riscv64
           CIBW_BUILD: ${{matrix.pyver}}-${{matrix.platform}}_${{matrix.arch}}
-          CIBW_ARCHS_LINUX: auto aarch64 ppc64le
+          CIBW_ARCHS_LINUX: auto aarch64 ppc64le riscv64
           CIBW_BEFORE_ALL_LINUX: ./tools/ci/wheel_linux_before_all.sh
           CIBW_REPAIR_WHEEL_COMMAND: >-
             ./tools/ci/strip_wheel.sh {wheel}
index bbcb7ca79690483c7d1943383b0768ba818d414a..d99614c12c1c1b4a908f1da520addc2e5aa0023f 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/bash
 
 # Build a modern version of libpq and depending libs from source on Centos 5,
-# Alpine or macOS
+# Rocky Linux, Alpine or macOS
 
 set -euo pipefail
 
@@ -48,10 +48,10 @@ fi
 
 # Install packages required to build the libpq.
 case "$ID" in
-    centos | almalinux)
+    centos | almalinux | rocky)
         yum update -y
         yum install -y flex cyrus-sasl-devel krb5-devel pam-devel \
-            perl-IPC-Cmd perl-Time-Piece zlib-devel
+            perl perl-IPC-Cmd perl-Time-Piece zlib-devel
         ;;
 
     alpine)
@@ -99,7 +99,7 @@ else
     )
 fi
 
-if [ "$ID" == "centos" ] || [ "$ID" == "almalinux" ]|| [ "$ID" == "macos" ]; then
+if [ "$ID" == "centos" ] || [ "$ID" == "rocky" ] || [ "$ID" == "almalinux" ]|| [ "$ID" == "macos" ]; then
   if [[ ! -f "${LIBPQ_BUILD_PREFIX}/openssl.cnf" ]]; then
 
     # Build openssl if needed
@@ -155,7 +155,7 @@ if [ "$ID" == "macos" ]; then
 fi
 
 
-if [ "$ID" == "centos" ] || [ "$ID" == "almalinux" ]|| [ "$ID" == "macos" ]; then
+if [ "$ID" == "centos" ] || [ "$ID" == "rocky" ] || [ "$ID" == "almalinux" ]|| [ "$ID" == "macos" ]; then
   if [[ ! -f "${LIBPQ_BUILD_PREFIX}/lib/libldap.${library_suffix}" ]]; then
 
     # Build openldap if needed
index f779411ba0e401712153e05181c49a2ab7363824..910bbe248dd5ec6888a27770c035bd1a432e09a3 100755 (executable)
@@ -34,7 +34,7 @@ case "$ID" in
         apt-get -y install libpq-dev flex
         ;;
 
-    centos | almalinux)
+    centos | rocky | almalinux)
         "${dir}/build_libpq.sh" > /dev/null
         ;;