LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File freetds.spec of Package freetds (Project home:paddg)

#
# spec file for package freetds
#
# Copyright (c) 2015 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/
#


Name:           freetds
Version:        0.91.112
Release:        0
Summary:        A free re-implementation of the TDS (Tabular Data Stream) protocol
License:        LGPL-2.1+ and GPL-2.0+
Group:          Productivity/Databases/Clients
Url:            http://www.freetds.org/
Source:         ftp://ftp.freetds.org/pub/freetds/stable/%{name}-%{version}.tar.gz
BuildRequires:  fdupes
BuildRequires:  gcc-c++
BuildRequires:  libtool
BuildRequires:  unixODBC-devel
Requires:       glibc-locale
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
FreeTDS is a project to document and implement the TDS (Tabular Data Stream)
protocol. TDS is used by Sybase and Microsoft for client to database server
communications. FreeTDS includes call level interfaces for DB-Lib, CT-Lib,
and ODBC.

%package config
Summary:        A free re-implementation of the TDS (Tabular Data Stream) protocol
License:        LGPL-2.1+
Group:          Productivity/Databases/Clients
Obsoletes:      libfreetds < %{version}
Provides:       %{name} = %{version}
Provides:       libfreetds = %{version}
Obsoletes:      %{name} < %{version}

%description config
FreeTDS is a project to document and implement the TDS (Tabular Data Stream)
protocol. TDS is used by Sybase and Microsoft for client to database server
communications.

This subpackage contains default configuration files and documentation for
them.

%package    tools
Summary:        Applications for working with the TDS (Tabular Data Stream) protocol
License:        LGPL-2.1+ and GPL-2.0+
Group:          Productivity/Databases/Clients

%description tools
FreeTDS is a project to document and implement the TDS (Tabular Data Stream)
protocol. TDS is used by Sybase and Microsoft for client to database server
communications. FreeTDS includes call level interfaces for DB-Lib, CT-Lib,
and ODBC.

This package provides application to allow users to make use of the protocol.

%package    devel
Summary:        Include files needed for development with FreeTDS
License:        LGPL-2.1+
Group:          Development/Libraries/C and C++
Requires:       libct4 = %{version}
Requires:       libsybdb5 = %{version}
Requires:       libtdsodbc0 = %{version}

%description devel
The freetds-devel package contains the files necessary for development with
the FreeTDS libraries.

%package -n libct4
Summary:        FreeTDS standalone driver with modern API
License:        LGPL-2.1+
Group:          System/Libraries

%description -n libct4
ct-lib refers to Sybase's second-generation API, which fixes a number
of implementation and conceptual gaps in db-lib (libsybdb). libct is
not the most complete implementation yet.

%package -n libsybdb5
Summary:        FreeTDS standalone driver with classic API
License:        LGPL-2.1+
Group:          System/Libraries

%description -n libsybdb5
db-lib is the oldest and simplest API, and the only API supported by
both vendors, which has some relevance when porting applications that
use the vendors' libraries. db-lib was the first API implemented by
FreeTDS, and is still the best one supported. Anything that can be
done in FreeTDS can be done through db-lib.

%package    -n libtdsodbc0
Summary:        FreeTDS ODBC Driver for unixODBC
License:        LGPL-2.1+
Group:          Productivity/Databases/Clients
Requires:       unixODBC >= 2.0.0

%description -n libtdsodbc0
The ODBC drivers is the FreeTDS's project most recent addition. Its
chief advantage is that it makes FreeTDS servers look like other ODBC
servers, a big help to people who know ODBC and/or write applications
for several kinds of servers.

%package    doc
Summary:        User documentation for FreeTDS
License:        LGPL-2.1+ and GPL-2.0+
Group:          Documentation/HTML

%description doc
The freetds-doc package contains the useguide and reference of FreeTDS
and can be installed even if FreeTDS main package is not installed

%prep
%setup -q

%build
%configure \
    --with-unixodbc=%{_prefix} \
    --enable-threadsafe \
    --sysconfdir=%{_sysconfdir} \
    --with-tdsver=4.2 \
    --disable-static \
    --with-pic
make %{?_smp_mflags} RPM_OPT_FLAGS="%{optflags}"

%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print

# Fix docu location
mkdir -p %{buildroot}%{_docdir}/freetds/
mv %{buildroot}%{_datadir}/doc/freetds-*/* %{buildroot}%{_docdir}/freetds/
rm -rf %{buildroot}%{_docdir}/freetds-* %{buildroot}/%{_datadir}/doc/freetds-*
cp AUTHORS "%{buildroot}/%{_defaultdocdir}/%{name}/"

%fdupes %{buildroot}/%{_prefix}

%post   -n libct4 -p /sbin/ldconfig

%postun -n libct4 -p /sbin/ldconfig

%post   -n libsybdb5 -p /sbin/ldconfig

%postun -n libsybdb5 -p /sbin/ldconfig

%post -n libtdsodbc0
echo "[FreeTDS]
Description = FreeTDS unixODBC Driver
Driver = %{_libdir}/libtdsodbc.so.0
Setup = %{_libdir}/libtdsodbc.so.0" | odbcinst -i -d -r || true
echo "[SQL Server]
Description = FreeTDS unixODBC Driver
Driver = %{_libdir}/libtdsodbc.so.0
Setup = %{_libdir}/libtdsodbc.so.0" | odbcinst -i -d -r || true
/sbin/ldconfig

%postun -n libtdsodbc0 -p /sbin/ldconfig

%preun -n libtdsodbc0
odbcinst -u -d -n 'FreeTDS'
odbcinst -u -d -n 'SQL Server'

%files config
%defattr(-,root,root)
%config %{_sysconfdir}/*
%{_mandir}/man5/*.5.gz

%files tools
%defattr (-,root,root)
%{_bindir}/*
%{_mandir}/man1/*.1.gz

%files devel
%defattr (-,root,root)
%doc BUGS COPYING* NEWS README TODO
%{_libdir}/*.so
%{_includedir}/*

%files -n libct4
%defattr(-,root,root)
%{_libdir}/libct.so.4*

%files -n libsybdb5
%defattr(-,root,root)
%{_libdir}/libsybdb.so.5*

%files -n libtdsodbc0
%defattr(-,root,root)
%{_libdir}/libtdsodbc.so.*

%files doc
%defattr (-,root,root)
%{_defaultdocdir}/freetds/

%changelog