diff options
author | Taichi Haradaguchi <20001722@ymail.ne.jp> | 2023-04-27 00:57:05 +0900 |
---|---|---|
committer | Taichi Haradaguchi <20001722@ymail.ne.jp> | 2024-01-06 02:37:26 +0100 |
commit | 00eae23267bf64e07cf057f828cd85f3c38ac669 (patch) | |
tree | d89ba9b33007534e6f92823efc2f667d004beb5b | |
parent | 25276df12abd9d002f7f899900434617b256f745 (diff) |
tdf#134526 Firebird: upgrade to release 3.0.11
- Removed unneeded patches [1][2][3][4].
- No changes of ODS version.
- Added patch to revert upstream commits to avoid CppunitTest_dbaccess_firebird_test,
CppunitTest_dbaccess_hsql_binary_import, CppunitTest_dbaccess_tdf119625
and CppunitTest_dbaccess_tdf126268 failing when building on Windows.
[1] "extern/cloop: Missing dependencies of compilations on output directories"
<https://github.com/FirebirdSQL/firebird/pull/6948>
[2] "Fix checks for null HANDLE in Windows-only code"
<https://github.com/FirebirdSQL/firebird/pull/301>
[3] "Fix warning on Win64 build"
<https://github.com/FirebirdSQL/firebird/pull/231>
[4] "Mac sandbox" <https://github.com/FirebirdSQL/firebird/pull/308>
Change-Id: I17aa4938e41bfc070317fbb92ccea10f2db4d24d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152016
Tested-by: Jenkins
Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
17 files changed, 290 insertions, 264 deletions
diff --git a/connectivity/inc/pch/precompiled_firebird_sdbc.hxx b/connectivity/inc/pch/precompiled_firebird_sdbc.hxx index bd628cf76a9a..7860e0b4af4e 100644 --- a/connectivity/inc/pch/precompiled_firebird_sdbc.hxx +++ b/connectivity/inc/pch/precompiled_firebird_sdbc.hxx @@ -13,7 +13,7 @@ manual changes will be rewritten by the next run of update_pch.sh (which presumably also fixes all possible problems, so it's usually better to use it). - Generated on 2021-03-08 13:12:28 using: + Generated on 2023-10-28 10:48:29 using: ./bin/update_pch connectivity firebird_sdbc --cutoff=2 --exclude:system --exclude:module --exclude:local If after updating build fails, use the following command to locate conflicting headers: @@ -30,22 +30,24 @@ #endif // PCH_LEVEL >= 1 #if PCH_LEVEL >= 2 #include <osl/diagnose.h> -#include <osl/file.h> #include <osl/file.hxx> #include <osl/mutex.hxx> #include <osl/process.h> #include <osl/thread.h> -#include <osl/time.h> #include <rtl/alloc.h> #include <rtl/bootstrap.hxx> +#include <rtl/character.hxx> +#include <rtl/math.h> #include <rtl/strbuf.hxx> #include <rtl/ustrbuf.hxx> +#include <rtl/ustring.h> #include <rtl/ustring.hxx> #include <sal/log.hxx> #include <sal/types.h> #endif // PCH_LEVEL >= 2 #if PCH_LEVEL >= 3 #include <com/sun/star/embed/ElementModes.hpp> +#include <com/sun/star/io/XStream.hpp> #include <com/sun/star/lang/IllegalArgumentException.hpp> #include <com/sun/star/lang/WrappedTargetRuntimeException.hpp> #include <com/sun/star/sdbc/ColumnValue.hpp> @@ -59,10 +61,11 @@ #include <com/sun/star/uno/Reference.hxx> #include <comphelper/comphelperdllapi.h> #include <comphelper/sequence.hxx> +#include <comphelper/servicehelper.hxx> +#include <comphelper/types.hxx> #include <cppuhelper/exc_hlp.hxx> #include <cppuhelper/supportsservice.hxx> #include <resource/sharedresources.hxx> -#include <unotools/localfilehelper.hxx> #endif // PCH_LEVEL >= 3 #if PCH_LEVEL >= 4 #include <TConnection.hxx> diff --git a/download.lst b/download.lst index 568b404f03f3..8921f425cc67 100644 --- a/download.lst +++ b/download.lst @@ -116,8 +116,8 @@ EXPAT_TARBALL := expat-2.5.0.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -FIREBIRD_SHA256SUM := acb85cedafa10ce106b1823fb236b1b3e5d942a5741e8f8435cc8ccfec0afe76 -FIREBIRD_TARBALL := Firebird-3.0.7.33374-0.tar.bz2 +FIREBIRD_SHA256SUM := c716fc1c788ed614050f5469e1ba0ff442c2f1f7b907a2c808a8bac1dc3d6f83 +FIREBIRD_TARBALL := Firebird-3.0.11.33703-0.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/firebird/0001-Fix-checks-for-null-HANDLE-in-Windows-only-code.patch.1 b/external/firebird/0001-Fix-checks-for-null-HANDLE-in-Windows-only-code.patch.1 deleted file mode 100644 index 22cc1e119a32..000000000000 --- a/external/firebird/0001-Fix-checks-for-null-HANDLE-in-Windows-only-code.patch.1 +++ /dev/null @@ -1,41 +0,0 @@ -From f4c0aa3ba070e5c3ce996b33a31323a3a6820f0c Mon Sep 17 00:00:00 2001 -From: Stephan Bergmann <sbergman@redhat.com> -Date: Wed, 2 Dec 2020 10:44:28 +0100 -Subject: Fix checks for null HANDLE in Windows-only code - -clang-cl failed with "error: unordered comparison between pointer and zero -('HANDLE' (aka 'void *') and 'int')" in these two places introduced with -f219283b72ab537c2b5938222708f35227c1ebde "Sub-task CORE-4463: Windows -implementation for CORE-4462 (Make it possible to restore compressed .nbk files -without explicitly decompressing them)" and -c2cfa7824189ed7c3e5a19721effdf97c07dadfd "Prevent child process hung if it -writes too much data to the pipe and overflow the pipe buffer". ---- - src/utilities/nbackup/nbackup.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/utilities/nbackup/nbackup.cpp b/src/utilities/nbackup/nbackup.cpp -index 6598b6e331..4703079d67 100644 ---- a/src/utilities/nbackup/nbackup.cpp -+++ b/src/utilities/nbackup/nbackup.cpp -@@ -385,7 +385,7 @@ FB_SIZE_T NBackup::read_file(FILE_HANDLE &file, void *buffer, FB_SIZE_T bufsize) - #ifdef WIN_NT - // Read child's stderr often to prevent child process hung if it writes - // too much data to the pipe and overflow the pipe buffer. -- const bool checkChild = (childStdErr > 0 && file == backup); -+ const bool checkChild = (childStdErr != 0 && file == backup); - if (checkChild) - print_child_stderr(); - -@@ -790,7 +790,7 @@ void NBackup::close_backup() - return; - #ifdef WIN_NT - CloseHandle(backup); -- if (childId > 0) -+ if (childId != 0) - { - const bool killed = (WaitForSingleObject(childId, 5000) != WAIT_OBJECT_0); - if (killed) --- -2.28.0 - diff --git a/external/firebird/0001-Fix-warning-on-Win64-build-231.patch.1 b/external/firebird/0001-Fix-warning-on-Win64-build-231.patch.1 deleted file mode 100644 index 0e21f9e27925..000000000000 --- a/external/firebird/0001-Fix-warning-on-Win64-build-231.patch.1 +++ /dev/null @@ -1,37 +0,0 @@ -From 60cb8e07b17ad8533d7d13f52435aa11e48f4659 Mon Sep 17 00:00:00 2001 -From: Dimitry Sibiryakov <sd@ibphoenix.com> -Date: Tue, 12 Nov 2019 13:42:49 +0100 -Subject: [PATCH] Fix warning on Win64 build (#231) - ---- - src/common/ThreadStart.cpp | 11 +++++++---- - 1 file changed, 7 insertions(+), 4 deletions(-) - -diff --git a/src/common/ThreadStart.cpp b/src/common/ThreadStart.cpp -index 184c93a32b..758056432f 100644 ---- a/src/common/ThreadStart.cpp -+++ b/src/common/ThreadStart.cpp -@@ -309,13 +309,16 @@ Thread Thread::start(ThreadEntryPoint* routine, void* arg, int priority_arg, Han - * Advanced Windows by Richter pg. # 109. */ - - unsigned thread_id; -- unsigned long real_handle = -- _beginthreadex(NULL, 0, THREAD_ENTRYPOINT, THREAD_ARG, CREATE_SUSPENDED, &thread_id); -- if (!real_handle) -+ HANDLE handle = -+ reinterpret_cast<HANDLE>(_beginthreadex(NULL, 0, THREAD_ENTRYPOINT, THREAD_ARG, CREATE_SUSPENDED, &thread_id)); -+ if (!handle) - { -+ // Though MSDN says that _beginthreadex() returns error in errno, -+ // GetLastError() still works because RTL call no other system -+ // functions after CreateThread() in the case of error. -+ // Watch out if it is ever changed. - Firebird::system_call_failed::raise("_beginthreadex", GetLastError()); - } -- HANDLE handle = reinterpret_cast<HANDLE>(real_handle); - - SetThreadPriority(handle, priority); - --- -2.20.1 - diff --git a/external/firebird/0001-Revert-Backported-fix-for-7122-Invalid-state-of-mapp.patch.1 b/external/firebird/0001-Revert-Backported-fix-for-7122-Invalid-state-of-mapp.patch.1 new file mode 100644 index 000000000000..625ab20ef440 --- /dev/null +++ b/external/firebird/0001-Revert-Backported-fix-for-7122-Invalid-state-of-mapp.patch.1 @@ -0,0 +1,180 @@ +From f1d64f5eb4569fe722f312d84a3c084c2255e03f Mon Sep 17 00:00:00 2001 +From: Taichi Haradaguchi <20001722@ymail.ne.jp> +Date: Wed, 22 Nov 2023 21:34:00 +0900 +Subject: [PATCH] Revert "Backported fix for #7122: Invalid state of mapping + cache after replacement of database" + +This reverts commit 585b2d133a3891b58b7aeb4ddd3ccd124168abf0. +--- + src/include/consts_pub.h | 1 - + src/include/gen/Firebird.pas | 1 - + src/jrd/Mapping.h | 2 +- + src/jrd/jrd.cpp | 14 -------------- + src/jrd/shut.cpp | 7 ------- + src/utilities/nbackup/nbackup.cpp | 14 +------------- + 6 files changed, 2 insertions(+), 37 deletions(-) + +diff --git a/src/include/consts_pub.h b/src/include/consts_pub.h +index 769a3e372b..6107e0975a 100644 +--- a/src/include/consts_pub.h ++++ b/src/include/consts_pub.h +@@ -123,7 +123,6 @@ + #define isc_dpb_nolinger 88 + #define isc_dpb_reset_icu 89 + #define isc_dpb_map_attach 90 +-#define isc_dpb_clear_map 96 + + /**************************************************/ + /* clumplet tags used inside isc_dpb_address_path */ +diff --git a/src/include/gen/Firebird.pas b/src/include/gen/Firebird.pas +index a891103b53..66be146060 100644 +--- a/src/include/gen/Firebird.pas ++++ b/src/include/gen/Firebird.pas +@@ -3233,7 +3233,6 @@ const + isc_dpb_nolinger = byte(88); + isc_dpb_reset_icu = byte(89); + isc_dpb_map_attach = byte(90); +- isc_dpb_clear_map = byte(96); + isc_dpb_address = byte(1); + isc_dpb_addr_protocol = byte(1); + isc_dpb_addr_endpoint = byte(2); +diff --git a/src/jrd/Mapping.h b/src/jrd/Mapping.h +index b5e068d5a0..3ab1c70c92 100644 +--- a/src/jrd/Mapping.h ++++ b/src/jrd/Mapping.h +@@ -44,7 +44,7 @@ bool mapUser(Firebird::string& name, Firebird::string& trusted_role, Firebird::s + void clearMap(const char* dbName); + void shutdownMappingIpc(); + +-class GlobalMappingScan : public VirtualTableScan ++class GlobalMappingScan: public VirtualTableScan + { + public: + GlobalMappingScan(CompilerScratch* csb, const Firebird::string& alias, +diff --git a/src/jrd/jrd.cpp b/src/jrd/jrd.cpp +index 43be48c5a6..4200780aa6 100644 +--- a/src/jrd/jrd.cpp ++++ b/src/jrd/jrd.cpp +@@ -958,7 +958,6 @@ public: + bool dpb_reset_icu; + bool dpb_map_attach; + ULONG dpb_remote_flags; +- bool dpb_clear_map; + + // here begin compound objects + // for constructor to work properly dpb_user_name +@@ -1473,12 +1472,6 @@ JAttachment* JProvider::internalAttach(CheckStatusWrapper* user_status, const ch + if (ISC_check_if_remote(expanded_name, true)) + ERR_post(Arg::Gds(isc_unavailable)); + +- // Clear old mapping cache data on request. +- // Unfortunately have to do it w/o access rights check - to check access rights engine +- // needs correct mapping which sometimes can't be guaranteed before cleaning cache. +- if (options.dpb_clear_map) +- clearMap(expanded_name.c_str()); +- + // Check for correct credentials supplied + if (existingId) + userId = *existingId; +@@ -2726,9 +2719,6 @@ JAttachment* JProvider::createDatabase(CheckStatusWrapper* user_status, const ch + + dbb->dbb_tip_cache = FB_NEW_POOL(*dbb->dbb_permanent) TipCache(dbb); + +- // Clear old mapping cache data (if present) +- clearMap(dbb->dbb_filename.c_str()); +- + // Initialize backup difference subsystem. This must be done before WAL and shadowing + // is enabled because nbackup it is a lower level subsystem + dbb->dbb_backup_manager = FB_NEW_POOL(*dbb->dbb_permanent) BackupManager(tdbb, +@@ -6043,10 +6033,6 @@ void DatabaseOptions::get(const UCHAR* dpb, USHORT dpb_length, bool& invalid_cli + getString(rdr, dpb_config); + break; + +- case isc_dpb_clear_map: +- dpb_clear_map = rdr.getBoolean(); +- break; +- + default: + break; + } +diff --git a/src/jrd/shut.cpp b/src/jrd/shut.cpp +index acfd5e136d..9783e2cab3 100644 +--- a/src/jrd/shut.cpp ++++ b/src/jrd/shut.cpp +@@ -26,7 +26,6 @@ + #include "../jrd/scl.h" + #include "../jrd/nbak.h" + #include "../jrd/ods.h" +-#include "../jrd/Mapping.h" + #include "../jrd/cch_proto.h" + #include "../jrd/cmp_proto.h" + #include "../jrd/err_proto.h" +@@ -223,9 +222,6 @@ void SHUT_database(thread_db* tdbb, SSHORT flag, SSHORT delay, Sync* guard) + check_backup_state(tdbb); + } + +- // Clear old mapping cache data (if present) +- clearMap(dbb->dbb_filename.c_str()); +- + attachment->att_flags |= ATT_shutdown_manager; + + // Database is being shutdown. First notification gives shutdown type and delay in seconds. +@@ -409,9 +405,6 @@ void SHUT_online(thread_db* tdbb, SSHORT flag, Sync* guard) + check_backup_state(tdbb); + } + +- // Clear old mapping cache data (if present) +- clearMap(dbb->dbb_filename.c_str()); +- + // Reset shutdown flag on database header page + + WIN window(HEADER_PAGE_NUMBER); +diff --git a/src/utilities/nbackup/nbackup.cpp b/src/utilities/nbackup/nbackup.cpp +index e5384bf67a..4703079d67 100644 +--- a/src/utilities/nbackup/nbackup.cpp ++++ b/src/utilities/nbackup/nbackup.cpp +@@ -281,7 +281,7 @@ public: + username(_username), role(_role), password(_password), + run_db_triggers(_run_db_triggers), direct_io(_direct_io), + dbase(0), backup(0), decompress(_deco), childId(0), db_size_pages(0), +- m_odsNumber(0), m_silent(false), m_printed(false), m_flash_map(false) ++ m_odsNumber(0), m_silent(false), m_printed(false) + { + // Recognition of local prefix allows to work with + // database using TCP/IP loopback while reading file locally. +@@ -347,7 +347,6 @@ private: + USHORT m_odsNumber; + bool m_silent; // are we already handling an exception? + bool m_printed; // pr_error() was called to print status vector +- bool m_flash_map; // clear mapping cache on attach + + // IO functions + FB_SIZE_T read_file(FILE_HANDLE &file, void *buffer, FB_SIZE_T bufsize); +@@ -954,9 +953,6 @@ void NBackup::attach_database() + if (!run_db_triggers) + dpb.insertByte(isc_dpb_no_db_triggers, 1); + +- if (m_flash_map) +- dpb.insertByte(isc_dpb_clear_map, 1); +- + if (m_silent) + { + ISC_STATUS_ARRAY temp; +@@ -1578,14 +1574,6 @@ void NBackup::restore_database(const BackupFiles& files) + { + close_database(); + fixup_database(); +- +- m_silent = true; +- m_flash_map = true; +- run_db_triggers = false; +- +- attach_database(); +- detach_database(); +- + delete[] page_buffer; + return; + } +-- +2.42.1 + diff --git a/external/firebird/0001-extern-cloop-Missing-dependencies-of-compilations-on.patch.1 b/external/firebird/0001-extern-cloop-Missing-dependencies-of-compilations-on.patch.1 deleted file mode 100644 index a59e70e06abc..000000000000 --- a/external/firebird/0001-extern-cloop-Missing-dependencies-of-compilations-on.patch.1 +++ /dev/null @@ -1,41 +0,0 @@ -From 8305b41bb262b6e249f2551639fa88392e152287 Mon Sep 17 00:00:00 2001 -From: Stephan Bergmann <sbergman@redhat.com> -Date: Tue, 7 Sep 2021 08:47:32 +0200 -Subject: [PATCH] extern/cloop: Missing dependencies of compilations on output - directories - -When building Firebird 3.0.7 as part of LibreOffice, we noticed occasional build -failures like <https://ci.libreoffice.org/job/gerrit_linux_clang_dbgutil/96392/> - -> error: unable to open output file '/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/firebird/temp/Debug/cloop/release/tests/test1/CTest.o': 'No such file or directory' -> 1 error generated. -> Makefile:72: recipe for target '/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/firebird/temp/Debug/cloop/release/tests/test1/CTest.o' failed - -and while target "all" depends on target "mkdirs" (which would create all those -directories) in extern/cloop/Makefile, there is no order among the dependencies -of "all", so no guarantee that the directories are already created when the -compilation recipes are executed. ---- - extern/cloop/Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/extern/cloop/Makefile b/extern/cloop/Makefile -index 3fca0c7356..c5a2b52628 100644 ---- a/extern/cloop/Makefile -+++ b/extern/cloop/Makefile -@@ -54,10 +54,10 @@ vpath %.c $(SRC_DIRS) - vpath %.cpp $(SRC_DIRS) - - define compile --$1/%.o: %.c -+$1/%.o: %.c | $1 - $(CC) -c $$(C_FLAGS) $$< -o $$@ - --$1/%.o: %.cpp -+$1/%.o: %.cpp | $1 - $(CXX) -c $$(CXX_FLAGS) $$< -o $$@ - endef - --- -2.31.1 - diff --git a/external/firebird/ExternalPackage_firebird.mk b/external/firebird/ExternalPackage_firebird.mk index 2416c13d61e6..895f3d344f06 100644 --- a/external/firebird/ExternalPackage_firebird.mk +++ b/external/firebird/ExternalPackage_firebird.mk @@ -15,10 +15,10 @@ ifeq ($(OS),WNT) $(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/ifbclient.dll,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/bin/ifbclient.dll)) $(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/Engine12.dll,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/plugins/Engine12.dll)) else ifeq ($(OS),MACOSX) -$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbclient.dylib.3.0.7,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib/libfbclient.dylib.3.0.7)) +$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbclient.dylib.3.0.11,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib/libfbclient.dylib.3.0.11)) $(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libEngine12.dylib,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/plugins/libEngine12.dylib)) else ifeq ($(DISABLE_DYNLOADING),) -$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbclient.so.2,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib/libfbclient.so.3.0.7)) +$(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libfbclient.so.2,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib/libfbclient.so.3.0.11)) $(eval $(call gb_ExternalPackage_add_file,firebird,$(LIBO_LIB_FOLDER)/libEngine12.so,gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/plugins/libEngine12.so)) endif diff --git a/external/firebird/ExternalProject_firebird.mk b/external/firebird/ExternalProject_firebird.mk index 29a71763600f..5b39fd82b1e3 100644 --- a/external/firebird/ExternalProject_firebird.mk +++ b/external/firebird/ExternalProject_firebird.mk @@ -23,7 +23,7 @@ $(eval $(call gb_ExternalProject_register_targets,firebird,\ )) firebird_BUILDDIR = $(EXTERNAL_WORKDIR)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird -firebird_VERSION := 3.0.7 +firebird_VERSION := 3.0.11 $(call gb_ExternalProject_get_state_target,firebird,build): $(call gb_Trace_StartRange,firebird,EXTERNAL) diff --git a/external/firebird/UnpackedTarball_firebird.mk b/external/firebird/UnpackedTarball_firebird.mk index 1f76870b8d18..c7d9a881550c 100644 --- a/external/firebird/UnpackedTarball_firebird.mk +++ b/external/firebird/UnpackedTarball_firebird.mk @@ -21,15 +21,12 @@ $(eval $(call gb_UnpackedTarball_update_autoconf_configs,firebird,\ # * external/firebird/0001-Make-comparison-operator-member-functions-const.patch.1 is upstream at # <https://github.com/FirebirdSQL/firebird/pull/227> "Make comparison operator member functions # const"; -# * external/firebird/0001-Fix-checks-for-null-HANDLE-in-Windows-only-code.patch.1 is upstream at -# <https://github.com/FirebirdSQL/firebird/pull/301> "Fix checks for null HANDLE in Windows-only -# code", # * external/firebird/0001-extern-cloop-Missing-dependency-of-BIN_DIR-cloop-on-.patch.1 is upstream # at <https://github.com/FirebirdSQL/firebird/pull/302> "extern/cloop: Missing dependency of # $(BIN_DIR)/cloop on $(BIN_DIR)", -# * external/firebird/0001-extern-cloop-Missing-dependencies-of-compilations-on.patch.1 is upstream -# at <https://github.com/FirebirdSQL/firebird/pull/6948> "extern/cloop: Missing dependencies of -# compilations on output directories": +# * external/firebird/0001-Revert-Backported-fix-for-7122-Invalid-state-of-mapp.patch.1 is a revert +# of <https://github.com/FirebirdSQL/firebird/commit/585b2d133a3891b58b7aeb4ddd3ccd124168abf0> +# "Backported fix for #7122: Invalid state of mapping cache after replacement of database": $(eval $(call gb_UnpackedTarball_add_patches,firebird,\ external/firebird/firebird.disable-ib-util-not-found.patch.1 \ external/firebird/firebird-Engine12.patch \ @@ -40,17 +37,15 @@ $(eval $(call gb_UnpackedTarball_add_patches,firebird,\ external/firebird/asan.patch \ external/firebird/firebird-tdf125284.patch.1 \ external/firebird/0001-Make-comparison-operator-member-functions-const.patch.1 \ - external/firebird/0001-Fix-warning-on-Win64-build-231.patch.1 \ external/firebird/macos-arm64.patch.0 \ external/firebird/firebird-btyacc-add-explicit-rule.patch \ external/firebird/firebird-307.patch.1 \ - external/firebird/0001-Fix-checks-for-null-HANDLE-in-Windows-only-code.patch.1 \ external/firebird/0001-extern-cloop-Missing-dependency-of-BIN_DIR-cloop-on-.patch.1 \ external/firebird/msvc.patch \ external/firebird/wnt-per-process-trace-storage.patch.1 \ - external/firebird/0001-extern-cloop-Missing-dependencies-of-compilations-on.patch.1 \ external/firebird/configure-c99.patch \ external/firebird/Wincompatible-function-pointer-types.patch \ + external/firebird/0001-Revert-Backported-fix-for-7122-Invalid-state-of-mapp.patch.1 \ )) ifeq ($(OS),WNT) @@ -68,12 +63,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,firebird,\ )) endif -ifeq ($(ENABLE_MACOSX_SANDBOX),TRUE) -$(eval $(call gb_UnpackedTarball_add_patches,firebird,\ - external/firebird/firebird-macosx-sandbox.patch.1 \ -)) -endif - ifneq ($(filter -fsanitize=%,$(CC)),) $(eval $(call gb_UnpackedTarball_add_patches,firebird, \ external/firebird/sanitizer.patch \ diff --git a/external/firebird/asan.patch b/external/firebird/asan.patch index 2564c54d46ea..30d430466cfb 100644 --- a/external/firebird/asan.patch +++ b/external/firebird/asan.patch @@ -1,6 +1,6 @@ --- builds/posix/Makefile.in +++ builds/posix/Makefile.in -@@ -323,8 +323,8 @@ +@@ -364,8 +364,8 @@ metadata.fdb: $(RUN_ISQL) $(SRC_ROOT)/dbs/metadata.sql -$(RM) $@ @@ -11,16 +11,16 @@ $(CHMOD) 0444 $@ $(HELP_FDB): help.fdb -@@ -333,7 +333,7 @@ +@@ -374,7 +374,7 @@ $(CHMOD) 0444 $@ help.fdb: $(BLD_ROOT)/misc/help.gbak -- $(RUN_GBAK) -MODE read_only -R $< $@ -+ $(LIBO_TUNNEL_LIBRARY_PATH) $(RUN_GBAK) -MODE read_only -R $< $@ +- $(RUN_GBAK) -MODE read_only -replace $< $@ ++ $(LIBO_TUNNEL_LIBRARY_PATH) $(RUN_GBAK) -MODE read_only -replace $< $@ $(CHMOD) 0444 $@ $(SECURITY_FDB): security.fdb -@@ -343,18 +343,18 @@ +@@ -384,18 +384,18 @@ security.fdb: $(SRC_ROOT)/dbs/security.sql -$(RM) $@ -$(RM) $(SECURITY_TMP) @@ -46,7 +46,7 @@ $(TOUCH) $@ -@@ -560,7 +560,7 @@ +@@ -603,7 +603,7 @@ message_file: $(FIREBIRD_MSG) $(FIREBIRD_MSG): $(BUILD_FILE) msg.timestamp diff --git a/external/firebird/configure-c99.patch b/external/firebird/configure-c99.patch index a62a63fb024e..3b5569b8c7c1 100644 --- a/external/firebird/configure-c99.patch +++ b/external/firebird/configure-c99.patch @@ -1,6 +1,6 @@ --- configure +++ configure -@@ -20518,8 +20518,9 @@ +@@ -20687,8 +20687,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -9,9 +9,9 @@ - main () { + int main () { sem_t s; - exit(sem_init(&s,0,0)); + return sem_init(&s,0,0); } -@@ -21263,8 +21264,9 @@ +@@ -21432,8 +21433,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -19,10 +19,10 @@ #include <unistd.h> - main () { + int main () { - exit(!(sizeof(off_t) == 8)); + return !(sizeof(off_t) == 8); } _ACEOF -@@ -21478,8 +21480,9 @@ +@@ -21647,8 +21649,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -33,7 +33,7 @@ struct s { char a; union { long long x; sem_t y; } b; -@@ -21514,7 +21517,8 @@ +@@ -21683,7 +21686,8 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ diff --git a/external/firebird/firebird-cygwin-msvc-warnings.patch b/external/firebird/firebird-cygwin-msvc-warnings.patch index 942522439bac..8665b4d8d523 100644 --- a/external/firebird/firebird-cygwin-msvc-warnings.patch +++ b/external/firebird/firebird-cygwin-msvc-warnings.patch @@ -47,9 +47,9 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults # Clear out dependancies files created by the gcc compiler # since when .o and other files are deleted the dependant diff -ur builds/posix/make.rules builds/posix/make.rules ---- builds/posix/make.rules 2016-07-07 13:56:13.036235166 +0200 -+++ builds/posix/make.rules 2016-07-07 14:31:16.116291485 +0200 -@@ -92,21 +92,21 @@ +--- builds/posix/make.rules 2023-11-11 16:29:34.391837300 +0900 ++++ builds/posix/make.rules 2023-11-11 17:08:33.694764600 +0900 +@@ -85,24 +85,24 @@ $(LIBO_TUNNEL_LIBRARY_PATH) $(GPRE_CURRENT) $(GPRE_FLAGS) $(firstword $<) $@ @@ -64,6 +64,10 @@ diff -ur builds/posix/make.rules builds/posix/make.rules +$(OBJ)/%.$(OBJ_EXT): $(SRC_ROOT)/%.c $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ +-$(OBJ)/%.o: $(SRC_ROOT)/%.m ++$(OBJ)/%.$(OBJ_EXT): $(SRC_ROOT)/%.m + $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ + -$(OBJ)/%.o: $(OBJ)/%.cpp +$(OBJ)/%.$(OBJ_EXT): $(OBJ)/%.cpp $(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@ @@ -77,15 +81,15 @@ diff -ur builds/posix/make.rules builds/posix/make.rules $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ .SUFFIXES: .epp .e ---- builds/posix/make.shared.variables.orig 2020-11-12 19:36:29.773409900 +0100 -+++ builds/posix/make.shared.variables 2020-11-12 19:37:14.976503300 +0100 +--- builds/posix/make.shared.variables.orig 2023-08-03 22:46:32.000000000 +0900 ++++ builds/posix/make.shared.variables 2023-11-11 17:11:03.453261500 +0900 @@ -1,5 +1,5 @@ # Helper functions --doObjects= $(patsubst %.y,%.o,$(patsubst %.epp,%.o,$(patsubst %.c,%.o,$(1:.cpp=.o)))) -+doObjects= $(patsubst %.y,%.$(OBJ_EXT),$(patsubst %.epp,%.$(OBJ_EXT),$(patsubst %.c,%.$(OBJ_EXT),$(1:.cpp=.$(OBJ_EXT))))) +-doObjects= $(patsubst %.m,%.o,$(patsubst %.y,%.o,$(patsubst %.epp,%.o,$(patsubst %.c,%.o,$(1:.cpp=.o))))) ++doObjects= $(patsubst %.m,%.$(OBJ_EXT),$(patsubst %.y,%.$(OBJ_EXT),$(patsubst %.epp,%.$(OBJ_EXT),$(patsubst %.c,%.$(OBJ_EXT),$(1:.cpp=.$(OBJ_EXT)))))) makeObjects= $(addprefix $(OBJ)/$(patsubst ../%,%,$(1))/,$(call doObjects,$2)) dirFiles= $(notdir $(wildcard ../src/$(1)/*.cpp)) $(notdir $(wildcard ../src/$(1)/*.c)) \ - $(notdir $(wildcard ../src/$(1)/*.epp)) $(notdir $(wildcard ../src/$(1)/*.y)) + $(notdir $(wildcard ../src/$(1)/*.epp)) $(notdir $(wildcard ../src/$(1)/*.y)) \ --- src/include/gen/autoconfig.h.in.orig 2020-11-12 20:52:49.835722200 +0100 +++ src/include/gen/autoconfig.h.in 2020-11-12 20:53:18.148311100 +0100 @@ -773,7 +773,9 @@ @@ -163,8 +167,8 @@ diff -ur builds/posix/make.rules builds/posix/make.rules +symtab.obj: defs.h +verbose.obj: defs.h +warshall.obj: defs.h ---- extern/cloop/Makefile.orig 2020-11-13 10:59:53.282923700 +0100 -+++ extern/cloop/Makefile 2020-11-13 11:00:24.267079900 +0100 +--- extern/cloop/Makefile.orig 2023-11-11 15:59:43.477031600 +0900 ++++ extern/cloop/Makefile 2023-11-11 17:22:56.976163500 +0900 @@ -24,8 +24,8 @@ SRCS_C := $(foreach sdir,$(SRC_DIRS),$(wildcard $(sdir)/*.c)) SRCS_CPP := $(foreach sdir,$(SRC_DIRS),$(wildcard $(sdir)/*.cpp)) @@ -189,7 +193,7 @@ diff -ur builds/posix/make.rules builds/posix/make.rules $(CXX) -c $$(CXX_FLAGS) $$< -o $$@ endef -@@ -75,11 +75,11 @@ +@@ -79,11 +79,11 @@ -include $(addsuffix .d,$(basename $(OBJS_CPP))) $(BIN_DIR)/cloop$(EXE_EXT): \ @@ -206,7 +210,7 @@ diff -ur builds/posix/make.rules builds/posix/make.rules | $(BIN_DIR) $(LD) $^ -o $@ -@@ -105,24 +105,24 @@ +@@ -110,24 +110,24 @@ $(SRC_DIR)/tests/test1/CppTest.cpp: $(SRC_DIR)/tests/test1/CalcCppApi.h $(BIN_DIR)/test1-c$(SHRLIB_EXT): \ @@ -250,9 +254,9 @@ diff -ur builds/posix/make.rules builds/posix/make.rules #ifdef _MSC_VER // don't know if this is useful for MinGW #define NOATOM diff -ur builds/posix/Makefile.in.examples builds/posix/Makefile.in.examples ---- builds/posix/Makefile.in.examples 2016-07-07 13:56:13.048235166 +0200 -+++ builds/posix/Makefile.in.examples 2016-07-07 14:37:36.904301682 +0200 -@@ -65,9 +65,9 @@ +--- builds/posix/Makefile.in.examples 2023-08-03 22:46:32.000000000 +0900 ++++ builds/posix/Makefile.in.examples 2023-11-11 17:50:22.666278400 +0900 +@@ -67,9 +67,9 @@ EXAMPLES_SRC= $(ROOT)/examples @@ -264,7 +268,7 @@ diff -ur builds/posix/Makefile.in.examples builds/posix/Makefile.in.examples INPUT_Files = empddl.sql empdml.sql indexoff.sql indexon.sql \ job.inp lang.inp proj.inp qtr.inp -@@ -172,3 +175,6 @@ +@@ -173,3 +173,6 @@ $(EXAMPLES_DEST)/%.h: $(EXAMPLES_SRC)/common/%.h $(CP) $^ $@ diff --git a/external/firebird/firebird-cygwin-msvc.patch b/external/firebird/firebird-cygwin-msvc.patch index c59c614ba5da..9e7349073a47 100644 --- a/external/firebird/firebird-cygwin-msvc.patch +++ b/external/firebird/firebird-cygwin-msvc.patch @@ -16,7 +16,7 @@ +++ src/misc/writeBuildNum.sh 2016-07-13 11:31:18.132820200 +0200 @@ -95,9 +95,9 @@ createMakeVersion() { - + OdsH="${Root}/src/jrd/ods.h" -Mini="/tmp/miniods.h" -TestCpp="/tmp/test.cpp" @@ -24,12 +24,12 @@ +Mini=$(cygpath -m "/tmp/miniods.h") +TestCpp=$(cygpath -m "/tmp/test.cpp") +AOut=$(cygpath -m "/tmp/a.out") - + grep ODS_VERSION $OdsH | grep -v ENCODE_ODS >$Mini - ---- configure 2016-07-07 15:57:04.538983200 +0200 -+++ configure 2016-07-13 11:31:18.132820200 +0200 -@@ -21490,13 +21490,12 @@ + +--- configure 2023-11-11 02:44:14.576802800 +0900 ++++ configure 2023-11-11 02:59:09.005211200 +0900 +@@ -21650,11 +21650,10 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <stdlib.h> @@ -40,10 +40,8 @@ - union { long long x; sem_t y; } b; + long long b; }; - exit((int)&((struct s*)1024)->b - 1024); + return (int)&((struct s*)1024)->b - 1024; } - _ACEOF - if ac_fn_c_try_run "$LINENO"; then : --- builds/make.new/config/config.h.in 2016-07-07 15:55:55.693112800 +0200 +++ builds/make.new/config/config.h.in 2016-07-08 13:38:49.994986400 +0200 @@ -211,7 +211,7 @@ @@ -122,8 +120,8 @@ /***************************************************** diff -ur builds/posix/make.defaults builds/posix/make.defaults ---- builds/posix/make.defaults 2016-07-07 13:56:13.036235166 +0200 -+++ builds/posix/make.defaults 2016-07-07 14:29:52.368289242 +0200 +--- builds/posix/make.defaults 2023-11-11 14:37:21.822343900 +0900 ++++ builds/posix/make.defaults 2023-11-11 15:13:06.175152700 +0900 @@ -56,7 +56,7 @@ else FIREBIRD=$(FB_BUILD) @@ -155,7 +153,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults SHRLIB_FOREIGN_EXT= $(SHRLIB_EXT) #_____________________________________________________________________________ -@@ -201,9 +202,8 @@ +@@ -201,9 +201,8 @@ # Search path for libraries @@ -166,7 +164,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults #_____________________________________________________________________________ -@@ -217,9 +217,9 @@ +@@ -217,9 +216,9 @@ # #LibraryFileName=libfbclient @@ -179,7 +177,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults LibraryBaseName=$(LibraryFileName).${SHRLIB_EXT} LIBFIREBIRD_FULLNAME = $(LIB)/$(LibraryFullName) -@@ -228,7 +228,7 @@ +@@ -228,7 +227,7 @@ # The firebird engine library name @@ -188,7 +186,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults EngineSoName=$(EngineFileName).${SHRLIB_EXT} ENGINE_SONAME = $(PLUGINS)/$(EngineSoName) -@@ -242,7 +242,7 @@ +@@ -242,7 +241,7 @@ ifeq ($(STD_EDITLINE), true) LIBEDITLINE := -l$(READLINE) else @@ -197,16 +195,16 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults endif endif -@@ -313,7 +313,7 @@ +@@ -313,7 +312,7 @@ LIB_LINK_SONAME= -Wl,-soname,$(1) LIB_LINK_MAPFILE= -Wl,--version-script,$(1) -FIREBIRD_LIBRARY_LINK= -L$(LIB) -lfbclient $(MATHLIB) +FIREBIRD_LIBRARY_LINK= -L$(LIB) -lifbclient $(MATHLIB) - EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(LINK_EMPTY_SYMBOLS) + EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(call LINK_DARWIN_RPATH,..) $(LINK_EMPTY_SYMBOLS) LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) -shared -@@ -355,7 +355,7 @@ +@@ -355,7 +354,7 @@ # Pay attention - we place common library into obj, not lib dir # It's just a set of object files, prepared to be used by ld, not an output library @@ -215,18 +213,18 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults # From utilities CREATE_DB = $(RBIN)/create_db$(EXEC_EXT) ---- builds/posix/Makefile.in 2016-07-07 15:56:06.459221300 +0200 -+++ builds/posix/Makefile.in 2016-07-13 12:44:57.134217200 +0200 +--- builds/posix/Makefile.in 2023-11-11 14:40:14.036728600 +0900 ++++ builds/posix/Makefile.in 2023-11-11 15:27:30.810728700 +0900 @@ -33,7 +33,7 @@ # Alex Peshkoff - created single makefile based on Mark's files # - + -ROOT=$(shell cd ..; pwd) +ROOT=$(shell cygpath -m '$(shell cd ..; pwd)') - + include make.defaults ifeq ($(CROSS_OUT), Y) -@@ -178,7 +178,7 @@ +@@ -183,7 +183,7 @@ .PHONY: cross1 cross2 boot yvalve engine fbintl gpre utilities plugins rest codes ids examples cross_rest preliminaryCheck master_process: @@ -235,16 +233,16 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults $(MAKE) updateBuildNum $(MAKE) export_lists $(MAKE) extern -@@ -214,7 +215,7 @@ +@@ -219,7 +219,7 @@ $(MAKE) CROSS_OUT=Y cross2 - + cross1: - ln -sf $(SRC_ROOT)/include/gen/autoconfig.auto $(SRC_ROOT)/include/gen/autoconfig.h + cp -f $(SRC_ROOT)/include/gen/autoconfig.auto $(SRC_ROOT)/include/gen/autoconfig.h $(MAKE) updateBuildNum $(MAKE) export_lists $(MAKE) extern -@@ -239,7 +240,7 @@ +@@ -244,7 +244,7 @@ $(MAKE) -f Makefile.examples -C $(GEN_ROOT)/examples/ cross2: @@ -253,7 +251,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults $(MAKE) prerequisites $(MAKE) tommath $(MAKE) yvalve -@@ -310,7 +311,7 @@ +@@ -315,7 +315,7 @@ # remote redirector is statically linked in main FB library $(LIBFIREBIRD_FULLNAME): $(YValve_Objects) $(Remote_Client_Objects) $(COMMON_LIB) @@ -262,7 +260,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults #___________________________________________________________________________ -@@ -320,8 +321,8 @@ +@@ -324,8 +324,8 @@ engine: $(ENGINE_SONAME) @@ -273,7 +271,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults #___________________________________________________________________________ -@@ -330,8 +331,8 @@ +@@ -334,8 +334,8 @@ fbintl: $(LIBFBINTL_SO) @@ -284,7 +282,7 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults #___________________________________________________________________________ -@@ -427,12 +429,13 @@ +@@ -434,12 +434,13 @@ .PHONY: firebird_server fb_lock_print fbguard fbsvcmgr fbtracemgr gbak gfix gsec gsplit gstat isql nbackup @@ -295,13 +293,13 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults firebird_server: $(FB_DAEMON) -$(FB_DAEMON): $(Remote_Server_Objects) $(COMMON_LIB) -- $(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS) $(call LINK_DARWIN_RPATH,..) +- $(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS) +$(FB_DAEMON): $(Remote_Server_Objects) $(Remote_Client_Objects) $(COMMON_LIB) -+ $(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS) $(LIB_GUI) $(call LINK_DARWIN_RPATH,..) ++ $(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS) $(LIB_GUI) fb_lock_print: $(LOCKPRINT) -@@ -633,7 +635,7 @@ +@@ -638,7 +639,7 @@ IBASE_ExtraFiles = include/types_pub.h include/consts_pub.h dsql/sqlda_pub.h common/dsc_pub.h jrd/ibase.h jrd/inf_pub.h jrd/blr.h include/gen/iberror.h SRC_IBASE_ExtraFiles = $(addprefix $(SRC_ROOT)/, $(IBASE_ExtraFiles)) MAKE_HEADER_Src = $(addprefix $(SRC_ROOT)/, misc/makeHeader.cpp) @@ -311,14 +309,18 @@ diff -ur builds/posix/make.defaults builds/posix/make.defaults $(INCLUDE_DEST)/ibase.h: $(SRC_IBASE_ExtraFiles) $(STATICEXE_LINK) -o $(MAKE_HEADER_Bin) $(MAKE_HEADER_Src) diff -ur builds/posix/make.rules builds/posix/make.rules ---- builds/posix/make.rules 2016-07-07 13:56:13.036235166 +0200 -+++ builds/posix/make.rules 2016-07-07 14:31:16.116291485 +0200 -@@ -92,26 +92,23 @@ +--- builds/posix/make.rules 2023-08-03 22:46:32.000000000 +0900 ++++ builds/posix/make.rules 2023-11-11 15:41:57.592482300 +0900 +@@ -92,30 +92,26 @@ $(OBJ)/%.o: $(SRC_ROOT)/%.c $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ - @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) + $(OBJ)/%.o: $(SRC_ROOT)/%.m + $(CC) $(WCFLAGS) -c $(firstword $<) -o $@ +- @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) + $(OBJ)/%.o: $(OBJ)/%.cpp $(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@ - @sed $(INLINE_EDIT_SED) -e "1,2s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@) @@ -373,7 +375,7 @@ diff -ur builds/posix/prefix.mingw builds/posix/prefix.mingw +++ builds/posix/prefix.mingw 2016-07-07 14:50:54.704323046 +0200 @@ -20,8 +20,8 @@ # - + # -Wno-unused-variable is used due to unused gpre generated variables -PROD_FLAGS=-O2 -DMINGW -Wall -Wshadow -Wundef -Wno-long-long -Wno-unused-variable -Wno-sign-compare -Wno-parentheses -Wno-switch -fmessage-length=0 -Dlint -DWIN32_LEAN_AND_MEAN -MMD -mthreads -Wno-non-virtual-dtor -DEV_FLAGS=-ggdb -DMINGW -Wall -Wshadow -Wundef -Wno-long-long -Wno-unused-variable -Wno-sign-compare -Wno-parentheses -Wno-switch -fmessage-length=0 -Dlint -DWIN32_LEAN_AND_MEAN -MMD -mthreads -Wno-non-virtual-dtor @@ -384,7 +386,7 @@ diff -ur builds/posix/prefix.mingw builds/posix/prefix.mingw @@ -29,6 +29,7 @@ LIB_LINK=$(LD) - + LIB_LINK_OPTIONS+=-Wl,--enable-stdcall-fixup +LIB_PLATFORM_RPATH= @@ -393,7 +395,7 @@ diff -ur builds/posix/prefix.mingw builds/posix/prefix.mingw @@ -36,6 +37,9 @@ LIB_LINK_OPTIONS+=-Wl,-s endif - + +LIB_LINK_OPTIONS= +LINK_OPTS= + @@ -402,13 +404,13 @@ diff -ur builds/posix/prefix.mingw builds/posix/prefix.mingw LIB_GUI:= -mwindows -lcomctl32 -lgdi32 @@ -55,7 +59,9 @@ ClientLibrarySoName := $(ClientLibraryName) - + # Looks like MinGW 3 does not support version scripts but support def-files -LINK_FIREBIRD_SYMBOLS = $(BLD_ROOT)/win32/defs/fbclient_s.def $(BLD_ROOT)/win32/defs/fbclient.def +LINK_FIREBIRD_SYMBOLS = /def:$(BLD_ROOT)/win32/defs/fbclient_s.def /def:$(BLD_ROOT)/win32/defs/firebird.def +LINK_PLUGIN_SYMBOLS = /def:$(BLD_ROOT)/win32/defs/plugin.def +LINK_IBUTIL_SYMBOLS = /def:$(BLD_ROOT)/win32/defs/ib_util.def - + # This is required for newly built executable to find newly built shared # libraries because on Win32 there is no such thing as LD_LIBRARY_PATH --- builds/posix/make.shared.variables 2016-07-22 17:07:46.650672300 +0200 @@ -427,7 +429,7 @@ diff -ur configure configure @@ -3337,6 +3337,14 @@ SHRLIB_EXT=dll ;; - + + *-*-cygwin*) + MAKEFILE_PREFIX=mingw + PLATFORM=win32 @@ -502,8 +504,8 @@ diff -ur extern/btyacc/Makefile extern/btyacc/Makefile #ifdef WIN32 #include <windows.h> #define DLL_EXPORT __declspec(dllexport) ---- extern/cloop/Makefile 2016-07-07 15:56:28.279136300 +0200 -+++ extern/cloop/Makefile 2016-07-13 16:22:38.493479800 +0200 +--- extern/cloop/Makefile 2023-11-11 14:40:41.522517700 +0900 ++++ extern/cloop/Makefile 2023-11-11 15:59:43.477031600 +0900 @@ -11,8 +11,8 @@ SRC_DIR := src BUILD_DIR := build @@ -544,7 +546,7 @@ diff -ur extern/btyacc/Makefile extern/btyacc/Makefile $(OBJ_DIRS) $(BIN_DIR) $(LIB_DIR): @mkdir -p $@ -@@ -74,7 +74,7 @@ +@@ -74,7 +78,7 @@ -include $(addsuffix .d,$(basename $(OBJS_C))) -include $(addsuffix .d,$(basename $(OBJS_CPP))) @@ -553,7 +555,7 @@ diff -ur extern/btyacc/Makefile extern/btyacc/Makefile $(OBJ_DIR)/cloop/Expr.o \ $(OBJ_DIR)/cloop/Generator.o \ $(OBJ_DIR)/cloop/Lexer.o \ -@@ -83,20 +83,20 @@ +@@ -84,20 +88,20 @@ $(LD) $^ -o $@ @@ -582,7 +584,7 @@ diff -ur extern/btyacc/Makefile extern/btyacc/Makefile --uses "SysUtils" \ --interfaceFile $(SRC_DIR)/tests/test1/CalcPascalApi.interface.pas \ --implementationFile $(SRC_DIR)/tests/test1/CalcPascalApi.implementation.pas \ -@@ -108,23 +108,23 @@ +@@ -109,23 +113,23 @@ $(OBJ_DIR)/tests/test1/CalcCApi.o \ $(OBJ_DIR)/tests/test1/CTest.o \ @@ -638,9 +640,9 @@ diff -ur src/misc/makeHeader.cpp src/misc/makeHeader.cpp #include <unistd.h> -//#endif +#endif - - - + + + --- builds/posix/Makefile.in.plugins_examples.orig 2020-11-13 18:07:52.515550600 +0100 +++ builds/posix/Makefile.in.plugins_examples 2020-11-13 18:08:33.218626500 +0100 @@ -28,7 +28,7 @@ diff --git a/external/firebird/firebird-macosx-sandbox.patch.1 b/external/firebird/firebird-macosx-sandbox.patch.1 deleted file mode 100644 index 3bf246c682ba..000000000000 --- a/external/firebird/firebird-macosx-sandbox.patch.1 +++ /dev/null @@ -1,13 +0,0 @@ --*- Mode: Diff -*- - ---- firebird/src/common/isc_s_proto.h -+++ firebird/src/common/isc_s_proto.h -@@ -37,6 +37,8 @@ - // Firebird platform-specific synchronization data structures - - #if defined(DARWIN) -+#define USE_POSIX_SEMAPHORE -+#define USE_SHARED_FUTEX - #define USE_FILELOCKS - #endif - diff --git a/external/firebird/firebird-macosx.patch.1 b/external/firebird/firebird-macosx.patch.1 index 676f2195ad55..c9c41c000c65 100644 --- a/external/firebird/firebird-macosx.patch.1 +++ b/external/firebird/firebird-macosx.patch.1 @@ -20,18 +20,7 @@ - #DYLD_PRINT_ENV=1 #export DYLD_PRINT_ENV - -@@ -31,8 +31,8 @@ - MACOSX_DEPLOYMENT_TARGET=10.9 - export MACOSX_DEPLOYMENT_TARGET --PROD_FLAGS=-DDARWIN -pipe -O2 -MMD -fPIC -fno-common -mmacosx-version-min=10.9 --DEV_FLAGS=-ggdb -DDARWIN -pipe -MMD -fPIC -fno-omit-frame-pointer -fno-common -Wall -fno-optimize-sibling-calls -mmacosx-version-min=10.9 -Wno-non-virtual-dtor -+PROD_FLAGS=-DDARWIN -pipe -O2 -MMD -fPIC -fno-common -+DEV_FLAGS=-ggdb -DDARWIN -pipe -MMD -fPIC -fno-omit-frame-pointer -fno-common -Wall -fno-optimize-sibling-calls -Wno-non-virtual-dtor - CXXFLAGS:=$(CXXFLAGS) -fvisibility-inlines-hidden -fvisibility=hidden -stdlib=libc++ -msse4 - - EXE_LINK_OPTIONS:= --- firebird.org/src/common/unicode_util.cpp 2016-07-07 13:55:55.992234709 +0200 +++ firebird/src/common/unicode_util.cpp 2016-08-10 11:25:46.422331020 +0200 @@ -63,8 +63,8 @@ diff --git a/external/firebird/sanitizer.patch b/external/firebird/sanitizer.patch index 3707b5bf54af..52ff5ddddfc7 100644 --- a/external/firebird/sanitizer.patch +++ b/external/firebird/sanitizer.patch @@ -21,7 +21,7 @@ +_ZTI* --- builds/posix/make.defaults +++ builds/posix/make.defaults -@@ -252,7 +252,7 @@ +@@ -263,7 +263,7 @@ # LINKER OPTIONS # @@ -30,12 +30,12 @@ ifeq ($(TARGET),Debug) UNDEF_FLAGS = $(UNDEF_PLATFORM) endif -@@ -291,7 +291,7 @@ +@@ -315,7 +315,7 @@ LIB_LINK_MAPFILE= -Wl,--version-script,$(1) FIREBIRD_LIBRARY_LINK= -L$(LIB) -lfbclient $(MATHLIB) --EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(LINK_EMPTY_SYMBOLS) -+EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) +-EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(call LINK_DARWIN_RPATH,..) $(LINK_EMPTY_SYMBOLS) ++EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(call LINK_DARWIN_RPATH,..) LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) -shared FB_DAEMON = $(BIN)/firebird$(EXEC_EXT) diff --git a/external/firebird/ubsan.patch b/external/firebird/ubsan.patch index fa296108d3d6..4f55bfc7a54b 100644 --- a/external/firebird/ubsan.patch +++ b/external/firebird/ubsan.patch @@ -1,20 +1,20 @@ --- configure +++ configure -@@ -21506,7 +21468,7 @@ +@@ -21637,7 +21637,7 @@ char a; union { long long x; sem_t y; } b; }; -- exit((int)&((struct s*)0)->b); -+ exit((int)&((struct s*)1024)->b - 1024); +- return (int)&((struct s*)0)->b; ++ return (int)&((struct s*)1024)->b - 1024; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : -@@ -21541,7 +21503,7 @@ +@@ -21672,7 +21672,7 @@ char a; double b; }; -- exit((int)&((struct s*)0)->b); -+ exit((int)&((struct s*)1024)->b - 1024); +- return (int)&((struct s*)0)->b; ++ return (int)&((struct s*)1024)->b - 1024; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : @@ -86,15 +86,6 @@ return *this; } StringType& assign(const_pointer s) ---- src/common/common.h -+++ src/common/common.h -@@ -1002,6 +1002,5 @@ - } - - #undef UCHAR_TYPE --#define UCHAR_TYPE uint16_t - - #endif /* COMMON_COMMON_H */ --- src/common/unicode_util.cpp +++ src/common/unicode_util.cpp @@ -187,7 +187,7 @@ |