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.5.3140-0.tar.xz similarity index 84% rename from Firebird-4.0.4.3010-0.tar.xz rename to Firebird-4.0.5.3140-0.tar.xz index 0312558ee63bff8df9dac675aa7500861568453e..9c3c712b209d133eeed5b3f6e145a876e94598e6 100644 Binary files a/Firebird-4.0.4.3010-0.tar.xz and b/Firebird-4.0.5.3140-0.tar.xz differ 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/fb_config b/fb_config index 2e4c410127d26174b50d54102bfd33103650dc79..09825fe695d12cb4add63422e31b99407d304081 100644 --- a/fb_config +++ b/fb_config @@ -3,7 +3,7 @@ ARCH=$(uname -m) case $ARCH in - x86_64 | sparc64 | s390x | ppc64 | aarch64) + x86_64 | sparc64 | s390x | ppc64 | aarch64 | riscv64 | loongarch64 ) LIB_DIR=/usr/lib64 SECONDARY_LIB_DIR=/usr/lib ;; 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 9734ead0cf3029ca6406021a49ac4aacb62f12a9..b19b9592b08c2237f25b88acc7c3458999ac6f85 100644 --- a/firebird.spec +++ b/firebird.spec @@ -1,12 +1,17 @@ -%global ver 4.0.4 -%global rev 3010 +%global ver 4.0.5 +%global rev 3140 + +# firebird is mis-compiled when LTO is enabled. A root +# cause analysis has not yet been completed. Reported upstream. +# Disable LTO for now +%global _lto_cflags %nil Name: firebird Version: %{ver}.%{rev} -Release: 2 +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 +25,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 BuildRequires: autoconf BuildRequires: automake @@ -49,6 +50,7 @@ Requires(postun): /usr/sbin/userdel Requires(postun): /usr/sbin/groupdel Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd +%{?systemd_requires} Recommends: logrotate Requires: libfbclient2 = %{version}-%{release} Requires: libib-util = %{version}-%{release} @@ -138,19 +140,7 @@ language support for stored procedures and triggers. It has been used in production systems, under a variety of names, since 1981. -%package help -Requires: %{name} = %{version}-%{release} -Summary: Documentation for Firebird SQL server -BuildArch: noarch - -%description help -Documentation for Firebird SQL server. - -Firebird is a relational database offering many ANSI SQL standard features -that runs on Linux, Windows, MacOS and a variety of Unix platforms. -Firebird offers excellent concurrency, high performance, and powerful -language support for stored procedures and triggers. It has been used -in production systems, under a variety of names, since 1981. +%package_help %package utils @@ -191,7 +181,7 @@ NOCONFIGURE=1 ./autogen.sh --with-fbplugins=%{_libdir}/%{name}/plugins \ --with-fbtzdata=%{_localstatedir}/lib/%{name}/tzdata -make %{?_smp_mflags} +%make_build cd gen sed -i '/linkFiles "/d' ./install/makeInstallImage.sh ./install/makeInstallImage.sh @@ -331,6 +321,9 @@ fi %{_bindir}/gsplit %changelog +* Thu Oct 10 2024 Funda Wang - 4.0.5.3140-1 +- Update to 4.0.5 + * Mon May 20 2024 Wenlong Zhang - 4.0.4.3010-2 - add loongarch64 support for firebird diff --git a/firebird.yaml b/firebird.yaml index 729119578573217fb71c67778fef3abcfc63ef6d..0dca674d42138b2611c959aea608290aaa676198 100644 --- a/firebird.yaml +++ b/firebird.yaml @@ -1,4 +1,4 @@ version_control: github src_repo: FirebirdSQL/firebird tag_prefix: ^v -seperator: . +separator: .