[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1050485: nx-libs: Please add support for new arch Loongarch64



Package: nx-libs
Version: 2:3.5.99.26-5
Severity: wishlist
Tags: patch
User: debian-devel@lists.debian.org
Usertags: loongarch64

Dear maintainers,

   When I compiled nx-libs for loongarch architecture, it reported 
missing architecture support.
We have added loongarch architecture support for nx-libs, the patch
can be found in the attachment.

If you have any questions, you can contact me at any time.
--- nx-libs-3.5.99.26.orig/nx-X11/config/cf/Imake.cf
+++ nx-libs-3.5.99.26/nx-X11/config/cf/Imake.cf
@@ -883,6 +883,18 @@ XCOMM Keep cpp from replacing path eleme
 #   define Riscv64Architecture
 #  endif
 # endif
+# if defined(__loongarch__)
+#   undef __loongarch__
+#   if __loongarch_grlen == 64
+#     undef __loongarch_grlen
+#     undef __loongarch_lp64
+#     define LoongArch64Architecture
+#   endif
+#   if __loongarch_grlen == 32
+#     undef __loongarch_grlen
+#     define LoongArch32Architecture
+#   endif
+# endif
 # ifdef sparc
 #  define SparcArchitecture
 #  undef sparc
--- nx-libs-3.5.99.26.orig/nx-X11/config/cf/Imake.tmpl
+++ nx-libs-3.5.99.26/nx-X11/config/cf/Imake.tmpl
@@ -517,6 +517,8 @@ XCOMM the platform-specific parameters -
 #define ByteOrder		X_LITTLE_ENDIAN
 #elif defined(SuperHebArchitecture)
 #define ByteOrder		X_BIG_ENDIAN
+#elif defined(LoongArch64Architecture) || defined(LoongArch32Architecture)
+#define ByteOrder               X_LITTLE_ENDIAN
 #endif
 #endif /* ByteOrder */
 X_BYTE_ORDER = ByteOrder
--- nx-libs-3.5.99.26.orig/nx-X11/config/cf/linux.cf
+++ nx-libs-3.5.99.26/nx-X11/config/cf/linux.cf
@@ -792,6 +792,24 @@ XCOMM binutils:	(LinuxBinUtilsMajorVersi
 # define ServerExtraDefines	-DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
 #endif /* Riscv64Achitecture */
 
+#ifdef LoongArch64Architecture
+# ifndef OptimizedCDebugFlags
+#  define OptimizedCDebugFlags -O2 GccAliasingArgs
+# endif
+# define LinuxMachineDefines	-D__loongarch__ -D__loongarch_grlen=64 -D__loongarch_lp64
+# define ServerOSDefines	XFree86ServerOSDefines
+# define ServerExtraDefines	-DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
+#endif /* LoongArch64Architecture */
+
+#ifdef LoongArch32Architecture
+# ifndef OptimizedCDebugFlags
+#  define OptimizedCDebugFlags -O2 GccAliasingArgs
+# endif
+# define LinuxMachineDefines	-D__loongarch__ -D__loongarch_grlen=32
+# define ServerOSDefines	XFree86ServerOSDefines
+# define ServerExtraDefines	-DGCCUSESGAS XFree86ServerDefines
+#endif /* LoongArch32Architecture */
+
 #ifdef s390Architecture
 # ifndef OptimizedCDebugFlags
 #  define OptimizedCDebugFlags	-O2 -fomit-frame-pointer GccAliasingArgs

Reply to: