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 - glaub...@debian.org `. `' Freie Universitaet Berlin - glaub...@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 };