[nx-libs] Add patch for aarch64 support attempt

Orion Poplawski orion at fedoraproject.org
Thu May 8 03:06:11 UTC 2014


commit c6ef28d32d9f715d8c35868f6279b9c4e2776586
Author: Orion Poplawski <orion at cora.nwra.com>
Date:   Wed May 7 21:06:34 2014 -0600

    Add patch for aarch64 support attempt

 nx-libs-aarch64.patch |   79 +++++++++++++++++++++++++++++++++++++++++++++++++
 nx-libs.spec          |    9 +++++-
 2 files changed, 87 insertions(+), 1 deletions(-)
---
diff --git a/nx-libs-aarch64.patch b/nx-libs-aarch64.patch
new file mode 100644
index 0000000..48baf32
--- /dev/null
+++ b/nx-libs-aarch64.patch
@@ -0,0 +1,79 @@
+diff -up nx-libs-3.5.0.24/nx-X11/config/cf/Imake.cf.aarch64 nx-libs-3.5.0.24/nx-X11/config/cf/Imake.cf
+--- nx-libs-3.5.0.24/nx-X11/config/cf/Imake.cf.aarch64	2014-05-07 01:56:12.000000000 -0600
++++ nx-libs-3.5.0.24/nx-X11/config/cf/Imake.cf	2014-05-07 19:27:07.748795509 -0600
+@@ -908,6 +908,9 @@ XCOMM Keep cpp from replacing path eleme
+ #  endif
+ #  undef __ARMEB__
+ # endif
++# ifdef __aarch64__
++#  define Arm64Architecture
++# endif
+ # ifdef mc68000
+ #  define Mc68020Architecture
+ #  undef mc68000
+diff -up nx-libs-3.5.0.24/nx-X11/config/cf/linux.cf.aarch64 nx-libs-3.5.0.24/nx-X11/config/cf/linux.cf
+--- nx-libs-3.5.0.24/nx-X11/config/cf/linux.cf.aarch64	2014-05-07 02:00:04.000000000 -0600
++++ nx-libs-3.5.0.24/nx-X11/config/cf/linux.cf	2014-05-07 19:28:17.823777953 -0600
+@@ -844,6 +844,16 @@ InstallNamedTargetNoClobber(install,file
+ # define ServerExtraDefines	-DGCCUSESGAS XFree86ServerDefines
+ #endif /* Arm32Achitecture */
+ 
++#ifdef Arm64Architecture
++# define DefaultCCOptions
++# ifndef OptimizedCDebugFlags
++#  define OptimizedCDebugFlags	-O3
++# endif
++# define LinuxMachineDefines	-D__aarch64__ -U__arm -Uarm
++# define ServerOSDefines	XFree86ServerOSDefines -DDDXTIME
++# define ServerExtraDefines	-DGCCUSESGAS XFree86ServerDefines
++#endif /* Arm64Achitecture */
++
+ #ifdef HPArchitecture
+ # define OptimizedCDebugFlags	-O2  GccAliasingArgs
+ # define LinuxMachineDefines	-D__hppa__
+diff -up nx-libs-3.5.0.24/nx-X11/config/cf/Imake.tmpl.aarch64 nx-libs-3.5.0.24/nx-X11/config/cf/Imake.tmpl
+--- nx-libs-3.5.0.24/nx-X11/config/cf/Imake.tmpl.aarch64	2014-05-07 02:00:04.000000000 -0600
++++ nx-libs-3.5.0.24/nx-X11/config/cf/Imake.tmpl	2014-05-07 19:59:05.266769630 -0600
+@@ -526,6 +526,10 @@ XCOMM the platform-specific parameters -
+ #define ByteOrder		X_BIG_ENDIAN
+ #elif defined(Arm32Architecture)
+ #define ByteOrder		X_LITTLE_ENDIAN
++#elif defined(Arm64ebArchitecture)
++#define ByteOrder		X_BIG_ENDIAN
++#elif defined(Arm64Architecture)
++#define ByteOrder		X_LITTLE_ENDIAN
+ #elif defined(RsArchitecture)
+ #define ByteOrder		X_BIG_ENDIAN
+ #elif defined(PpcArchitecture) || defined(Ppc64Architecture)
+diff -up nx-libs-3.5.0.24/nx-X11/programs/Xserver/include/servermd.h.aarch64 nx-libs-3.5.0.24/nx-X11/programs/Xserver/include/servermd.h
+--- nx-libs-3.5.0.24/nx-X11/programs/Xserver/include/servermd.h.aarch64	2014-05-07 01:56:12.000000000 -0600
++++ nx-libs-3.5.0.24/nx-X11/programs/Xserver/include/servermd.h	2014-05-07 19:55:11.760395141 -0600
+@@ -154,6 +154,28 @@ SOFTWARE.
+ 
+ #endif /* __arm32__ */
+ 
++#ifdef __aarch64__
++
++#ifdef __AARCH64EL__
++#define IMAGE_BYTE_ORDER        LSBFirst
++#define BITMAP_BIT_ORDER        LSBFirst
++#endif
++#ifdef __AARCH64EB__
++#define IMAGE_BYTE_ORDER        MSBFirst
++#define BITMAP_BIT_ORDER        MSBFirst
++#endif
++
++# if defined(XF86MONOVGA) || defined(XF86VGA16)
++#  define BITMAP_SCANLINE_UNIT  8
++# endif
++
++#define GLYPHPADBYTES           4
++#define GETLEFTBITS_ALIGNMENT   1
++#define LARGE_INSTRUCTION_CACHE
++#define AVOID_MEMORY_READ
++
++#endif /* __aarch64__ */
++
+ #if defined (hpux) || defined __hppa__
+ 
+ #define IMAGE_BYTE_ORDER	MSBFirst
diff --git a/nx-libs.spec b/nx-libs.spec
index 8f0ec08..5f01221 100644
--- a/nx-libs.spec
+++ b/nx-libs.spec
@@ -4,7 +4,7 @@
 
 Name:           nx-libs
 Version:        3.5.0.24
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        NX X11 protocol compression libraries
 
 Group:          System Environment/Libraries
@@ -16,6 +16,9 @@ Source0:        http://code.x2go.org/releases/source/%{name}/%{name}-%{version}-
 # debian/roll-tarballs.sh HEAD server
 # mv _releases_/source/nx-libs/nx-libs-HEAD-full.tar.gz .
 #Source0:       ns-libs-HEAD-full.tar.gz
+# Attempt at aarch64 support
+# http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=490
+Patch0:         nx-libs-aarch64.patch
 
 BuildRequires:  autoconf
 BuildRequires:  expat-devel
@@ -486,6 +489,7 @@ information on NX.
 
 %prep
 %setup -q
+%patch0 -p1 -b .aarch64
 # Install into /usr
 sed -i -e 's,/usr/local,/usr,' nx-X11/config/cf/site.def
 # Use rpm optflags
@@ -890,6 +894,9 @@ rm -r %{buildroot}%{_includedir}/nx/X11/Xtrans
 
 
 %changelog
+* Wed May 7 2014 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.24-2
+- Add patch for aarch64 support attempt
+
 * Wed May 7 2014 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.24-1
 - Update to 3.5.0.24
 - Drop format patch applied upstream


More information about the scm-commits mailing list