[firebird] - build with last upstream

Philippe Makowski makowski at fedoraproject.org
Mon Nov 22 15:23:33 UTC 2010


commit 5765c7a60f259b2540ed156dd7dd125a57addf0f
Author: makowski <makowski at fedoraproject.org>
Date:   Mon Nov 22 16:23:34 2010 +0100

    - build with last upstream

 README.Fedora                     |    3 -
 firebird-edit-fix.patch           |   24 --
 firebird-fix-initscript.patch     |   27 --
 firebird-gcc-icu.patch            |   32 --
 firebird-gsec.patch               |   25 --
 firebird-mcpu-to-mtune.patch      |   11 -
 firebird-s390x.patch              |  194 -----------
 firebird.spec                     |  657 ++++++++++++++++++-------------------
 firebird_lock-file-location.patch |   49 ---
 9 files changed, 316 insertions(+), 706 deletions(-)
---
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.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 at COMMON_FLAGS=-m32 at 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 at COMMON_FLAGS=-m32 at COMMON_FLAGS=-m64@" -i ./gen/make.platform 
 %endif
-		
+  
 # Can't use make %{?_smp_mflags} as parallel build is broken
 make
 
 cd gen
-
+sed "s at exit 1@# exit 1@" -i ./install/makeInstallImage.sh
+sed "s at chown@echo ""# chown at g" -i ./install/makeInstallImage.sh
+sed "s at chmod@echo ""# chmod at 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 at COMMON_FLAGS=-m32 at 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 at COMMON_FLAGS=-m32 at 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 at exit 1 at echo ""# exit 1@" -i ./install/makeInstallImage.sh
+sed "s at chown@echo ""# chown at g" -i ./install/makeInstallImage.sh
+sed "s at chmod@echo ""# chmod at 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 at -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 at 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 at chkconfig: 345 at 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 <makowski at fedoraproject.org>  2.5.0.26074.0-0
+- build with last upstream
+
 * Tue Jun 29 2010 Dan Horák <dan[at]danny.cz>  2.1.3.18185.0-9
 - update the s390(x) patch to match upstream
 


More information about the scm-commits mailing list