From 338441f9517e3cd3b54cd0b7fe5695b7724568da Mon Sep 17 00:00:00 2001 From: Lionel Elie Mamane Date: Fri, 29 Jan 2016 16:30:11 +0100 Subject: Revert "new upstream version Firebird 2.5.5" This reverts commit 8d5bca2a40d1fded921165cfc5637ff763b21510. --- download.lst | 4 +- external/firebird/ExternalPackage_firebird.mk | 4 +- external/firebird/ExternalProject_firebird.mk | 2 +- external/firebird/UnpackedTarball_firebird.mk | 1 + external/firebird/firebird-c++11.patch.1 | 214 +++++++++++++++++++++++++ external/firebird/firebird-c++11replfn.patch.0 | 50 ++++++ 6 files changed, 270 insertions(+), 5 deletions(-) create mode 100644 external/firebird/firebird-c++11replfn.patch.0 diff --git a/download.lst b/download.lst index aedb01ec462f..a3156fcb6543 100644 --- a/download.lst +++ b/download.lst @@ -31,8 +31,8 @@ export ETONYEK_MD5SUM := 77ff46936dcc83670557274e7dd2aa33 export ETONYEK_VERSION_MICRO := 6 export ETONYEK_TARBALL := libetonyek-0.1.$(ETONYEK_VERSION_MICRO).tar.bz2 export EXPAT_TARBALL := dd7dab7a5fea97d2a6a43f511449b7cd-expat-2.1.0.tar.gz -export FIREBIRD_MD5SUM := b0b5293991fcf07347b38431c80be1d4 -export FIREBIRD_TARBALL := Firebird-2.5.5.26952-0.tar.bz2 +export FIREBIRD_MD5SUM := 7a17ec9889424b98baa29e001a054434 +export FIREBIRD_TARBALL := Firebird-2.5.4.26856-0.tar.bz2 # FIREBIRD_MD5SUM := b259c2d1c60a03bd104108405ae990a7 # export FIREBIRD_TARBALL := Firebird-3.0-alpha1-20130302.tar.gz export FONTCONFIG_TARBALL := 77e15a92006ddc2adbb06f840d591c0e-fontconfig-2.8.0.tar.gz diff --git a/external/firebird/ExternalPackage_firebird.mk b/external/firebird/ExternalPackage_firebird.mk index 6e757d8d9744..3b921edfada3 100644 --- a/external/firebird/ExternalPackage_firebird.mk +++ b/external/firebird/ExternalPackage_firebird.mk @@ -14,9 +14,9 @@ $(eval $(call gb_ExternalPackage_use_external_project,firebird,firebird)) ifeq ($(OS)-$(COM),WNT-MSC) $(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/ifbembed.dll,gen/firebird/bin/ifbembed.dll)) else ifeq ($(OS),MACOSX) -$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbembed.dylib,gen/firebird/lib/libfbembed.dylib.2.5.5)) +$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbembed.dylib,gen/firebird/lib/libfbembed.dylib.2.5.4)) else ifeq ($(DISABLE_DYNLOADING),) -$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbembed.so.2.5,gen/firebird/lib/libfbembed.so.2.5.5)) +$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbembed.so.2.5,gen/firebird/lib/libfbembed.so.2.5.4)) endif $(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_SHARE_FOLDER)/firebird/firebird.msg,gen/firebird/firebird.msg)) diff --git a/external/firebird/ExternalProject_firebird.mk b/external/firebird/ExternalProject_firebird.mk index 353786a83a93..8d09a255ba4d 100644 --- a/external/firebird/ExternalProject_firebird.mk +++ b/external/firebird/ExternalProject_firebird.mk @@ -63,6 +63,6 @@ $(call gb_ExternalProject_get_state_target,firebird,build): $(MAKE) CPU=$(PARALLELISM) SHELL=$(SHELL) firebird_embedded \ $(if $(filter MACOSX,$(OS)),&& $(PERL) \ $(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl OOO \ - $(gb_Package_SOURCEDIR_firebird)/gen/firebird/lib/libfbembed.dylib.2.5.5) \ + $(gb_Package_SOURCEDIR_firebird)/gen/firebird/lib/libfbembed.dylib.2.5.4) \ ) # vim: set noet sw=4 ts=4: diff --git a/external/firebird/UnpackedTarball_firebird.mk b/external/firebird/UnpackedTarball_firebird.mk index d04a350a66c2..9701fc2f0108 100644 --- a/external/firebird/UnpackedTarball_firebird.mk +++ b/external/firebird/UnpackedTarball_firebird.mk @@ -16,6 +16,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,firebird,0)) $(eval $(call gb_UnpackedTarball_add_patches,firebird,\ external/firebird/firebird-rpath.patch.0 \ external/firebird/firebird-c++11.patch.1 \ + external/firebird/firebird-c++11replfn.patch.0 \ external/firebird/firebird.disable-ib-util-not-found.patch.1 \ external/firebird/firebird-c++14.patch \ )) diff --git a/external/firebird/firebird-c++11.patch.1 b/external/firebird/firebird-c++11.patch.1 index 8f22616862e0..289057766016 100644 --- a/external/firebird/firebird-c++11.patch.1 +++ b/external/firebird/firebird-c++11.patch.1 @@ -14,6 +14,163 @@ blr_eoc }; static FB_API_HANDLE req_handle; +--- firebird/src/gpre/c_cxx.cpp ++++ firebird/src/gpre/c_cxx.cpp +@@ -876,7 +876,7 @@ + if (based_on->bas_flags & BAS_segment) + { + if (*variable != '*') +- fprintf(gpreGlob.out_file, "[%"SLONGFORMAT"]", length); ++ fprintf(gpreGlob.out_file, "[%" SLONGFORMAT "]", length); + } + else if (field->fld_array_info) + { +@@ -885,7 +885,7 @@ + for (const dim* dimension = field->fld_array_info->ary_dimension; + dimension; dimension = dimension->dim_next) + { +- fprintf(gpreGlob.out_file, " [%"SLONGFORMAT"]", dimension->dim_upper - dimension->dim_lower + 1); ++ fprintf(gpreGlob.out_file, " [%" SLONGFORMAT "]", dimension->dim_upper - dimension->dim_lower + 1); + } + + if (field->fld_array_info->ary_dtype <= dtype_varying && field->fld_length > 1) +@@ -1577,7 +1577,7 @@ + const gpre_dbb* db = (gpre_dbb*) action->act_object; + align(column); + +- fprintf(gpreGlob.out_file, "isc_drop_database (%s, %"SIZEFORMAT", \"%s\", rdb$k_db_type_gds);", ++ fprintf(gpreGlob.out_file, "isc_drop_database (%s, %" SIZEFORMAT ", \"%s\", rdb$k_db_type_gds);", + status_vector(action), + strlen(db->dbb_filename), db->dbb_filename); + set_sqlcode(action, column); +@@ -3471,7 +3471,7 @@ + + static void gen_type( const act* action, int column) + { +- printa(column, "%"SLONGFORMAT, (SLONG)(IPTR)action->act_object); ++ printa(column, "%" SLONGFORMAT, (SLONG)(IPTR)action->act_object); + } + + +@@ -3623,7 +3623,7 @@ + for (const dim* dimension = field->fld_array_info->ary_dimension; dimension; + dimension = dimension->dim_next) + { +- fprintf(gpreGlob.out_file, " [%"SLONGFORMAT"]", dimension->dim_upper - dimension->dim_lower + 1); ++ fprintf(gpreGlob.out_file, " [%" SLONGFORMAT "]", dimension->dim_upper - dimension->dim_lower + 1); + } + + if (field->fld_array_info->ary_dtype <= dtype_varying) +--- firebird/src/gpre/exp.cpp ++++ firebird/src/gpre/exp.cpp +@@ -398,7 +398,7 @@ + if (gpreGlob.token_global.tok_type != tok_number) + CPR_s_error(""); + +- const char format[8] = "%"SQUADFORMAT; ++ const char format[8] = "%" SQUADFORMAT; + SINT64 n; + sscanf(gpreGlob.token_global.tok_string, format, &n); + +@@ -428,7 +428,7 @@ + + const SLONG n = atoi(gpreGlob.token_global.tok_string); + char buffer[32]; +- sprintf(buffer, "%"SLONGFORMAT, n); ++ sprintf(buffer, "%" SLONGFORMAT, n); + if (strcmp(buffer, gpreGlob.token_global.tok_string) != 0) + PAR_error("Numeric value out of range"); + +@@ -478,7 +478,7 @@ + + const ULONG n = atoi(gpreGlob.token_global.tok_string); + char buffer[32]; +- sprintf(buffer, "%"ULONGFORMAT, n); ++ sprintf(buffer, "%" ULONGFORMAT, n); + if (strcmp(buffer, gpreGlob.token_global.tok_string) != 0) + PAR_error("Numeric value out of range"); + +--- firebird/src/gpre/gpre.cpp ++++ firebird/src/gpre/gpre.cpp +@@ -2525,9 +2525,9 @@ + if (line_pending) + { + if (line == 1) +- fprintf(gpreGlob.out_file, "#line %"SLONGFORMAT" \"%s\"\n", line, backlash_fixed_file_name); ++ fprintf(gpreGlob.out_file, "#line %" SLONGFORMAT " \"%s\"\n", line, backlash_fixed_file_name); + else +- fprintf(gpreGlob.out_file, "\n#line %"SLONGFORMAT" \"%s\"", line, backlash_fixed_file_name); ++ fprintf(gpreGlob.out_file, "\n#line %" SLONGFORMAT " \"%s\"", line, backlash_fixed_file_name); + + line_pending = false; + } +@@ -2668,7 +2668,7 @@ + { + if (c == '\n' && line_pending) + { +- fprintf(gpreGlob.out_file, "\n#line %"SLONGFORMAT" \"%s\"", line + 1, backlash_fixed_file_name); ++ fprintf(gpreGlob.out_file, "\n#line %" SLONGFORMAT " \"%s\"", line + 1, backlash_fixed_file_name); + line_pending = false; + } + if (c == EOF) +--- firebird/src/gpre/int_cxx.cpp ++++ firebird/src/gpre/int_cxx.cpp +@@ -290,7 +290,7 @@ + fprintf(gpreGlob.out_file, "if (!%s)", request->req_handle); + align(column); + fprintf(gpreGlob.out_file, +- "%s = CMP_compile2 (tdbb, (UCHAR*) jrd_%"ULONGFORMAT", sizeof(jrd_%"ULONGFORMAT"), true);", ++ "%s = CMP_compile2 (tdbb, (UCHAR*) jrd_%" ULONGFORMAT ", sizeof(jrd_%" ULONGFORMAT "), true);", + request->req_handle, request->req_ident, request->req_ident); + } + +@@ -478,7 +478,7 @@ + { + + fprintf(gpreGlob.out_file, +- "EXE_receive (tdbb, %s, %d, %d, (UCHAR*) &jrd_%"ULONGFORMAT");", ++ "EXE_receive (tdbb, %s, %d, %d, (UCHAR*) &jrd_%" ULONGFORMAT ");", + request->req_handle, port->por_msg_number, port->por_length, + port->por_ident); + } +@@ -495,7 +495,7 @@ + if (!(request->req_flags & REQ_exp_hand)) + fprintf(gpreGlob.out_file, "static void\t*%s;\t// request handle \n", request->req_handle); + +- fprintf(gpreGlob.out_file, "static const UCHAR\tjrd_%"ULONGFORMAT" [%d] =", ++ fprintf(gpreGlob.out_file, "static const UCHAR\tjrd_%" ULONGFORMAT " [%d] =", + request->req_ident, request->req_length); + align(INDENT); + fprintf(gpreGlob.out_file, "{\t// blr string \n"); +@@ -588,7 +588,7 @@ + } + align(column); + +- fprintf(gpreGlob.out_file, "EXE_send (tdbb, %s, %d, %d, (UCHAR*) &jrd_%"ULONGFORMAT");", ++ fprintf(gpreGlob.out_file, "EXE_send (tdbb, %s, %d, %d, (UCHAR*) &jrd_%" ULONGFORMAT ");", + request->req_handle, port->por_msg_number, port->por_length, port->por_ident); + } + +@@ -716,7 +716,7 @@ + fprintf(gpreGlob.out_file, fmtstr, reference->ref_ident, name); + } + align(column); +- fprintf(gpreGlob.out_file, "} jrd_%"ULONGFORMAT";", port->por_ident); ++ fprintf(gpreGlob.out_file, "} jrd_%" ULONGFORMAT ";", port->por_ident); + } + + +--- firebird/src/gpre/pat.cpp ++++ firebird/src/gpre/pat.cpp +@@ -417,7 +417,7 @@ + } + } + else if (long_flag) { +- sprintf(p, "%"SLONGFORMAT, long_value); ++ sprintf(p, "%" SLONGFORMAT , long_value); + } + else { + sprintf(p, "%d", value); --- firebird/src/gpre/sqe.cpp +++ firebird/src/gpre/sqe.cpp @@ -2529,7 +2529,7 @@ @@ -25,3 +182,60 @@ MSC_match(KW_PLUS); +--- firebird/src/common/classes/alloc.cpp ++++ firebird/src/common/classes/alloc.cpp +@@ -1100,7 +1100,7 @@ + if (blk->mbk_flags & MBK_LAST) + break; + } +- fprintf(file, "Blocks %"SIZEFORMAT" min %"SIZEFORMAT" max %"SIZEFORMAT" size %"SIZEFORMAT" \n\n", ++ fprintf(file, "Blocks %" SIZEFORMAT " min %" SIZEFORMAT " max %" SIZEFORMAT " size %" SIZEFORMAT " \n\n", + cnt, min, max, sum); + } + +@@ -1303,7 +1303,7 @@ + FreeMemoryBlock* freeBlock = blockToPtr(blk); + freeBlock->fbk_next_fragment = NULL; + +- BlockInfo temp = {blockLength, freeBlock}; ++ BlockInfo temp = {static_cast(blockLength), freeBlock}; + pool->freeBlocks.add(temp); + if (!pool->parent_redirect) + { +--- firebird/src/common/cvt.cpp ++++ firebird/src/common/cvt.cpp +@@ -144,7 +144,7 @@ + + #ifndef NATIVE_QUAD + #ifndef WORDS_BIGENDIAN +-static const SQUAD quad_min_int = { 0, SLONG_MIN }; ++static const SQUAD quad_min_int = { 0, static_cast(SLONG_MIN) }; + static const SQUAD quad_max_int = { -1, SLONG_MAX }; + #else + static const SQUAD quad_min_int = { SLONG_MIN, 0 }; +--- firebird/src/jrd/perf.cpp ++++ firebird/src/jrd/perf.cpp +@@ -164,20 +164,20 @@ + case 'b': + case 'c': + case 'x': +- sprintf(p, "%"SQUADFORMAT, delta); ++ sprintf(p, "%" SQUADFORMAT , delta); + while (*p) + p++; + break; + + case 'u': + case 's': +- sprintf(p, "%"SQUADFORMAT".%.2"SQUADFORMAT, delta / TICK, (delta % TICK) * 100 / TICK); ++ sprintf(p, "%" SQUADFORMAT ".%.2" SQUADFORMAT , delta / TICK, (delta % TICK) * 100 / TICK); + while (*p) + p++; + break; + + case 'e': +- sprintf(p, "%"SQUADFORMAT".%.2"SQUADFORMAT, delta / 100, delta % 100); ++ sprintf(p, "%" SQUADFORMAT ".%.2" SQUADFORMAT , delta / 100, delta % 100); + while (*p) + p++; + break; diff --git a/external/firebird/firebird-c++11replfn.patch.0 b/external/firebird/firebird-c++11replfn.patch.0 new file mode 100644 index 000000000000..53b1dd0d045c --- /dev/null +++ b/external/firebird/firebird-c++11replfn.patch.0 @@ -0,0 +1,50 @@ +--- src/common/classes/alloc.h ++++ src/common/classes/alloc.h +@@ -489,23 +489,7 @@ + inline static MemoryPool* getDefaultMemoryPool() { return Firebird::MemoryPool::processMemoryPool; } + + // Global versions of operators new and delete +-inline void* operator new(size_t s) THROW_BAD_ALLOC +-{ +- return Firebird::MemoryPool::globalAlloc(s); +-} +-inline void* operator new[](size_t s) THROW_BAD_ALLOC +-{ +- return Firebird::MemoryPool::globalAlloc(s); +-} + +-inline void operator delete(void* mem) throw() +-{ +- Firebird::MemoryPool::globalFree(mem); +-} +-inline void operator delete[](void* mem) throw() +-{ +- Firebird::MemoryPool::globalFree(mem); +-} + + #ifdef DEBUG_GDS_ALLOC + inline void* operator new(size_t s, Firebird::MemoryPool& pool, const char* file, int line) +--- src/common/classes/alloc.cpp ++++ src/common/classes/alloc.cpp +@@ -2080,3 +2080,21 @@ + #endif + + } // namespace Firebird ++ ++void* operator new(size_t s) THROW_BAD_ALLOC ++{ ++ return Firebird::MemoryPool::globalAlloc(s); ++} ++void* operator new[](size_t s) THROW_BAD_ALLOC ++{ ++ return Firebird::MemoryPool::globalAlloc(s); ++} ++ ++void operator delete(void* mem) throw() ++{ ++ Firebird::MemoryPool::globalFree(mem); ++} ++void operator delete[](void* mem) throw() ++{ ++ Firebird::MemoryPool::globalFree(mem); ++} -- cgit