From cc7b75a487441d403ce4bb97226a3de6a6a0d616 Mon Sep 17 00:00:00 2001 From: Robert Scheck Date: Feb 27 2011 22:31:59 +0000 Subject: Upgrade to 6.40.5 --- diff --git a/.gitignore b/.gitignore index c62b5c9..bcbeea0 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -zcp-source-6.40.4-24200.tgz +zcp-source-6.40.5-24860.tgz diff --git a/sources b/sources index eee9561..4e08e6f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -5fffa6eb9a96fc306d79dfdad41343a5 zcp-source-6.40.4-24200.tgz +421a59954e94f787b2048b7e846e3ef0 zcp-source-6.40.5-24860.tgz diff --git a/zarafa-6.40.0-package.patch b/zarafa-6.40.0-package.patch deleted file mode 100644 index 1a4877e..0000000 --- a/zarafa-6.40.0-package.patch +++ /dev/null @@ -1,61 +0,0 @@ -Patch by Robert Scheck for zarafa >= 6.40.0, which only -removes the paths from autoconf/automake related files, that don't exist in the OSS -version of Zarafa. Having these paths not removed causes autoreconf to fail, but a -re-run of autoreconf is needed in order to get the rpaths completely out of all the -libraries and binaries built during the make process. - ---- zarafa-6.40.0/configure.ac 2010-05-31 15:45:19.000000000 +0200 -+++ zarafa-6.40.0/configure.ac.package 2010-06-06 02:48:22.000000000 +0200 -@@ -772,19 +772,6 @@ - version - specialbuild - ]) --dnl non-oss files --if test -d `dirname $0`/licensed; then --AC_CONFIG_FILES([ -- liblicense/Makefile -- licensed/Makefile -- ECtools/zarafa-backup/Makefile -- ECtools/zarafa-backup/helpers/Makefile -- ECtools/zarafa-report/Makefile -- ECtools/libarchiver/Makefile -- ECtools/zarafa-archiver/Makefile -- debian/zarafa.install --]) --fi - - AC_OUTPUT - ---- zarafa-6.40.0/Makefile.am 2010-05-31 15:45:19.000000000 +0200 -+++ zarafa-6.40.0/Makefile.am.package 2010-06-06 02:51:29.000000000 +0200 -@@ -1,9 +1,5 @@ - AUTOMAKE_OPTIONS = 1.9 foreign - --if ! OSS_ONLY --PROSUBS = liblicense licensed --endif -- - SUBDIRS = common libfreebusy zarafa-libsync mapi4linux $(PROSUBS) provider libicalmapi inetmapi php-ext spooler gateway caldav ECtools installer po doc - - if WITH_PERL -@@ -17,10 +13,6 @@ - common/ecversion.h: versionheader.sh - sh ${top_srcdir}/versionheader.sh > common/ecversion.h - --if ! OSS_ONLY --CLEANFILES=common/ecversion.h --endif -- - dist-hook: - find $(distdir) -type d -name .svn -exec rm -rf {} \; 2>/dev/null || true - if OSS_ONLY ---- zarafa-6.40.0/ECtools/Makefile.am 2010-05-31 15:45:18.000000000 +0200 -+++ zarafa-6.40.0/ECtools/Makefile.am.package 2010-06-06 02:48:37.000000000 +0200 -@@ -1,7 +1,3 @@ --if ! OSS_ONLY --PROSUBS = zarafa-backup zarafa-report libarchiver zarafa-archiver --endif -- - if WITH_TESTTOOLS - TESTSUBS = ECTestTools - endif diff --git a/zarafa-6.40.4-archiver.patch b/zarafa-6.40.4-archiver.patch deleted file mode 100644 index 5c7224c..0000000 --- a/zarafa-6.40.4-archiver.patch +++ /dev/null @@ -1,22 +0,0 @@ -Patch by Robert Scheck for zarafa >= 6.40.4, which removes the -failing installation command of zarafa-archiver (which is not-yet available anyway). - ---- zarafa-6.40.4/installer/linux/Makefile.am 2010-12-09 10:22:37.000000000 +0100 -+++ zarafa-6.40.4/installer/linux/Makefile.am.archiver 2010-12-12 01:26:12.000000000 +0100 -@@ -108,5 +108,3 @@ - fi - install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config - mv ${DESTDIR}/${data_configdir}/indexer.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config -- install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config -- mv ${DESTDIR}/${data_configdir}/archiver.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config ---- zarafa-6.40.4/installer/linux/Makefile.in 2010-12-09 11:07:03.000000000 +0100 -+++ zarafa-6.40.4/installer/linux/Makefile.in.archiver 2010-12-12 01:27:00.000000000 +0100 -@@ -686,8 +686,6 @@ - fi - install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config - mv ${DESTDIR}/${data_configdir}/indexer.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config -- install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config -- mv ${DESTDIR}/${data_configdir}/archiver.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. - .NOEXPORT: diff --git a/zarafa-6.40.5-rpath.patch b/zarafa-6.40.5-rpath.patch new file mode 100644 index 0000000..b39097c --- /dev/null +++ b/zarafa-6.40.5-rpath.patch @@ -0,0 +1,115 @@ +Patch by Robert Scheck for zarafa >= 6.40.5, which works +around the broken libtool of Debian. Multilib/multiarch systems like Fedora or Red +Hat Enterprise Linux are using /usr/lib64 for 64 bit libraries and /usr/lib is used +for 32 bit libraries. That allows to run 32 bit software on 64 bit systems. Debian +systems only use /usr/lib which contains only 32 or 64 bit systems depending on the +architecture. + +Libtool hardcodes the runtime search path in a library (rpath), if the library that +is used for linking is not within the default system library path. The result is, +that if aclocal.m4/configure files are generated by a Debian system, but used on a +Fedora or Red Hat Enterprise Linux 64 bit system for compiling, "-rpath /usr/lib64" +makes it into the binary. + +Fedora and EPEL (for Red Hat Enterprise Linux) do not allow binaries with rpath, as +the Linux dynamic linker is usually smarter than the hardcoded path. + +The fix for this issue is to add the optional /lib64 and /usr/lib64 directories at/ +within libtool in front of the regular /lib and /usr/lib directories at the system +library path. These libtool information are hold in aclocal.m4, which is generated +by running aclocal. As the content of aclocal.m4 is included into configure during +a run of autoconf, aclocal.m4 needs to be modified within the upstream build system +each time after a aclocal run - until Debian's libtool is fixed at Debian upstream. + +Applying the fix is either possible by using the first hunk of the patch (second +hunk is runtime-only if configure file has been already generated) or by running +the following sed command after each aclocal run within the upstream build system: + + sed -e 's@\(# Append ld.so.conf contents to the search path\)@# Add ABI-specific directories to the system library path.\n sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"\n\n \1@' \ + -e 's@/lib /usr/lib $lt_ld_extra@$sys_lib_dlsearch_path_spec $lt_ld_extra@' -i zarafa-6.40.5/aclocal.m4 + +More information regarding this topic can be found for example at: + + - http://osdir.com/ml/bug-libtool-gnu/2009-12/msg00034.html + - http://lists.gnu.org/archive/html/libtool/2009-01/msg00039.html + - http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345 + +--- zarafa-6.40.5/aclocal.m4 2011-01-24 13:06:08.000000000 +0100 ++++ zarafa-6.40.5/aclocal.m4.rpath 2011-02-27 14:00:53.371489885 +0100 +@@ -1708,10 +1708,13 @@ + # before this can be enabled. + hardcode_into_libs=yes + ++ # Add ABI-specific directories to the system library path. ++ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +--- zarafa-6.40.5/configure 2011-01-24 13:06:11.000000000 +0100 ++++ zarafa-6.40.5/configure.rpath 2011-02-27 14:00:35.902552604 +0100 +@@ -9614,10 +9614,13 @@ + # before this can be enabled. + hardcode_into_libs=yes + ++ # Add ABI-specific directories to the system library path. ++ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +@@ -13592,10 +13595,13 @@ + # before this can be enabled. + hardcode_into_libs=yes + ++ # Add ABI-specific directories to the system library path. ++ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +@@ -16226,10 +16232,13 @@ + # before this can be enabled. + hardcode_into_libs=yes + ++ # Add ABI-specific directories to the system library path. ++ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +@@ -18860,10 +18869,13 @@ + # before this can be enabled. + hardcode_into_libs=yes + ++ # Add ABI-specific directories to the system library path. ++ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on diff --git a/zarafa-6.40.5-svn25200.patch b/zarafa-6.40.5-svn25200.patch new file mode 100644 index 0000000..c998b13 --- /dev/null +++ b/zarafa-6.40.5-svn25200.patch @@ -0,0 +1,38 @@ +Patch by Robert Scheck for zarafa < 6.40.6, which backports the +optional installation of zarafa-archiver and adds the missing pre-processor directive. SVN +upstream revision 25200 (6.40.6 beta1). + +--- zarafa-6.40.5/installer/linux/Makefile.am 2011-01-24 12:03:45.000000000 +0100 ++++ zarafa-6.40.6/installer/linux/Makefile.am 2011-02-08 09:33:50.000000000 +0100 +@@ -108,5 +108,7 @@ + fi + install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config + mv ${DESTDIR}/${data_configdir}/indexer.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config +- install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config +- mv ${DESTDIR}/${data_configdir}/archiver.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config ++ if [ -f ${DESTDIR}/${data_configdir}/archiver.cfg ]; then \ ++ install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config; \ ++ mv ${DESTDIR}/${data_configdir}/archiver.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config; \ ++ fi +--- zarafa-6.40.5/installer/linux/Makefile.in 2011-01-24 13:06:15.000000000 +0100 ++++ zarafa-6.40.6/installer/linux/Makefile.in 2011-02-08 09:35:20.000000000 +0100 +@@ -693,8 +693,10 @@ + fi + install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config + mv ${DESTDIR}/${data_configdir}/indexer.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-indexer/example-config +- install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config +- mv ${DESTDIR}/${data_configdir}/archiver.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config ++ if [ -f ${DESTDIR}/${data_configdir}/archiver.cfg ]; then \ ++ install -d -m 755 ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config; \ ++ mv ${DESTDIR}/${data_configdir}/archiver.cfg ${DESTDIR}/${datarootdir}/doc/zarafa-archiver/example-config; \ ++ fi + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. + .NOEXPORT: +--- zarafa-6.40.5/provider/libserver/ECIndexer.h 2011-01-24 16:55:05.000000000 +0100 ++++ zarafa-6.40.6/provider/libserver/ECIndexer.h 2011-02-08 13:06:22.000000000 +0100 +@@ -60,3 +60,4 @@ + + ECRESULT GetIndexerResults(ECConfig *lpConfig, ECLogger *lpLogger, ECCacheManager *lpCacheManager, GUID *guidServer, unsigned int ulStoreId, ECListInt &lstFolders, struct restrictTable *lpRestrict, ECSearchResultArray **lppIndexerResults); + ++#endif diff --git a/zarafa.spec b/zarafa.spec index 113db82..3b776a2 100644 --- a/zarafa.spec +++ b/zarafa.spec @@ -109,17 +109,24 @@ # 7. When mock or koji scratch builds fail, repeat the process. # -%define beta_or_rc 0 -%define actual_release 2 -%define svnrevision 24200 -%define with_clucene 1 -%define with_ldap 1 -%define with_xmlto 1 -%define php_apiver %((echo 0; php -i 2>/dev/null | sed -n 's/^PHP API => //p') | tail -1) +%global beta_or_rc 0 +%global actual_release 1 +%global svnrevision 24860 +%global with_clucene 1 +%global with_ldap 1 +%global with_xmlto 1 +%global php_apiver %((echo 0; php -i 2>/dev/null | sed -n 's/^PHP API => //p') | tail -1) +%global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))") + +# Private libraries are not be exposed globally by RPM +%{?filter_setup: +%filter_provides_in %{_libdir}/%{name}/.*\.so$ +%filter_setup +} Summary: Open Source Edition of the Zarafa Collaboration Platform Name: zarafa -Version: 6.40.4 +Version: 6.40.5 %if %{beta_or_rc} Release: 0.%{actual_release}.svn%{svnrevision}%{?dist} %else @@ -133,13 +140,17 @@ Release: %{actual_release}%{?dist} License: AGPLv3 with exceptions Group: Applications/Productivity URL: http://www.zarafa.com/ +%if %{beta_or_rc} +Source0: http://download.zarafa.com/community/beta/6.40/%{version}-%{svnrevision}/sourcecode/zcp-%{version}.tar.gz +%else Source0: http://download.zarafa.com/community/final/6.40/%{version}-%{svnrevision}/zcp-source-%{version}-%{svnrevision}.tgz +%endif Source1: %{name}.ini Source2: %{name}.logrotate Source3: %{name}-webaccess.conf -Patch0: zarafa-6.40.0-package.patch -Patch1: zarafa-6.40.4-archiver.patch +Patch0: zarafa-6.40.5-rpath.patch +Patch1: zarafa-6.40.5-svn25200.patch BuildRequires: bison BuildRequires: gcc-c++ @@ -153,10 +164,15 @@ BuildRequires: mysql-devel >= 4.1 BuildRequires: ncurses-devel BuildRequires: pam-devel BuildRequires: php-devel >= 4.3 -BuildRequires: libtool, automake, autoconf BuildRequires: %{_includedir}/uuid/uuid.h BuildRequires: %{_includedir}/curl/curl.h +BuildRequires: swig +%if 0 BuildRequires: %{_bindir}/xsubpp +%endif +%if 0%{?rhel}%{?fedora} > 4 +BuildRequires: python-devel >= 2.4 +%endif %if %{with_clucene} BuildRequires: clucene-core-devel >= 0.9.21b-1 @@ -171,14 +187,13 @@ BuildRequires: xmlto %endif # The main package pulls in all of zarafa except indexer and webaccess -Requires: zarafa(ical) = %{version}-%{release} -Requires: zarafa(dagent) = %{version}-%{release} -Requires: zarafa(gateway) = %{version}-%{release} -Requires: zarafa(monitor) = %{version}-%{release} -Requires: zarafa(server) = %{version}-%{release} -Requires: zarafa(spooler) = %{version}-%{release} -Requires: zarafa(utils) = %{version}-%{release} -Requires: zarafa(config) = %{version}-%{release} +Requires: zarafa-dagent%{?_isa} = %{version}-%{release} +Requires: zarafa-gateway%{?_isa} = %{version}-%{release} +Requires: zarafa-ical%{?_isa} = %{version}-%{release} +Requires: zarafa-monitor%{?_isa} = %{version}-%{release} +Requires: zarafa-server%{?_isa} = %{version}-%{release} +Requires: zarafa-spooler%{?_isa} = %{version}-%{release} +Requires: zarafa-utils%{?_isa} = %{version}-%{release} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -202,8 +217,7 @@ and benefits of the Zarafa Collaboration Platform (ZCP). %package client Summary: The Zarafa Client library Group: System Environment/Libraries -Requires: zarafa(common) = %{version}-%{release} -Provides: zarafa(client) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} %description client The zarafa-client package provides the Zarafa Client library, which gets @@ -217,7 +231,6 @@ implementation of Zarafa as provider between MAPI and Zarafa. Summary: Common Zarafa files and directories Group: Applications/Productivity Requires(pre): shadow-utils -Provides: zarafa(common) = %{version}-%{release} %if 0%{?rhel}%{?fedora} > 5 BuildArch: noarch %endif @@ -233,13 +246,10 @@ creation of the zarafa user for the different Zarafa services. %package dagent Summary: The Zarafa Delivery Agent Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(dagent) = %{version}-%{release} -Provides: zarafa(config::dagent) = %{version}-%{release} %description dagent The zarafa-dagent package includes the Zarafa Delivery Agent to import @@ -253,9 +263,9 @@ server. %package devel Summary: Development files for several Zarafa libraries Group: Development/Libraries -Requires: %{name} = %{version}-%{release}, pkgconfig -Requires: zarafa(common) = %{version}-%{release} +Requires: libmapi%{?_isa} = %{version}-%{release}, pkgconfig Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} %description devel The zarafa-devel package includes header files and libraries necessary for @@ -269,13 +279,10 @@ objects, provides a MAPI client library and a C++ programming interface. %package gateway Summary: The Zarafa POP3/IMAP Gateway service Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(gateway) = %{version}-%{release} -Provides: zarafa(config::gateway) = %{version}-%{release} %description gateway The zarafa-gateway package includes the Zarafa POP3/IMAP Gateway service @@ -291,15 +298,13 @@ IMAP and/or IMAPS. %package ical Summary: The Zarafa iCal/CalDAV gateway Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(ical) = %{version}-%{release} -Provides: zarafa(caldav) = %{version}-%{release} -Provides: zarafa(config::ical) = %{version}-%{release} -Provides: zarafa(config::caldav) = %{version}-%{release} +Provides: zarafa-caldav = %{version}-%{release} +Provides: zarafa-caldav%{?_isa} = %{version}-%{release} +Obsoletes: zarafa-caldav < 6.40.5-1 %description ical The zarafa-ical package includes the Zarafa iCal/CalDAV gateway service @@ -314,14 +319,11 @@ can be configured to listen for HTTP and HTTPS requests. %package indexer Summary: The Zarafa Indexing service Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release}, file +Requires: zarafa-common = %{version}-%{release}, file Requires: catdoc, libxslt, lynx, unzip, %{_bindir}/pdftotext Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(indexer) = %{version}-%{release} -Provides: zarafa(config::indexer) = %{version}-%{release} %description indexer The zarafa-indexer package includes the Zarafa Indexing service for fast @@ -332,32 +334,15 @@ items and even in contents of attached documents. %endif ## -## Zarafa CalDAV gateway (merely an alias for zarafa-ical) -## -%package caldav -Summary: The Zarafa iCal/CalDAV gateway -Group: System Environment/Daemons -Requires: zarafa(ical) = %{version}-%{release} - -%description caldav -The zarafa-caldav package includes the Zarafa CalDAV gateway service to -enable users to access their calendar using iCalendar (RFC 2445/5545) or -CalDAV (RFC 4791) compliant clients. The iCal/CalDAV gateway service can -be configured to listen for HTTP and HTTPS requests. - -## ## Zarafa Monitoring service ## %package monitor Summary: The Zarafa Monitoring service Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(monitor) = %{version}-%{release} -Provides: zarafa(config::monitor) = %{version}-%{release} %description monitor The zarafa-monitor package includes the Zarafa Monitoring service which @@ -370,14 +355,10 @@ them (and administrators) a warning e-mail when limits are exceeded. %package server Summary: The main Zarafa Server service Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(server) = %{version}-%{release} -Provides: zarafa(config) = %{version}-%{release} -Provides: zarafa(config::server) = %{version}-%{release} %description server The zarafa-server package includes the main Zarafa Server and Storage @@ -391,13 +372,10 @@ or can be setup with a separate list of users. %package spooler Summary: The Zarafa Spooler service Group: System Environment/Daemons -Requires: zarafa(common) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} Requires(post): /sbin/chkconfig -Requires(preun): /sbin/service -Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service, /sbin/chkconfig Requires(postun): /sbin/service -Provides: zarafa(spooler) = %{version}-%{release} -Provides: zarafa(config::spooler) = %{version}-%{release} %description spooler The zarafa-spooler package includes the Zarafa Spooler service which is @@ -410,8 +388,7 @@ Mail and send it using the configured SMTP server to the recipients. %package utils Summary: Zarafa Utilities for administration and management Group: Applications/System -Requires: zarafa(common) = %{version}-%{release} -Provides: zarafa(utils) = %{version}-%{release} +Requires: zarafa-common = %{version}-%{release} %description utils The zarafa-utils package includes various administration and management @@ -425,8 +402,7 @@ reporting, user and password management. Summary: Zarafa Webaccess featuring a 'Look & Feel' similar to Outlook Group: Applications/Productivity Requires: httpd -Requires: php >= 4.3 -Requires: php(mapi) = %{version}-%{release} +Requires: php >= 4.3, php-mapi = %{version}-%{release} %if 0%{?rhel}%{?fedora} > 5 BuildArch: noarch %endif @@ -445,9 +421,10 @@ technology to give a more interactive feeling to the users. %package -n libmapi Summary: MAPI implementation and library by Zarafa Group: System Environment/Libraries -Requires: zarafa(client) = %{version}-%{release} +Requires: zarafa-client%{?_isa} = %{version}-%{release} Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig +Obsoletes: perl-MAPI < 6.40.5-1, perl-libmapi < 6.40.0-1 %description -n libmapi The libmapi package provides the Open Source MAPI (Messaging Application @@ -458,6 +435,7 @@ creation and management of messages, management of the client mailbox, service providers, etc. This MAPI implementation by Zarafa is also known as MAPI4Linux. +%if 0 ## ## Perl MAPI extension ## @@ -471,6 +449,7 @@ Obsoletes: perl-libmapi < 6.40.0-1 %description -n perl-MAPI The perl-MAPI package contains the Perl MAPI extension to provide access to Microsoft MAPI functions while using Perl. +%endif ## ## PHP MAPI extension @@ -489,7 +468,6 @@ Requires: php-api = %{php_apiver} %else Requires: php >= 4.3 %endif -Provides: php(mapi) = %{version}-%{release} %description -n php-mapi The php-mapi package contains the PHP MAPI extension to provide access to @@ -499,19 +477,29 @@ in this extension. Using this PHP MAPI extension, developers can create e.g. webbased e-mail and calendaring systems and interfaces with existing PHP projects, using the MAPI functions like a normal MAPI program. -%prep -%setup -q -n zcp-source-%{version}-%{svnrevision}/src/ -%patch0 -p1 -b .package -%patch1 -p1 -b .archiver - -# Needed to get rid of rpath %if 0%{?rhel}%{?fedora} > 4 -libtoolize --force -autoreconf --force --install +## +## Python MAPI extension +## +%package -n python-MAPI +Summary: The Python MAPI extension by Zarafa +Group: Development/Languages + +%description -n python-MAPI +The python-MAPI package contains the Python MAPI extension to provide the +access to Microsoft MAPI functions while using Python. Using this Python +MAPI extension, developers can create Python programs which use MAPI calls +to interact with Zarafa. %endif +%prep +%setup -q -n zcp-source-%{version}-%{svnrevision}/src/ +%patch0 -p1 -b .rpath +touch -c -r aclocal.m4.rpath aclocal.m4 +%patch1 -p1 -b .svn25200 + %build -export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -g -ggdb" +export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -ggdb" %configure \ --with-userscript-prefix=%{_sysconfdir}/%{name}/userscripts \ --with-quotatemplate-prefix=%{_sysconfdir}/%{name}/quotamail \ @@ -522,9 +510,14 @@ export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -g -ggdb" %else --with-clucene-lib-prefix= \ %endif + --enable-swig \ +%if 0%{?rhel}%{?fedora} > 4 + --enable-python \ +%else + --disable-python \ +%endif --disable-static \ - --disable-testtools \ - --enable-perl + --disable-testtools make %{?_smp_mflags} %install @@ -572,7 +565,7 @@ done # Move the logrotate configuration file to its correct place rm -f $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/* -for service in dagent gateway ical indexer licensed monitor server spooler; do +for service in dagent gateway ical indexer monitor server spooler; do sed -e "s@SERVICE@$service@" %{SOURCE2} >> $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/%{name} done touch -c -r %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/%{name} @@ -601,7 +594,7 @@ rm -f $RPM_BUILD_ROOT%{_mandir}/man5/%{name}-ldap.cfg.5* mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/{log,lib}/%{name}/ # Remove all libtool .la files to avoid packaging of them -rm -f $RPM_BUILD_ROOT{%{_libdir}/{,php/modules,php4,%{name}},%{perl_vendorarch}/auto/MAPI}/*.la +rm -f $RPM_BUILD_ROOT{%{_libdir}/{,php/modules,php4,%{name}},%{perl_vendorarch}/auto/MAPI,%{python_sitearch}}/*.la # Remove files that are anyway in %doc or %{_datadir}/%{name}/ rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/%{name}{,-indexer}/ @@ -781,11 +774,7 @@ fi %defattr(-,root,root,-) %doc installer/licenseagreement/AGPL-3 -%files caldav -%defattr(-,root,root,-) -%doc installer/licenseagreement/AGPL-3 - -%files client +%files client -f %{name}.lang %defattr(-,root,root,-) %doc installer/licenseagreement/AGPL-3 %{_libdir}/libzarafaclient.so @@ -884,7 +873,7 @@ fi %{_mandir}/man1/%{name}-monitor.1* %{_mandir}/man5/%{name}-monitor.cfg.5* -%files server -f %{name}.lang +%files server %defattr(-,root,root,-) %doc installer/licenseagreement/AGPL-3 %{_bindir}/%{name}-server @@ -969,11 +958,13 @@ fi %{_libdir}/libinetmapi.so.* %{_libdir}/libmapi.so.* +%if 0 %files -n perl-MAPI %defattr(-,root,root,-) %doc installer/licenseagreement/AGPL-3 %{perl_vendorarch}/MAPI.pm %{perl_vendorarch}/auto/MAPI/ +%endif %files -n php-mapi %defattr(-,root,root,-) @@ -986,7 +977,17 @@ fi %{_libdir}/php4/mapi.so %endif +%if 0%{?rhel}%{?fedora} > 4 +%files -n python-MAPI +%defattr(-,root,root,-) +%doc installer/licenseagreement/AGPL-3 +%{python_sitearch}/* +%endif + %changelog +* Sun Feb 27 2011 Robert Scheck 6.40.5-1 +- Upgrade to 6.40.5 + * Tue Feb 08 2011 Fedora Release Engineering - 6.40.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild