Add support for riscv64.
This commit is contained in:
parent
17f3653e9a
commit
9a809ebd54
2 changed files with 113 additions and 1 deletions
104
0001-Port-to-RISC-V-64-bit-riscv64.patch
Normal file
104
0001-Port-to-RISC-V-64-bit-riscv64.patch
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
diff -ur Firebird-3.0.3.32900-0.old/configure.ac Firebird-3.0.3.32900-0/configure.ac
|
||||
--- Firebird-3.0.3.32900-0.old/configure.ac 2018-03-18 19:43:24.019834501 +0000
|
||||
+++ Firebird-3.0.3.32900-0/configure.ac 2018-03-18 19:46:45.649689888 +0000
|
||||
@@ -251,6 +251,18 @@
|
||||
libdir=/usr/lib64
|
||||
;;
|
||||
|
||||
+ riscv64*-*-linux*)
|
||||
+ MAKEFILE_PREFIX=linux_riscv64
|
||||
+ INSTALL_PREFIX=linux
|
||||
+ PLATFORM=LINUX
|
||||
+ AC_DEFINE(LINUX, 1, [Define this if OS is Linux])
|
||||
+ EDITLINE_FLG=Y
|
||||
+ SHRLIB_EXT=so
|
||||
+ STD_EDITLINE=true
|
||||
+ STD_ICU=true
|
||||
+ libdir=/usr/lib64
|
||||
+ ;;
|
||||
+
|
||||
powerpc64le-*-linux*)
|
||||
MAKEFILE_PREFIX=linux_powerpc64el
|
||||
INSTALL_PREFIX=linux
|
||||
diff -ur Firebird-3.0.3.32900-0.old/src/common/classes/DbImplementation.cpp Firebird-3.0.3.32900-0/src/common/classes/DbImplementation.cpp
|
||||
--- Firebird-3.0.3.32900-0.old/src/common/classes/DbImplementation.cpp 2018-02-02 11:00:35.000000000 +0000
|
||||
+++ Firebird-3.0.3.32900-0/src/common/classes/DbImplementation.cpp 2018-03-18 19:46:14.215712362 +0000
|
||||
@@ -49,6 +49,7 @@
|
||||
static const UCHAR CpuArm64 = 15;
|
||||
static const UCHAR CpuPowerPc64el = 16;
|
||||
static const UCHAR CpuM68k = 17;
|
||||
+static const UCHAR CpuRiscV64 = 18;
|
||||
|
||||
static const UCHAR OsWindows = 0;
|
||||
static const UCHAR OsLinux = 1;
|
||||
@@ -89,7 +90,8 @@
|
||||
"Alpha",
|
||||
"ARM64",
|
||||
"PowerPC64el",
|
||||
- "M68k"
|
||||
+ "M68k",
|
||||
+ "RiscV64"
|
||||
};
|
||||
|
||||
const char* operatingSystem[] = {
|
||||
@@ -116,22 +118,22 @@
|
||||
// This table lists pre-fb3 implementation codes
|
||||
const UCHAR backwardTable[FB_NELEM(hardware) * FB_NELEM(operatingSystem)] =
|
||||
{
|
||||
-// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el
|
||||
-/* Windows */ 50, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
-/* Linux */ 60, 66, 65, 69, 86, 71, 72, 75, 76, 79, 78, 80, 81, 82, 83, 84, 85,
|
||||
-/* Darwin */ 70, 73, 0, 63, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
-/* Solaris */ 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
-/* HPUX */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0,
|
||||
-/* AIX */ 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
-/* MVS */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
-/* FreeBSD */ 61, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
-/* NetBSD */ 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
+// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el RiscV64
|
||||
+/* Windows */ 50, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
+/* Linux */ 60, 66, 65, 69, 86, 71, 72, 75, 76, 79, 78, 80, 81, 82, 83, 84, 85, 88,
|
||||
+/* Darwin */ 70, 73, 0, 63, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
+/* Solaris */ 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
+/* HPUX */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0,
|
||||
+/* AIX */ 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
+/* MVS */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
+/* FreeBSD */ 61, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
+/* NetBSD */ 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
};
|
||||
|
||||
const UCHAR backEndianess[FB_NELEM(hardware)] =
|
||||
{
|
||||
-// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el M68k
|
||||
- 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1
|
||||
+// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el M68k RiscV64
|
||||
+ 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0
|
||||
};
|
||||
|
||||
} // anonymous namespace
|
||||
diff -ur Firebird-3.0.3.32900-0.old/src/common/common.h Firebird-3.0.3.32900-0/src/common/common.h
|
||||
--- Firebird-3.0.3.32900-0.old/src/common/common.h 2018-03-18 19:43:24.039834486 +0000
|
||||
+++ Firebird-3.0.3.32900-0/src/common/common.h 2018-03-18 19:43:36.963825174 +0000
|
||||
@@ -135,6 +135,10 @@
|
||||
#define FB_CPU CpuArm64
|
||||
#endif /* ARM64 */
|
||||
|
||||
+#ifdef RISCV64
|
||||
+#define FB_CPU CpuRiscV64
|
||||
+#endif /* RISCV64 */
|
||||
+
|
||||
#ifdef sparc
|
||||
#define FB_CPU CpuUltraSparc
|
||||
#define RISC_ALIGNMENT
|
||||
diff -ur Firebird-3.0.3.32900-0.old/src/jrd/inf_pub.h Firebird-3.0.3.32900-0/src/jrd/inf_pub.h
|
||||
--- Firebird-3.0.3.32900-0.old/src/jrd/inf_pub.h 2018-02-02 11:00:36.000000000 +0000
|
||||
+++ Firebird-3.0.3.32900-0/src/jrd/inf_pub.h 2018-03-18 19:43:36.963825174 +0000
|
||||
@@ -245,7 +245,7 @@
|
||||
isc_info_db_impl_linux_ppc64el = 85,
|
||||
isc_info_db_impl_linux_ppc64 = 86,
|
||||
isc_info_db_impl_linux_m68k = 87,
|
||||
-
|
||||
+ isc_info_db_impl_linux_riscv64 = 88,
|
||||
|
||||
isc_info_db_impl_last_value // Leave this LAST!
|
||||
};
|
||||
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
Name: firebird
|
||||
Version: %{upversion}
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
|
||||
Summary: SQL relational database management system
|
||||
Group: Applications/Databases
|
||||
|
|
@ -32,6 +32,10 @@ Patch205: cloop-honour-build-flags.patch
|
|||
# from upstream
|
||||
Patch301: a4cb621bf55ef2101e22b1e7da5c458a1e0cc2ab.patch
|
||||
|
||||
# Support for riscv64, sent upstream:
|
||||
# http://tracker.firebirdsql.org/browse/CORE-5779
|
||||
Patch401: 0001-Port-to-RISC-V-64-bit-riscv64.patch
|
||||
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: libtommath-devel
|
||||
|
|
@ -207,6 +211,7 @@ in production systems, under a variety of names, since 1981.
|
|||
%patch203 -p1
|
||||
%patch205 -p1
|
||||
%patch301 -p1
|
||||
%patch401 -p1
|
||||
|
||||
%build
|
||||
export CFLAGS="%{optflags} -fno-strict-aliasing"
|
||||
|
|
@ -388,6 +393,9 @@ fi
|
|||
|
||||
|
||||
%changelog
|
||||
* Sun Mar 18 2018 Richard W.M. Jones <rjones@redhat.com> - 3.0.3.32900-2
|
||||
- Add support for riscv64.
|
||||
|
||||
* Tue Feb 20 2018 Philippe Makowski <makowski@fedoraproject.org> - 3.0.3.32900-1
|
||||
- new upstream release.
|
||||
- Drop obsolete ldconfig scriptlets.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue