File firebird-classic.spec of Package firebird
#
# spec file for package firebird-classic
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define upversion 2.5.6.27020
%define pkgversion Firebird-%{upversion}-0
%define bname firebird
%if 0%{?suse_version} < 1130
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%endif
Name: firebird-classic
Version: %{upversion}
Release: 0
Source: %{pkgversion}.tar.xz
Source99: baselibs.conf
Url: http://www.firebirdsql.org/
BuildRequires: gcc-c++
BuildRequires: libedit-devel
BuildRequires: libicu-devel
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: pkg-config
BuildRequires: xz
%ifnarch %{ix86} x86_64
BuildRequires: libatomic-ops-devel
%endif
Conflicts: %{bname}-superserver
Requires(pre): pwdutils
Requires: %{bname} = %{version}
Provides: %{bname}-server
Summary: Classic architecture binaries for SQL database server
License: SUSE-IDPL-1.0 and SUSE-IBPL-1.0
Group: Productivity/Databases/Servers
# SUSE specific patches
Patch1: allow-creating-buildRoot-as-non-root-user.patch
Patch2: fbguard-allow-creating-a-guard-pidfile.patch
Patch3: use-killproc-in-stop-branch-of-SuSE-init-script.patch
Patch4: disable-xinetd-service-by-default.patch
Patch5: do-not-use-DatabaseAccess-Full-in-default-config.patch
Patch6: add-pkgconfig-files.patch
# backport from upstream 3.0 branch
Patch21: Fixed-CORE-3431-ISQL-pads-UTF-8-data-incorrectly.patch
Patch22: isql-fix-output-if-charset-is-different-from-locale.patch
Patch23: isql-fix-buffer-overflow-when-set-width-sets-bigger-.patch
# SUSE only, 2.5 only
Patch31: add-experimental-support-for-m68k-architecture.patch
# bug fixes
Patch41: Backported-fix-for-CORE-5474-Restrict-UDF-is-not-eff.patch
%description
Classic architecture binaries for Firebird SQL server. These can be used
either for Classic (separate processes run by (x)inetd) or SuperClassic
(one multithreaded daemon with per-connection cache and shared locking
system) model.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, 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.
%prep
%setup -q -n %{pkgversion}
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch31 -p1
%patch41 -p1
%build
rm -vf builds/make.new/config/config.{guess,sub}
./autogen.sh --prefix=%{_prefix} \
--with-system-icu --with-system-editline \
--with-fbbin=%{_bindir} --with-fbsbin=%{_sbindir} \
--with-fbconf=%{_sysconfdir}/%{bname} \
--with-fblib=%{_libdir} --with-fbinclude=%{_includedir}/%{bname} \
--with-fbdoc=%{_docdir}/%{bname} \
--with-fbudf=%{_libdir}/%{bname}/udf \
--with-fbsample=%{_docdir}/%{bname}/sample \
--with-fbsample-db=%{_libdir}/%{bname}/sample \
--with-fbhelp=%{_libdir}/%{bname}/lib \
--with-fbintl=%{_libdir}/%{bname}/intl \
--with-fbmisc=%{_datadir}/%{bname}/misc \
--with-fbsecure-db=%{_localstatedir}/lib/%{bname}/secdb \
--with-fbmsg=%{_libdir}/%{bname}/lib \
--with-fblog=%{_localstatedir}/log/%{bname} \
--with-fbglock=%{_localstatedir}/run/%{bname} \
--with-fbplugins=%{_libdir}/%{bname}/plugins
make %{?jobs:CPU=%jobs}
cd gen
make -f Makefile.install buildRoot
chmod -R u+w buildroot%{_docdir}/%{bname}
%install
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
cp gen/buildroot%{_bindir}/* ${RPM_BUILD_ROOT}%{_bindir}/
mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
cp gen/buildroot%{_sbindir}/* ${RPM_BUILD_ROOT}%{_sbindir}/
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
cp -a gen/buildroot%{_libdir}/libfbembed.so* ${RPM_BUILD_ROOT}%{_libdir}/
mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/xinetd.d
cp gen/buildroot%{_datadir}/%{bname}/misc/firebird.xinetd \
${RPM_BUILD_ROOT}%{_sysconfdir}/xinetd.d/%{bname}
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}/pkgconfig
cp -v gen/install/misc/*.pc ${RPM_BUILD_ROOT}%{_libdir}/pkgconfig/
cd ${RPM_BUILD_ROOT}
rm -vf .%{_sbindir}/*.sh
rm -vf .%{_sbindir}/fbguard
rm -vf .%{_sbindir}/fb_config
mv -v .%{_bindir}/isql .%{_bindir}/isql-fb
mv -v .%{_bindir}/gstat .%{_bindir}/gstat-fb
%files
%defattr(-,root,root)
%{_bindir}/*
%{_sbindir}/*
%config(noreplace) %{_sysconfdir}/xinetd.d/%{bname}
# ----------------------------------------------------------------------------
%package -n libfbembed2_5
Summary: Firebird SQL server embedded client library
Group: Development/Libraries/C and C++
%description -n libfbembed2_5
Shared embedded client library for Firebird SQL server.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, 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.
%files -n libfbembed2_5
%defattr(-,root,root)
%{_libdir}/libfbembed.so.*
%post -n libfbembed2_5
/sbin/ldconfig
%postun -n libfbembed2_5
/sbin/ldconfig
# ----------------------------------------------------------------------------
%package -n libfbembed-devel
Summary: Development files for Firebird SQL server embedded client library
Group: Development/Libraries/C and C++
Requires: %{bname}-devel
Requires: libfbembed2_5 = %{version}
%description -n libfbembed-devel
Development files for Firebird SQL server embedded client library.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, 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.
%files -n libfbembed-devel
%defattr(-,root,root)
%{_libdir}/libfbembed.so
%{_libdir}/pkgconfig/fbembed.pc
%changelog