tags 415668 patch thanks Attached is the patch to support s390 and s390x. It survived the database and table creation.
Bastian -- No one may kill a man. Not for any purpose. It cannot be condoned. -- Kirk, "Spock's Brain", stardate 5431.6
diff -Nru firebird2.1-2.1.2.18118-0.ds1/debian/changelog firebird2.1-2.1.2.18118-0.ds1/debian/changelog --- firebird2.1-2.1.2.18118-0.ds1/debian/changelog 2009-07-27 19:07:13.000000000 +0000 +++ firebird2.1-2.1.2.18118-0.ds1/debian/changelog 2009-07-27 19:07:14.000000000 +0000 @@ -1,3 +1,10 @@ +firebird2.1 (2.1.2.18118-0.ds1-3.1) UNRELEASED; urgency=low + + * Non-maintainer upload. + * Add support for s390. + + -- Bastian Blank <wa...@debian.org> Mon, 27 Jul 2009 16:31:26 +0000 + firebird2.1 (2.1.2.18118-0.ds1-3) unstable; urgency=low * remove stray g++-4.3 from Build-Depends the package builds fine with diff -Nru firebird2.1-2.1.2.18118-0.ds1/debian/patches/port-s390.patch firebird2.1-2.1.2.18118-0.ds1/debian/patches/port-s390.patch --- firebird2.1-2.1.2.18118-0.ds1/debian/patches/port-s390.patch 1970-01-01 00:00:00.000000000 +0000 +++ firebird2.1-2.1.2.18118-0.ds1/debian/patches/port-s390.patch 2009-07-27 19:07:14.000000000 +0000 @@ -0,0 +1,103 @@ +--- a/src/jrd/common.h ++++ b/src/jrd/common.h +@@ -151,6 +151,14 @@ + #define RISC_ALIGNMENT + #endif // IA64 + ++#ifdef __s390__ ++#ifdef __s390x__ ++#define IMPLEMENTATION isc_info_db_impl_linux_s390x // 79 ++#else ++#define IMPLEMENTATION isc_info_db_impl_linux_s390 // 78 ++#endif ++#endif ++ + #define MEMMOVE(from, to, length) memmove ((void *)to, (void *)from, (size_t) length) + #define MOVE_FAST(from, to, length) memcpy (to, from, (int) (length)) + #define MOVE_FASTER(from, to, length) memcpy (to, from, (int) (length)) +--- a/src/jrd/inf_pub.h ++++ b/src/jrd/inf_pub.h +@@ -208,6 +208,9 @@ + + isc_info_db_impl_darwin_ppc64 = 77, + ++ isc_info_db_impl_linux_s390 = 78, ++ isc_info_db_impl_linux_s390x = 79, ++ + isc_info_db_impl_last_value // Leave this LAST! + }; + +--- a/src/jrd/pag.cpp ++++ b/src/jrd/pag.cpp +@@ -160,9 +160,11 @@ + static const int CLASS_LINUX_ARM = 33; // LINUX/ARM + static const int CLASS_LINUX_IA64 = 34; // LINUX/IA64 + static const int CLASS_DARWIN_PPC64 = 35; // Darwin/PowerPC64 ++static const int CLASS_LINUX_S390 = 36; // LINUX/s390 ++static const int CLASS_LINUX_S390X = 37; // LINUX/s390x + + static const int CLASS_MAX10 = CLASS_LINUX_AMD64; // This should not be changed, no new ports with ODS10 +-static const int CLASS_MAX = CLASS_DARWIN_PPC64; ++static const int CLASS_MAX = CLASS_LINUX_S390X; + + // ARCHITECTURE COMPATIBILITY CLASSES + +@@ -253,7 +255,9 @@ + archLittleEndian, // CLASS_SOLARIS_AMD64 + archLittleEndian, // CLASS_LINUX_ARM + archLittleEndian, // CLASS_LINUX_IA64 +- archBigEndian // CLASS_DARWIN_PPC64 ++ archBigEndian, // CLASS_DARWIN_PPC64 ++ archBigEndian, // CLASS_LINUX_S390 ++ archBigEndian, // CLASS_LINUX_S390X + }; + + #ifdef sun +@@ -311,6 +315,12 @@ + const SSHORT CLASS = CLASS_LINUX_MIPS; + #elif defined(IA64) + const SSHORT CLASS = CLASS_LINUX_IA64; ++#elif defined(__s390__) ++# if defined(__s390x__) ++const SSHORT CLASS = CLASS_LINUX_S390X; ++# else ++const SSHORT CLASS = CLASS_LINUX_S390; ++# endif + #else + #error no support on other hardware for Linux + #endif +--- a/src/jrd/utl.cpp ++++ b/src/jrd/utl.cpp +@@ -244,7 +244,9 @@ + "Firebird/sun/amd64", /* 74 */ + "Firebird/linux ARM", /* 75 */ + "Firebird/linux IA64", /* 76 */ +- "Firebird/Darwin/PowerPC64" /* 77 */ ++ "Firebird/Darwin/PowerPC64", /* 77 */ ++ "Firebird/Linux s390", /* 78 */ ++ "Firebird/Linux s390x", /* 79 */ + }; + + +--- a/src/remote/xdr.cpp ++++ b/src/remote/xdr.cpp +@@ -45,7 +45,7 @@ + // ASF: Currently, all little-endian are SWAP_DOUBLE and big-endian aren't. + #if defined(i386) || defined(I386) || defined(_M_IX86) || defined(AMD64) || defined(ARM) || defined(MIPSEL) || defined(DARWIN64) || defined(IA64) + #define SWAP_DOUBLE +-#elif defined(sparc) || defined(PowerPC) || defined(PPC) || defined(__ppc__) || defined(HPUX) || defined(MIPSEB) || defined(__ppc64__) ++#elif defined(sparc) || defined(PowerPC) || defined(PPC) || defined(__ppc__) || defined(HPUX) || defined(MIPSEB) || defined(__ppc64__) || defined(__s390__) + #undef SWAP_DOUBLE + #else + #error "Define SWAP_DOUBLE for your platform correctly !" +--- a/builds/posix/prefix.linux_generic ++++ b/builds/posix/prefix.linux_generic +@@ -18,7 +18,7 @@ + # + # 2 Oct 2002, Nickolay Samofatov - Major cleanup + +-COMMON_FLAGS=-DLINUX -pipe -MMD -fPIC -DFB_SEND_FLAGS=MSG_NOSIGNAL ++COMMON_FLAGS=-DLINUX -pipe -MMD -fPIC -DFB_SEND_FLAGS=MSG_NOSIGNAL -fsigned-char + + PROD_FLAGS=-ggdb -O3 -DNDEBUG $(COMMON_FLAGS) + DEV_FLAGS=-ggdb -p -Wall -Wno-switch $(COMMON_FLAGS) diff -Nru firebird2.1-2.1.2.18118-0.ds1/debian/patches/series firebird2.1-2.1.2.18118-0.ds1/debian/patches/series --- firebird2.1-2.1.2.18118-0.ds1/debian/patches/series 2009-07-27 19:07:13.000000000 +0000 +++ firebird2.1-2.1.2.18118-0.ds1/debian/patches/series 2009-07-27 19:07:14.000000000 +0000 @@ -12,3 +12,4 @@ use-libedit.patch no-spurious-linkage.patch cvs_autogen.sh-autoreconf.patch +port-s390.patch
signature.asc
Description: Digital signature