File mingw64-libnice.spec of Package mingw64-libnice

#
# spec file for package mingw64-libnice
#
# Copyright (c) 2014 SUSE LINUX Products 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:           mingw64-libnice
Version:        0.1.7
Release:        0
Summary:        The GLib ICE implementation
License:        LGPL-2.1+
Group:          Development/Libraries/C and C++
Url:            http://nice.freedesktop.org/
Source0:        libnice-%{version}.tar.gz
Patch0:         libnice-0.1.7.patch
Patch1:         libnice-0.1.7-win64.patch
#!BuildIgnore: post-build-checks
BuildRequires:  autoconf
BuildRequires:  automake
BuildRequires:  glib2-devel >= 2.13
BuildRequires:  gtk-doc
BuildRequires:  libtool
BuildRequires:  mingw64-cross-binutils
BuildRequires:  mingw64-cross-gcc
BuildRequires:  mingw64-cross-pkg-config
BuildRequires:  mingw64-glib2-devel >= 2.13
BuildRequires:  mingw64-gstreamer-0_10-devel >= 0.10.10
BuildRequires:  mingw64-gstreamer-devel >= 1.0.0
%_mingw64_package_header_debug
BuildArch:      noarch

%description
Libnice is an implementation of the IETF's Interactive Connectivity
Establishment (ICE) standard (RFC 5245) and the Session Traversal
Utilities for NAT (STUN) standard (RFC 5389). It provides a
GLib-based library, libnice and a Glib-free library, libstun as well
as GStreamer elements.

%package -n mingw64-libnice10
Summary:        The GLib ICE implementation
Group:          System/Libraries
Obsoletes:      %{name}
Provides:       %{name}

%description -n mingw64-libnice10
Libnice is an implementation of the IETF's Interactive Connectivity
Establishment (ICE) standard (RFC 5245) and the Session Traversal
Utilities for NAT (STUN) standard (RFC 5389). It provides a
GLib-based library, libnice and a Glib-free library, libstun as well
as GStreamer elements.

%package -n mingw64-gstreamer-libnice
Summary:        The GLib ICE implementation (GStreamer 1.0)
Group:          System/Libraries
Supplements:    packageand(mingw64-libnice:mingw64-gstreamer)

%description -n mingw64-gstreamer-libnice
Libnice is an implementation of the IETF's Interactive Connectivity
Establishment (ICE) standard (RFC 5245) and the Session Traversal
Utilities for NAT (STUN) standard (RFC 5389). It provides a
GLib-based library, libnice and a Glib-free library, libstun as well
as GStreamer elements.

%package -n mingw64-gstreamer-0_10-libnice
Summary:        The GLib ICE implementation (GStreamer 0.10)
Group:          System/Libraries
Supplements:    packageand(mingw64-libnice:mingw64-gstreamer-0_10)

%description -n mingw64-gstreamer-0_10-libnice
Libnice is an implementation of the IETF's Interactive Connectivity
Establishment (ICE) standard (RFC 5245) and the Session Traversal
Utilities for NAT (STUN) standard (RFC 5389). It provides a
GLib-based library, libnice and a Glib-free library, libstun as well
as GStreamer elements.

%package devel
Summary:        The GLib ICE implementation (development files)
Group:          Development/Libraries/C and C++

%description devel
Libnice is an implementation of the IETF's Interactive Connectivity
Establishment (ICE) standard (RFC 5245) and the Session Traversal
Utilities for NAT (STUN) standard (RFC 5389). It provides a
GLib-based library, libnice and a Glib-free library, libstun as well
as GStreamer elements.

This package contains all necessary include files and libraries needed
to develop applications that require these.

%package tools
Summary:        The GLib ICE implementation (command line tools)
Group:          Development/Libraries

%description tools
Libnice is an implementation of the IETF's Interactive Connectivity
Establishment (ICE) standard (RFC 5245) and the Session Traversal
Utilities for NAT (STUN) standard (RFC 5389). It provides a
GLib-based library, libnice and a Glib-free library, libstun as well
as GStreamer elements.

This package contains command line tools.

%_mingw64_debug_package

%prep
%setup -q -n libnice-%{version}
%patch -P 0
%patch -P 1

%build
NOCONFIGURE=indeed ./autogen.sh --no-configure
echo "lt_cv_deplibs_check_method='pass_all'" >> %{_mingw64_cache}

%if 0%{?leap_version} == 420300
# fix undefined reference to `__memmove_chk
%global _mingw64_ldflags %{_mingw64_ldflags} -lssp
%endif

PATH="%{_mingw64_bindir}:$PATH"; export PATH; \
PKG_CONFIG_PATH="%{_mingw64_libdir}/pkgconfig:$PKG_CONFIG_PATH"; export PKG_CONFIG_PATH; \
%{_mingw64_configure} \
	--disable-static --enable-shared \
	--with-gstreamer-0.10=yes \
	--with-gstreamer=yes
%{_mingw64_make} %{?_smp_mflags} || %{_mingw64_make}

%install

%{_mingw64_make} DESTDIR=%{buildroot} install

rm %{buildroot}%{_mingw64_bindir}/sdp-example.exe
rm %{buildroot}%{_mingw64_bindir}/simple-example.exe
rm %{buildroot}%{_mingw64_bindir}/threaded-example.exe
rm %{buildroot}%{_mingw64_libdir}/gstreamer-1.0/libgstnice.dll.a
rm %{buildroot}%{_mingw64_libdir}/gstreamer-0.10/libgstnice010.dll.a


%files -n mingw64-libnice10
%defattr(-,root,root)
%{_mingw64_bindir}/libnice-10.dll

%files -n mingw64-gstreamer-libnice
%defattr(-,root,root)
%{_mingw64_libdir}/gstreamer-1.0/libgstnice.dll

%files -n mingw64-gstreamer-0_10-libnice
%defattr(-,root,root)
%{_mingw64_libdir}/gstreamer-0.10/libgstnice010.dll

%files devel
%defattr(-,root,root)
%{_mingw64_includedir}/nice
%{_mingw64_includedir}/stun
%{_mingw64_libdir}/libnice.dll.a
%{_mingw64_libdir}/pkgconfig/nice.pc
%{_mingw64_datadir}/gtk-doc/html/libnice

%files tools
%defattr(-,root,root)
%{_mingw64_bindir}/stunbdc.exe
%{_mingw64_bindir}/stund.exe

%changelog
openSUSE Build Service is sponsored by