Package: pvm
Version: 3.4.6-5
Severity: wishlist
Tags: patch
User:debian-de...@lists.debian.org
Usertags: loongarch64

Dear maintainers,

   When I compiled pvm for loongarch architecture, it reported
missing architecture support.

We have added loongarch architecture support for pvm, the patch and the getpvmarch change sample file

can be found in the attachment.
 The sample in getpvmarch is following:
        loong64)
                echo LINUXLOONGARCH
                ;;


 If you have any questions, you can contact me at any time.

--- /dev/null
+++ pvm-3.4.6/conf/LINUXLOONGARCH.def
@@ -0,0 +1,10 @@
+ARCHCFLAGS     =       -DSYSVSIGNAL -DNOWAIT3 -DRSHCOMMAND=\"/usr/bin/rsh\" \
+                       -DNEEDENDIAN -DFDSETNOTSTRUCT -DHASERRORVARS \
+                       -DCTIMEISTIMET -DSYSERRISCONST -DHASREADLINE
+ARCHDLIB       =
+ARCHDOBJ       =
+ARCHLIB                =       -lreadline
+HASRANLIB      =       t
+AR             =       ar
+PVM_ARCH       =       LINUXLOONGARCH
+MAKE           =       make
--- /dev/null
+++ pvm-3.4.6/conf/LINUXLOONGARCH.m4
@@ -0,0 +1,19 @@
+divert(-1)
+undefine(`len')
+#
+# append an underscore to FORTRAN function names
+#
+define(`FUNCTION',`$1_')
+#
+# FORTRAN character strings are passed as follows:
+# a pointer to the base of the string is passed in the normal
+# argument list, and the length is passed by value as an extra
+# argument, after all of the other arguments.
+#
+define(`ARGS',`($1`'undivert(1))')
+define(`SAVE',`divert(1)$1`'divert(0)')
+define(`STRING_ARG',`$1_ptr`'SAVE(`, $1_len')')
+define(`STRING_ARG_DECL',`char * $1_ptr; int $1_len')
+define(`STRING_LEN',`$1_len')
+define(`STRING_PTR',`$1_ptr')
+divert(0)
#! /bin/sh

eval `dpkg-architecture`

case $DEB_HOST_ARCH_CPU in
        i[36]86)
                echo LINUX
                ;;
        sparc*)
                echo LINUXSPARC
                ;;
        alpha)
                echo LINUXALPHA
                ;;
        m68k)
                echo LINUXATARI
                ;;
        amd64)
                echo LINUX64
                ;;
        ia64)
                echo LINUX64
                ;;
        ppc64|ppc64el)
                echo LINUX64
                ;;
        hppa)
                echo LINUXHPPA
                ;;
        mips*)
                echo LINUXMIPS
                ;;
        s390)
                echo LINUXS390
                ;;
        s390x)
                echo LINUXS390
                ;;
        powerpc)
                echo LINUXPPC
                ;;
        arm)
                echo LINUXARM
                ;;
        arm64)
                echo LINUX64
                ;;
        sh4)
                echo LINUXSH
                ;;
        riscv64)
                echo LINUXRISCV
                ;;
        loong64)
                echo LINUXLOONGARCH
                ;;
        *)
                echo 'Unknown architecture!' 1>&2
                exit 1;
esac

Reply via email to