evolution-data-server/evolution-data-server.spec

450 lines
15 KiB
RPMSpec

%define url_ver %(echo %{version}|cut -d. -f1,2)
%define _libexecdir /usr/libexec
%define api 1.2
%define api_ecal 1.2
%define base_version 3.0
%define camelmajor 61
%define libcamel %mklibname camel %{api} %{camelmajor}
%define devcamel %mklibname camel -d
%define ebackendmajor 10
%define libebackend %mklibname ebackend %{api} %{ebackendmajor}
%define devebackend %mklibname ebackend -d
%define ebookmajor 19
%define libebook %mklibname ebook %{api} %{ebookmajor}
%define devebook %mklibname ebook -d
%define ebookcontactsmajor 2
%define libebookcontacts %mklibname ebook-contacts %{api} %{ebookcontactsmajor}
%define devebookcontacts %mklibname ebook-contacts -d
%define ecalmajor 1
%define libecal %mklibname ecal %{api_ecal} %{ecalmajor}
%define devecal %mklibname ecal -d
%define edatabookmajor 25
%define libedatabook %mklibname edata-book %{api} %{edatabookmajor}
%define devedatabook %mklibname edata-book -d
%define edatacalmajor 28
%define libedatacal %mklibname edata-cal %{api_ecal} %{edatacalmajor}
%define devedatacal %mklibname edata-cal -d
%define edataserveruimajor 2
%define libedataserverui %mklibname edataserverui %{api} %{edataserveruimajor}
%define edataservermajor 23
%define libedataserver %mklibname edataserver %{api} %{edataservermajor}
%define devedataserver %mklibname edataserver -d
%define girmajor 1.2
%define girname %mklibname %{name}-gir %{girmajor}
Name: evolution-data-server
Summary: Evolution Data Server
Version: 3.28.3
Release: 1
License: LGPLv2+
Group: System/Libraries
URL: https://wiki.gnome.org/Apps/Evolution
Source0: https://download.gnome.org/sources/%{name}/%{url_ver}/%{name}-%{version}.tar.xz
Source1000: %{name}.rpmlintrc
BuildRequires: bison
BuildRequires: cmake
BuildRequires: gettext
BuildRequires: gnome-common
BuildRequires: gperf
BuildRequires: gtk-doc
BuildRequires: intltool
BuildRequires: vala-tools
BuildRequires: db-devel
BuildRequires: openldap-devel
BuildRequires: pkgconfig(gconf-2.0)
BuildRequires: pkgconfig(gcr-base-3)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(goa-1.0)
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(gnome-keyring-1)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(gweather-3.0)
BuildRequires: pkgconfig(krb5)
BuildRequires: pkgconfig(libgdata)
BuildRequires: pkgconfig(libical) >= 3.0.7
BuildRequires: pkgconfig(libsecret-1)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(nspr)
BuildRequires: pkgconfig(nss)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(oauth)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(vapigen)
BuildRequires: pkgconfig(webkit2gtk-4.0) >= 2.20
BuildRequires: pkgconfig(libcanberra-gtk3) >= 0.25
# workaround for libedbus-private library
%ifarch x86_64
Provides: devel(libedbus-private(64bit))
%else
Provides: devel(libedbus-private)
%endif
%description
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -f %{name}.lang
%doc COPYING NEWS
%{_libdir}/%{name}
%{_libexecdir}/%{name}
%{_libexecdir}/camel-gpg-photo-saver
%{_libexecdir}/camel-index-control-%{api}
%{_libexecdir}/evolution-addressbook-factory
%{_libexecdir}/evolution-calendar-factory
%{_libexecdir}/evolution-user-prompter
%{_libexecdir}/evolution-scan-gconf-tree-xml
%{_libexecdir}/evolution-source-registry
%{_libexecdir}/evolution-addressbook-factory-subprocess
%{_libexecdir}/evolution-calendar-factory-subprocess
%attr(2755,root,mail) %{_libexecdir}/camel-lock-helper-%{api}
%{_datadir}/%{name}
%{_datadir}/dbus-1/services/org.gnome.evolution.dataserver.AddressBook.service
%{_datadir}/dbus-1/services/org.gnome.evolution.dataserver.Calendar.service
%{_datadir}/dbus-1/services/org.gnome.evolution.dataserver.Sources.service
%{_datadir}/dbus-1/services/org.gnome.evolution.dataserver.UserPrompter.service
%{_datadir}/pixmaps/%{name}
%{_datadir}/GConf/gsettings/evolution-data-server.convert
#GSettings
%{_datadir}/glib-2.0/schemas/org.gnome.evolution.eds-shell.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.evolution.shell.network-config.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.Evolution.DefaultSources.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.evolution-data-server.addressbook.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.evolution-data-server.calendar.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.evolution-data-server.gschema.xml
%{_userunitdir}/evolution-addressbook-factory.service
%{_userunitdir}/evolution-calendar-factory.service
%{_userunitdir}/evolution-source-registry.service
%{_userunitdir}/evolution-user-prompter.service
#{_sysconfdir}/xdg/autostart/org.gnome.Evolution-alarm-notify.desktop
#{_datadir}/applications/org.gnome.Evolution-alarm-notify.desktop
#----------------------------------------------------------------------------
%package -n %{libcamel}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
%description -n %{libcamel}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libcamel}
%{_libdir}/libcamel-%{api}.so.%{camelmajor}*
#----------------------------------------------------------------------------
%package -n %{libebackend}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
Conflicts: %{_lib}ebackend10 < 3.22.0
Obsoletes: %{_lib}ebackend10 < 3.22.0
%description -n %{libebackend}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libebackend}
%{_libdir}/libebackend-%{api}.so.%{ebackendmajor}*
#----------------------------------------------------------------------------
%package -n %{libebook}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
Conflicts: %{_lib}ebook16 < 3.22.0
Obsoletes: %{_lib}ebook16 < 3.22.0
%description -n %{libebook}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libebook}
%{_libdir}/libebook-%{api}.so.%{ebookmajor}*
#----------------------------------------------------------------------------
%package -n %{libebookcontacts}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
%description -n %{libebookcontacts}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libebookcontacts}
%{_libdir}/libebook-contacts-%{api}.so.%{ebookcontactsmajor}*
#----------------------------------------------------------------------------
%package -n %{libecal}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
%description -n %{libecal}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libecal}
%{_libdir}/libecal-%{api_ecal}.so.%{ecalmajor}*
#----------------------------------------------------------------------------
%package -n %{libedatabook}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
Conflicts: %{_lib}edata-book25 < 3.22.0
Obsoletes: %{_lib}edata-book25 < 3.22.0
%description -n %{libedatabook}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libedatabook}
%{_libdir}/libedata-book-%{api}.so.%{edatabookmajor}*
#----------------------------------------------------------------------------
%package -n %{libedatacal}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
%description -n %{libedatacal}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libedatacal}
%{_libdir}/libedata-cal-%{api_ecal}.so.%{edatacalmajor}*
#----------------------------------------------------------------------------
%package -n %{libedataserver}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
%description -n %{libedataserver}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libedataserver}
%{_libdir}/libedataserver-%{api}.so.%{edataservermajor}*
#----------------------------------------------------------------------------
%package -n %{libedataserverui}
Summary: Shared libraries for using Evolution Data Server
Group: System/Libraries
Conflicts: %{_lib}edataserver20 < 3.22.0
%description -n %{libedataserverui}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{libedataserverui}
%{_libdir}/libedataserverui-%{api}.so.%{edataserveruimajor}*
#----------------------------------------------------------------------------
%package -n %{devcamel}
Summary: Libraries and include files for using Evolution Data Server - camel
Group: Development/GNOME and GTK+
Requires: %{libcamel} = %{EVRD}
%description -n %{devcamel}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devcamel}
%{_includedir}/%{name}/camel
%{_libdir}/pkgconfig/camel-%{api}.pc
%{_libdir}/libcamel-%{api}.so
#{_datadir}/gir-1.0/Camel-%{girmajor}.gir
#{_datadir}/vala/vapi/camel-%{api}.deps
#{_datadir}/vala/vapi/camel-%{api}.vapi
#----------------------------------------------------------------------------
%package -n %{devebackend}
Summary: Libraries and include files for using Evolution Data Server - ebackend
Group: Development/GNOME and GTK+
Requires: %{libebackend} = %{EVRD}
%description -n %{devebackend}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devebackend}
%{_includedir}/%{name}/libebackend
%{_libdir}/pkgconfig/libebackend-%{api}.pc
%{_libdir}/libebackend-%{api}.so
#----------------------------------------------------------------------------
%package -n %{devebook}
Summary: Libraries and include files for using Evolution Data Server - ebook
Group: Development/GNOME and GTK+
Requires: %{libebook} = %{EVRD}
%description -n %{devebook}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devebook}
%{_includedir}/%{name}/libebook/
%{_libdir}/pkgconfig/libebook-%{api}.pc
%{_libdir}/libebook-%{api}.so
#{_datadir}/gir-1.0/EBook-%{girmajor}.gir
#{_datadir}/vala/vapi/libebook-%{api}.deps
#{_datadir}/vala/vapi/libebook-%{api}.vapi
#----------------------------------------------------------------------------
%package -n %{devebookcontacts}
Summary: Libraries and include files for using Evolution Data Server - ebookcontacts
Group: Development/GNOME and GTK+
Requires: %{libebookcontacts} = %{EVRD}
%description -n %{devebookcontacts}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devebookcontacts}
%{_includedir}/%{name}/libebook-contacts/
%{_libdir}/pkgconfig/libebook-contacts-%{api}.pc
%{_libdir}/libebook-contacts-%{api}.so
#{_datadir}/gir-1.0/EBookContacts-%{girmajor}.gir
#{_datadir}/vala/vapi/libebook-contacts-%{api}.deps
#{_datadir}/vala/vapi/libebook-contacts-%{api}.vapi
#----------------------------------------------------------------------------
%package -n %{devecal}
Summary: Libraries and include files for using Evolution Data Server - ecal
Group: Development/GNOME and GTK+
Requires: %{libecal} = %{EVRD}
%description -n %{devecal}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devecal}
%{_includedir}/%{name}/libecal/
%{_libdir}/pkgconfig/libecal-%{api_ecal}.pc
%{_libdir}/libecal-%{api_ecal}.so
#----------------------------------------------------------------------------
%package -n %{devedatabook}
Summary: Libraries and include files for using Evolution Data Server - edatabook
Group: Development/GNOME and GTK+
Requires: %{libedatabook} = %{EVRD}
%description -n %{devedatabook}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devedatabook}
%{_includedir}/%{name}/libedata-book/
%{_libdir}/pkgconfig/libedata-book-%{api}.pc
%{_libdir}/libedata-book-%{api}.so
#----------------------------------------------------------------------------
%package -n %{devedatacal}
Summary: Libraries and include files for using Evolution Data Server - edatacal
Group: Development/GNOME and GTK+
Requires: %{libedatacal} = %{EVRD}
%description -n %{devedatacal}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devedatacal}
%{_includedir}/%{name}/libedata-cal/
%{_libdir}/pkgconfig/libedata-cal-%{api_ecal}.pc
%{_libdir}/libedata-cal-%{api_ecal}.so
#----------------------------------------------------------------------------
%package -n %{devedataserver}
Summary: Libraries and include files for using Evolution Data Server
Group: Development/GNOME and GTK+
Requires: %{libedataserver} = %{EVRD}
Requires: %{libedataserverui} = %{EVRD}
Provides: %{name}-devel = %{EVRD}
%description -n %{devedataserver}
Evolution Data Server provides a central location for your addressbook
and calendar in the gnome desktop.
%files -n %{devedataserver}
%{_includedir}/%{name}/libedataserver/
%{_includedir}/%{name}/libedataserverui/
%{_libdir}/pkgconfig/libedataserver-%{api}.pc
%{_libdir}/pkgconfig/libedataserverui-%{api}.pc
%{_libdir}/pkgconfig/evolution-data-server-%{api}.pc
%{_libdir}/libedataserver-%{api}.so
%{_libdir}/libedataserverui-%{api}.so
#{_datadir}/gir-1.0/EDataServer-%{girmajor}.gir
#{_datadir}/gir-1.0/EDataServerUI-%{girmajor}.gir
#{_datadir}/vala/vapi/libedataserver-%{api}.deps
#{_datadir}/vala/vapi/libedataserver-%{api}.vapi
#{_datadir}/vala/vapi/libedataserverui-%{api}.deps
#{_datadir}/vala/vapi/libedataserverui-%{api}.vapi
#----------------------------------------------------------------------------
%package -n %{girname}
Summary: GObject Introspection interface description for %{name}
Group: System/Libraries
%description -n %{girname}
GObject Introspection interface description for %{name}.
%files -n %{girname}
#{_libdir}/girepository-1.0/Camel-%{girmajor}.typelib
#{_libdir}/girepository-1.0/EDataServer-%{girmajor}.typelib
#{_libdir}/girepository-1.0/EDataServerUI-%{girmajor}.typelib
#{_libdir}/girepository-1.0/EBook-%{girmajor}.typelib
#{_libdir}/girepository-1.0/EBookContacts-%{girmajor}.typelib
#----------------------------------------------------------------------------
%prep
%setup -q
%build
%cmake \
-DENABLE_UOA=OFF \
-DENABLE_OAUTH2=ON \
-DLIBEXEC_INSTALL_DIR=%{_libexecdir} \
-DSHARE_INSTALL_PREFIX=%{_datadir} \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DLIB_INSTALL_DIR=%{_libdir} \
-DENABLE_VALA_BINDINGS=OFF \
-DENABLE_INTROSPECTION=OFF
# -DCMAKE_SKIP_RPATH:BOOL=OFF
%make
%install
%makeinstall_std -C build
# give the libraries some executable bits
find %{buildroot} -name '*.so.*' -exec chmod +x {} \;
%find_lang %{name}