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

Bug#828141: firebird2.5: Please add platform support for m68k



Source: firebird2.5
Version: 2.5.5.26952.ds4-5
Severity: normal
Tags: patch
User: debian-68k@lists.debian.org
Usertags: m68k

Hello!

firebird2.5 currently FTBFS on m68k [1] due to missing platform support
for this architecture. I have looked into the already supported platforms
and came up with a small patch which should add support for m68k as
well.

I'm attaching it to this bug report and it would be great if it could
be merged so that the Qt5 packages will finally become BD-Installable
on m68k.

Thanks,
Adrian

> [1] https://buildd.debian.org/status/fetch.php?pkg=firebird2.5&arch=m68k&ver=2.5.5.26952.ds4-5&stamp=1466358521

--
 .''`.  John Paul Adrian Glaubitz
 : :' :  Debian Developer - glaubitz@debian.org
 `. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
   `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Description: Add basic platform support for m68k
 This patch adds basic platform support for Linux/m68k. m68k
 is a 32-bit big-endian architecture and a ports architecture
 in Debian.
 .

--- firebird2.5-2.5.5.26952.ds4.orig/configure.in
+++ firebird2.5-2.5.5.26952.ds4/configure.in
@@ -359,6 +359,17 @@ dnl CPU_TYPE=ppc64
    SHRLIB_EXT=so
    ;;
 
+  m68k*-*-linux*)
+   MAKEFILE_PREFIX=linux_generic
+   INSTALL_PREFIX=linux
+   PLATFORM=LINUX
+   AC_DEFINE(LINUX, 1, [Define this if OS is Linux])
+   AC_DEFINE(M68K, 1, [Define this if CPU is M68k])
+   LOCK_MANAGER_FLG=Y
+   EDITLINE_FLG=Y
+   SHRLIB_EXT=so
+   ;;
+
   *-*-linux* | *-*-gnu*)
     MAKEFILE_PREFIX=linux_generic
     INSTALL_PREFIX=linux
--- firebird2.5-2.5.5.26952.ds4.orig/src/jrd/common.h
+++ firebird2.5-2.5.5.26952.ds4/src/jrd/common.h
@@ -200,7 +200,9 @@
 #define IMPLEMENTATION  isc_info_db_impl_linux_ppc64el	/* 85  */
 #endif /* PPC64EL */
 
-
+#ifdef M68K
+#define IMPLEMENTATION  isc_info_db_impl_linux_m68k	/* 86  */
+#endif /* M68K */
 
 #endif /* LINUX */
 
--- firebird2.5-2.5.5.26952.ds4.orig/src/jrd/inf_pub.h
+++ firebird2.5-2.5.5.26952.ds4/src/jrd/inf_pub.h
@@ -217,6 +217,7 @@ enum  info_db_implementations
 	isc_info_db_impl_linux_alpha = 83,
 	isc_info_db_impl_linux_arm64 = 84,
 	isc_info_db_impl_linux_ppc64el = 85,
+	isc_info_db_impl_linux_m68k = 86,
 
 	isc_info_db_impl_last_value   // Leave this LAST!
 };
--- firebird2.5-2.5.5.26952.ds4.orig/src/jrd/pag.cpp
+++ firebird2.5-2.5.5.26952.ds4/src/jrd/pag.cpp
@@ -165,10 +165,10 @@ static const int CLASS_LINUX_HPPA = 40;
 static const int CLASS_LINUX_ALPHA = 41;	// LINUX/ALPHA
 static const int CLASS_LINUX_ARM64 = 42;	// LINUX/ARM64
 static const int CLASS_LINUX_PPC64EL = 43;	// LINUX/PowerPc64EL
-
+static const int CLASS_LINUX_M68K = 44;		// LINUX/M68K
 
 static const int CLASS_MAX10 = CLASS_LINUX_AMD64;	// This should not be changed, no new ports with ODS10
-static const int CLASS_MAX = CLASS_LINUX_PPC64EL;
+static const int CLASS_MAX = CLASS_LINUX_M68K;
 
 // ARCHITECTURE COMPATIBILITY CLASSES
 
@@ -269,8 +269,8 @@ static const ArchitectureType archMatrix
 	archBigEndian,    // CLASS_LINUX_HPPA
 	archLittleEndian, // CLASS_LINUX_ALPHA
 	archLittleEndian, // CLASS_LINUX_ARM64
-	archLittleEndian  // CLASS_LINUX_PPC64EL
-
+	archLittleEndian, // CLASS_LINUX_PPC64EL
+	archBigEndian     // CLASS_LINUX_M68K
 };
 
 #ifdef __sun
@@ -338,6 +338,8 @@ const SSHORT CLASS		= CLASS_LINUX_ALPHA;
 const SSHORT CLASS		= CLASS_LINUX_ARM64;
 #elif defined(PPC64EL)
 const SSHORT CLASS		= CLASS_LINUX_PPC64EL;
+#elif defined(M68K)
+const SSHORT CLASS		= CLASS_LINUX_M68K;
 #else
 #error no support on other hardware for Linux
 #endif
--- firebird2.5-2.5.5.26952.ds4.orig/src/jrd/utl.cpp
+++ firebird2.5-2.5.5.26952.ds4/src/jrd/utl.cpp
@@ -229,8 +229,8 @@ static const TEXT* const impl_implementa
 	"Firebird/linux HPPA",			// 82
 	"Firebird/linux ALPHA",			// 83
 	"Firebird/linux ARM64",			// 84
-	"Firebird/linux PPC64EL"		// 85
-
+	"Firebird/linux PPC64EL",		// 85
+	"Firebird/linux M68K"			// 86
 };
 
 

Reply to: