diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..d87f5613ec4234f82f8eaeebc563711f587fdf88 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.xz filter=lfs diff=lfs merge=lfs -text diff --git a/.lfsconfig b/.lfsconfig new file mode 100644 index 0000000000000000000000000000000000000000..2558a3763968a7da60f4a9c538feb827c23807b5 --- /dev/null +++ b/.lfsconfig @@ -0,0 +1,2 @@ +[lfs] + url = https://artlfs.openeuler.openatom.cn/src-openEuler/firebird diff --git a/0001-Port-to-RISC-V-64-bit-riscv64.patch b/0001-Port-to-RISC-V-64-bit-riscv64.patch deleted file mode 100644 index dcf768cd6a4c3392555e36af03aef0f1a3cd9365..0000000000000000000000000000000000000000 --- a/0001-Port-to-RISC-V-64-bit-riscv64.patch +++ /dev/null @@ -1,134 +0,0 @@ -diff -urN Firebird-3.0.3.32900-0.old/builds/posix/prefix.linux_riscv64 Firebird-3.0.3.32900-0/builds/posix/prefix.linux_riscv64 ---- Firebird-3.0.3.32900-0.old/builds/posix/prefix.linux_riscv64 1970-01-01 01:00:00.000000000 +0100 -+++ Firebird-3.0.3.32900-0/builds/posix/prefix.linux_riscv64 2018-03-19 08:56:57.254118156 +0000 -@@ -0,0 +1,26 @@ -+# The contents of this file are subject to the Interbase Public -+# License Version 1.0 (the "License"); you may not use this file -+# except in compliance with the License. You may obtain a copy -+# of the License at http://www.Inprise.com/IPL.html -+# -+# Software distributed under the License is distributed on an -+# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express -+# or implied. See the License for the specific language governing -+# rights and limitations under the License. -+# -+# The Original Code was created by Inprise Corporation -+# and its predecessors. Portions created by Inprise Corporation are -+# Copyright (C) Inprise Corporation. -+# -+# All Rights Reserved. -+# Contributor(s): ______________________________________. -+# Start of file prefix.linux: $(VERSION) $(PLATFORM) -+# -+# Richard W.M. Jones, Red Hat Inc. -+ -+WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable -Wno-invalid-offsetof -Wno-narrowing -Wno-unused-local-typedefs -+ -+PROD_FLAGS=-O3 -DLINUX -DRISCV64 -pipe -p -MMD -fPIC -fsigned-char -fmessage-length=0 -+DEV_FLAGS=-ggdb -DLINUX -DRISCV64 -pipe -p -MMD -fPIC -Wall -fsigned-char -fmessage-length=0 $(WARN_FLAGS) -+ -+CXXFLAGS := $(CXXFLAGS) -std=c++11 -diff -urN Firebird-3.0.3.32900-0.old/configure.ac Firebird-3.0.3.32900-0/configure.ac ---- Firebird-3.0.3.32900-0.old/configure.ac 2018-03-19 08:56:23.222156918 +0000 -+++ Firebird-3.0.3.32900-0/configure.ac 2018-03-19 08:56:57.254118156 +0000 -@@ -251,6 +251,18 @@ - libdir=/usr/lib64 - ;; - -+ riscv64*-*-linux*) -+ MAKEFILE_PREFIX=linux_riscv64 -+ INSTALL_PREFIX=linux -+ PLATFORM=LINUX -+ AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) -+ EDITLINE_FLG=Y -+ SHRLIB_EXT=so -+ STD_EDITLINE=true -+ STD_ICU=true -+ libdir=/usr/lib64 -+ ;; -+ - powerpc64le-*-linux*) - MAKEFILE_PREFIX=linux_powerpc64el - INSTALL_PREFIX=linux -diff -urN Firebird-3.0.3.32900-0.old/src/common/classes/DbImplementation.cpp Firebird-3.0.3.32900-0/src/common/classes/DbImplementation.cpp ---- Firebird-3.0.3.32900-0.old/src/common/classes/DbImplementation.cpp 2018-02-02 11:00:35.000000000 +0000 -+++ Firebird-3.0.3.32900-0/src/common/classes/DbImplementation.cpp 2018-03-19 08:56:57.254118156 +0000 -@@ -49,6 +49,7 @@ - static const UCHAR CpuArm64 = 15; - static const UCHAR CpuPowerPc64el = 16; - static const UCHAR CpuM68k = 17; -+static const UCHAR CpuRiscV64 = 18; - - static const UCHAR OsWindows = 0; - static const UCHAR OsLinux = 1; -@@ -89,7 +90,8 @@ - "Alpha", - "ARM64", - "PowerPC64el", -- "M68k" -+ "M68k", -+ "RiscV64" - }; - - const char* operatingSystem[] = { -@@ -116,22 +118,22 @@ - // This table lists pre-fb3 implementation codes - const UCHAR backwardTable[FB_NELEM(hardware) * FB_NELEM(operatingSystem)] = - { --// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el --/* Windows */ 50, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, --/* Linux */ 60, 66, 65, 69, 86, 71, 72, 75, 76, 79, 78, 80, 81, 82, 83, 84, 85, --/* Darwin */ 70, 73, 0, 63, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, --/* Solaris */ 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, --/* HPUX */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, --/* AIX */ 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, --/* MVS */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, --/* FreeBSD */ 61, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, --/* NetBSD */ 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -+// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el RiscV64 -+/* Windows */ 50, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+/* Linux */ 60, 66, 65, 69, 86, 71, 72, 75, 76, 79, 78, 80, 81, 82, 83, 84, 85, 88, -+/* Darwin */ 70, 73, 0, 63, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+/* Solaris */ 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+/* HPUX */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, -+/* AIX */ 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+/* MVS */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+/* FreeBSD */ 61, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+/* NetBSD */ 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - - const UCHAR backEndianess[FB_NELEM(hardware)] = - { --// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el M68k -- 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1 -+// Intel AMD Sparc PPC PPC64 MIPSEL MIPS ARM IA64 s390 s390x SH SHEB HPPA Alpha ARM64 PowerPC64el M68k RiscV64 -+ 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, - }; - - } // anonymous namespace -diff -urN Firebird-3.0.3.32900-0.old/src/common/common.h Firebird-3.0.3.32900-0/src/common/common.h ---- Firebird-3.0.3.32900-0.old/src/common/common.h 2018-03-19 08:56:23.377156741 +0000 -+++ Firebird-3.0.3.32900-0/src/common/common.h 2018-03-19 08:56:57.255118154 +0000 -@@ -135,6 +135,10 @@ - #define FB_CPU CpuArm64 - #endif /* ARM64 */ - -+#ifdef RISCV64 -+#define FB_CPU CpuRiscV64 -+#endif /* RISCV64 */ -+ - #ifdef sparc - #define FB_CPU CpuUltraSparc - #define RISC_ALIGNMENT -diff -urN Firebird-3.0.3.32900-0.old/src/jrd/inf_pub.h Firebird-3.0.3.32900-0/src/jrd/inf_pub.h ---- Firebird-3.0.3.32900-0.old/src/jrd/inf_pub.h 2018-02-02 11:00:36.000000000 +0000 -+++ Firebird-3.0.3.32900-0/src/jrd/inf_pub.h 2018-03-19 08:56:57.255118154 +0000 -@@ -245,7 +245,7 @@ - isc_info_db_impl_linux_ppc64el = 85, - isc_info_db_impl_linux_ppc64 = 86, - isc_info_db_impl_linux_m68k = 87, -- -+ isc_info_db_impl_linux_riscv64 = 88, - - isc_info_db_impl_last_value // Leave this LAST! - }; diff --git a/0002-Modify-PROD_FLAGS-and-DEV_FLAGS-parameters-for-loongarch64.patch b/0002-Modify-PROD_FLAGS-and-DEV_FLAGS-parameters-for-loongarch64.patch deleted file mode 100644 index 2f41f3bf0484695accd4177b519bffd2c1f74d17..0000000000000000000000000000000000000000 --- a/0002-Modify-PROD_FLAGS-and-DEV_FLAGS-parameters-for-loongarch64.patch +++ /dev/null @@ -1,39 +0,0 @@ -From c28ada9bd130bdb182d2321c40a51dab5bcc15ae Mon Sep 17 00:00:00 2001 -From: Wenlong Zhang -Date: Thu, 25 May 2023 03:19:31 +0000 -Subject: [PATCH] Modify PROD_FLAGS and DEV_FLAGS parameters for loongarch64 - ---- - builds/posix/prefix.linux_loongarch64 | 4 ++-- - src/common/classes/DbImplementation.cpp | 1 + - 2 files changed, 3 insertions(+), 2 deletions(-) - -diff --git a/builds/posix/prefix.linux_loongarch64 b/builds/posix/prefix.linux_loongarch64 -index 70532a6..d3362d7 100644 ---- a/builds/posix/prefix.linux_loongarch64 -+++ b/builds/posix/prefix.linux_loongarch64 -@@ -1,7 +1,7 @@ - WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable -Wno-invalid-offsetof -Wno-narrowing -Wno-unused-local-typedefs - --PROD_FLAGS=-O3 -DLINUX -DRISCV64 -pipe -p -MMD -fPIC -fsigned-char -fmessage-length=0 --DEV_FLAGS=-ggdb -DLINUX -DRISCV64 -pipe -p -MMD -fPIC -Wall -fsigned-char -fmessage-length=0 $(WARN_FLAGS) -+PROD_FLAGS=-O3 -DLINUX -DLOONGARCH64 -pipe -p -MMD -fPIC -fsigned-char -fmessage-length=0 -+DEV_FLAGS=-ggdb -DLINUX -DLOONGARCH64 -pipe -p -MMD -fPIC -Wall -fsigned-char -fmessage-length=0 $(WARN_FLAGS) - - CXXFLAGS := $(CXXFLAGS) -std=c++11 - -diff --git a/src/common/classes/DbImplementation.cpp b/src/common/classes/DbImplementation.cpp -index 23e48a1..0315ea9 100644 ---- a/src/common/classes/DbImplementation.cpp -+++ b/src/common/classes/DbImplementation.cpp -@@ -50,6 +50,7 @@ static const UCHAR CpuArm64 = 15; - static const UCHAR CpuPowerPc64el = 16; - static const UCHAR CpuM68k = 17; - static const UCHAR CpuRiscV64 = 18; -+static const UCHAR CpuLoongArch64 = 19; - - static const UCHAR OsWindows = 0; - static const UCHAR OsLinux = 1; --- -2.33.0 - diff --git a/Firebird-4.0.4.3010-0.tar.xz b/Firebird-4.0.4.3010-0.tar.xz deleted file mode 100644 index 0312558ee63bff8df9dac675aa7500861568453e..0000000000000000000000000000000000000000 Binary files a/Firebird-4.0.4.3010-0.tar.xz and /dev/null differ diff --git a/Firebird-4.0.6.3221-0.tar.xz b/Firebird-4.0.6.3221-0.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..2d76740bf07d1f2480e165eefe169e00ed65b856 --- /dev/null +++ b/Firebird-4.0.6.3221-0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a3fbce0cb24e9cbe6e5fced7abac2a59cbdf6d9345b27c1339b7004dd08164c +size 30990724 diff --git a/autoconf.patch b/autoconf.patch deleted file mode 100644 index e05826292ceffc48c1e51c98d757b65cf11d7116..0000000000000000000000000000000000000000 --- a/autoconf.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 3fe8f6510de79689a26868e244840b24dcb19567 Mon Sep 17 00:00:00 2001 -From: AlexPeshkoff -Date: Wed, 23 Nov 2022 20:30:03 +0300 -Subject: [PATCH] Fixed #7394: autoconf 2.72 support - ---- - configure.ac | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 75af92e862c..800453d25fa 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -696,8 +696,9 @@ if test "$STD_EDITLINE" = "true"; then - AC_CHECK_LIB(readline, readline, [READLINE=readline EDITLINE_FLG=Y], - [STD_EDITLINE=false - if test "$EDITLINE_FLG" = "Y"; then -- AC_MSG_WARN([[[--with-system-editline specified, not found. Using bundled editline]]])]))) -+ AC_MSG_WARN([[[--with-system-editline specified, not found. Using bundled editline]]]) - fi -+ ]))) - fi - XE_RESTORE_ENV() - diff --git a/c++17.patch b/c++17.patch index 76cd4e2519cd1fce6f15bcfa8ef6bbc05b8f15ac..50ba3e3ee87384372f2e1ebdca87735f894f50be 100644 --- a/c++17.patch +++ b/c++17.patch @@ -43,9 +43,9 @@ index d96e89053fa..57bbb006865 100755 @@ -103,7 +103,7 @@ GLOB_OPTIONS:= #____________________________________________________________________________ - # Global c++ flags: firebird needs no RTTI, choose build standard --PLUSPLUS_FLAGS:= -fno-rtti -std=c++11 -+PLUSPLUS_FLAGS:= -fno-rtti -std=c++17 + # Global c++ flags: firebird needs no RTTI, choose build standard, make it build with icu-76.1 +-PLUSPLUS_FLAGS:= -fno-rtti -std=c++11 -DU_SHOW_CPLUSPLUS_API=0 -DU_SHOW_CPLUSPLUS_HEADER_API=0 ++PLUSPLUS_FLAGS:= -fno-rtti -std=c++17 -DU_SHOW_CPLUSPLUS_API=0 -DU_SHOW_CPLUSPLUS_HEADER_API=0 # If this is defined then we use special rules useful for developers only IsDeveloper = @DEVEL_FLG@ diff --git a/firebird-configure-c99.patch b/firebird-configure-c99.patch deleted file mode 100644 index f24ba4ad4984463a5400faf4a14d9eaf870846c9..0000000000000000000000000000000000000000 --- a/firebird-configure-c99.patch +++ /dev/null @@ -1,45 +0,0 @@ -Add missing int return types for main in the configure script. -Implicit ints are a language feature that was removed in C99. - -Submitted upstream: - -diff --git a/configure.ac b/configure.ac -index 05edb5ec9410ff50..0474dc850dfd04bc 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1038,7 +1038,7 @@ AC_CHECK_FUNCS(sem_init) - if test "$ac_cv_func_sem_init" = "yes"; then - AC_MSG_CHECKING(for working sem_init()) - AC_RUN_IFELSE([AC_LANG_SOURCE([[#include -- main () { -+ int main () { - sem_t s; - return sem_init(&s,0,0); - } -@@ -1079,7 +1079,7 @@ AC_SYS_LARGEFILE - if test "$ac_cv_sys_file_offset_bits" = "no"; then - AC_MSG_CHECKING(for native large file support) - AC_RUN_IFELSE([AC_LANG_SOURCE([[#include -- main () { -+ int main () { - return !(sizeof(off_t) == 8); - }]])],[ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64) - AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)],[]) -@@ -1126,7 +1126,7 @@ dnl EKU: try to determine the alignment of long and double - dnl replaces FB_ALIGNMENT and FB_DOUBLE_ALIGN in src/jrd/common.h - AC_MSG_CHECKING(alignment of long) - AC_RUN_IFELSE([AC_LANG_SOURCE([[#include --main () { -+int main () { - struct s { - char a; - union { long long x; sem_t y; } b; -@@ -1137,7 +1137,7 @@ AC_MSG_RESULT($ac_cv_c_alignment) - AC_DEFINE_UNQUOTED(FB_ALIGNMENT, $ac_cv_c_alignment, [Alignment of long]) - - AC_MSG_CHECKING(alignment of double) --AC_RUN_IFELSE([AC_LANG_SOURCE([[main () { -+AC_RUN_IFELSE([AC_LANG_SOURCE([[int main () { - struct s { - char a; - double b; diff --git a/firebird.spec b/firebird.spec index 66868161e18f7ef6c562369643be1b04bfebc5d4..e3013e9899fb25a1a21d88a8064edaa0a92f044f 100644 --- a/firebird.spec +++ b/firebird.spec @@ -1,12 +1,12 @@ -%global ver 4.0.4 -%global rev 3010 +%global ver 4.0.6 +%global rev 3221 Name: firebird Version: %{ver}.%{rev} -Release: 3 +Release: 1 Summary: SQL relational database management system -License: Interbase +License: Interbase-1.0 URL: http://www.firebirdsql.org/ Source0: https://github.com/FirebirdSQL/firebird/releases/download/v%{ver}/Firebird-%{ver}.%{rev}-0.tar.xz @@ -20,12 +20,8 @@ Patch0002: cloop-honour-build-flags.patch # from upstream Patch0003: c++17.patch Patch0004: noexcept.patch -Patch0005: autoconf.patch Patch0006: btyacc-honour-build-flags.patch -Patch0007: firebird-configure-c99.patch -#Patch0008: 0001-Port-to-RISC-V-64-bit-riscv64.patch -Patch0009: 0001-add-loongarch64-support-for-Firebird.patch -#Patch0010: 0002-Modify-PROD_FLAGS-and-DEV_FLAGS-parameters-for-loongarch64.patch +Patch0009: 0001-add-loongarch64-support-for-Firebird.patch Patch0011: 0001-add-sw_64-support.patch BuildRequires: autoconf @@ -332,6 +328,9 @@ fi %{_bindir}/gsplit %changelog +* Tue Jul 15 2025 Funda Wang - 4.0.6.3221-1 +- update to 4.0.6 + * Tue Mar 04 2025 maqi - 4.0.4.3010-3 - add sw_64 support