diff --git a/README.Fedora b/README.Fedora index 54d448e..efabbc2 100644 --- a/README.Fedora +++ b/README.Fedora @@ -1,9 +1,6 @@ Differences between upstream and the Fedora package =================================================== -* All files are installed according to the FHS. Relatively complete - environment as provided by upstream may be found in %{fbroot} - * Firebird utilities gbak,gsec,gfix,and nbackup have a symlink in /usr/bin In /usr/bin you have also isql-fb symlinked to Firebird isql. We can't name it isql to avoid conflict with isql from UNIX-ODBC diff --git a/firebird-edit-fix.patch b/firebird-edit-fix.patch deleted file mode 100644 index 834231b..0000000 --- a/firebird-edit-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Naur Firebird-2.1.1.17910-0/builds/posix/make.defaults Firebird-2.1.1.17910-0.oden/builds/posix/make.defaults ---- Firebird-2.1.1.17910-0/builds/posix/make.defaults 2008-05-27 05:26:39.000000000 -0400 -+++ Firebird-2.1.1.17910-0.oden/builds/posix/make.defaults 2008-07-18 09:54:40.000000000 -0400 -@@ -230,7 +230,7 @@ - - ifeq ($(EDITLINE_FLG),Y) - ifeq ($(STD_EDITLINE), true) -- LIBEDITLINE := -leditline -+ LIBEDITLINE := -ledit - else - LIBEDITLINE := $(LIB)/libeditline.a - endif -diff -Naur Firebird-2.1.1.17910-0/configure.in Firebird-2.1.1.17910-0.oden/configure.in ---- Firebird-2.1.1.17910-0/configure.in 2008-05-27 05:26:28.000000000 -0400 -+++ Firebird-2.1.1.17910-0.oden/configure.in 2008-07-18 09:54:25.000000000 -0400 -@@ -399,7 +399,7 @@ - # not need editline in default libs, but need to test for its presence - saveLIBS=$LIBS - if test "$STD_EDITLINE" = "true"; then -- AC_CHECK_LIB(editline, readline, EDITLINE_FLG=Y, STD_EDITLINE=false) -+ AC_CHECK_LIB(edit, readline, EDITLINE_FLG=Y, STD_EDITLINE=false) - fi - LIBS=$saveLIBS - diff --git a/firebird-fix-initscript.patch b/firebird-fix-initscript.patch deleted file mode 100644 index 2da98ff..0000000 --- a/firebird-fix-initscript.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in 2009-07-24 12:16:22.000000000 +0200 -+++ builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in.new 2009-07-28 01:08:16.000000000 +0200 -@@ -1,11 +1,20 @@ - #!/bin/sh - --# chkconfig: 345 20 80 -+# chkconfig: 345 80 20 - # description: Start/Stop firebird database server - # - # This file belongs in /etc/init.d where it will be run - # on system startup and shutdown to start the background - # Firebird database server daemon -+### BEGIN INIT INFO -+# Provides: firebird -+# Required-Start: $local_fs $syslog -+# Required-Stop: -+# Default-Start: 3 4 5 -+# Default-Stop: 0 1 2 6 -+# Short-Description: Firebird server database -+# Description: Starts and stops the Firebird database server backend daemon. -+### END INIT INFO - - # Source function library - RedHat or Mandriva specific - # functions actually used: checkpid killproc daemon - - - diff --git a/firebird-gcc-icu.patch b/firebird-gcc-icu.patch deleted file mode 100644 index 09327d8..0000000 --- a/firebird-gcc-icu.patch +++ /dev/null @@ -1,32 +0,0 @@ -# Author: Adriano dos Santos Fernandes -#Index: src/common/classes/alloc.h -#=================================================================== -#RCS file: /cvsroot/firebird/firebird2/src/common/classes/alloc.h,v -#retrieving revision 1.71 -diff -u -p -r1.71 alloc.h ---- src/common/classes/alloc.h 26 Sep 2007 17:48:20 -0000 1.71 -+++ src/common/classes/alloc.h 20 May 2009 02:20:08 -0000 -@@ -47,6 +47,7 @@ - #include /* XPG: prototypes for malloc/free have to be in - stdlib.h (EKU) */ - #endif -+#include - - #ifdef _MSC_VER - #define THROW_BAD_ALLOC -@@ -448,15 +449,6 @@ inline void* operator new[](size_t s) TH - ); - } - --inline void* operator new(size_t, void* ptr) throw() --{ -- return ptr; --} --inline void* operator new[](size_t, void* ptr) throw() --{ -- return ptr; --} -- - inline void operator delete(void* mem) throw() - { - Firebird::MemoryPool::globalFree(mem); diff --git a/firebird-gsec.patch b/firebird-gsec.patch deleted file mode 100644 index 8d26831..0000000 --- a/firebird-gsec.patch +++ /dev/null @@ -1,25 +0,0 @@ -Index: src/utilities/gsec/security.epp -=================================================================== -RCS file: /cvsroot/firebird/firebird2/src/utilities/gsec/security.epp,v -retrieving revision 1.16 -diff -u -r1.16 security.epp ---- src/utilities/gsec/security.epp 25 Mar 2006 07:08:00 -0000 1.16 -+++ src/utilities/gsec/security.epp 17 Mar 2010 10:11:57 -0000 -@@ -288,7 +288,7 @@ - *(io_user_data->sys_user_name) = '\0'; - strcpy(io_user_data->user_name, U.USER_NAME); - strcpy(io_user_data->group_name, U.GROUP_NAME); -- strcpy(io_user_data->password, U.PASSWD); -+ io_user_data->password[0] = 0; - strcpy(io_user_data->first_name, U.FIRST_NAME); - strcpy(io_user_data->middle_name, U.MIDDLE_NAME); - strcpy(io_user_data->last_name, U.LAST_NAME); -@@ -307,7 +307,7 @@ - *(io_user_data->sys_user_name) = '\0'; - strcpy(io_user_data->user_name, U.USER_NAME); - strcpy(io_user_data->group_name, U.GROUP_NAME); -- strcpy(io_user_data->password, U.PASSWD); -+ io_user_data->password[0] = 0; - strcpy(io_user_data->first_name, U.FIRST_NAME); - strcpy(io_user_data->middle_name, U.MIDDLE_NAME); - strcpy(io_user_data->last_name, U.LAST_NAME); diff --git a/firebird-mcpu-to-mtune.patch b/firebird-mcpu-to-mtune.patch deleted file mode 100644 index aadff14..0000000 --- a/firebird-mcpu-to-mtune.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- builds/posix/prefix.linux 2007-05-03 07:24:50.000000000 -0400 -+++ builds/posix/prefix.linux.oden 2008-07-18 08:45:48.000000000 -0400 -@@ -22,7 +22,7 @@ - # you may remove it if engine is getting compiled with any other GCC version - - COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -pipe -MMD -fPIC -fmessage-length=0 --OPTIMIZE_FLAGS=-O3 -march=i586 -mcpu=i686 -fno-omit-frame-pointer -fno-builtin -+OPTIMIZE_FLAGS=-O3 -march=i586 -mtune=i686 -fno-omit-frame-pointer -fno-builtin - WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable - - PROD_FLAGS=-DNDEBUG $(COMMON_FLAGS) $(OPTIMIZE_FLAGS) diff --git a/firebird-s390x.patch b/firebird-s390x.patch deleted file mode 100644 index 4a4fc5b..0000000 --- a/firebird-s390x.patch +++ /dev/null @@ -1,194 +0,0 @@ -diff -up Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390.s390x Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390 ---- Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390.s390x 2010-03-26 00:23:18.000000000 +0100 -+++ Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390 2010-03-26 00:23:56.000000000 +0100 -@@ -0,0 +1,31 @@ -+# 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) -+# -+# 3. Sep 2009 Karsten Hopp - initial verion -+ -+COMMON_FLAGS=-m31 -DLINUX -pipe -MMD -fPIC -DS390 -DFB_SEND_FLAGS=MSG_NOSIGNAL -fmessage-length=0 -fsigned-char -+PROD_FLAGS=-ggdb -march=z9-109 -mtune=z10 -O2 -DNDEBUG $(COMMON_FLAGS) -+DEV_FLAGS=-ggdb -p -Wall -Wno-switch $(COMMON_FLAGS) -+CXXFLAGS:= $(CXXFLAGS) -fno-rtti -+ -+OS_ServerFiles=inet_server.cpp -+ -+EMBED_UTIL_TARGETS=gstat gds_drop gsec nbackup fb_lock_print fbsvcmgr -+CLIENT_UTIL_TARGETS=gds_drop gstat gsec fbguard fbmgr_bin nbackup fb_lock_print fbsvcmgr -+ -+Physical_IO_Module=os/posix/unix.cpp -diff -up Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390x.s390x Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390x ---- Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390x.s390x 2010-03-26 00:21:22.000000000 +0100 -+++ Firebird-2.1.3.18185-0/builds/posix/prefix.linux_s390x 2010-03-26 00:23:50.000000000 +0100 -@@ -0,0 +1,31 @@ -+# 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) -+# -+# 3. Sep 2009 Karsten Hopp - initial verion -+ -+COMMON_FLAGS=-m64 -DLINUX -pipe -MMD -fPIC -DS390X -DFB_SEND_FLAGS=MSG_NOSIGNAL -fmessage-length=0 -fsigned-char -+PROD_FLAGS=-ggdb -march=z9-109 -mtune=z10 -O2 -DNDEBUG $(COMMON_FLAGS) -+DEV_FLAGS=-ggdb -p -Wall -Wno-switch $(COMMON_FLAGS) -+CXXFLAGS:= $(CXXFLAGS) -fno-rtti -+ -+OS_ServerFiles=inet_server.cpp -+ -+EMBED_UTIL_TARGETS=gstat gds_drop gsec nbackup fb_lock_print fbsvcmgr -+CLIENT_UTIL_TARGETS=gds_drop gstat gsec fbguard fbmgr_bin nbackup fb_lock_print fbsvcmgr -+ -+Physical_IO_Module=os/posix/unix.cpp -diff -up Firebird-2.1.3.18185-0/configure.in.s390x Firebird-2.1.3.18185-0/configure.in ---- Firebird-2.1.3.18185-0/configure.in.s390x 2010-03-26 00:21:22.000000000 +0100 -+++ Firebird-2.1.3.18185-0/configure.in 2010-03-26 00:24:25.000000000 +0100 -@@ -182,6 +182,26 @@ dnl CPU_TYPE=ppc64 - SHRLIB_EXT=so - ;; - -+ s390-*-linux*) -+ MAKEFILE_PREFIX=linux_s390 -+ INSTALL_PREFIX=linux -+ PLATFORM=LINUX -+ AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) -+ LOCK_MANAGER_FLG=Y -+ EDITLINE_FLG=Y -+ SHRLIB_EXT=so -+ ;; -+ -+ s390x-*-linux*) -+ MAKEFILE_PREFIX=linux_s390x -+ INSTALL_PREFIX=linux -+ PLATFORM=LINUX -+ AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) -+ LOCK_MANAGER_FLG=Y -+ EDITLINE_FLG=Y -+ SHRLIB_EXT=so -+ ;; -+ - powerpc*-*-linux*) - MAKEFILE_PREFIX=linux_powerpc - INSTALL_PREFIX=linux -diff -up Firebird-2.1.3.18185-0/src/jrd/common.h.s390x Firebird-2.1.3.18185-0/src/jrd/common.h ---- Firebird-2.1.3.18185-0/src/jrd/common.h.s390x 2008-12-23 09:34:32.000000000 +0100 -+++ Firebird-2.1.3.18185-0/src/jrd/common.h 2010-03-26 00:25:20.000000000 +0100 -@@ -151,6 +151,14 @@ - #define RISC_ALIGNMENT - #endif // IA64 - -+#ifdef S390X -+#define IMPLEMENTATION isc_info_db_impl_linux_s390x /* 78 */ -+#endif /* s390x */ -+ -+#ifdef S390 -+#define IMPLEMENTATION isc_info_db_impl_linux_s390 /* 79 */ -+#endif /* s390 */ -+ - #define MEMMOVE(from, to, length) memmove ((void *)to, (void *)from, (size_t) length) - #define MOVE_FAST(from, to, length) memcpy (to, from, (int) (length)) - #define MOVE_FASTER(from, to, length) memcpy (to, from, (int) (length)) -diff -up Firebird-2.1.3.18185-0/src/jrd/inf_pub.h.s390x Firebird-2.1.3.18185-0/src/jrd/inf_pub.h ---- Firebird-2.1.3.18185-0/src/jrd/inf_pub.h.s390x 2008-06-09 13:16:32.000000000 +0200 -+++ Firebird-2.1.3.18185-0/src/jrd/inf_pub.h 2010-03-26 00:25:47.000000000 +0100 -@@ -207,6 +207,8 @@ enum info_db_implementations - isc_info_db_impl_linux_ia64 = 76, - - isc_info_db_impl_darwin_ppc64 = 77, -+ isc_info_db_impl_linux_s390x = 78, -+ isc_info_db_impl_linux_s390 = 79, - - isc_info_db_impl_last_value // Leave this LAST! - }; -diff -up Firebird-2.1.3.18185-0/src/jrd/pag.cpp.s390x Firebird-2.1.3.18185-0/src/jrd/pag.cpp ---- Firebird-2.1.3.18185-0/src/jrd/pag.cpp.s390x 2009-01-06 22:25:22.000000000 +0100 -+++ Firebird-2.1.3.18185-0/src/jrd/pag.cpp 2010-03-26 00:27:06.000000000 +0100 -@@ -160,9 +160,11 @@ static const int CLASS_SOLARIS_AMD64 = 3 - static const int CLASS_LINUX_ARM = 33; // LINUX/ARM - static const int CLASS_LINUX_IA64 = 34; // LINUX/IA64 - static const int CLASS_DARWIN_PPC64 = 35; // Darwin/PowerPC64 -+static const int CLASS_LINUX_S390X = 36; // LINUX/s390x -+static const int CLASS_LINUX_S390 = 37; // LINUX/s390 - - static const int CLASS_MAX10 = CLASS_LINUX_AMD64; // This should not be changed, no new ports with ODS10 --static const int CLASS_MAX = CLASS_DARWIN_PPC64; -+static const int CLASS_MAX = CLASS_LINUX_S390; - - // ARCHITECTURE COMPATIBILITY CLASSES - -@@ -253,7 +255,9 @@ static ArchitectureType archMatrix[CLASS - archLittleEndian, // CLASS_SOLARIS_AMD64 - archLittleEndian, // CLASS_LINUX_ARM - archLittleEndian, // CLASS_LINUX_IA64 -- archBigEndian // CLASS_DARWIN_PPC64 -+ archBigEndian, // CLASS_DARWIN_PPC64 -+ archBigEndian, // CLASS_LINUX_S390X -+ archBigEndian // CLASS_LINUX_S390 - }; - - #ifdef sun -@@ -311,6 +315,10 @@ const SSHORT CLASS = CLASS_LINUX_MIPSEL - const SSHORT CLASS = CLASS_LINUX_MIPS; - #elif defined(IA64) - const SSHORT CLASS = CLASS_LINUX_IA64; -+#elif defined(S390) -+const SSHORT CLASS = CLASS_LINUX_S390; -+#elif defined(S390X) -+const SSHORT CLASS = CLASS_LINUX_S390X; - #else - #error no support on other hardware for Linux - #endif -diff -up Firebird-2.1.3.18185-0/src/jrd/utl.cpp.s390x Firebird-2.1.3.18185-0/src/jrd/utl.cpp ---- Firebird-2.1.3.18185-0/src/jrd/utl.cpp.s390x 2008-12-10 16:22:17.000000000 +0100 -+++ Firebird-2.1.3.18185-0/src/jrd/utl.cpp 2010-03-26 00:27:17.000000000 +0100 -@@ -244,7 +244,9 @@ static const TEXT* const impl_implementa - "Firebird/sun/amd64", /* 74 */ - "Firebird/linux ARM", /* 75 */ - "Firebird/linux IA64", /* 76 */ -- "Firebird/Darwin/PowerPC64" /* 77 */ -+ "Firebird/Darwin/PowerPC64", /* 77 */ -+ "Firebird/linux S390X" /* 78 */ -+ "Firebird/linux S390" /* 79 */ - }; - - -diff -up Firebird-2.1.3.18185-0/src/remote/xdr.cpp.s390x Firebird-2.1.3.18185-0/src/remote/xdr.cpp ---- Firebird-2.1.3.18185-0/src/remote/xdr.cpp.s390x 2008-06-09 13:16:44.000000000 +0200 -+++ Firebird-2.1.3.18185-0/src/remote/xdr.cpp 2010-03-26 00:27:41.000000000 +0100 -@@ -45,7 +45,7 @@ - // ASF: Currently, all little-endian are SWAP_DOUBLE and big-endian aren't. - #if defined(i386) || defined(I386) || defined(_M_IX86) || defined(AMD64) || defined(ARM) || defined(MIPSEL) || defined(DARWIN64) || defined(IA64) - #define SWAP_DOUBLE --#elif defined(sparc) || defined(PowerPC) || defined(PPC) || defined(__ppc__) || defined(HPUX) || defined(MIPS) || defined(__ppc64__) -+#elif defined(sparc) || defined(PowerPC) || defined(PPC) || defined(__ppc__) || defined(HPUX) || defined(MIPS) || defined(__ppc64__) || defined(S390) || defined(__s390__) || defined(S390X) || defined(__s390x__) - #undef SWAP_DOUBLE - #else - #error "Define SWAP_DOUBLE for your platform correctly !" diff --git a/firebird.spec b/firebird.spec index f961bca..9d26c99 100644 --- a/firebird.spec +++ b/firebird.spec @@ -1,392 +1,387 @@ -%global pkgname Firebird-2.1.3.18185-0 -%global fbroot %{_libdir}/%{name} -%global major 2.1.3 - - -Summary: SQL relational database management system -Name: firebird -Version: 2.1.3.18185.0 -Release: 9%{?dist} - -Group: Applications/Databases -License: Interbase -URL: http://www.firebirdsql.org/ -BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot - -Source0: http://downloads.sourceforge.net/firebird/%{pkgname}.tar.bz2 -Source1: firebird-logrotate -Source2: README.Fedora - -Patch0: firebird-mcpu-to-mtune.patch -Patch1: firebird-edit-fix.patch -Patch2: firebird-fix-initscript.patch -Patch3: firebird_lock-file-location.patch -Patch4: firebird-gcc-icu.patch -Patch5: firebird-s390x.patch -Patch6: firebird-gsec.patch - - -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: bison -BuildRequires: libtool -BuildRequires: ncurses-devel -BuildRequires: libtermcap-devel -BuildRequires: libicu-devel -BuildRequires: libedit-devel -BuildRequires: gcc-c++ +%global pkgname Firebird-2.5.0.26074-0 +%global fbroot %{_libdir}/%{name} +%global major 2.5.0 + + +Summary: SQL relational database management system +Name: firebird +Version: 2.5.0.26074.0 +Release: 0%{?dist} + +Group: Applications/Databases +License: Interbase +URL: http://www.firebirdsql.org/ +BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot + +Source0: http://downloads.sourceforge.net/firebird/%{pkgname}.tar.bz2 +Source1: firebird-logrotate +Source2: README.Fedora + + +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: bison +BuildRequires: libtool +BuildRequires: ncurses-devel +BuildRequires: libtermcap-devel +BuildRequires: libicu-devel +BuildRequires: libedit-devel +BuildRequires: gcc-c++ %if 0%{?fedora}>=14 -BuildRequires: libstdc++-static +BuildRequires: libstdc++-static %endif -Requires: %{name}-arch = %{version}-%{release} -Requires: grep -Requires: sed -Requires(post): /sbin/ldconfig -Requires(postun): /sbin/ldconfig -Requires(postun): /usr/sbin/userdel -Requires(postun): /usr/sbin/groupdel -Requires(pre): /usr/sbin/groupadd -Requires(pre): /usr/sbin/useradd -Requires: %{name}-libfbclient -Requires: logrotate +Requires: %{name}-arch = %{version}-%{release} +Requires: grep +Requires: sed +Requires(post): /sbin/ldconfig +Requires(postun): /sbin/ldconfig +Requires(postun): /usr/sbin/userdel +Requires(postun): /usr/sbin/groupdel +Requires(pre): /usr/sbin/groupadd +Requires(pre): /usr/sbin/useradd +Requires: %{name}-libfbclient +Requires: logrotate +Requires: %{name}-filesystem %description -This package contains common files between firebird-classic and +This package contains common files between firebird-classic, firebird-superclassic and firebird-superserver. You will need this if you want to use either one. -%package doc -Summary: Documentation for Firebird SQL RDBMS -Group: Applications/Databases +%package doc +Summary: Documentation for Firebird SQL RDBMS +Group: Applications/Databases -%description doc +%description doc This are the Firebird SQL Database shared doc and examples files. -%package filesystem -Summary: Filesystem for Firebird SQL RDBMS -Group: Applications/Databases +%package filesystem +Summary: Filesystem for Firebird SQL RDBMS +Group: Applications/Databases -%description filesystem +%description filesystem This is the Firebird SQL Database root file system. -%package devel -Summary: Development Libraries for Firebird SQL RDBMS -Group: Applications/Databases -Requires: %{name}-libfbclient = %{version}-%{release} -Requires: %{name}-libfbembed = %{version}-%{release} +%package classic-common +Summary: Common files for Firebird "classic" and "superclassic" servers +Group: Applications/Databases +Requires: %{name} = %{version}-%{release} +Requires: %{name}-libfbembed = %{version}-%{release} +Conflicts: %{name}-superserver +%description classic-common +This package contains the command line utilities and files common to classic and superclassic Firebird servers. -%description devel -Development libraries for firebird. - -%package classic -Summary: Classic (xinetd) server for Firebird SQL RDBMS -Group: Applications/Databases -Provides: %{name}-arch = %{version}-%{release} -Requires: xinetd -Requires: %{name} = %{version}-%{release} -Conflicts: %{name}-superserver -Requires: %{name}-libfbembed = %{version}-%{release} +%package devel +Summary: Development Libraries for Firebird SQL RDBMS +Group: Applications/Databases +Requires: %{name}-libfbclient = %{version}-%{release} +Requires: %{name}-libfbembed = %{version}-%{release} +%description devel +Development libraries for firebird. -%description classic -This is the classic (xinetd) server Firebird SQL RDBMS. +%package classic +Summary: Classic (xinetd) server for Firebird SQL RDBMS +Group: Applications/Databases +Provides: %{name}-arch = %{version}-%{release} +Requires: xinetd +Requires: %{name} = %{version}-%{release} +Conflicts: %{name}-superclassic +Requires: %{name}-libfbembed = %{version}-%{release} +Requires: %{name}-classic-common = %{version}-%{release} + +%description classic +This is the Classic (xinetd) server Firebird SQL RDBMS. It can also be used as an embedded server, when paired with the client-embedded package. -%package superserver -Summary: Superserver (single process) server for Firebird SQL RDBMS -Group: Applications/Databases -Provides: %{name}-arch = %{version}-%{release} -Requires: %{name} = %{version}-%{release} -Conflicts: %{name}-classic - - -%description superserver +%package superclassic +Summary: SuperClassic (single process) server for Firebird SQL RDBMS +Group: Applications/Databases +Provides: %{name}-arch = %{version}-%{release} +Requires: %{name} = %{version}-%{release} +Conflicts: %{name}-classic +Requires: %{name}-classic-common = %{version}-%{release} + +%description superclassic +The "superclassic" architecture uses a new thread to handle each connection. +This allows for good scaling on multi-processor machines without consuming too much operating system resources.. + +%package superserver +Summary: Superserver (single process) server for Firebird SQL RDBMS +Group: Applications/Databases +Provides: %{name}-arch = %{version}-%{release} +Requires: %{name} = %{version}-%{release} +Conflicts: %{name}-classic-common + +%description superserver This is the Superserver (single process) Firebird SQL RDBMS. +%package libfbclient +Summary: Multi-threaded, non-local client libraries for Firebird SQL RDBMS +Group: System Environment/Libraries +Requires(post): /sbin/ldconfig +Requires(postun): /sbin/ldconfig -%package libfbclient -Summary: Multi-threaded, non-local client libraries for Firebird SQL RDBMS -Group: System Environment/Libraries -Requires(post): /sbin/ldconfig -Requires(postun): /sbin/ldconfig -Requires: %{name}-filesystem - -%description libfbclient +%description libfbclient Multi-threaded, non-local client libraries for Firebird SQL Database +%package libfbembed +Summary: Multi-process, local client libraries for Firebird SQL RDBMS +Group: System Environment/Libraries +Requires(post): /sbin/ldconfig +Requires(postun): /sbin/ldconfig -%package libfbembed -Summary: Multi-process, local client libraries for Firebird SQL RDBMS -Group: System Environment/Libraries -Requires(post): /sbin/ldconfig -Requires(postun): /sbin/ldconfig -Requires: %{name}-filesystem - -%description libfbembed +%description libfbembed Multi-process, local client libraries for Firebird SQL RDBMS %prep %setup -q -n %{pkgname} # convert intl character to UTF-8 -iconv -f ISO-8859-1 -t utf-8 -c ./doc/README.intl -o ./doc/README.intl -# backport patch -%patch2 -# %patch1 -p1 -%patch0 -%patch3 -%patch4 -%patch5 -p1 -%patch6 +iconv -f ISO-8859-1 -t utf-8 -c ./doc/README.intl -o ./doc/README.intl %build # classic -%ifarch sparc64 +%ifarch sparc64 export CXXFLAGS='-m64' export CFLAGS='-m64' export LDFLAGS='-m64' %endif -%ifarch sparcv9 +%ifarch sparcv9 export CXXFLAGS='-m32' export CFLAGS='-m32' export LDFLAGS='-m32' %endif -%ifarch ppc64 +%ifarch ppc64 autoreconf -vfi %endif NOCONFIGURE=1 ./autogen.sh -%configure --prefix=%{fbroot} --with-system-icu --with-system-editline -%ifarch sparc64 -sed "s@COMMON_FLAGS=-m32@COMMON_FLAGS=-m64@" -i ./gen/make.platform +#%configure --prefix=%{fbroot} --with-system-icu --with-system-editline \ +%configure --prefix=%{fbroot} --with-system-icu --with-system-editline \ + --with-fbbin=%{fbroot}/bin-classic --with-fbinclude=%{_includedir}/%{name} \ + --with-fbsbin=%{_sbindir} --with-fbconf=%{_sysconfdir}/%{name} --with-fblib=%{_libdir} \ + --with-fbdoc=%{_defaultdocdir}/%{name} --with-fbudf=%{fbroot}/UDF --with-fbsample=%{_defaultdocdir}/%{name}/examples \ + --with-fbsample-db=%{_localstatedir}/lib/%{name}/data/ \ + --with-fbhelp=%{_localstatedir}/lib/%{name}/system/ --with-fbintl=%{fbroot}/intl \ + --with-fbmisc=%{fbroot}/misc --with-fbsecure-db=%{_localstatedir}/lib/%{name}/system \ + --with-fbmsg=%{_localstatedir}/lib/%{name}/system --with-fblog=%{_localstatedir}/log/%{name} \ + --with-fbglock=%{_var}/run/%{name} --with-fbplugins=%{fbroot}/plugins-classic +%ifarch sparc64 +sed "s@COMMON_FLAGS=-m32@COMMON_FLAGS=-m64@" -i ./gen/make.platform %endif - + # Can't use make %{?_smp_mflags} as parallel build is broken make cd gen - +sed "s@exit 1@# exit 1@" -i ./install/makeInstallImage.sh +sed "s@chown@echo ""# chown@g" -i ./install/makeInstallImage.sh +sed "s@chmod@echo ""# chmod@g" -i ./install/makeInstallImage.sh ./install/makeInstallImage.sh # here we patch a bug in the configure script -%ifarch ppc64 -mv -f ./buildroot/usr/lib/* ./buildroot/%{_libdir} +%ifarch ppc64 +mv -f ./buildroot/usr/lib/* ./buildroot/%{_libdir} %endif -mv ./buildroot/ buildroot-classic -chmod 644 ./buildroot-classic%{fbroot}/help/help.fdb +mv ./buildroot/ buildroot-classic cd .. # superserver -%ifarch ppc64 +%ifarch ppc64 autoreconf -vfi %endif -%configure --prefix=%{fbroot} --with-system-icu --with-system-editline --enable-superserver - -%ifarch sparc64 -sed "s@COMMON_FLAGS=-m32@COMMON_FLAGS=-m64@" -i ./gen/make.platform +%configure --prefix=%{fbroot} --with-system-icu --with-system-editline --enable-superserver \ + --with-fbbin=%{fbroot}/bin-superserver --with-fbinclude=%{_includedir}/%{name} \ + --with-fbsbin=%{_sbindir} --with-fbconf=%{_sysconfdir}/%{name} --with-fblib=%{_libdir} \ + --with-fbdoc=%{_defaultdocdir}/%{name} --with-fbudf=%{fbroot}/UDF --with-fbsample=%{_defaultdocdir}/%{name}/examples \ + --with-fbsample-db=%{_localstatedir}/lib/%{name}/data/ \ + --with-fbhelp=%{_localstatedir}/lib/%{name}/system/ --with-fbintl=%{fbroot}/intl \ + --with-fbmisc=%{fbroot}/misc --with-fbsecure-db=%{_localstatedir}/lib/%{name}/system \ + --with-fbmsg=%{_localstatedir}/lib/%{name}/system --with-fblog=%{_localstatedir}/log/%{name} \ + --with-fbglock=%{_var}/run/%{name} --with-fbplugins=%{fbroot}/plugins-superserver + +%ifarch sparc64 +sed "s@COMMON_FLAGS=-m32@COMMON_FLAGS=-m64@" -i ./gen/make.platform %endif # Can't use make %{?_smp_mflags} as parallel build is broken +make clean make cd gen +sed "s@exit 1@echo ""# exit 1@" -i ./install/makeInstallImage.sh +sed "s@chown@echo ""# chown@g" -i ./install/makeInstallImage.sh +sed "s@chmod@echo ""# chmod@g" -i ./install/makeInstallImage.sh ./install/makeInstallImage.sh # here we patch a bug in the configure script -%ifarch ppc64 -mv -f ./buildroot/usr/lib/* ./buildroot/%{_libdir} +%ifarch ppc64 +mv -f ./buildroot/usr/lib/* ./buildroot/%{_libdir} %endif -mv ./buildroot/ buildroot-superserver -chmod 644 ./buildroot-superserver%{fbroot}/help/help.fdb - - %install # we wanted to setup both Classic and Superserver, we need to do all here rm -Rf %{buildroot} -install -d %{buildroot} +install -d %{buildroot} + +mkdir -p %{buildroot}%{_sysconfdir}/%{name} +mkdir -p %{buildroot}%{fbroot}/bin-superserver +mkdir -p %{buildroot}%{fbroot}/bin-classic +mkdir -p %{buildroot}%{_includedir}/%{name} +mkdir -p %{buildroot}%{_sysconfdir}/%{name} +mkdir -p %{buildroot}%{_libdir} +mkdir -p %{buildroot}%{fbroot}/UDF +mkdir -p %{buildroot}%{fbroot}/intl +mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/data +mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/system +mkdir -p %{buildroot}%{_localstatedir}/log/%{name} +mkdir -p %{buildroot}%{_var}/run/%{name} +mkdir -p %{buildroot}%{fbroot}/plugins-superserver +mkdir -p %{buildroot}%{fbroot}/plugins-classic +mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d +mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d +mkdir -p %{buildroot}%{_initrddir} +mkdir -p %{buildroot}%{_sbindir} +mkdir -p %{buildroot}%{_bindir} + +cd %{buildroot} +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_sysconfdir}/%{name}/* %{buildroot}%{_sysconfdir}/%{name} +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/bin-classic/* %{buildroot}%{fbroot}/bin-classic +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_config %{buildroot}%{fbroot}/bin-classic/fb_config +sed "s@-classic@-superserver@" %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_config > %{buildroot}%{fbroot}/bin-superserver/fb_config +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fbguard %{buildroot}%{_sbindir}/fbguard +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_inet_server %{buildroot}%{_sbindir}/fb_inet_server +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_lock_print %{buildroot}%{_sbindir}/fb_lock_print +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_smp_server %{buildroot}%{_sbindir}/fb_smp_server +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_sbindir}/fbserver %{buildroot}%{_sbindir}/fbserver +rm -f %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/bin-superserver/fb_inet_server +rm -f %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/bin-superserver/fb_smp_server +rm -f %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/bin-superserver/changeMultiConnectMode.sh +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/bin-superserver/* %{buildroot}%{fbroot}/bin-superserver +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_includedir}/*.h %{buildroot}%{_includedir} +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_includedir}/%{name}/* %{buildroot}%{_includedir}/%{name} +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_sysconfdir}/%{name}/* %{buildroot}%{_sysconfdir}/%{name} +rm -f %{buildroot}%{_sysconfdir}/%{name}/README +rm -f %{buildroot}%{_sysconfdir}/%{name}/WhatsNew + +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_libdir}/lib* %{buildroot}%{_libdir} +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/UDF/* %{buildroot}%{fbroot}/UDF +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_localstatedir}/lib/%{name}/data/* %{buildroot}%{_localstatedir}/lib/%{name}/data +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_localstatedir}/lib/%{name}/system/* %{buildroot}%{_localstatedir}/lib/%{name}/system +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/plugins-superserver/* %{buildroot}%{fbroot}/plugins-superserver +cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/plugins-classic/* %{buildroot}%{fbroot}/plugins-classic +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/intl/fbintl %{buildroot}%{fbroot}/intl/fbintl +cp -d %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/intl/fbintl.conf %{buildroot}%{_sysconfdir}/%{name}/fbintl.conf +ln -s %{_sysconfdir}/%{name}/fbintl.conf .%{fbroot}/intl/fbintl.conf -cd %{buildroot} - -mkdir -p %{buildroot}%{_sysconfdir}/%{name} -mkdir -p %{buildroot}%{_initrddir} -mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d -mkdir -p %{buildroot}%{_sysconfdir}/profile.d -mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d -mkdir -p %{buildroot}%{_var}/run/%{name} -mkdir -p %{buildroot}%{_localstatedir}/lib/%{name} -mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/data -mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/system -mkdir -p %{buildroot}%{_localstatedir}/log/%{name} -mkdir -p %{buildroot}%{_includedir}/%{name} -mkdir -p %{buildroot}%{_libdir} -mkdir -p %{buildroot}%{fbroot} -mkdir -p %{buildroot}%{fbroot}/help -mkdir -p %{buildroot}%{fbroot}/intl -mkdir -p %{buildroot}%{fbroot}/lib -mkdir -p %{buildroot}%{fbroot}/include -mkdir -p %{buildroot}%{fbroot}/bin-classic -mkdir -p %{buildroot}%{fbroot}/UDF-classic -mkdir -p %{buildroot}%{fbroot}/bin-superserver -mkdir -p %{buildroot}%{fbroot}/UDF-superserver -mkdir -p %{buildroot}%{_bindir} - -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/examples/empbuild/employee.fdb %{buildroot}%{_localstatedir}/lib/%{name}/data/employee.fdb -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/help/help.fdb %{buildroot}%{fbroot}/help/help.fdb -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/*.msg %{buildroot}%{fbroot}/ -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/intl/fbintl %{buildroot}%{fbroot}/intl/fbintl -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/lib/libib_util.so %{buildroot}%{fbroot}/lib/ -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/lib/libfbclient.so.%{major} %{buildroot}%{fbroot}/lib/ -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/lib/libfbembed.so.%{major} %{buildroot}%{fbroot}/lib/ -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/bin/* %{buildroot}%{fbroot}/bin-classic/ -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/UDF/* %{buildroot}%{fbroot}/UDF-classic/ -cp %{_builddir}/%{pkgname}/gen/buildroot-superserver%{fbroot}/bin/* %{buildroot}%{fbroot}/bin-superserver/ -cp %{_builddir}/%{pkgname}/gen/buildroot-superserver%{fbroot}/UDF/* %{buildroot}%{fbroot}/UDF-superserver/ - -cd %{buildroot}%{fbroot}/bin-superserver/ -ln -s fbmgr.bin fbmgr -cd %{buildroot} - -major2=`echo %{major} | sed 's|\.[0-9]*$||'` -major1=`echo ${major2} | sed 's|\.[0-9]*$||'` -cd %{buildroot}%{fbroot}/lib/ -ln -s %{fbroot}/lib/libfbembed.so.%{major} libfbembed.so.${major2} -ln -s %{fbroot}/lib/libfbembed.so.${major2} libfbembed.so -ln -s %{fbroot}/lib/libfbclient.so.%{major} libfbclient.so.${major1} -ln -s %{fbroot}/lib/libfbclient.so.${major1} libfbclient.so -cd %{buildroot} cd %{buildroot}%{_libdir} -ln -s %{fbroot}/lib/libfbembed.so libfbembed.so -ln -s %{fbroot}/lib/libfbembed.so.${major2} libfbembed.so.${major2} -ln -s %{fbroot}/lib/libfbembed.so.%{major} libfbembed.so.%{major} -ln -s %{fbroot}/lib/libfbclient.so libfbclient.so -ln -s %{fbroot}/lib/libfbclient.so.${major1} libfbclient.so.${major1} -ln -s %{fbroot}/lib/libfbclient.so.%{major} libfbclient.so.%{major} -ln -s %{fbroot}/lib/libfbclient.so.%{major} libgds.so.0 -ln -s %{fbroot}/lib/libfbclient.so libgds.so -ln -s %{fbroot}/lib/libib_util.so libib_util.so +ln -s libfbclient.so libgds.so +ln -s libfbclient.so.%{major} libgds.so.0 cd %{buildroot} echo 1 > %{buildroot}%{_localstatedir}/log/%{name}/%{name}.log -ln -s %{_localstatedir}/log/%{name}/%{name}.log .%{fbroot}/%{name}.log sed "s@%{name}.log@%{_localstatedir}/log/%{name}/%{name}.log@g" %{SOURCE1} > %{buildroot}%{_sysconfdir}/logrotate.d/%{name} -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/include/* %{buildroot}%{_includedir}/%{name}/ -cd %{buildroot}%{fbroot}/include/ -ln -s %{_includedir}/%{name}/ibase.h ibase.h -ln -s %{_includedir}/%{name}/iberror.h iberror.h -ln -s %{_includedir}/%{name}/ib_util.h ib_util.h -ln -s %{_includedir}/%{name}/perf.h perf.h -cd %{buildroot}%{_includedir} -ln -s %{_includedir}/%{name}/ibase.h ibase.h -ln -s %{_includedir}/%{name}/iberror.h iberror.h -ln -s %{_includedir}/%{name}/ib_util.h ib_util.h -ln -s %{_includedir}/%{name}/perf.h perf.h -cd %{buildroot} - -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/aliases.conf .%{_sysconfdir}/%{name}/aliases.conf -sed "s@%{fbroot}/examples/empbuild@%{_localstatedir}/lib/%{name}/data@" -i .%{_sysconfdir}/%{name}/aliases.conf -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/firebird.conf .%{_sysconfdir}/%{name}/firebird.conf -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/intl/fbintl.conf .%{_sysconfdir}/%{name}/fbintl.conf -cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/security2.fdb .%{_localstatedir}/lib/%{name}/system/security2.fdb - -ln -s %{_sysconfdir}/%{name}/aliases.conf .%{fbroot}/aliases.conf -ln -s %{_sysconfdir}/%{name}/firebird.conf .%{fbroot}/firebird.conf -ln -s %{_localstatedir}/lib/%{name}/system/security2.fdb .%{fbroot}/security2.fdb -ln -s %{_sysconfdir}/%{name}/fbintl.conf .%{fbroot}/intl/fbintl.conf - sed "s@= root@= %{name}@" %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/misc/%{name}.xinetd > %{buildroot}%{_sysconfdir}/xinetd.d/%{name} -cp %{_builddir}/%{pkgname}/gen/buildroot-superserver%{fbroot}/misc/%{name}.init.d.mandrake %{buildroot}%{_initrddir}/%{name} -#sed "s@chkconfig: 345@chkconfig: -@" -i %{buildroot}%{_initrddir}/%{name} +cp %{_builddir}/%{pkgname}/gen/buildroot%{fbroot}/misc/%{name}.init.d.mandrake %{buildroot}%{_initrddir}/%{name}-superserver +cp %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/misc/%{name}.init.d.mandrake %{buildroot}%{_initrddir}/%{name}-superclassic sed "s@%%{fbroot}@%{fbroot}@g" %{SOURCE2} > %{_builddir}/%{pkgname}/doc/README.Fedora -ln -s %{_var}/run/%{name} .%{fbroot}/run -ln -s %{fbroot}/bin/isql .%{_bindir}/isql-fb -ln -s %{fbroot}/bin/gbak .%{_bindir}/gbak -ln -s %{fbroot}/bin/gfix .%{_bindir}/gfix -ln -s %{fbroot}/bin/gsec .%{_bindir}/gsec -ln -s %{fbroot}/bin/nbackup .%{_bindir}/nbackup -ln -s %{fbroot}/bin/gstat .%{_bindir}/gstat-fb +cd %{buildroot} +ln -s %{fbroot}/bin/fbsvcmgr .%{_bindir}/fbsvcmgr +ln -s %{fbroot}/bin/fbtracemgr .%{_bindir}/fbtracemgr +ln -s %{fbroot}/bin/gbak .%{_bindir}/gbak +ln -s %{fbroot}/bin/gdef .%{_bindir}/gdef +ln -s %{fbroot}/bin/gfix .%{_bindir}/gfix +ln -s %{fbroot}/bin/gpre .%{_bindir}/gpre +ln -s %{fbroot}/bin/gsec .%{_bindir}/gsec +ln -s %{fbroot}/bin/gsplit .%{_bindir}/gsplit +ln -s %{fbroot}/bin/gstat .%{_bindir}/gstat-fb +ln -s %{fbroot}/bin/isql .%{_bindir}/isql-fb +ln -s %{fbroot}/bin/nbackup .%{_bindir}/nbackup +ln -s %{fbroot}/bin/qli .%{_bindir}/qli +ln -s %{fbroot}/bin/fb_config .%{_bindir}/fb_config %clean rm -Rf %{buildroot} -%post libfbclient -p /sbin/ldconfig +%post libfbclient -p /sbin/ldconfig -%postun libfbclient -p /sbin/ldconfig +%postun libfbclient -p /sbin/ldconfig -%post libfbembed -p /sbin/ldconfig +%post libfbembed -p /sbin/ldconfig -%postun libfbembed -p /sbin/ldconfig +%postun libfbembed -p /sbin/ldconfig -%post classic +%post classic-common if [ "$(readlink %{fbroot}/bin 2> /dev/null)" \!= "%{fbroot}/bin-classic" ]; then - [ -e %{fbroot}/bin ] && rm -f %{fbroot}/bin - ln -s %{fbroot}/bin{-classic,} -fi -if [ "$(readlink %{fbroot}/UDF 2> /dev/null)" \!= "%{fbroot}/UDF-classic" ]; then - [ -e %{fbroot}/UDF ] && rm -f %{fbroot}/bin - ln -s %{fbroot}/UDF{-classic,} + [ -e %{fbroot}/bin ] && rm -f %{fbroot}/bin + ln -s %{fbroot}/bin{-classic,} fi + +%post classic if /sbin/service xinetd status >& /dev/null; then - /sbin/service xinetd reload &>/dev/null || : + /sbin/service xinetd reload &>/dev/null || : fi -%preun classic +%preun classic if [ $1 -eq 0 ]; then - if /sbin/service xinetd status >& /dev/null; then - /sbin/service xinetd reload &>/dev/null || : - fi - if [ "$(readlink %{fbroot}/bin 2> /dev/null)" = "%{fbroot}/bin-classic" ]; then - rm -f %{fbroot}/bin - fi - if [ "$(readlink %{fbroot}/UDF 2> /dev/null)" = "%{fbroot}/UDF-classic" ]; then - rm -f %{fbroot}/UDF - fi + if /sbin/service xinetd status >& /dev/null; then + /sbin/service xinetd reload &>/dev/null || : + fi fi +%preun classic-common +if [ $1 -eq 0 ]; then + if [ "$(readlink %{fbroot}/bin 2> /dev/null)" = "%{fbroot}/bin-classic" ]; then + rm -f %{fbroot}/bin + fi +fi -%post superserver -if [ "$(readlink %{fbroot}/bin 2> /dev/null)" \!= "%{fbroot}/bin-superserver" ]; then - [ -e %{fbroot}/bin ] && rm -f %{fbroot}/bin - ln -s %{fbroot}/bin{-superserver,} +%preun superclassic +if [ $1 -eq 0 ]; then + if /sbin/service firebird status >& /dev/null; then + /sbin/service firebird-superclassic stop + fi + chkconfig --del firebird-superclassic fi -if [ "$(readlink %{fbroot}/UDF 2> /dev/null)" \!= "%{fbroot}/UDF-superserver" ]; then - [ -e %{fbroot}/UDF ] && rm -f %{fbroot}/bin - ln -s %{fbroot}/UDF{-superserver,} + +%post superclassic +if [ $1 -eq 1 ]; then + chkconfig firebird-superclassic off fi +%post superserver +if [ "$(readlink %{fbroot}/bin 2> /dev/null)" \!= "%{fbroot}/bin-superserver" ]; then + [ -e %{fbroot}/bin ] && rm -f %{fbroot}/bin + ln -s %{fbroot}/bin{-superserver,} +fi if [ $1 -eq 1 ]; then - chkconfig firebird off + chkconfig firebird-superserver off fi -%preun superserver +%preun superserver if [ $1 -eq 0 ]; then - - if /sbin/service firebird status >& /dev/null; then - /sbin/service firebird stop - fi - - chkconfig --del firebird - - if [ "$(readlink %{fbroot}/bin 2> /dev/null)" = "%{fbroot}/bin-superserver" ]; then - rm -f %{fbroot}/bin - fi - if [ "$(readlink %{fbroot}/UDF 2> /dev/null)" = "%{fbroot}/UDF-superserver" ]; then - rm -f %{fbroot}/UDF - fi + if /sbin/service firebird status >& /dev/null; then + /sbin/service firebird-superserver stop + fi + chkconfig --del firebird-superserver + if [ "$(readlink %{fbroot}/bin 2> /dev/null)" = "%{fbroot}/bin-superserver" ]; then + rm -f %{fbroot}/bin + fi fi -%pre +%pre # Create the firebird group if it doesn't exist getent group %{name} || /usr/sbin/groupadd -r %{name} getent passwd %{name} >/dev/null || /usr/sbin/useradd -d / -g %{name} -s /bin/nologin -r %{name} @@ -396,13 +391,13 @@ FileName=/etc/services newLine="gds_db 3050/tcp # Firebird SQL Database Remote Protocol" oldLine=`grep "^gds_db" $FileName` if [ -z "$oldLine" ]; then - echo $newLine >> $FileName + echo $newLine >> $FileName fi -%post -p /sbin/ldconfig +%post -p /sbin/ldconfig -%postun +%postun /sbin/ldconfig %files @@ -410,66 +405,57 @@ fi %doc doc/license/IDPL.txt %doc doc/license/README.license.usage.txt %doc doc/README.Fedora +%defattr(0755,root,root,0755) +%dir %{fbroot} %defattr(0644,root,root,0755) %dir %attr(0755,root,root) %{_localstatedir}/lib/%{name} %dir %attr(0770,%{name},%{name}) %{_localstatedir}/lib/%{name}/data -%attr(0660,%{name},%{name}) %{_localstatedir}/lib/%{name}/data/employee.fdb +%attr(0660,%{name},%{name}) %{_localstatedir}/lib/%{name}/data/employee.fdb %dir %{_localstatedir}/log/%{name} %dir %{fbroot}/intl +%dir %{fbroot}/UDF +%{fbroot}/UDF/* %dir %{_sysconfdir}/%{name} %config(noreplace) %attr (0600,%{name},%{name}) %{_localstatedir}/lib/%{name}/system/security2.fdb -%{fbroot}/security2.fdb +%{_localstatedir}/lib/%{name}/system/*.msg +%{_localstatedir}/lib/%{name}/system/help.fdb %config(noreplace) %attr (0664,%{name},%{name}) %{_sysconfdir}/%{name}/fbintl.conf %config(noreplace) %attr (0664,%{name},%{name}) %{_sysconfdir}/%{name}/aliases.conf %config(noreplace) %attr (0664,%{name},%{name}) %{_sysconfdir}/%{name}/firebird.conf -%{fbroot}/aliases.conf -%{fbroot}/firebird.conf +%config(noreplace) %attr (0664,%{name},%{name}) %{_sysconfdir}/%{name}/fbtrace.conf %{fbroot}/intl/fbintl.conf -%{fbroot}/firebird.log %config(noreplace) %attr(0664,%{name},%{name}) %{_localstatedir}/log/%{name}/%{name}.log %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/logrotate.d/%{name} -%{fbroot}/*.msg -%{fbroot}/help %{_libdir}/libib_util.so -%{fbroot}/lib/libib_util.so %defattr(0755,root,root,0750) %{fbroot}/intl/fbintl %defattr(0755,root,root,0755) -%{_bindir}/isql-fb -%{_bindir}/gbak -%{_bindir}/gsec -%{_bindir}/gfix -%{_bindir}/nbackup -%{_bindir}/gstat-fb +%{_bindir}/* +%{_sbindir}/fbguard +%{_sbindir}/fb_lock_print %dir %attr(0775,%{name},%{name}) %{_var}/run/%{name} -%defattr(0755,root,root,0755) -%{fbroot}/run - -%files filesystem -%defattr(0644,root,root,0755) -%doc doc/README.Fedora -%defattr(0755,root,root,0755) -%dir %{fbroot} -%dir %{fbroot}/lib %files doc %defattr(0644,root,root,0755) -%doc gen/buildroot-classic%{fbroot}/doc -%doc gen/buildroot-classic%{fbroot}/examples -%doc gen/buildroot-classic%{fbroot}/README -%doc gen/buildroot-classic%{fbroot}/misc/intl.sql -%doc gen/buildroot-classic%{fbroot}/misc/upgrade - - +%doc gen/buildroot-classic%{_defaultdocdir}/%{name} +%doc gen/buildroot-classic%{fbroot}/misc/intl.sql +%doc gen/buildroot-classic%{fbroot}/misc/upgrade +%doc gen/buildroot-classic%{_sysconfdir}/%{name}/README +%doc gen/buildroot-classic%{_sysconfdir}/%{name}/WhatsNew %files devel %defattr(0644,root,root,0755) -%dir %{fbroot}/include -%{fbroot}/include/* -%{fbroot}/lib/*.so -%{_includedir}/* -%{_libdir}/*.so +%dir %{_includedir}/%{name} +%{_includedir}/*.h +%{_includedir}/%{name}/*.h +%{_libdir}/libfb*.so +%{_libdir}/libgds.so +%files filesystem +%defattr(0644,root,root,0755) +%doc doc/README.Fedora +%defattr(0755,root,root,0755) +%dir %{fbroot} %files libfbclient @@ -478,7 +464,6 @@ fi %doc doc/license/README.license.usage.txt %{_libdir}/libfbclient.so.* %{_libdir}/libgds.so.0 -%{fbroot}/lib/libfbclient.so.* %files libfbembed @@ -486,7 +471,6 @@ fi %doc doc/license/IDPL.txt %doc doc/license/README.license.usage.txt %{_libdir}/libfbembed.so.* -%{fbroot}/lib/libfbembed.so.* %files classic @@ -494,33 +478,22 @@ fi %doc doc/license/IDPL.txt %doc doc/license/README.license.usage.txt %config(noreplace) %{_sysconfdir}/xinetd.d/%{name} +%{_sbindir}/fb_inet_server + +%files superclassic +%defattr(0644,root,root,0755) +%doc doc/license/IDPL.txt +%doc doc/license/README.license.usage.txt +%defattr(0755,root,root,0755) +%{_initrddir}/%{name}-superclassic +%{_sbindir}/fb_smp_server + +%files classic-common %dir %{fbroot}/bin-classic -%dir %{fbroot}/UDF-classic +%dir %{fbroot}/plugins-classic %defattr(0755,root,root,0755) -%{fbroot}/bin-classic/changeDBAPassword.sh -%{fbroot}/bin-classic/changeGdsLibraryCompatibleLink.sh -%{fbroot}/bin-classic/changeRunUser.sh -%{fbroot}/bin-classic/createAliasDB.sh -%{fbroot}/bin-classic/fb_config -%{fbroot}/bin-classic/fb_inet_server -%{fbroot}/bin-classic/fb_lock_print -%{fbroot}/bin-classic/fbsvcmgr -%{fbroot}/bin-classic/gbak -%{fbroot}/bin-classic/gdef -%{fbroot}/bin-classic/gds_drop -%{fbroot}/bin-classic/gfix -%{fbroot}/bin-classic/gpre -%{fbroot}/bin-classic/gsec -%{fbroot}/bin-classic/gsplit -%{fbroot}/bin-classic/gstat -%{fbroot}/bin-classic/isql -%{fbroot}/bin-classic/nbackup -%{fbroot}/bin-classic/qli -%{fbroot}/bin-classic/restoreRootRunUser.sh -%attr(6550,root,%{name}) %{fbroot}/bin-classic/fb_lock_mgr -%{fbroot}/UDF-classic/*.so -%defattr(0644,root,root,0755) -%{fbroot}/UDF-classic/*.sql +%{fbroot}/bin-classic/* +%{fbroot}/plugins-classic/* %files superserver @@ -529,16 +502,18 @@ fi %doc doc/license/README.license.usage.txt %defattr(0644,root,root,0755) %dir %{fbroot}/bin-superserver -%dir %{fbroot}/UDF-superserver +%dir %{fbroot}/plugins-superserver %defattr(0755,root,root,0755) -%{_initrddir}/%{name} +%{_initrddir}/%{name}-superserver %{fbroot}/bin-superserver/* -%{fbroot}/UDF-superserver/*.so -%defattr(0644,root,root,0755) -%{fbroot}/UDF-superserver/*.sql +%{fbroot}/plugins-superserver/*.so +%{_sbindir}/fbserver %changelog +* Mon Nov 22 2010 Philippe Makowski 2.5.0.26074.0-0 +- build with last upstream + * Tue Jun 29 2010 Dan HorĂ¡k 2.1.3.18185.0-9 - update the s390(x) patch to match upstream diff --git a/firebird_lock-file-location.patch b/firebird_lock-file-location.patch deleted file mode 100644 index 8205bb3..0000000 --- a/firebird_lock-file-location.patch +++ /dev/null @@ -1,49 +0,0 @@ -# Author: Damyan Ivanov -# Description: use proper Fedora location for lock files, -# control sockets and such ---- src/jrd/file_params.h -+++ src/jrd/file_params.h -@@ -38,11 +38,11 @@ const int EVENT_VERSION = 2; - const int EVENT_SEMAPHORES = 1; - - #ifdef NOHOSTNAME --static const char* EVENT_FILE = "isc_event1"; --static const char* LOCK_FILE = "isc_lock1.gbl"; --static const char* INIT_FILE = "isc_init1"; --static const char* GUARD_FILE = "isc_guard1"; --static const char* MONITOR_FILE = "isc_monitor1"; -+static const char* EVENT_FILE = "run/isc_event1"; -+static const char* LOCK_FILE = "run/isc_lock1.gbl"; -+static const char* INIT_FILE = "run/isc_init1"; -+static const char* GUARD_FILE = "run/isc_guard1"; -+static const char* MONITOR_FILE = "run/isc_monitor1"; - #elif defined(VMS) - static const char* EVENT_FILE = "[000000]isc_event1.%s"; - static const char* LOCK_FILE = "[000000]isc_lock1.%s"; -@@ -56,11 +56,11 @@ static const char* INIT_FILE = "%s.int"; - static const char* GUARD_FILE = "%s.grd"; - static const char* MONITOR_FILE = "%s.mon"; - #else --static const char* EVENT_FILE = "isc_event1.%s"; --static const char* LOCK_FILE = "isc_lock1.%s"; --static const char* INIT_FILE = "isc_init1.%s"; --static const char* GUARD_FILE = "isc_guard1.%s"; --static const char* MONITOR_FILE = "isc_monitor1.%s"; -+static const char* EVENT_FILE = "run/isc_event1.%s"; -+static const char* LOCK_FILE = "run/isc_lock1.%s"; -+static const char* INIT_FILE = "run/isc_init1.%s"; -+static const char* GUARD_FILE = "run/isc_guard1.%s"; -+static const char* MONITOR_FILE = "run/isc_monitor1.%s"; - #endif - - #ifdef sun ---- configure.in -+++ configure.in -@@ -940,6 +940,7 @@ mkdir -p gen/firebird/examples/udf - mkdir -p gen/firebird/lib - mkdir -p gen/firebird/misc - mkdir -p gen/firebird/help -+mkdir -p gen/firebird/run - - dnl #### TEMP ######### directories for .o and .d - dnl # by module name