File midori.spec of Package midori

#
# spec file for package midori
#
# Copyright (c) 2013 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:           midori
Version:        0.4.8
Release:        0
Summary:        Lightweight Webkit-based Web Browser
License:        LGPL-2.1
Group:          Productivity/Networking/Web/Browsers
Url:            http://twotoasts.de/index.php?/pages/midori_summary.html
Source:         http://archive.xfce.org/src/apps/%{name}/0.4/%{name}-%{version}.tar.bz2
# PATCH-FIX-UPSTREAM midori-work-around-vala-storing-uint64-in-pointer.patch lp#1053386 gber@opensuse.org -- Work around vala trying to store a uint64 in a pointer
Patch0:         midori-work-around-vala-storing-uint64-in-pointer.patch
# PATCH-FIX-OPENSUSE midori-fix-desktop-files.patch gber@opensuse.org -- Fix desktop file according to openSUSE policy
Patch1:         midori-fix-desktop-files.patch
# PATCH-FIX-OPENSUSE midori-fix-docdir.patch lp#1130297 gber@opensuse.org -- Fix hardcoded docdir
Patch2:         midori-fix-docdir.patch
BuildRequires:  docutils
BuildRequires:  gtk-doc
BuildRequires:  intltool
BuildRequires:  python
# for rsvg-convert utility
BuildRequires:  rsvg-view
BuildRequires:  update-desktop-files
# for valac
BuildRequires:  vala >= 0.14
BuildRequires:  pkgconfig(gcr-3)
BuildRequires:  pkgconfig(gio-2.0)
BuildRequires:  pkgconfig(gmodule-2.0)
BuildRequires:  pkgconfig(gthread-2.0)
BuildRequires:  pkgconfig(gtk+-2.0)
BuildRequires:  pkgconfig(javascriptcoregtk-1.0)
BuildRequires:  pkgconfig(libnotify)
BuildRequires:  pkgconfig(libsoup-2.4)
BuildRequires:  pkgconfig(libxml-2.0)
BuildRequires:  pkgconfig(sqlite3)
BuildRequires:  pkgconfig(unique-1.0)
BuildRequires:  pkgconfig(webkit-1.0)
BuildRequires:  pkgconfig(x11)
BuildRequires:  pkgconfig(xscrnsaver)
BuildRequires:  pkgconfig(zeitgeist-1.0) >= 0.3.14
Requires:       %{name}-branding = %{version}
Recommends:     %{name}-lang = %{version}
Recommends:     ca-certificates
Recommends:     xdg-utils
Provides:       browser(npapi)
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
Midori is a lightweight web browser based on WebKit and GTK+. Its major
features are:

* Tabs, windows and session management.
* Flexibly configurable Web Search.
* User scripts and user styles support.
* Straightforward bookmark management.
* Customizable and extensible interface.
* Extensions written in C and Vala.

%package devel
Summary:        Development Files for Midori
Group:          Development/Libraries/C and C++
Recommends:     vala >= 0.14

%description devel
This package contains development files needed to develop extensions for
Midori.

%package branding-upstream
Summary:        Upstream Branding of Midori
Group:          Productivity/Networking/Web/Browsers
# BRAND: config: Controls default browser settings such as the homepage.
# BRAND: search: Controls the default search engines.
Conflicts:      otherproviders(%{name}-branding)
Provides:       %{name}-branding = %{version}
Supplements:    packageand(%{name}:branding-upstream)
BuildArch:      noarch

%description branding-upstream
This package provides the upstream look and feel for the Midori web browser.

%lang_package

%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1

%build
export CCFLAGS="%{optflags}"
# --debug-level=debug is the default an partially overrides CFLAGS
# by specifiying --docdir the HTML help is found in the right location
./waf configure \
    --nocache \
    --enable-apidocs \
    --debug-level=none \
    --prefix=%{_prefix} \
    --sysconfdir=%{_sysconfdir} \
    --localstatedir=%{_localstatedir} \
    --libdir=%{_libdir} \
    --mandir=%{_mandir} \
    --docdir=%{_defaultdocdir}/%{name}
./waf build -v --nocache %{?_smp_mflags}

%install
./waf install --nocache --destdir=%{buildroot}

# documentation files are included below
rm -rf %{buildroot}%{_defaultdocdir}/%{name}

# upstream does not provide a default configuration file
cat >%{buildroot}%{_sysconfdir}/xdg/midori/config <<EOF
[settings]
EOF

# API doc needs to be installed manually
install -d -m 755 %{buildroot}%{_datadir}/gtk-doc/html/%{name}
install -p -m 644 _build/docs/api/midori/html/* \
    %{buildroot}%{_datadir}/gtk-doc/html/%{name}

%suse_update_desktop_file -i %{name}
%suse_update_desktop_file -i %{name}-private

# fix locale name: no -> nb
mv %{buildroot}%{_datadir}/locale/{no,nb}

rm -rf %{buildroot}%{_datadir}/locale/{ast,kk,tl_PH,ur_PK}

%find_lang %{name} %{?no_lang_C}

%clean
rm -rf %{buildroot}

%post
%desktop_database_post
%icon_theme_cache_post

%postun
%desktop_database_postun
%icon_theme_cache_postun

%files
%defattr(-,root,root)
%doc AUTHORS COPYING ChangeLog EXPAT README HACKING TODO TRANSLATE
%doc data/faq.css data/faq.html
%{_bindir}/%{name}
%dir %{_libdir}/midori
%{_libdir}/midori/*.so
%dir %{_sysconfdir}/xdg/midori
%dir %{_sysconfdir}/xdg/midori/extensions
%dir %{_sysconfdir}/xdg/midori/extensions/adblock
%config(noreplace) %{_sysconfdir}/xdg/midori/extensions/adblock/config
%{_datadir}/%{name}/
%{_datadir}/applications/%{name}.desktop
%{_datadir}/applications/%{name}-private.desktop
%{_datadir}/icons/hicolor/*/*/*

%files devel
%defattr(-,root,root)
%doc %{_datadir}/gtk-doc/html/%{name}
%{_includedir}/midori-0.4
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/history-list.*
%{_datadir}/vala/vapi/external-download-manager.*
%{_datadir}/vala/vapi/delayed-load.*
%{_datadir}/vala/vapi/nsplugin-manager.*

%files branding-upstream
%defattr(-,root,root)
%config(noreplace) %{_sysconfdir}/xdg/midori/search
%config(noreplace) %{_sysconfdir}/xdg/midori/config

%files lang -f %{name}.lang

%changelog
openSUSE Build Service is sponsored by