Репозитории ALT
S: | 1.0.7-alt3 |
5.1: | 1.0.2-alt2 |
4.1: | 1.0.2-alt1 |
4.0: | 1.0.2-alt1 |
Группа :: Разработка/C
Пакет: xorg-cf-files
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: xorg-cf-files-1.0.6-alt-e2k.patch
Скачать
Скачать
>From c526e24cb06c77de257d705378d81334fc417098 Mon Sep 17 00:00:00 2001
From: Michael Shigorin <mike@altlinux.org>
Date: Fri, 17 Mar 2017 15:56:15 +0300
Subject: [PATCH] Imake.cf, Imake.tmpl, linux.cf, xorg.cf: add e2k support
Elbrus 2000 is a 64-bit VLIW architecture originating from Russia.
See-also: http://mcst.ru
---
Imake.cf | 4 ++++
Imake.tmpl | 2 ++
linux.cf | 29 +++++++++++++++++++++++++++--
xorg.cf | 6 ++++++
4 files changed, 39 insertions(+), 2 deletions(-)
diff --git a/Imake.cf b/Imake.cf
index 0942fb0..09e5264 100644
--- a/Imake.cf
+++ b/Imake.cf
@@ -1037,6 +1037,10 @@ XCOMM Keep cpp from replacing path elements containing i486/i586/i686
# define AArch64Architecture
# undef __aarch64__
# endif
+# if defined(__e2k__)
+# undef __e2k__
+# define E2KArchitecture
+# endif
#endif /* linux || __GLIBC__ */
#if (defined(__Lynx__) || defined(Lynx)) && (defined(i386) || defined(__i386__) || defined(__x86__) || defined(__powerpc__) || defined(__sparc__) || defined(sparc))
diff --git a/Imake.tmpl b/Imake.tmpl
index 9d02cb6..96c3d30 100644
--- a/Imake.tmpl
+++ b/Imake.tmpl
@@ -536,6 +536,8 @@ XCOMM the platform-specific parameters - edit site.def to change
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(SuperHebArchitecture)
#define ByteOrder X_BIG_ENDIAN
+#elif defined(E2KArchitecture)
+#define ByteOrder X_LITTLE_ENDIAN
#endif
#endif /* ByteOrder */
X_BYTE_ORDER = ByteOrder
diff --git a/linux.cf b/linux.cf
index 7845325..6e05f35 100644
--- a/linux.cf
+++ b/linux.cf
@@ -309,7 +309,7 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class
/* On x86, determine whether to build with MTRR support */
#ifndef HasMTRRSupport
-# if defined (i386Architecture) || defined (AMD64Architecture)
+# if defined (i386Architecture) || defined (AMD64Architecture) || defined (E2KArchitecture)
# if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion > 1) || \
(OSMajorVersion == 2 && OSMinorVersion == 1 && OSTeenyVersion >= 99)
# define HasMTRRSupport YES
@@ -382,6 +382,8 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class
# define BuildXF86DRI NO
# elif defined(AMD64Architecture)
# define BuildXF86DRI YES
+# elif defined(E2KArchitecture)
+# define BuildXF86DRI YES
# else
# define BuildXF86DRI NO
# endif
@@ -578,7 +580,7 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class
#define MkdirHierCmd mkdir -p
#ifndef HaveLib64
-# if defined (AMD64Architecture) || defined (s390xArchitecture) || defined (Ppc64Architecture) || defined (AArch64Architecture)
+# if defined (AMD64Architecture) || defined (s390xArchitecture) || defined (Ppc64Architecture) || defined (AArch64Architecture) || defined (E2KArchitecture)
# define HaveLib64 YES
# else
# define HaveLib64 NO
@@ -707,6 +709,13 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class
# define LdCmd CcCmd -nostdlib
# define AsmDefines -DUSE_GAS -U__ELF__
# endif /* AMD64Architecture */
+# ifdef E2KArchitecture
+# define CcCmd gcc
+# define CplusplusCmd g++
+# define AsCmd CcCmd -c -x assembler
+# define LdCmd CcCmd -nostdlib
+# define AsmDefines -DUSE_GAS -U__ELF__
+# endif /* E2KArchitecture */
# endif /* UseElfFormat */
#else
# if UseElfFormat
@@ -753,6 +762,13 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class
# define LdCmd CcCmd -nostdlib
# define AsmDefines -D__ELF__
# endif /* AMD64Architecture */
+# ifdef E2KArchitecture
+# define CcCmd gcc
+# define CplusplusCmd g++
+# define AsCmd CcCmd -c -x assembler
+# define LdCmd CcCmd -nostdlib
+# define AsmDefines -D__ELF__
+# endif /* E2KArchitecture */
# else
# define CcCmd gcc
# define AsCmd CcCmd -c -x assembler
@@ -994,6 +1010,15 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class
# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
#endif /* AArch64Architecture */
+#ifdef E2KArchitecture
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2E2KOpt
+# endif
+# define LinuxMachineDefines -D__e2k__
+# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME
+# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
+#endif /* E2KArchitecture */
+
#ifndef StandardDefines
# ifdef __linux__
# define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines
diff --git a/xorg.cf b/xorg.cf
index 3b0f10b..ea88c05 100644
--- a/xorg.cf
+++ b/xorg.cf
@@ -1603,6 +1603,12 @@ XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
# endif
#endif
+#if HasGcc2 && defined(E2KArchitecture)
+# ifndef DefaultGcc2E2KOpt
+# define DefaultGcc2E2KOpt -O2 -fno-strength-reduce GccAliasingArgs
+# endif
+#endif
+
#ifndef DefaultGcc2DebugOpt
# define DefaultGcc2DebugOpt -g
#endif
--
2.7.4