Commit 8e1e300e authored by Ghislain MARY's avatar Ghislain MARY

Remove now useless files.

parent 8aade0eb
# LIBLINPHONE SDK FOR BLACKBERRY 10 USING LINPHONE CMAKE BUILDER #
## BUILD PREREQUISITES
The common prerequisites listed in the README file are requested to build the
liblinphone SDK for BlackBerry 10.
You will also need to install the BlackBerry 10 native SDK (Momentics IDE). You
can get it from http://developer.blackberry.com/native/downloads/
/!\ The Blackberry SDK MUST BE at the root of the user home directory and named bbndk /!\
Note that building the liblinphone SDK for BlackBerry 10 requires to be
building on a Linux or Mac OS X computer.
## BUILDING THE SDK
Run the following command after having setup the build prerequisites:
$ ./prepare.py bb10-arm
$ make -C WORK/bb10-arm/cmake
You can add -l to prepare.py script to build using latest sources (might be unstable).
You also can add -d to prepary.py script to build a debug sdk.
If everything is succesful (and after a few minutes) you will find the SDK
folder in the OUTPUT directory.
It contains the header files, the built libraries and the resource files
for ARM or i486 (simulator) architectures needed to build a project based on
linphone.
## OTHER COMMANDS
You can clean the build tree (without deleting the downloaded source code) by
running:
$ ./prepare.py -c bb10-arm
You can clean everything (including the downloaded source code) by running:
$ ./prepare.py -C bb10-arm
# LINPHONE DESKTOP (GTK2) #
## BUILD PREREQUISITES
The common prerequisites listed in the README.md file are requested to build
linphone for desktop.
You will also need to install some additional tools needed during the build
process. On linux, you can generally get them from your distribution. On Mac OS
X, you can get them from MacPorts or Brew. On Windows you will need to download
and install them manually. Here are these tools:
- A C and C++ compiler. On Windows you will need any version of Visual Studio
beginning from the 2008 version.
- Python 2.7.x. On windows, add c:\Python27\Scripts in the PATH.
- Java
- awk (automatically installed when building on Windows)
- sed (automatically installed when building on Windows)
- patch (automatically installed when building on Windows)
- yasm (automatically installed when building on Windows)
- xxd (only for Linux and Mac OS X)
- pkg-config (automatically installed when building on Windows)
- intltoolize (automatically installed when building on Windows)
- doxygen
- dot (graphviz)
- MinGw (only on Windows): Follow the instructions at
http://mingw.org/wiki/Getting_Started
On windows, append the following to your PATH if not the case:
C:\Program Files (x86)\GnuWin32\bin
C:\MinGW\bin
C:\Python27\Scripts
C:\Program Files (x86)\Graphviz2.38
## BUILDING ON LINUX AND MAC OS X
$ ./prepare.py desktop
$ make -C WORK/desktop/cmake
## BUILDING ON WINDOWS
> python prepare.py desktop
Then open the WORK\desktop\cmake\Project.sln Visual Studio solution and build
using the Release configuration.
You can specify the Visual Studio version to be used to build, eg.:
> python prepare.py desktop -G "Visual Studio 12 2013"
# FLEXISIP DEB AND RPM FILES #
## BUILD PREREQUISITES
The common prerequisites listed in the README.md file are needed.
Note that building flexisip packages requires to be building on a Linux host.
### Redhat / RPM-based
sudo yum install @development-tools speex-devel \
hiredis-devel libtool-ltdl-devel libiodbc-devel
make build-flexisip-rpm
### Debian
To be able to build Flexisip debs on a Debian machine, you will have to install
all of these (plus the usual compilation tools):
sudo aptitude install cmake rpm libmysqlclient-dev libmysql++-dev \
libmysqld-dev libssl-dev bison doxygen
sudo aptitude install alien fakeroot libhiredis-dev
make build-flexisip
# LIBLINPHONE SDK FOR IOS #
The Linphone CMake Builder is used to build liblinphone for iOS but is not to
be used directly by the user.
To build for iOS, clone the git://git.linphone.org/linphone-iphone.git
repository and follow the instructions in the README.md file located there.
# LINPHONE CMAKE BUILDER #
Linphone CMake builder is a structure based on CMake to build linphone and
flexisip on various platforms.
## BUILD PREREQUISITES
The common prerequisites to use linphone-cmake-builder are:
- to intall CMake >= 3.0 (available in the package systems of Linux
distributions, in MacPorts for Mac OS X (http://www.macports.org/) and/or from
http://cmake.org/
- to install git (available in the package systems of Linux distributions, in
MacPorts for Mac OS X (http://www.macports.org/) and/or from http://cmake.org/
- on Windows, you also need 7-zip to generate SDK packages
(http://www.7-zip.org/)
## AVAILABLE BUILD TARGETS
The following targets are supported:
- Linphone for desktop platforms - see README.desktop.md
- Liblinphone Python extension module - see README.python.md
- Liblinphone Python extension module for Raspberry PI
- Flexisip and dependencies - see README.flexisip.md
- Linphone for iOS - see README.ios.md
## GETTING HELP ON BUILD OPTIONS WHATEVER THE BUILD TARGET IS
$ ./prepare.py --help
## OpenH264 support
OpenH264 support is enabled in all generated installers and SDK archive.
However, the OpenH264 runtime library must be downloaded directly from
Cisco's website to be complient with H264 patents. In the case of linphone
for desktop, it is automatically done by the Windows and MacOS X installers.
In the case of SDKs of liblinphone and mediastreamer, you must manualy
download the OpenH264 archive and extract it in the "bin" directory of the SDK
distribution and rename the DLL file into "openh264.dll".
The patent-free OpenH264 runtime library archive is available at
http://ciscobinary.openh264.org/openh264-1.4.0-win32msvc.dll.bz2
# LIBLINPHONE PYTHON EXTENSION MODULE #
## BUILD PREREQUISITES
The common prerequisites listed in the README.md file are requested to build
the liblinphone Python extension module.
You will also need to install some additional tools needed during the build
process. On linux, you can generally get them from your distribution. On Mac OS
X, you can get them from MacPorts or Brew. On Windows you will need to download
and install them manually. Here are these tools:
- A C and C++ compiler. On Windows you will need Visual Studio 2008 as it is
the version used by Python.
- Python 2.7.x, with 'pip' command. On windows, add c:\Python27\Scripts in the
PATH.
- Java
- awk (automatically installed when building on Windows)
- sed (automatically installed when building on Windows)
- patch (automatically installed when building on Windows)
- yasm (automatically installed when building on Windows)
- xxd (only for Linux and Mac OS X)
- pkg-config (automatically installed when building on Windows)
- intltoolize (automatically installed when building on Windows)
- doxygen
- dot (graphviz)
- pystache (install with pip install pystache in terminal)
- wheel (install with pip install wheel in terminal)
- MinGw (only on Windows): Follow the instructions at
http://mingw.org/wiki/Getting_Started
On windows, append the following to your PATH if not the case:
C:\Program Files (x86)\GnuWin32\bin
C:\MinGW\bin
C:\Python27\Scripts
C:\Program Files (x86)\Graphviz2.38
Once done, within the system's shell (unix terminal, windows cmd), place into
the root of linphone-cmake-builder project and run the following commands:
## BUILDING THE SDK ON LINUX AND MAC OS X
$ ./prepare.py python
$ make -C WORK/python/cmake
If everything is successful (and after a few minutes) you will find the Python
wheel package of the liblinphone Python extension module in the OUTPUT
directory.
## BUILDING THE SDK ON WINDOWS
Run the following command in Windows command prompt after having setup the
build prerequisites:
> python prepare.py python
Then open the WORK\python\cmake\Project.sln Visual Studio solution and build
using the Release configuration.
If everything is successful (and after a few minutes) you will find the Python
wheel package and installers of the liblinphone Python extension module in the
OUTPUT directory.
......@@ -51,8 +51,7 @@ endif()
lcb_cmake_options(
"-DENABLE_TRANSCODER=${ENABLE_TRANSCODER}"
"-DENABLE_ODB=${ENABLE_ODB}"
"-DENABLE_ODBC=${ENABLE_ODBC}"
"-DENABLE_ODBC=NO"
"-DENABLE_REDIS=${ENABLE_REDIS}"
"-DENABLE_SOCI=${ENABLE_SOCI}"
"-DENABLE_PUSHNOTIFICATION=${ENABLE_PUSHNOTIFICATION}"
......
############################################################################
# libodb.cmake
# Copyright (C) 2014 Belledonne Communications, Grenoble France
#
############################################################################
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
############################################################################
set(libodb_filename "libodb-2.3.0.tar.bz2")
set(EP_libodb_URL "http://www.codesynthesis.com/download/odb/2.3/${libodb_filename}")
set(EP_libodb_URL_HASH "SHA1=eebc7fa706bc598a80439d1d6a798430fcfde23b")
set(EP_libodb_BUILD_METHOD "rpm")
set(EP_libodb_SPEC_FILE "libodb.spec" )
set(EP_libodb_CONFIG_H_FILE "${CMAKE_CURRENT_SOURCE_DIR}/builders/libodb/${EP_libodb_SPEC_FILE}" )
set(EP_libodb_DEPENDENCIES EP_odb)
#create source dir and copy the tar.gz inside
set(EP_libodb_PATCH_COMMAND "${CMAKE_COMMAND}" "-E" "make_directory" "${LINPHONE_BUILDER_WORK_DIR}/rpmbuild/SOURCES/")
set(EP_libodb_PATCH_COMMAND ${EP_libodb_PATCH_COMMAND} "COMMAND" "${CMAKE_COMMAND}" "-E" "copy" "${LINPHONE_BUILDER_WORK_DIR}/Download/EP_libodb/${libodb_filename}" "${LINPHONE_BUILDER_WORK_DIR}/rpmbuild/SOURCES/")
set(EP_libodb_PATCH_COMMAND ${EP_libodb_PATCH_COMMAND} "COMMAND" "${CMAKE_COMMAND}" "-E" "copy" ${EP_libodb_CONFIG_H_FILE} "<BINARY_DIR>")
Name: libodb
Version: 2.3.0
Release: 3%{?dist}
Summary: Common ODB runtime library from Code Synthesis
Group: System Environment/Libraries
License: GPLv2
URL: http://www.codesynthesis.com/products/odb/
Source0: http://www.codesynthesis.com/download/odb/2.3/%{name}-%{version}.tar.bz2
# Set BuildRoot for compatibility with EPEL <= 5
# See: http://fedoraproject.org/wiki/EPEL:Packaging#BuildRoot_tag
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# Uses pkgconfig
BuildRequires: pkgconfig
%description
ODB is an object-relational mapping (ORM) system for C++. It provides
tools, APIs, and library support that allow you to persist C++ objects
to a relational database (RDBMS) without having to deal with tables,
columns, or SQL and without manually writing any of the mapping code.
This package contains the common ODB runtime library. Every application
that includes code generated by the ODB compiler will need to link to
this library.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%setup -q
%build
%configure --disable-static
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc GPLv2
%doc LICENSE
%{_libdir}/libodb-2.3.so
# Exclude the documentation that doesn't need to be packaged
%exclude %{_datadir}/doc/libodb/GPLv2
%exclude %{_datadir}/doc/libodb/LICENSE
%exclude %{_datadir}/doc/libodb/NEWS
%exclude %{_datadir}/doc/libodb/README
%exclude %{_datadir}/doc/libodb/version
%files devel
%doc NEWS
%{_includedir}/odb/
%{_libdir}/libodb.so
%{_libdir}/pkgconfig/libodb.pc
%changelog
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Nov 4 2013 Dave Johansen <davejohansen@gmail.com> 2.3.0-1
- Updated to 2.3.0
* Tue Jul 23 2013 Dave Johansen <davejohansen@gmail.com> 2.2.3-1
- Initial build
############################################################################
# libodbmysql.cmake
# Copyright (C) 2014 Belledonne Communications, Grenoble France
#
############################################################################
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
############################################################################
set(libodbmysql_filename "libodb-mysql-2.3.0.tar.bz2")
set(EP_libodbmysql_URL "http://www.codesynthesis.com/download/odb/2.3/${libodbmysql_filename}")
set(EP_libodbmysql_URL_HASH "SHA1=18adaa5535015e3471a5d205e44df42f0e3a3d37")
set(EP_libodbmysql_BUILD_METHOD "rpm")
set(EP_libodbmysql_SPEC_FILE "libodbmysql.spec" )
set(EP_libodbmysql_CONFIG_H_FILE "${CMAKE_CURRENT_SOURCE_DIR}/builders/libodbmysql/${EP_libodbmysql_SPEC_FILE}" )
set(EP_libodbmysql_DEPENDENCIES EP_libodb)
set(EP_libodbmysql_RPMBUILD_NAME "libodb-mysql")
#create source dir and copy the tar.gz inside
set(EP_libodbmysql_PATCH_COMMAND "${CMAKE_COMMAND}" "-E" "make_directory" "${LINPHONE_BUILDER_WORK_DIR}/rpmbuild/SOURCES/")
set(EP_libodbmysql_PATCH_COMMAND ${EP_libodbmysql_PATCH_COMMAND} "COMMAND" "${CMAKE_COMMAND}" "-E" "copy" "${LINPHONE_BUILDER_WORK_DIR}/Download/EP_libodbmysql/${libodbmysql_filename}" "${LINPHONE_BUILDER_WORK_DIR}/rpmbuild/SOURCES/")
set(EP_libodbmysql_PATCH_COMMAND ${EP_libodbmysql_PATCH_COMMAND} "COMMAND" "${CMAKE_COMMAND}" "-E" "copy" ${EP_libodbmysql_CONFIG_H_FILE} "<BINARY_DIR>")
Name: libodb-mysql
Version: 2.3.0
Release: 1%{?dist}
Summary: MySQL ODB runtime library from Code Synthesis
Group: System Environment/Libraries
License: GPLv2
URL: http://www.codesynthesis.com/products/odb/
Source0: http://www.codesynthesis.com/download/odb/2.3/%{name}-%{version}.tar.bz2
# Set BuildRoot for compatibility with EPEL <= 5
# See: http://fedoraproject.org/wiki/EPEL:Packaging#BuildRoot_tag
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# Uses libodb from Code Synthesis
BuildRequires: libodb-devel >= 2.3.0
# Uses MySQL
BuildRequires: mysql-devel
# Uses pkgconfig
BuildRequires: pkgconfig
%description
ODB is an object-relational mapping (ORM) system for C++. It provides
tools, APIs, and library support that allow you to persist C++ objects
to a relational database (RDBMS) without having to deal with tables,
columns, or SQL and without manually writing any of the mapping code.
This package contains the MySQL ODB runtime library. Every application
that includes code generated for the MySQL database will need to link
to this library.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%setup -q
%build
%configure --disable-static
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc GPLv2
%doc LICENSE
%{_libdir}/libodb-mysql-2.3.so
# Exclude the documentation that doesn't need to be packaged
%exclude %{_datadir}/doc/libodb-mysql/GPLv2
%exclude %{_datadir}/doc/libodb-mysql/LICENSE
%exclude %{_datadir}/doc/libodb-mysql/NEWS
%exclude %{_datadir}/doc/libodb-mysql/README
%exclude %{_datadir}/doc/libodb-mysql/version
%files devel
%doc NEWS
# odb folder is created/owned by libodb package
%{_includedir}/odb/*
%{_libdir}/libodb-mysql.so
%{_libdir}/pkgconfig/libodb-mysql.pc
%changelog
* Mon Nov 4 2013 Dave Johansen <davejohansen@gmail.com> 2.3.0-1
- Updated to 2.3.0
* Tue Jul 23 2013 Dave Johansen <davejohansen@gmail.com> 2.2.0-1
- Initial build
############################################################################
# myodbc.cmake
# Copyright (C) 2014 Belledonne Communications, Grenoble France
#
############################################################################
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
############################################################################
set(EP_myodbc_GIT_REPOSITORY "git://git.linphone.org/myodbc.git" CACHE STRING "myodbc repository URL")
set(EP_myodbc_GIT_TAG_LATEST "master" CACHE STRING "myodbc tag to use when compiling latest version")
set(EP_myodbc_GIT_TAG "4bc36b6d5d6e2ca67d1bc5a3bab7728853f2a683" CACHE STRING "myodbc tag to use")
set(EP_myodbc_DEPENDENCIES EP_unixodbc)
set(EP_myodbc_SPEC_FILE "scripts/myodbc3.spec")
set(EP_myodbc_CONFIG_H_FILE "scripts/myodbc3.spec")
set(EP_myodbc_CONFIGURE_EXTRA_CMD "cd scripts && make && cd -")
set(EP_myodbc_RPMBUILD_NAME "mysql-connector")
set(EP_myodbc_CMAKE_OPTIONS "-DWITH_UNIXODBC=1")
############################################################################
# odb.cmake
# Copyright (C) 2014 Belledonne Communications, Grenoble France
#
############################################################################
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
############################################################################
set(odb_filename "odb-2.3.0.tar.bz2")
set(EP_odb_URL "http://www.codesynthesis.com/download/odb/2.3/${odb_filename}")
set(EP_odb_URL_HASH "SHA1=fe18c7154085afec23c18aa940f168de7068f6f3")
set(EP_odb_BUILD_METHOD "rpm")
set(EP_odb_SPEC_FILE "odb.spec" )
set(EP_odb_CONFIG_H_FILE "${CMAKE_CURRENT_SOURCE_DIR}/builders/odb/${EP_odb_SPEC_FILE}" )
set(EP_odb_RPMBUILD_NAME "odb_")
#create source dir and copy the tar.gz inside
set(EP_odb_PATCH_COMMAND "${CMAKE_COMMAND}" "-E" "make_directory" "${LINPHONE_BUILDER_WORK_DIR}/rpmbuild/SOURCES/")
set(EP_odb_PATCH_COMMAND ${EP_odb_PATCH_COMMAND} "COMMAND" "${CMAKE_COMMAND}" "-E" "copy" "${LINPHONE_BUILDER_WORK_DIR}/Download/EP_odb/${odb_filename}" "${LINPHONE_BUILDER_WORK_DIR}/rpmbuild/SOURCES/")
set(EP_odb_PATCH_COMMAND ${EP_odb_PATCH_COMMAND} "COMMAND" "${CMAKE_COMMAND}" "-E" "copy" ${EP_odb_CONFIG_H_FILE} "<BINARY_DIR>")
set(EP_odb_CONFIGURE_COMMAND_SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/builders/odb/configure.sh.cmake)
set(EP_odb_BUILD_COMMAND_SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/builders/odb/build.sh.cmake)
set(EP_odb_INSTALL_COMMAND_SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/builders/odb/install.sh.cmake)
#!/bin/sh
export RPM_TOPDIR="@LINPHONE_BUILDER_WORK_DIR@/rpmbuild/RPMS/x86_64"
export ODB_RPM_URL="http://www.codesynthesis.com/download/odb/2.3/odb-2.3.0-1.x86_64.rpm"
mkdir -p "$RPM_TOPDIR"
wget "$ODB_RPM_URL" -P "$RPM_TOPDIR"
\ No newline at end of file
#!/bin/sh
export CC="@AUTOTOOLS_C_COMPILER@"
export CXX="@AUTOTOOLS_CXX_COMPILER@"
export OBJC="@AUTOTOOLS_OBJC_COMPILER@"
export LD="@AUTOTOOLS_LINKER@"
export AR="@AUTOTOOLS_AR@"
export RANLIB="@AUTOTOOLS_RANLIB@"
export STRIP="@AUTOTOOLS_STRIP@"
export NM="@AUTOTOOLS_NM@"
export ASFLAGS="@ep_asflags@"
export CPPFLAGS="@ep_cppflags@"
export CFLAGS="@ep_cflags@"
export CXXFLAGS="@ep_cxxflags@"
export OBJCFLAGS="@ep_objcflags@"
export LDFLAGS="@ep_ldflags@"
export PKG_CONFIG="@LINPHONE_BUILDER_PKG_CONFIG@"
export PKG_CONFIG_PATH="@LINPHONE_BUILDER_PKG_CONFIG_PATH@"
export PKG_CONFIG_LIBDIR="@LINPHONE_BUILDER_PKG_CONFIG_LIBDIR@"
export RPM_TOPDIR="@LINPHONE_BUILDER_WORK_DIR@/rpmbuild"
if [ "@PLATFORM@" = "Debian" ]; then
DEBS_TOPDIR="$RPM_TOPDIR/DEBS"
mkdir -p "$DEBS_TOPDIR" && cd "$DEBS_TOPDIR"
find "$RPM_TOPDIR/RPMS" -iname "odb-*.rpm" -exec fakeroot alien -d {} +
find "$DEBS_TOPDIR" -iname "odb-*.deb" -exec sudo dpkg -i {} +
else
find "$RPM_TOPDIR/RPMS" -iname "odb-*.rpm" -exec sudo rpm -ivh --force {} +
fi
Name: odb
Version: 2.3.0
Release: 3%{?dist}
Summary: Object-relational mapping (ORM) system for C++
Group: Development/Tools
License: GPLv3
URL: http://www.codesynthesis.com/products/odb/
Source0: http://www.codesynthesis.com/download/odb/2.3/%{name}-%{version}.tar.bz2
# Set BuildRoot for compatibility with EPEL <= 5
# See: http://fedoraproject.org/wiki/EPEL:Packaging#BuildRoot_tag
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# If building on Fedora or RHEL 7
%if 0%{?rhel}%{?fedora} >= 7
# Then it just needs to be at least gcc 4.5.0 for plugin support
BuildRequires: gcc-c++ >= 4.5.0
BuildRequires: gcc-plugin-devel
%else
# Otherwise, use devtoolset on RHEL 5/6 because it supports plugins
BuildRequires: devtoolset-1.1-binutils
BuildRequires: devtoolset-1.1-gcc-c++
BuildRequires: devtoolset-1.1-gcc-plugin-devel
# Also list gmp-devel since devtoolset-gcc-plugin-devel should list it as a requirement but doesn't
# See: https://bugzilla.redhat.com/show_bug.cgi?id=908577
BuildRequires: gmp-devel
%endif
# Uses libcutl from Code Synthesis
BuildRequires: libcutl-devel >= 1.8.0
# Uses pkgconfig
BuildRequires: pkgconfig
# Uses expat
BuildRequires: expat-devel
# If building on Fedora or RHEL 7
%if 0%{?rhel}%{?fedora} >= 7
#Then odb uses the gcc plugin directory
%define ODB_PLUGIN_DIR %(g++ -print-file-name=plugin)
%else
# Otherwise, it just uses the system directory
%define ODB_PLUGIN_DIR %{_libexecdir}/odb/
%endif
%description
ODB is an object-relational mapping (ORM) system for C++. It provides
tools, APIs, and library support that allow you to persist C++ objects
to a relational database (RDBMS) without having to deal with tables,
columns, or SQL and without manually writing any of the mapping code.
%prep
%setup -q
# Set the path to the default.options file
#define
%define odb_default_options_dir %{_sysconfdir}/%{name}
%define odb_default_options_file %{odb_default_options_dir}/default.options
%build
# If building on Fedora or RHEL 7
%if 0%{?rhel}%{?fedora} >= 7
# Then do standard build
%configure --disable-static --with-options-file=%{odb_default_options_file}
%else
# Otherwise, use devtoolset on RHEL 5/6 to get a version of gcc that supports plugins
source /opt/rh/devtoolset-1.1/enable
# Add the explicit linking of pthread library because of a toolchain issue
# See: http://www.codesynthesis.com/pipermail/odb-users/2013-February/001103.html
%configure --disable-static LIBS="-lpthread" --with-options-file=%{odb_default_options_file}
%endif
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
# Add the .conf file
mkdir -p $RPM_BUILD_ROOT/%{odb_default_options_dir}
echo "# Default ODB options file. This file is automatically loaded by the ODB
# compiler and can be used for installation-wide customizations, such as
# adding an include search path for a commonly used library. For example:
# -I %{_includedir}/boost141
#" > $RPM_BUILD_ROOT/%{odb_default_options_file}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%config(noreplace) %{odb_default_options_file}
%doc GPLv3
%doc LICENSE
%doc NEWS
%doc doc/default.css
%doc doc/manual.xhtml
%doc doc/odb-arch.png
%doc doc/odb-flow.png
%doc doc/odb-manual.pdf
%doc doc/odb-manual.ps
%doc doc/odb.xhtml
%{_bindir}/odb
%{ODB_PLUGIN_DIR}
%{_mandir}/man1/odb.1
# Exclude the documentation that doesn't need to be packaged
%exclude %{_datadir}/doc/odb/GPLv3
%exclude %{_datadir}/doc/odb/LICENSE
%exclude %{_datadir}/doc/odb/NEWS
%exclude %{_datadir}/doc/odb/README
%exclude %{_datadir}/doc/odb/default.css
%exclude %{_datadir}/doc/odb/manual.xhtml
%exclude %{_datadir}/doc/odb/odb-arch.png
%exclude %{_datadir}/doc/odb/odb-flow.png
%exclude %{_datadir}/doc/odb/odb-manual.pdf
%exclude %{_datadir}/doc/odb/odb-manual.ps
%exclude %{_datadir}/doc/odb/odb.xhtml
%exclude %{_datadir}/doc/odb/version
%changelog
* Wed Jul 2 2014 Dave Johansen <davejohansen@gmail.com> 2.3.0-3
- Rebuild for gcc 4.8.3
* Wed May 28 2014 Dave Johansen <davejohansen@gmail.com> 2.3.0-2
- Adding expat-devel as BuildRequires
* Mon Nov 4 2013 Dave Johansen <davejohansen@gmail.com> 2.3.0-1
- Updated to 2.3.0
* Tue Jul 23 2013 Dave Johansen <davejohansen@gmail.com> 2.2.2-1
- Initial build
############################################################################
# unixodbc.cmake
# Copyright (C) 2014 Belledonne Communications, Grenoble France
#
############################################################################
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software