--- src/jrd/common.h.orig Mon Jan 23 20:52:45 2006 +++ src/jrd/common.h Mon Jan 23 20:54:36 2006 @@ -273,8 +273,14 @@ #define UNIX 1 #define IEEE 1 + +#ifdef AMD64 +#define IMPLEMENTATION isc_info_db_impl_freebsd_amd64 /* 67 next higher unique n +umber, See you later */ +#else #define I386 1 #define IMPLEMENTATION isc_info_db_impl_freebsd /* 61 */ +#endif #define QUADFORMAT "ll" #define QUADCONST(n) (n##LL) --- src/jrd/ibase.h.orig Mon Jan 23 20:51:38 2006 +++ src/jrd/ibase.h Mon Jan 23 20:52:08 2006 @@ -1577,6 +1577,8 @@ isc_info_db_impl_linux_sparc = 65, isc_info_db_impl_linux_amd64 = 66, + isc_info_db_impl_freebsd_amd64 = 67, + isc_info_db_impl_last_value /* Leave this LAST! */ }; --- src/jrd/pag.cpp.orig Sat Mar 26 07:07:11 2005 +++ src/jrd/pag.cpp Mon Jan 23 21:27:49 2006 @@ -143,8 +143,9 @@ static const int CLASS_NETBSD_I386 = 22; // NetBSD/i386 static const int CLASS_DARWIN_PPC = 23; // Darwin/PowerPC static const int CLASS_LINUX_AMD64 = 24; // LINUX on AMD64 systems +static const int CLASS_FREEBSD_AMD64 = 25;// FreeBSD/amd64 -static const int CLASS_MAX10 = CLASS_LINUX_AMD64; +static const int CLASS_MAX10 = CLASS_FREEBSD_AMD64; // ARCHITECTURE COMPATIBILITY CLASSES @@ -188,7 +189,8 @@ archIntel86, // CLASS_FREEBSD_I386 archIntel86, // CLASS_NETBSD_I386 archUnknown, // CLASS_DARWIN_PPC - archUnknown // CLASS_LINUX_AMD64 + archUnknown, // CLASS_LINUX_AMD64 + archUnknown // CLASS_FREEBSD_AMD64 }; #ifdef sun @@ -239,7 +241,12 @@ #endif #ifdef FREEBSD +#ifdef i386 #define CLASS CLASS_FREEBSD_I386 +#endif +#ifdef AMD64 +#define CLASS CLASS_FREEBSD_AMD64 +#endif #endif #ifdef NETBSD --- src/jrd/utl.cpp.orig Mon Jan 23 20:56:00 2006 +++ src/jrd/utl.cpp Mon Jan 23 20:56:37 2006 @@ -255,7 +255,8 @@ "Firebird/Darwin/PowerPC", /* 63 */ "Firebird/SINIX-Z", /* 64 */ "Firebird/linux Sparc", /* 65 */ - "Firebird/linux AMD64" /* 66 */ + "Firebird/linux AMD64", /* 66 */ + "Firebird/FreeBSD/amd64" /* 67 */ };