Package: firebird4.0 / 4.0.6.3221.ds6-1

Metadata

Package Version Patches format
firebird4.0 4.0.6.3221.ds6-1 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
upstream/std c++ 17.patch | (download)

builds/posix/make.defaults | 2 1 + 1 - 0 !
configure.ac | 2 1 + 1 - 0 !
2 files changed, 2 insertions(+), 2 deletions(-)

 pass -std=c++17 in cxxflags
 Fixes build with libre2-dev 20240501 which requires at least c++-14
 Cherry-picked from the upstream commit which is for Firebird 5
upstream/freebsd_ppc64el.patch | (download)

builds/posix/prefix.freebsd_powerpc64el | 29 29 + 0 - 0 !
configure.ac | 10 10 + 0 - 0 !
src/common/classes/DbImplementation.cpp | 2 1 + 1 - 0 !
src/include/firebird/impl/inf_pub.h | 2 2 + 0 - 0 !
4 files changed, 42 insertions(+), 1 deletion(-)

---
upstream/mips64el.patch | (download)

builds/posix/prefix.linux_mips64el | 27 27 + 0 - 0 !
configure.ac | 9 9 + 0 - 0 !
src/common/classes/DbImplementation.cpp | 28 15 + 13 - 0 !
src/common/common.h | 4 4 + 0 - 0 !
src/include/firebird/impl/inf_pub.h | 2 2 + 0 - 0 !
5 files changed, 57 insertions(+), 13 deletions(-)

---
upstream/freebsd_ppc64.patch | (download)

builds/posix/prefix.freebsd_powerpc64 | 29 29 + 0 - 0 !
configure.ac | 10 10 + 0 - 0 !
src/common/classes/DbImplementation.cpp | 2 1 + 1 - 0 !
src/common/common.h | 4 4 + 0 - 0 !
src/include/firebird/impl/inf_pub.h | 2 2 + 0 - 0 !
5 files changed, 46 insertions(+), 1 deletion(-)

---
upstream/freebsd_ppc.patch | (download)

builds/posix/prefix.freebsd_powerpc | 29 29 + 0 - 0 !
configure.ac | 10 10 + 0 - 0 !
src/common/classes/DbImplementation.cpp | 2 1 + 1 - 0 !
src/common/common.h | 4 4 + 0 - 0 !
src/include/firebird/impl/inf_pub.h | 1 1 + 0 - 0 !
5 files changed, 45 insertions(+), 1 deletion(-)

---
upstream/loongarch.patch | (download)

builds/posix/prefix.linux_loongarch | 28 28 + 0 - 0 !
configure.ac | 12 12 + 0 - 0 !
src/common/classes/DbImplementation.cpp | 28 15 + 13 - 0 !
src/common/common.h | 4 4 + 0 - 0 !
src/jrd/license.h | 4 4 + 0 - 0 !
5 files changed, 63 insertions(+), 13 deletions(-)

---
upstream/thread start semaphore.patch | (download)

src/yvalve/why.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
deb/system libabseil.patch | (download)

builds/posix/Makefile.in | 5 0 + 5 - 0 !
builds/posix/make.defaults | 2 1 + 1 - 0 !
builds/posix/make.rules | 4 0 + 4 - 0 !
3 files changed, 1 insertion(+), 10 deletions(-)

 use system-wide libabseil
 This is only needed on big-endian platforms. It remains to be discovered
 whether the resulting server/client is network-protocol compatible with
 little-endian client/server. This is why the patch is so crude (no
 --with-system-abseil configure switch) and not forwarded upstream.
out/honour buildflags.patch | (download)

builds/posix/Makefile.in | 4 2 + 2 - 0 !
builds/posix/make.defaults | 6 3 + 3 - 0 !
examples/extauth/Makefile | 6 3 + 3 - 0 !
extern/btyacc/Makefile | 8 1 + 7 - 0 !
extern/decNumber/Makefile | 2 1 + 1 - 0 !
5 files changed, 10 insertions(+), 16 deletions(-)

 improved support for build flags
 The first change makes linking makeHeader use the same CPP/CXX/LD flags as the
 rest of the sources.
 The second change stops btyacc/Makefile from ignoring CFLAGS from the
 environment.
 The third change stops overriding CXXFLAGS
 The result is using hardening flags from the environment when compiling and
 linking.
out/no copy from icu.patch | (download)

builds/posix/Makefile.in | 2 1 + 1 - 0 !
src/isql/isql.epp | 28 0 + 28 - 0 !
2 files changed, 1 insertion(+), 29 deletions(-)

 link isql with icu instead of embedding part of it in the source
out/cloop honour build flags.patch | (download)

extern/cloop/Makefile | 14 7 + 7 - 0 !
1 file changed, 7 insertions(+), 7 deletions(-)

 make cloop build honor compiler/linker flags from the environment
out/spelling.patch | (download)

src/msgs/history2.sql | 2 1 + 1 - 0 !
src/remote/client/interface.cpp | 2 1 + 1 - 0 !
2 files changed, 2 insertions(+), 2 deletions(-)

 spelling error (perfrom -> perform)
out/fbserver startup.patch | (download)

src/remote/inet.cpp | 6 6 + 0 - 0 !
src/utilities/guard/guard.cpp | 32 32 + 0 - 0 !
2 files changed, 38 insertions(+)

 fix fbguard to exit to the os only after fbserver is ready
 Exiting right after forking causes a race condition making it possible that
 the service says it is startew, but the fbserver process isn't ready yet to
 serve requests, because it hasn't called listen() yet.
 .
 The patch makes fbserver send SIGUSR1 to the fbguard parent process, which
 waits for SIGUSR1 before it returns the control to the OS.
Bug-Debian: https://bugs.debian.org/859234
honor env.patch | (download)

src/common/utils.cpp | 12 0 + 12 - 0 !
1 file changed, 12 deletions(-)

 allow all directory locations to be overridden by $firebird environment variable
 This is needed because the compile-time settings for DIR_CONF, DIR_MSG etc are
 hardwired into libfbclient and on debian there can be only one libfbclient,
out/cross configure.patch | (download)

configure.ac | 51 22 + 29 - 0 !
1 file changed, 22 insertions(+), 29 deletions(-)

 improve cross buildability

 * Rather than checking $build (the architecture we are building on), we should
   be checking $host. Unfortunately, $host tends to lack the vendor part, so we
   need a tricky sed expression for inserting it. For native builds, $host and
   $build are equal.
 * The check for whether sem_init works only aborts the build in case of
   failure. Since the check cannot be performed during cross building, the only
   sane way is to just assume sem_init to work.
 * Replace a pile of AC_RUN_IFELSE with AC_CHECK_SIZEOF and AC_CHECK_ALIGNOF.
   The latter macros have a slower fallback path for cross compilation that use
   compiler bisection to determine the values.


no binary gbaks.patch | (download)

builds/posix/Makefile.in | 20 3 + 17 - 0 !
1 file changed, 3 insertions(+), 17 deletions(-)

 remove usage of binary .gbak files
#  These can't be in Debian-shipped sources
#
#  help.fbk is removed from Debian sources so we remove mentions of it,
#  together with qli, which needs it
packaged boost.patch | (download)

src/include/firebird/Message.h | 24 12 + 12 - 0 !
1 file changed, 12 insertions(+), 12 deletions(-)

 use system-wide boost headers
deb/no suse.init.patch | (download)

configure.ac | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 remove reference to firebird.init.d.suse.in
 That file is not present in the repackaged source, since it cannot
 be distributed by Debian -- has copyright statement without license.
deb/gen ids.patch | (download)

builds/posix/Makefile.in | 2 1 + 1 - 0 !
builds/posix/make.defaults | 5 5 + 0 - 0 !
configure.ac | 10 10 + 0 - 0 !
3 files changed, 16 insertions(+), 1 deletion(-)

 add configure option to re-generate 'codes' unconditionally
 We want to create all files from their source
out/hppa mod_loader.patch | (download)

src/common/os/posix/mod_loader.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix mod_loader on hppa
 The problem is dlsym returns a function pointer on hppa when passed the name
 of a function symbol.  It points at a function descriptor for the function
 when the plabel bit is set in the pointer.  The descriptor has an entry which
 points at the function after it has been bound.  Otherwise, it points at
 trampoline code to fix up the descriptor.
 .
 In any case, dladdr doesn't do the expected thing when passed a function
 pointer.  It needs the actual address of the function.
 .
 The attached patch fixes the build on hppa-linux.  Another option would be to
 adjust the configure check.
out/hurd maxpathlen.patch | (download)

src/common/common.h | 13 7 + 6 - 0 !
1 file changed, 7 insertions(+), 6 deletions(-)

 move fallback definition of maxpathlen outside the winnt block
 helps the hurd build move a bit further
 .
 Additionally, include common.h in gpre.h to get the MAXPATHLEN define
 .
 The effor to build firebird on hurd is tracked at
 <https://bugs.debian.org/626931>
out/baseline i386.patch | (download)

builds/posix/prefix.linux | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 drop -march=i586 -mtune=i686
 -march=i686 is the default since a decade