add icu 4.0 for licensed server

git-svn-id: https://svn.disconnected-by-peer.at/svn/linamh/trunk/zarafa@2983 6952d904-891a-0410-993b-d76249ca496b
This commit is contained in:
geos_one 2011-07-26 01:41:50 +00:00
parent f08d21898c
commit 15edd30edd
12 changed files with 1247 additions and 0 deletions

4
dev-libs/icu/Manifest Normal file
View File

@ -0,0 +1,4 @@
AUX icu-4.0.1-TestDisplayNamesMeta.patch 8259 RMD160 4eb64876eee0ff21577f8330326ba96010545cc1 SHA1 d8fe22be87fbb99f8c1a0bbb9d94bc2d93ca083a SHA256 cfcedc486f4c530e43b5fffacf4068f76d026ab73dd4aa1dff253fc87c2e462c
AUX icu-4.0.1-fix_parallel_building.patch 145 RMD160 d7e74631383b01a7cd9d18f9fda2949e1b3ec198 SHA1 5edcb46b7730b11aeaf5ed2e8e968e588eb1d492 SHA256 244bee4fcabe5c1bcf95af2d9a01d87b2de27407e662f2c1663c5ce15ac8a561
DIST icu4c-4_0_1-src.tgz 12356471 RMD160 e40e7ffddd3134a34fe7e7bc98d776c5b67b637c SHA1 65a65e9cd5670e113031def9448f65fb8f84f47a SHA256 fe4d33cc7393c355df7b13080e1c3717ec1acac2f8cfe452b691f33c5f467259
EBUILD icu-4.0.1.ebuild 1806 RMD160 15c61a54941d47a93d0bd9126ab6ac4e474f06fb SHA1 77101ae57cd9942cb941fd2a3a2ba57d782f1bed SHA256 f1a7ead02fd141ec03758588771fe525be0b4d22e142651b6538291bce6c7aab

View File

@ -0,0 +1,177 @@
https://bugs.icu-project.org/trac/ticket/6814
https://bugs.icu-project.org/trac/changeset/25681
--- i18n/olsontz.cpp
+++ i18n/olsontz.cpp
@@ -1,6 +1,6 @@
/*
**********************************************************************
-* Copyright (c) 2003-2008, International Business Machines
+* Copyright (c) 2003-2009, International Business Machines
* Corporation and others. All Rights Reserved.
**********************************************************************
* Author: Alan Liu
@@ -526,8 +526,8 @@
if (transitionTimes[i] >= limit) {
break;
}
- if (transitionTimes[i] >= start &&
- dstOffset(typeData[i]) != 0) {
+ if ((transitionTimes[i] >= start && dstOffset(typeData[i]) != 0)
+ || (transitionTimes[i] > start && i > 0 && dstOffset(typeData[i - 1]) != 0)) {
return TRUE;
}
}
--- i18n/timezone.cpp
+++ i18n/timezone.cpp
@@ -1,6 +1,6 @@
/*
*******************************************************************************
-* Copyright (C) 1997-2008, International Business Machines Corporation and *
+* Copyright (C) 1997-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*
@@ -1240,6 +1240,8 @@
}
} else {
// The display name for standard time was requested, but currently in DST
+ // or display name for daylight saving time was requested, but this zone no longer
+ // observes DST.
tz = new SimpleTimeZone(rawOffset, tempID);
if (U_FAILURE(status) || tz == NULL) {
if (U_SUCCESS(status)) {
--- test/intltest/tztest.cpp
+++ test/intltest/tztest.cpp
@@ -34,6 +34,11 @@
// class TimeZoneTest
// *****************************************************************************
+// TODO: We should probably read following data at runtime, so we can update
+// the these values every release with necessary data changes.
+const int32_t TimeZoneTest::REFERENCE_YEAR = 2009;
+const char * TimeZoneTest::REFERENCE_DATA_VERSION = "2009d";
+
void TimeZoneTest::runIndexedTest( int32_t index, UBool exec, const char* &name, char* /*par*/ )
{
if (exec) logln("TestSuite TestTimeZone");
@@ -579,18 +584,13 @@
*/
void TimeZoneTest::TestShortZoneIDs()
{
- // TODO: This test case is tzdata sensitive.
- // We should actually put the data version in this test code
- // at build time. For now, we just hardcode the version string
- // and display warning instead of error if non-reference tzdata
- // version is used.
- const char *REFERENCE_DATA_VERSION = "2008i";
-
UErrorCode status = U_ZERO_ERROR;
+
+ // This test case is tzdata version sensitive.
UBool isNonReferenceTzdataVersion = FALSE;
const char *tzdataVer = TimeZone::getTZDataVersion(status);
if (failure(status, "getTZDataVersion")) return;
- if (uprv_strcmp(tzdataVer, REFERENCE_DATA_VERSION) != 0) {
+ if (uprv_strcmp(tzdataVer, TimeZoneTest::REFERENCE_DATA_VERSION) != 0) {
// Note: We want to display a warning message here if
// REFERENCE_DATA_VERSION is out of date - so we
// do not forget to update the value before GA.
@@ -603,11 +603,11 @@
// Note: useDaylightTime returns true if DST is observed
// in the time zone in the current calendar year. The test
// data is valid for the date after the reference year below.
- // If system clock is before the year, some test cases may fail.
- const int32_t REFERENCE_YEAR = 2009;
+ // If system clock is before the year, some test cases may
+ // fail.
GregorianCalendar cal(*TimeZone::getGMT(), status);
if (failure(status, "GregorianCalendar")) return;
- cal.set(REFERENCE_YEAR, UCAL_JANUARY, 2); // day 2 in GMT
+ cal.set(TimeZoneTest::REFERENCE_YEAR, UCAL_JANUARY, 2); // day 2 in GMT
UBool isDateBeforeReferenceYear = ucal_getNow() < cal.getTime(status);
if (failure(status, "Calendar::getTime")) return;
@@ -1898,6 +1898,15 @@
};
void TimeZoneTest::TestDisplayNamesMeta() {
+ UErrorCode status = U_ZERO_ERROR;
+ GregorianCalendar cal(*TimeZone::getGMT(), status);
+ if (failure(status, "GregorianCalendar")) return;
+
+ UBool isReferenceYear = TRUE;
+ if (cal.get(UCAL_YEAR, status) != TimeZoneTest::REFERENCE_YEAR) {
+ isReferenceYear = FALSE;
+ }
+
UBool sawAnError = FALSE;
for (int testNum = 0; zoneDisplayTestData[testNum].zoneName != NULL; testNum++) {
Locale locale = Locale::createFromName(zoneDisplayTestData[testNum].localeName);
@@ -1908,20 +1917,33 @@
locale,
displayName);
if (displayName != zoneDisplayTestData[testNum].expectedDisplayName) {
- sawAnError = TRUE;
char name[100];
UErrorCode status = U_ZERO_ERROR;
displayName.extract(name, 100, NULL, status);
- errln("Incorrect time zone display name. zone = \"%s\",\n"
- " locale = \"%s\", style = %s, Summertime = %d\n"
- " Expected \"%s\", "
- " Got \"%s\"\n", zoneDisplayTestData[testNum].zoneName,
- zoneDisplayTestData[testNum].localeName,
- zoneDisplayTestData[testNum].style==TimeZone::SHORT ?
- "SHORT" : "LONG",
- zoneDisplayTestData[testNum].summerTime,
- zoneDisplayTestData[testNum].expectedDisplayName,
- name);
+ if (isReferenceYear) {
+ sawAnError = TRUE;
+ errln("Incorrect time zone display name. zone = \"%s\",\n"
+ " locale = \"%s\", style = %s, Summertime = %d\n"
+ " Expected \"%s\", "
+ " Got \"%s\"\n", zoneDisplayTestData[testNum].zoneName,
+ zoneDisplayTestData[testNum].localeName,
+ zoneDisplayTestData[testNum].style==TimeZone::SHORT ?
+ "SHORT" : "LONG",
+ zoneDisplayTestData[testNum].summerTime,
+ zoneDisplayTestData[testNum].expectedDisplayName,
+ name);
+ } else {
+ logln("Incorrect time zone display name. zone = \"%s\",\n"
+ " locale = \"%s\", style = %s, Summertime = %d\n"
+ " Expected \"%s\", "
+ " Got \"%s\"\n", zoneDisplayTestData[testNum].zoneName,
+ zoneDisplayTestData[testNum].localeName,
+ zoneDisplayTestData[testNum].style==TimeZone::SHORT ?
+ "SHORT" : "LONG",
+ zoneDisplayTestData[testNum].summerTime,
+ zoneDisplayTestData[testNum].expectedDisplayName,
+ name);
+ }
}
delete zone;
}
--- test/intltest/tztest.h
+++ test/intltest/tztest.h
@@ -1,6 +1,6 @@
/********************************************************************
- * Copyright (c) 1997-2008, International Business Machines
+ * Copyright (c) 1997-2009, International Business Machines
* Corporation and others. All Rights Reserved.
********************************************************************/
@@ -98,6 +98,11 @@
// internal functions
static UnicodeString& formatOffset(int32_t offset, UnicodeString& rv);
static UnicodeString& formatTZID(int32_t offset, UnicodeString& rv);
+
+ // Some test case data is current date/tzdata version sensitive and producing errors
+ // when year/rule are changed.
+ static const int32_t REFERENCE_YEAR;
+ static const char *REFERENCE_DATA_VERSION;
};
#endif /* #if !UCONFIG_NO_FORMATTING */

View File

@ -0,0 +1,10 @@
--- data/Makefile.in
+++ data/Makefile.in
@@ -355,6 +355,7 @@
endif
endif
+$(BUILD_DIRS): build-dir
build-dir:
@list='$(BUILD_DIRS)'; \

View File

@ -0,0 +1,63 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/icu/Attic/icu-4.0.1.ebuild,v 1.11 2010/10/02 22:30:45 arfrever dead $
EAPI="2"
inherit eutils versionator
DESCRIPTION="International Components for Unicode (4.0 Libs only)"
HOMEPAGE="http://www.icu-project.org/ http://ibm.com/software/globalization/icu/"
BASEURI="http://download.icu-project.org/files/${PN}4c/${PV}"
DOCS_PV="$(get_version_component_range 1-2)"
DOCS_BASEURI="http://download.icu-project.org/files/${PN}4c/${DOCS_PV}"
DOCS_PV="${DOCS_PV/./_}"
SRCPKG="${PN}4c-${PV//./_}-src.tgz"
SRC_URI="${BASEURI}/${SRCPKG}"
LICENSE="BSD"
SLOT="4.0"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
IUSE="debug doc examples"
DEPEND="doc? ( app-arch/unzip )"
RDEPEND=""
S="${WORKDIR}/${PN}/source"
src_prepare() {
# Do not hardcode used CFLAGS, LDFLAGS etc. into icu-config
# Bug 202059
# http://bugs.icu-project.org/trac/ticket/6102
for x in CFLAGS CXXFLAGS CPPFLAGS LDFLAGS ; do
sed -i -e "/^${x} =.*/s:@${x}@::" config/Makefile.inc.in || die "sed failed"
done
# Bug 258377
sed -i -e 's:^#elif$:#else:g' ${S}/layoutex/ParagraphLayout.cpp || die 'elif sed failed'
epatch "${FILESDIR}/${P}-fix_parallel_building.patch"
epatch "${FILESDIR}/${P}-TestDisplayNamesMeta.patch"
}
src_configure() {
econf \
--enable-static \
$(use_enable debug) \
$(use_enable examples samples)
}
src_install() {
emake -j1 DESTDIR="${D}" install || die "emake install failed"
rm -rf "${D}"/usr/bin
rm -rf "${D}"/usr/include
rm -rf "${D}"/usr/lib*/*.so
rm -rf "${D}"/usr/lib*/*.a
rm -rf "${D}"/usr/lib*/icu
rm -rf "${D}"/usr/sbin
rm -rf "${D}"/usr/share
dohtml ../readme.html
dodoc ../unicode-license.txt
}

View File

@ -30,6 +30,12 @@ AUX 6.40.9.27553/zarafa-6.40.2-libtcmalloc_shared-1.patch 857 RMD160 c9b89cad232
AUX 6.40.9.27553/zarafa-6.40.2-sysconfig2confd-1.patch 8495 RMD160 f747da766c1777121f04c12f4cb3bee9ec56b7f8 SHA1 44e5a9487497080933de75d55311c97dfc7fc8fc SHA256 591dfe4e220673818fd3548d9b36f8b4e5ea92529eaf3d7bee6c7885808f8988
AUX 6.40.9.27553/zarafa-6.40.6-force_latin1.patch 618 RMD160 8fc093050c3368c770d11326cf2402511f8d7c14 SHA1 5a7a6669308166ffb8117090411c3df9827408aa SHA256 e8caa41fb4a285e59ab8b3a2a6c0b5733423f70dbc55798d6c1472202deab496
AUX 6.40.9.27553/zarafa-6.40.6-package.patch 2135 RMD160 30804eb455510967a5cfc2f9fe9bd699f906a9df SHA1 725f55210166e3453eae6bb58d1a417c6b0021ad SHA256 e441b08807753388e561653adcb9e3de8def54e3c343105dc25d95c1a1e0997d
AUX 7.0.0.27791/Datux-sendas.patch 1429 RMD160 bd2b502775fb84bd6899bb3892d36d19ee3d5b8d SHA1 07a5887d02d0ddbd368c46e50eb4267f73aac9f7 SHA256 852e7fc30df15fc534ff6697f8735ee02fe013f2fcb2c7dcd0b4b5f79b9b1032
AUX 7.0.0.27791/Datux-spamhook.patch 9895 RMD160 b1143f3e2057ee8d1b0a03e757086501769645a6 SHA1 a108a95087ba83f9c1fb0da42ffc5eef1d3755da SHA256 57d4fe122acc168b508b06a0a99ee9dc093080116918d2043fca02bc7022ed2b
AUX 7.0.0.27791/zarafa-6.40.1-no-php-conf.patch 1634 RMD160 1bb4d4357aeeec0b005cd090beb96cb73905f58d SHA1 3da975c330bf09eca894db87aa1888536ee1e206 SHA256 ec79e127c30aeb93fe455bbebbd426645d4d8aa3e1031005ff9177d7f7b9685f
AUX 7.0.0.27791/zarafa-6.40.2-libtcmalloc_shared-1.patch 857 RMD160 c9b89cad232b513db8dad25dba9a7a3b6cdcf007 SHA1 c4d332881ab985f817c8d5c4848f4ec2be91d050 SHA256 82b9e69f6fdb00dea3cdbbc4bdfa94b61303fa022891e1ef0763f019cbe0f350
AUX 7.0.0.27791/zarafa-6.40.2-sysconfig2confd-1.patch 8495 RMD160 f747da766c1777121f04c12f4cb3bee9ec56b7f8 SHA1 44e5a9487497080933de75d55311c97dfc7fc8fc SHA256 591dfe4e220673818fd3548d9b36f8b4e5ea92529eaf3d7bee6c7885808f8988
AUX 7.0.0.27791/zarafa-7.0.0-package.patch 9932 RMD160 2519e3d369ea51900f111d10d7c4ee1b484912c0 SHA1 8904c844cdd5926b1fda1980c9af7265006d85a1 SHA256 30e2cc55036843a7b260a95f14924195f745a93773c4e45eb3bfed92138693f7
AUX junklearn.dspam 924 RMD160 84a39d3297c075f3e4906b40cd84be8e47b90690 SHA1 cfd81182aaec691e7f415709d0db3189bbf9366c SHA256 5060aa1c0fd3e103c0243f5372ec4a393d4aebc7ed7c69a9475adead50d6b37e
AUX zarafa-dagent.rc6 2016 RMD160 45cbcb81da30a34be4202f3d9b84f38b12ecf57b SHA1 aaccebd9658dc8da88a32f7300922557fd4c621c SHA256 696d0f7b0c41814ca15d775b0595eb46b95fc59e1cf2a30935eba2c717ff16d6
AUX zarafa-gateway.rc6 747 RMD160 c6094f036814bb289eade6f309b9c48ed6b683d5 SHA1 6182824447f9373badf2b2536d41190451fbceb0 SHA256 d08eb9eb5e548dca24e644aee4196aa135ef79d74d244675eeb9ea47594311b0
@ -42,20 +48,28 @@ AUX zarafa-spooler.rc6 705 RMD160 a2981b8e9b60df19d5adce5507ec51ac6d5b12e8 SHA1
AUX zarafa.logrotate 1857 RMD160 d295f5307be6577d3f8fdc89edc7995adae2fd47 SHA1 7188133da91ad6d453811ff5e67d84fde49b4fb9 SHA256 44e26d9ad5eff2e159388698a068df72d9626d91e9be478be00b3e3eaa15913f
DIST zarafa-bash-completion-6.40.10.28214.zip 2156 RMD160 7f00d115e0abd0d7707e8c0815a2beedeb29b28f SHA1 705d6a1dc7e55afdf2c8693de22dbd985842beec SHA256 1343b8d279761f6aaf2263c6d7ba97d1ec21d7436a6f0277a34250fe587f28e5
DIST zarafa-bash-completion-6.40.9.27553.zip 2156 RMD160 7f00d115e0abd0d7707e8c0815a2beedeb29b28f SHA1 705d6a1dc7e55afdf2c8693de22dbd985842beec SHA256 1343b8d279761f6aaf2263c6d7ba97d1ec21d7436a6f0277a34250fe587f28e5
DIST zarafa-bash-completion-7.0.0.27791.zip 2156 RMD160 7f00d115e0abd0d7707e8c0815a2beedeb29b28f SHA1 705d6a1dc7e55afdf2c8693de22dbd985842beec SHA256 1343b8d279761f6aaf2263c6d7ba97d1ec21d7436a6f0277a34250fe587f28e5
DIST zarafa-webaccess-plugin-dspam-6.40.10.28214.tar.gz 5308 RMD160 57f6ce09049067892c48cd411aea848a4586fa1b SHA1 7134477b89efcdc3c7abada75df9a840b5cc90c0 SHA256 04a550a60aa6b5eee4875be6d5f3161752223fd278c4b87d62a31e3a486c5d99
DIST zarafa-webaccess-plugin-dspam-6.40.9.27553.tar.gz 5308 RMD160 57f6ce09049067892c48cd411aea848a4586fa1b SHA1 7134477b89efcdc3c7abada75df9a840b5cc90c0 SHA256 04a550a60aa6b5eee4875be6d5f3161752223fd278c4b87d62a31e3a486c5d99
DIST zarafa-webaccess-plugin-dspam-7.0.0.27791.tar.gz 5308 RMD160 57f6ce09049067892c48cd411aea848a4586fa1b SHA1 7134477b89efcdc3c7abada75df9a840b5cc90c0 SHA256 04a550a60aa6b5eee4875be6d5f3161752223fd278c4b87d62a31e3a486c5d99
DIST zarafa-webaccess-plugin-google-maps-6.40.10.28214.zip 100943 RMD160 5f2598f678d206fae94230cb7ceb150e8026cf82 SHA1 2d1cf0d5cf415ab1b4cc85ad8b4bc57f7eb34b0b SHA256 0fd861ac242d6937cdc1bc8d53edd9dce5f6348342d4e71bf06c5f5ebea1031e
DIST zarafa-webaccess-plugin-google-maps-6.40.9.27553.zip 100943 RMD160 5f2598f678d206fae94230cb7ceb150e8026cf82 SHA1 2d1cf0d5cf415ab1b4cc85ad8b4bc57f7eb34b0b SHA256 0fd861ac242d6937cdc1bc8d53edd9dce5f6348342d4e71bf06c5f5ebea1031e
DIST zarafa-webaccess-plugin-google-maps-7.0.0.27791.zip 100943 RMD160 5f2598f678d206fae94230cb7ceb150e8026cf82 SHA1 2d1cf0d5cf415ab1b4cc85ad8b4bc57f7eb34b0b SHA256 0fd861ac242d6937cdc1bc8d53edd9dce5f6348342d4e71bf06c5f5ebea1031e
DIST zarafa-webaccess-plugin-mobile-device-6.40.10.28214.zip 26916 RMD160 ee331c6b01ff3d5360de833eaa4a8f0107613574 SHA1 92a9f572aa510e469290da05e421fab01546688f SHA256 0a641f3e521e4c3b29a8ab54972d7000059c84d37c50e32722cf8e09a5582ee4
DIST zarafa-webaccess-plugin-mobile-device-6.40.9.27553.zip 26916 RMD160 ee331c6b01ff3d5360de833eaa4a8f0107613574 SHA1 92a9f572aa510e469290da05e421fab01546688f SHA256 0a641f3e521e4c3b29a8ab54972d7000059c84d37c50e32722cf8e09a5582ee4
DIST zarafa-webaccess-plugin-mobile-device-7.0.0.27791.zip 26916 RMD160 ee331c6b01ff3d5360de833eaa4a8f0107613574 SHA1 92a9f572aa510e469290da05e421fab01546688f SHA256 0a641f3e521e4c3b29a8ab54972d7000059c84d37c50e32722cf8e09a5582ee4
DIST zarafa-webaccess-plugin-smime-6.40.10.28214.zip 3678929 RMD160 3c704ef7b0b0b41ae068c898fbab757d5c507582 SHA1 5e20346ae0f6777526d2d688f0a2eafbaa1f3d73 SHA256 5c9b4c73cf3a649b7b5c3adb17f562490dba21102d8e4c64ccc58327b75b998a
DIST zarafa-webaccess-plugin-smime-6.40.9.27553.zip 3678929 RMD160 3c704ef7b0b0b41ae068c898fbab757d5c507582 SHA1 5e20346ae0f6777526d2d688f0a2eafbaa1f3d73 SHA256 5c9b4c73cf3a649b7b5c3adb17f562490dba21102d8e4c64ccc58327b75b998a
DIST zarafa-webaccess-plugin-smime-7.0.0.27791.zip 3678929 RMD160 3c704ef7b0b0b41ae068c898fbab757d5c507582 SHA1 5e20346ae0f6777526d2d688f0a2eafbaa1f3d73 SHA256 5c9b4c73cf3a649b7b5c3adb17f562490dba21102d8e4c64ccc58327b75b998a
DIST zarafa-webaccess-plugin-z-merge-archive-6.40.10.28214.zip 25852 RMD160 61cbb0e75a243f65370c60ed7040a9804174685a SHA1 8c3c0b62f89fe09c0e4867a22995f64b22216b4f SHA256 5b7884c9c19b1428fc5024ed9e674993366665358e0f1ca88610a4bcf534563a
DIST zarafa-webaccess-plugin-z-merge-archive-6.40.9.27553.zip 25852 RMD160 61cbb0e75a243f65370c60ed7040a9804174685a SHA1 8c3c0b62f89fe09c0e4867a22995f64b22216b4f SHA256 5b7884c9c19b1428fc5024ed9e674993366665358e0f1ca88610a4bcf534563a
DIST zarafa-webaccess-plugin-z-merge-archive-7.0.0.27791.zip 25852 RMD160 61cbb0e75a243f65370c60ed7040a9804174685a SHA1 8c3c0b62f89fe09c0e4867a22995f64b22216b4f SHA256 5b7884c9c19b1428fc5024ed9e674993366665358e0f1ca88610a4bcf534563a
DIST zarafa-webaccess-theme-dark-6.40.10.28214.tar.gz 12902 RMD160 e749eb36f607144ef3fb6edc1101f2ca6c143586 SHA1 9701c4bdd5be4f1a3b58bbf6f9ca5fb6987d538c SHA256 3ea4d26676c5be8b0ea862fd261600375fe00b1350985b222caa232c28c02b58
DIST zarafa-webaccess-theme-dark-6.40.9.27553.tar.gz 12902 RMD160 e749eb36f607144ef3fb6edc1101f2ca6c143586 SHA1 9701c4bdd5be4f1a3b58bbf6f9ca5fb6987d538c SHA256 3ea4d26676c5be8b0ea862fd261600375fe00b1350985b222caa232c28c02b58
DIST zarafa-webaccess-theme-dark-7.0.0.27791.tar.gz 12902 RMD160 e749eb36f607144ef3fb6edc1101f2ca6c143586 SHA1 9701c4bdd5be4f1a3b58bbf6f9ca5fb6987d538c SHA256 3ea4d26676c5be8b0ea862fd261600375fe00b1350985b222caa232c28c02b58
DIST zarafa-webaccess-theme-orange-6.40.10.28214.tar.gz 12828 RMD160 dbbf3dba6dce99fd94111635076f4abf65f0cbf3 SHA1 1a55492c99bf1f62b56c17394227b2308385b08e SHA256 6ee1c07a77efd38dc4f8ca292df4e0c2645de82d3f9454cf1cd8c119c0fdb532
DIST zarafa-webaccess-theme-orange-6.40.9.27553.tar.gz 12828 RMD160 dbbf3dba6dce99fd94111635076f4abf65f0cbf3 SHA1 1a55492c99bf1f62b56c17394227b2308385b08e SHA256 6ee1c07a77efd38dc4f8ca292df4e0c2645de82d3f9454cf1cd8c119c0fdb532
DIST zarafa-webaccess-theme-orange-7.0.0.27791.tar.gz 12828 RMD160 dbbf3dba6dce99fd94111635076f4abf65f0cbf3 SHA1 1a55492c99bf1f62b56c17394227b2308385b08e SHA256 6ee1c07a77efd38dc4f8ca292df4e0c2645de82d3f9454cf1cd8c119c0fdb532
DIST zcp-6.40.10-28214-sles-11-i586-free.tar.gz 24512897 RMD160 af1f2819f1494d5cf53ddfd02b2842a3489e5737 SHA1 e567bd051b010319cb045f6b90ddc645cf304fa9 SHA256 f8f2813a3ed511fa305cb12c30232e7ede94be67c981f2624ea7517565fe35c6
DIST zcp-6.40.10-28214-sles-11-x86_64-free.tar.gz 24445806 RMD160 26b1a8e5372591625a030d94603fbd03ffadf807 SHA1 a2d8635034f245bde22c78ee7a5e3aa7792a10ca SHA256 cba3334b76e82f2555b6209285889799fc0e4593d360c43a35f2dcf2c0e0315e
DIST zcp-6.40.10.tar.gz 5452296 RMD160 8ed6388e7ff310edff30a75dc3758eedd7911d1b SHA1 d35502d8ac4dba962c0bf8449c4b9e7cd9fba0f7 SHA256 50eef47cb354b9eca4bd4e2af6e0422aac5db5fdb35486197312f5f96b34abfc
@ -65,8 +79,12 @@ DIST zcp-6.40.8.tar.gz 5428506 RMD160 36ce2095a1d0126a43405ac50b289107910feeaf S
DIST zcp-6.40.9-27553-sles-11-i586-free.tar.gz 24074176 RMD160 f540590d7f371c9b51ca15cd562a77e7fc5d7cbc SHA1 2094481bcbe976d2ed8b63d9e951091033763edb SHA256 1f3fd302b6c3f79f14798da21a61ae3e63f836e0545e4a7e6bdecba26a9a6479
DIST zcp-6.40.9-27553-sles-11-x86_64-free.tar.gz 24027236 RMD160 f1612ccf825eed9ea8eaf1fb675460eca9b2ac25 SHA1 5de01cbc7d1d3d2051be9a897de18223abccc3e2 SHA256 ef21788f2864210d801c9d258ec97fad670c8fb00c9200dbb9e0c023e22ce035
DIST zcp-6.40.9.tar.gz 5434001 RMD160 6a14d627dfbdf77c17839e1ab8840695af9e3b34 SHA1 7cf5b7d08d521571d00e06c9f97a8498b8fe49eb SHA256 23653649497b0b26322b8152c639eec1087727d2370947050c239dc3d7c1f03d
DIST zcp-7.0.0-27791-sles-11-i586-free.tar.gz 25773688 RMD160 f4af1f58e03f1853b4249af74678c3384c05adfd SHA1 cf840dd2724bb1b3bf009def81ec872f79fe733d SHA256 813cb6c4bfa817fba75a265a6ed35e041c7cab8e40469d05a1f1ae34709b9f72
DIST zcp-7.0.0-27791-sles-11-x86_64-free.tar.gz 25667099 RMD160 f8b22619758c83aeb2c66c9a83b4e44b54d106a6 SHA1 7e7092fa0292bcf43e116018f17d9f8344dab494 SHA256 54fa222f7173e7a7a360cf0c59c22b21764c26a336b5b798550f73c100c67f5d
DIST zcp-7.0.0.tar.gz 6006829 RMD160 584b5593696f850ae8299806e447e61af389ec46 SHA1 e7463593cee89343b2129b8bd6977f95cc778279 SHA256 b7c3c85c0578eb5ca0c5f5d22bbef315f2f52e22208d6e1193ffa505b05e952e
EBUILD zarafa-6.40.10.28214.ebuild 9054 RMD160 84c3d9d212f1582bd6bb1ce3b055f30f8f173496 SHA1 f2e92a8c214884b0e6d6a5da56ac3174629696b6 SHA256 e6addb81a27872cd0242a6c115e4d84be1c8acaf7cb5d947db791b23e7b8f2b0
EBUILD zarafa-6.40.8.27223.ebuild 6567 RMD160 83e20fc877c6d5f50d4b85f7b9d6b957c97a5e15 SHA1 7b7637509d64c46bb52e1208e553a298cbb6e939 SHA256 74ab1f9061cada56505cd39e861d348f5b9007e85fa94d3dd48c811005dc4f95
EBUILD zarafa-6.40.9.27553.ebuild 9033 RMD160 bc86e8eadf58d619774ea62aaf869d00b477df5d SHA1 23d7461f0614ccabe5fe7377ee1590291937d5b7 SHA256 bcf13aaaeb85e536a6aed59ae670bef33c562c5d7efc6a38d79fd04b0bba8716
EBUILD zarafa-7.0.0.27791.ebuild 9067 RMD160 e4ce4891d8a99e4a0482fc432ebefa67e8b1a772 SHA1 923fe5b8bf3be89d16c03412e95be3752c6895a3 SHA256 c093ec89f9ec2cdd2616177901f9690ac1ae76a717d2f3427b443d2e54402873
MISC ChangeLog 7670 RMD160 0956c6d37c2725ef85efd02faf75bfaf1f7f296c SHA1 6dd1f10e4dc3942807ee5f2bc5e92bfc55ff1840 SHA256 eae458f81cb5b1e2b58ab6458f5c0d607983cbc749b2d3d8b8808423037d41f8
MISC metadata.xml 1238 RMD160 c82938e77f387291d6a1c3bf9b0d802f2878dd12 SHA1 b5738f14922c69e78cfb867acdc65eeea25977bf SHA256 2c13f98be5fa8bdaf21ac86bcd00bbeb8944df5615de0cfce35ae4c00ef4b4d5

View File

@ -0,0 +1,25 @@
diff -u -r zarafa-6.40.3/spooler/Spooler.cpp zarafa-6.40.3.new/spooler/Spooler.cpp
--- zarafa-6.40.3/spooler/Spooler.cpp 2010-10-20 14:16:24.000000000 +0000
+++ zarafa-6.40.3.new/spooler/Spooler.cpp 2010-11-10 15:58:43.000000000 +0000
@@ -935,6 +935,7 @@
{ "fax_domain", "", CONFIGSETTING_RELOADABLE },
{ "fax_international", "+", CONFIGSETTING_RELOADABLE },
{ "always_send_delegates", "no", CONFIGSETTING_RELOADABLE },
+ { "always_send_as", "no", CONFIGSETTING_RELOADABLE },
{ "always_send_tnef", "no", CONFIGSETTING_RELOADABLE },
{ "allow_redirect_spoofing", "yes", CONFIGSETTING_RELOADABLE },
{ "allow_delegate_meeting_request", "yes", CONFIGSETTING_RELOADABLE },
diff -u -r zarafa-6.40.3/spooler/mailer.cpp zarafa-6.40.3.new/spooler/mailer.cpp
--- zarafa-6.40.3/spooler/mailer.cpp 2010-10-20 14:16:24.000000000 +0000
+++ zarafa-6.40.3.new/spooler/mailer.cpp 2010-11-10 15:58:09.000000000 +0000
@@ -1949,6 +1949,10 @@
HrGetOneProp(lpMessage, PR_AUTO_FORWARDED, &lpAutoForward) == hrSuccess && lpAutoForward->Value.b)
{
bAllowSendAs = true;
+ } else if (strcmp(g_lpConfig->GetSetting("always_send_as"), "yes") == 0) {
+ //use always_send_as to allow everybody to send as someone else.
+ //(some users hate the 'on behalf of' text, and dont want to do the extra configuration)
+ bAllowSendAs = true;
} else {
hr = HrGetOneProp(lpUserStore, PR_MAILBOX_OWNER_ENTRYID, &lpPropOwner);

View File

@ -0,0 +1,199 @@
diff -rupN zarafa-6.40.0-orig/provider/libserver/ZarafaCmd.cpp zarafa-6.40.0/provider/libserver/ZarafaCmd.cpp
--- zarafa-6.40.0-orig/provider/libserver/ZarafaCmd.cpp 2010-05-31 19:28:59.000000000 +0200
+++ zarafa-6.40.0/provider/libserver/ZarafaCmd.cpp 2010-07-20 17:22:07.995625072 +0200
@@ -7244,6 +7244,166 @@ typedef struct{
SOURCEKEY sSourceKey;
SOURCEKEY sParentSourceKey;
}COPYITEM;
+//SPAM HOOK
+//This function parses an e-mail to the /etc/zarafa/userscripts/junklearn script. With 2 arguments:
+//ham or spam
+//message id
+//and pipes the mail header to the script.
+//This script wil be inhaled by MoveObjects();
+/////////////////////////////////////////////////////////////////////////////////////////////////
+int SpamHook(ECDatabase *lpDatabase,int ulId,int ulDestFolderId)
+{
+
+ ALLOC_DBRESULT();
+ ECRESULT er = erSuccess;
+ std::string shScriptPath = g_lpSessionManager->GetConfig()->GetSetting("junklearn_script");
+
+ //If shScriptPath doesn't exist skip spam hook.
+ if(fopen(shScriptPath.c_str(),"r")) {
+
+ //Get store object ID via message object id
+ unsigned int storeId;
+ er = g_lpSessionManager->GetCacheManager()->GetStore(ulId,&storeId,NULL);
+ if(er != erSuccess)
+ {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve source folder.");
+ goto exit;
+ }
+
+ //get deleted items folder entry id
+ strQuery="SELECT val_binary FROM properties WHERE hierarchyid="+stringify(storeId)+" AND tag="+stringify(PROP_ID(PR_IPM_WASTEBASKET_ENTRYID));
+ er = lpDatabase->DoSelect(strQuery, &lpDBResult);
+ if(er != erSuccess) {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve wastebasket entryid from DB.");
+ goto exit;
+ }
+ lpDBRow = lpDatabase->FetchRow(lpDBResult);
+ lpDBLen = lpDatabase->FetchRowLengths(lpDBResult);
+ int shNumRows=lpDatabase->GetNumRows(lpDBResult);
+ if(shNumRows<1)
+ {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve wastebasket entryid, empty DB result.");
+ goto exit;
+ }
+
+ //Convert 'deleted items' entryid to objectid.
+ entryId* wasteBucketEntryId = new entryId[0];
+ wasteBucketEntryId->__ptr=(unsigned char*)lpDBRow[0];
+ wasteBucketEntryId->__size=lpDBLen[0];
+ unsigned int wasteBucketFolderId;
+ er=g_lpSessionManager->GetCacheManager()->GetObjectFromEntryId(wasteBucketEntryId,&wasteBucketFolderId);
+ delete wasteBucketEntryId;
+ if(er!=erSuccess)
+ {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve wastebasket entryid, converting to objectID.");
+ goto exit;
+ }
+ FREE_DBRESULT();
+
+ //Get 'junk folder' entryId.
+ strQuery="SELECT val_binary FROM receivefolder LEFT JOIN mvproperties ON receivefolder.objid=mvproperties.hierarchyid WHERE receivefolder.storeid="+stringify(storeId)+" AND receivefolder.messageclass='IPC' AND mvproperties.tag="+stringify(PROP_ID(PR_ADDITIONAL_REN_ENTRYIDS))+" AND mvproperties.orderid=4";
+ er = lpDatabase->DoSelect(strQuery, &lpDBResult);
+ if(er != erSuccess) {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve junkfolder entryids from DB.");
+ goto exit;
+ }
+ lpDBRow = lpDatabase->FetchRow(lpDBResult);
+ lpDBLen = lpDatabase->FetchRowLengths(lpDBResult);
+ shNumRows=lpDatabase->GetNumRows(lpDBResult);
+ if(shNumRows<1)
+ {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve junkfolder entryid, empty DB result.");
+ goto exit;
+ }
+
+ //Convert 'junk folder' entryid to objectid.
+ entryId* junkFolderEntryId = new entryId[0];
+ junkFolderEntryId->__ptr=(unsigned char*)lpDBRow[0];
+ junkFolderEntryId->__size=lpDBLen[0];
+ unsigned int junkFolderId;
+ er=g_lpSessionManager->GetCacheManager()->GetObjectFromEntryId(junkFolderEntryId,&junkFolderId);
+ delete junkFolderEntryId;
+ if(er!=erSuccess)
+ {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve junkfolder entryid, converting to objectID.");
+ goto exit;
+ }
+ FREE_DBRESULT();
+
+ //Get source folder object ID. (Actually we should check if mail came from subfolders in the 'deleted items folder', which I think never happens.)
+ unsigned int srcFolderId;
+ er=g_lpSessionManager->GetCacheManager()->GetParent(ulId,&srcFolderId);
+ if(er!=erSuccess)
+ {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error while retrieve src folder id.");
+ goto exit;
+ }
+
+ //Check if object is ham or spam
+ string shMailStatus;
+ //if destination folder is junk, mark as spam
+ if(ulDestFolderId==junkFolderId)
+ shMailStatus="spam";
+ else
+ {
+ //if destination folder is not TRASH and de source folder is JUNK, mark as ham
+ if(ulDestFolderId!=wasteBucketFolderId && srcFolderId==junkFolderId)
+ shMailStatus="ham";
+ }
+
+ //Only call hook script if the mail is marked as ham or spam.
+ if(!shMailStatus.empty()) {
+
+ //Get the mail from the DB.
+ strQuery="SELECT val_string FROM properties WHERE tag="+stringify(PROP_ID(PR_TRANSPORT_MESSAGE_HEADERS))+" AND hierarchyid= "+stringify(ulId);
+ er = lpDatabase->DoSelect(strQuery, &lpDBResult);
+ if(er != erSuccess) {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: db error while retrieve mail header.");
+ goto exit;
+ }
+ lpDBRow = lpDatabase->FetchRow(lpDBResult);
+ int shNumRows=lpDatabase->GetNumRows(lpDBResult);
+
+ if(shNumRows>0) {
+
+ // Execute the hook:
+ FILE *shFilePtr;
+ shScriptPath=shScriptPath+" "+shMailStatus+" "+stringify(ulId);
+ shFilePtr=popen(shScriptPath.c_str(),"w");
+ fputs(lpDBRow[0],shFilePtr);
+ int shExitCode=pclose(shFilePtr);
+ if(!WIFEXITED(shExitCode)) {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: "+shScriptPath+" was terminated abnormally.");
+ goto exit;
+ }
+ //If script exit with non 0, exit..
+ if(WEXITSTATUS(shExitCode)!=0) {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: error "+shScriptPath+" exits with: "+stringify(shExitCode));
+ er=ZARAFA_E_UNKNOWN;
+ goto exit;
+ }
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_INFO,"SpamHook: "+shScriptPath+" successfully executed.");
+ er=erSuccess;
+ }
+ else {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_WARNING,"SpamHook: warning mail header empty or this object is no e-mail");
+ }
+
+ // Free database results
+ FREE_DBRESULT();
+ }
+ }
+ else {
+ g_lpSessionManager->GetLogger()->Log(EC_LOGLEVEL_INFO,"SpamHook: skipping, script "+shScriptPath+" not found");
+ er=erSuccess;
+ }
+exit:
+ // Free database results
+ FREE_DBRESULT();
+
+ return er;
+}
+
// Move one or more messages and/or moved a softdeleted message to a normal message
ECRESULT MoveObjects(ECSession *lpSession, ECDatabase *lpDatabase, ECListInt* lplObjectIds, unsigned int ulDestFolderId, unsigned int ulSyncId)
@@ -8096,6 +8256,17 @@ SOAP_ENTRY_START5(copyObjects, *result,
// @note The object type checking wille be done in MoveObjects or CopyObject
+//SPAMHOOK
+/////////////////////////////////////
+ //Iterate over all mail ids and initiate spamhook.
+ for(iObjectId = lObjectIds.begin(); iObjectId != lObjectIds.end(); iObjectId++)
+ {
+ //Ignore the result
+ int shResult=SpamHook(lpDatabase,*iObjectId,ulDestFolderId);
+ }
+//SPAMHOOK END
+////////////////////////////////////
+
//check copy or a move
if(ulFlags & FOLDER_MOVE ) { // A move
er = MoveObjects(lpecSession, lpDatabase, &lObjectIds, ulDestFolderId, ulSyncId);
diff -rupN zarafa-6.40.0-orig/provider/server/ECServer.cpp zarafa-6.40.0/provider/server/ECServer.cpp
--- zarafa-6.40.0-orig/provider/server/ECServer.cpp 2010-05-31 19:28:59.000000000 +0200
+++ zarafa-6.40.0/provider/server/ECServer.cpp 2010-07-20 17:26:25.119624516 +0200
@@ -670,6 +670,7 @@ int running_server(char *szName, char *s
{ "deletegroup_script", "/etc/zarafa/userscripts/deletegroup", CONFIGSETTING_RELOADABLE},
{ "createcompany_script", "/etc/zarafa/userscripts/createcompany", CONFIGSETTING_RELOADABLE },
{ "deletecompany_script", "/etc/zarafa/userscripts/deletecompany", CONFIGSETTING_RELOADABLE },
+ { "junklearn_script", "/etc/zarafa/userscripts/junklearn", CONFIGSETTING_RELOADABLE },
{ "user_safe_mode", "no", CONFIGSETTING_RELOADABLE },
// Storename format

View File

@ -0,0 +1,44 @@
--- php-ext/Makefile.in~ 2010-10-20 12:26:22.000000000 +0100
+++ php-ext/Makefile.in 2010-10-28 13:40:48.830318647 +0100
@@ -34,7 +34,7 @@
build_triplet = @build@
host_triplet = @host@
subdir = php-ext
-DIST_COMMON = $(dist_data_DATA) $(dist_sysconf_DATA) \
+DIST_COMMON = $(dist_data_DATA) \
$(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
@@ -86,7 +86,7 @@
DIST_SOURCES = $(mapi_la_SOURCES)
dist_dataDATA_INSTALL = $(INSTALL_DATA)
dist_sysconfDATA_INSTALL = $(INSTALL_DATA)
-DATA = $(dist_data_DATA) $(dist_sysconf_DATA)
+DATA = $(dist_data_DATA)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -406,23 +406,6 @@
echo " rm -f '$(DESTDIR)$(datadir)/$$f'"; \
rm -f "$(DESTDIR)$(datadir)/$$f"; \
done
-install-dist_sysconfDATA: $(dist_sysconf_DATA)
- @$(NORMAL_INSTALL)
- test -z "$(sysconfdir)" || $(MKDIR_P) "$(DESTDIR)$(sysconfdir)"
- @list='$(dist_sysconf_DATA)'; for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
- echo " $(dist_sysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sysconfdir)/$$f'"; \
- $(dist_sysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sysconfdir)/$$f"; \
- done
-
-uninstall-dist_sysconfDATA:
- @$(NORMAL_UNINSTALL)
- @list='$(dist_sysconf_DATA)'; for p in $$list; do \
- f=$(am__strip_dir) \
- echo " rm -f '$(DESTDIR)$(sysconfdir)/$$f'"; \
- rm -f "$(DESTDIR)$(sysconfdir)/$$f"; \
- done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \

View File

@ -0,0 +1,19 @@
Submitted By: Mario Fetka ( mario.fetka@gmaail.com)
Date: 2010-10-11
Initial Package Version: 6.40.2
Origin: me
Upstream Status: unknown
Description: on gentoo libtcmalloc_minimal is only provided as shared lib
diff -Naur zarafa-6.40.2.orig/configure.ac zarafa-6.40.2/configure.ac
--- zarafa-6.40.2.orig/configure.ac 2010-10-11 18:39:35.000000000 +0000
+++ zarafa-6.40.2/configure.ac 2010-10-11 18:40:03.000000000 +0000
@@ -441,7 +441,7 @@
AC_HELP_STRING([--with-tcmalloc-prefix=PATH],[path to tcmalloc lib, e.g. /usr/lib/]),
[TCMALLOC_PREFIX=${withval}],[TCMALLOC_PREFIX=/usr/lib])
AC_CHECK_LIB(tcmalloc_minimal, [open],
- [ TCMALLOC_LIBS="${TCMALLOC_PREFIX}/libtcmalloc_minimal.a" ],
+ [ TCMALLOC_LIBS="${TCMALLOC_PREFIX}/libtcmalloc_minimal.so" ],
[ WITH_TCMALLOC=no ])
AC_SUBST(TCMALLOC_LIBS)
AC_LANG_POP

View File

@ -0,0 +1,187 @@
Submitted By: Mario Fetka (mario.fetka@gmail.com)
Date: 2010-10-13
Initial Package Version: 6.40.2
Origin: me
Upstream Status: gentoo specific
Description: this patch correct the install dir for the default install target from /etc/sysconfig to the gentoo equivalent /etc/conf.d
diff -Naur zarafa-6.40.2.orig/installer/linux/Makefile.am zarafa-6.40.2/installer/linux/Makefile.am
--- zarafa-6.40.2.orig/installer/linux/Makefile.am 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/linux/Makefile.am 2010-10-13 08:28:26.000000000 +0000
@@ -26,7 +26,7 @@
sysconf_initdir=${sysconfdir}/init.d
sysconf_init_SCRIPTS = ${@DISTRO@_initscript_files}
-rhel_sysconfig_path = ${sysconfdir}/sysconfig
+rhel_sysconfig_path = ${sysconfdir}/conf.d
suse_sysconfig_path = ${localstatedir}/adm/fillup-templates
sles_sysconfig_path = ${localstatedir}/adm/fillup-templates
sysconf_sysconfigdir = ${@DISTRO@_sysconfig_path}
diff -Naur zarafa-6.40.2.orig/installer/userscripts/createcompany zarafa-6.40.2/installer/userscripts/createcompany
--- zarafa-6.40.2.orig/installer/userscripts/createcompany 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/createcompany 2010-10-13 08:26:53.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f ${prefix}/etc/sysconfig/zarafa ]; then
- . ${prefix}/etc/sysconfig/zarafa
+if [ -f ${prefix}/etc/conf.d/zarafa ]; then
+ . ${prefix}/etc/conf.d/zarafa
fi
ZARAFA_COMPANY_SCRIPTS=/etc/zarafa/userscripts/createcompany.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/createcompany.in zarafa-6.40.2/installer/userscripts/createcompany.in
--- zarafa-6.40.2.orig/installer/userscripts/createcompany.in 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/createcompany.in 2010-10-13 08:27:00.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f @sysconfdir@/sysconfig/zarafa ]; then
- . @sysconfdir@/sysconfig/zarafa
+if [ -f @sysconfdir@/conf.d/zarafa ]; then
+ . @sysconfdir@/conf.d/zarafa
fi
ZARAFA_COMPANY_SCRIPTS=@USERSCRIPTDIR@/createcompany.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/creategroup zarafa-6.40.2/installer/userscripts/creategroup
--- zarafa-6.40.2.orig/installer/userscripts/creategroup 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/creategroup 2010-10-13 08:27:04.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f ${prefix}/etc/sysconfig/zarafa ]; then
- . ${prefix}/etc/sysconfig/zarafa
+if [ -f ${prefix}/etc/conf.d/zarafa ]; then
+ . ${prefix}/etc/conf.d/zarafa
fi
ZARAFA_GROUP_SCRIPTS=/etc/zarafa/userscripts/creategroup.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/creategroup.in zarafa-6.40.2/installer/userscripts/creategroup.in
--- zarafa-6.40.2.orig/installer/userscripts/creategroup.in 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/creategroup.in 2010-10-13 08:27:08.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f @sysconfdir@/sysconfig/zarafa ]; then
- . @sysconfdir@/sysconfig/zarafa
+if [ -f @sysconfdir@/conf.d/zarafa ]; then
+ . @sysconfdir@/conf.d/zarafa
fi
ZARAFA_GROUP_SCRIPTS=@USERSCRIPTDIR@/creategroup.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/createuser zarafa-6.40.2/installer/userscripts/createuser
--- zarafa-6.40.2.orig/installer/userscripts/createuser 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/createuser 2010-10-13 08:27:12.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f ${prefix}/etc/sysconfig/zarafa ]; then
- . ${prefix}/etc/sysconfig/zarafa
+if [ -f ${prefix}/etc/conf.d/zarafa ]; then
+ . ${prefix}/etc/conf.d/zarafa
fi
ZARAFA_USER_SCRIPTS=/etc/zarafa/userscripts/createuser.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/createuser.in zarafa-6.40.2/installer/userscripts/createuser.in
--- zarafa-6.40.2.orig/installer/userscripts/createuser.in 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/createuser.in 2010-10-13 08:27:17.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f @sysconfdir@/sysconfig/zarafa ]; then
- . @sysconfdir@/sysconfig/zarafa
+if [ -f @sysconfdir@/conf.d/zarafa ]; then
+ . @sysconfdir@/conf.d/zarafa
fi
ZARAFA_USER_SCRIPTS=@USERSCRIPTDIR@/createuser.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/deletecompany zarafa-6.40.2/installer/userscripts/deletecompany
--- zarafa-6.40.2.orig/installer/userscripts/deletecompany 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/deletecompany 2010-10-13 08:27:22.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f ${prefix}/etc/sysconfig/zarafa ]; then
- . ${prefix}/etc/sysconfig/zarafa
+if [ -f ${prefix}/etc/conf.d/zarafa ]; then
+ . ${prefix}/etc/conf.d/zarafa
fi
ZARAFA_COMPANY_SCRIPTS=/etc/zarafa/userscripts/deletecompany.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/deletecompany.in zarafa-6.40.2/installer/userscripts/deletecompany.in
--- zarafa-6.40.2.orig/installer/userscripts/deletecompany.in 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/deletecompany.in 2010-10-13 08:27:26.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f @sysconfdir@/sysconfig/zarafa ]; then
- . @sysconfdir@/sysconfig/zarafa
+if [ -f @sysconfdir@/conf.d/zarafa ]; then
+ . @sysconfdir@/conf.d/zarafa
fi
ZARAFA_COMPANY_SCRIPTS=@USERSCRIPTDIR@/deletecompany.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/deletegroup zarafa-6.40.2/installer/userscripts/deletegroup
--- zarafa-6.40.2.orig/installer/userscripts/deletegroup 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/deletegroup 2010-10-13 08:27:30.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f ${prefix}/etc/sysconfig/zarafa ]; then
- . ${prefix}/etc/sysconfig/zarafa
+if [ -f ${prefix}/etc/conf.d/zarafa ]; then
+ . ${prefix}/etc/conf.d/zarafa
fi
ZARAFA_GROUP_SCRIPTS=/etc/zarafa/userscripts/deletegroup.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/deletegroup.in zarafa-6.40.2/installer/userscripts/deletegroup.in
--- zarafa-6.40.2.orig/installer/userscripts/deletegroup.in 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/deletegroup.in 2010-10-13 08:27:35.000000000 +0000
@@ -9,8 +9,8 @@
# beware that this string can contain any characters, so take heed to
# correct quoting.
-if [ -f @sysconfdir@/sysconfig/zarafa ]; then
- . @sysconfdir@/sysconfig/zarafa
+if [ -f @sysconfdir@/conf.d/zarafa ]; then
+ . @sysconfdir@/conf.d/zarafa
fi
ZARAFA_GROUP_SCRIPTS=@USERSCRIPTDIR@/deletegroup.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/deleteuser zarafa-6.40.2/installer/userscripts/deleteuser
--- zarafa-6.40.2.orig/installer/userscripts/deleteuser 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/deleteuser 2010-10-13 08:27:39.000000000 +0000
@@ -9,8 +9,8 @@
# that this string can contain any characters, so take heed to correct
# quoting.
-if [ -f ${prefix}/etc/sysconfig/zarafa ]; then
- . ${prefix}/etc/sysconfig/zarafa
+if [ -f ${prefix}/etc/conf.d/zarafa ]; then
+ . ${prefix}/etc/conf.d/zarafa
fi
ZARAFA_USER_SCRIPTS=/etc/zarafa/userscripts/deleteuser.d
diff -Naur zarafa-6.40.2.orig/installer/userscripts/deleteuser.in zarafa-6.40.2/installer/userscripts/deleteuser.in
--- zarafa-6.40.2.orig/installer/userscripts/deleteuser.in 2010-10-13 08:26:21.000000000 +0000
+++ zarafa-6.40.2/installer/userscripts/deleteuser.in 2010-10-13 08:27:43.000000000 +0000
@@ -9,8 +9,8 @@
# that this string can contain any characters, so take heed to correct
# quoting.
-if [ -f @sysconfdir@/sysconfig/zarafa ]; then
- . @sysconfdir@/sysconfig/zarafa
+if [ -f @sysconfdir@/conf.d/zarafa ]; then
+ . @sysconfdir@/conf.d/zarafa
fi
ZARAFA_USER_SCRIPTS=@USERSCRIPTDIR@/deleteuser.d

View File

@ -0,0 +1,247 @@
Patch by Robert Scheck <robert@fedoraproject.org> 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.
forward patch by Mario Fetka <mario.fetka@gmail.com>
diff -uNr zarafa-7.0.0.orig//ECtools/Makefile.am zarafa-7.0.0/ECtools/Makefile.am
--- zarafa-7.0.0.orig//ECtools/Makefile.am 2011-07-26 02:33:33.778000103 +0200
+++ zarafa-7.0.0/ECtools/Makefile.am 2011-07-26 02:34:25.198000081 +0200
@@ -1,5 +1 @@
-if ! OSS_ONLY
-PROSUBS = zarafa-backup zarafa-report zarafa-msr za-extra
-endif
-
SUBDIRS = $(PROSUBS) zarafa-archiver zarafa-admin zarafa-monitor zarafa-passwd zarafa-fsck zarafa-cfgchecker zarafa-stats zarafa-indexer
diff -uNr zarafa-7.0.0.orig//ECtools/zarafa-archiver/Makefile.am zarafa-7.0.0/ECtools/zarafa-archiver/Makefile.am
--- zarafa-7.0.0.orig//ECtools/zarafa-archiver/Makefile.am 2011-07-26 02:33:33.780000103 +0200
+++ zarafa-7.0.0/ECtools/zarafa-archiver/Makefile.am 2011-07-26 02:35:35.898000128 +0200
@@ -24,17 +24,6 @@
-if ! OSS_ONLY
-bin_PROGRAMS = zarafa-archiver
-
-zarafa_archiver_LDADD = ${top_builddir}/common/libcommon_util.la \
- libarchiver.la \
- $(PROG_LIBS)
-
-zarafa_archiver_SOURCES = main.cpp
-endif
-
-
check-syntax:
$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) \
-fsyntax-only -fmessage-length=0 ${CHK_SOURCES} -Wall -Wformat=2
diff -uNr zarafa-7.0.0.orig//ECtools/zarafa-stats/Makefile.am zarafa-7.0.0/ECtools/zarafa-stats/Makefile.am
--- zarafa-7.0.0.orig//ECtools/zarafa-stats/Makefile.am 2011-07-26 02:33:33.781000103 +0200
+++ zarafa-7.0.0/ECtools/zarafa-stats/Makefile.am 2011-07-26 02:35:57.185000102 +0200
@@ -1,9 +1,5 @@
bin_PROGRAMS = zarafa-stats
-if ! OSS_ONLY
-dist_noinst_DATA = zarafa-ssm zarafa-ssm.default zarafa-ssm.cron
-endif
-
AM_CPPFLAGS = $(DEBUGFLAGS) $(BOOST_CPPFLAGS) -DLINUX \
-I${top_srcdir}/mapi4linux/include \
-I${top_srcdir}/libfreebusy \
@@ -18,14 +14,6 @@
zarafa_stats_SOURCES = zarafa-stats.cpp
install-data-hook:
-if ! OSS_ONLY
- mkdir -p $(DESTDIR)/$(sysconfdir)/default
- install -m 644 ${top_srcdir}/ECtools/zarafa-stats/zarafa-ssm.default $(DESTDIR)/$(sysconfdir)/default/zarafa-ssm
- mkdir -p $(DESTDIR)/$(sysconfdir)/cron.d
- install -m 644 ${top_srcdir}/ECtools/zarafa-stats/zarafa-ssm.cron $(DESTDIR)/$(sysconfdir)/cron.d/zarafa-ssm
- mkdir -p $(DESTDIR)/$(bindir)
- install -m 755 ${top_srcdir}/ECtools/zarafa-stats/zarafa-ssm $(DESTDIR)/$(bindir)
-endif
check-syntax:
$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) \
diff -uNr zarafa-7.0.0.orig//Makefile.am zarafa-7.0.0/Makefile.am
--- zarafa-7.0.0.orig//Makefile.am 2011-07-26 02:33:33.804000103 +0200
+++ zarafa-7.0.0/Makefile.am 2011-07-26 02:34:14.491000119 +0200
@@ -1,8 +1,5 @@
ACLOCAL_AMFLAGS = -I autoconf
-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
@@ -33,10 +30,6 @@
# we force a clean, since if it's not clean, something will loop and eat up gigabytes of diskspace
(cd webapp && ant clean && ant && ant deploy)
-if ! OSS_ONLY
-CLEANFILES=common/ecversion.h
-endif
-
dist-hook: webapp/deploy
find $(distdir) -type d -name .svn -exec rm -rf {} \; 2>/dev/null || true
if OSS_ONLY
diff -uNr zarafa-7.0.0.orig//configure.ac zarafa-7.0.0/configure.ac
--- zarafa-7.0.0.orig//configure.ac 2011-07-26 02:33:33.852000103 +0200
+++ zarafa-7.0.0/configure.ac 2011-07-26 02:37:56.348000127 +0200
@@ -748,18 +748,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/zarafa-msr/Makefile
- ECtools/za-extra/Makefile
-])
-fi
AC_OUTPUT
diff -uNr zarafa-7.0.0.orig//installer/linux/Makefile.am zarafa-7.0.0/installer/linux/Makefile.am
--- zarafa-7.0.0.orig//installer/linux/Makefile.am 2011-07-26 02:33:33.790000103 +0200
+++ zarafa-7.0.0/installer/linux/Makefile.am 2011-07-26 02:36:23.032000098 +0200
@@ -59,16 +59,6 @@
dist_sysconf_rotate_DATA = zarafa.logrotate
sysconf_certdir = ${sysconfdir}/zarafa/report-ca
-if ! OSS_ONLY
-BUILT_SOURCES += ldapms.openldap.cfg ldapms.active-directory.cfg
-
-config_files += licensed.cfg archiver.cfg
-rhel_initscript_files += zarafa-licensed.init.rhel
-suse_initscript_files += zarafa-licensed.init.suse
-cbs4_initscript_files += zarafa-licensed.init.cbs4
-
-dist_sysconf_cert_DATA = addtrust.crt
-endif
config_files += $(BUILT_SOURCES)
EXTRA_DIST = $(BUILT_SOURCES) ldap.m4 \
diff -uNr zarafa-7.0.0.orig//provider/plugins/Makefile.am zarafa-7.0.0/provider/plugins/Makefile.am
--- zarafa-7.0.0.orig//provider/plugins/Makefile.am 2011-07-26 02:33:33.739000103 +0200
+++ zarafa-7.0.0/provider/plugins/Makefile.am 2011-07-26 02:35:06.831000114 +0200
@@ -20,15 +20,6 @@
ldapplugin_la_SOURCES = LDAPUserPlugin.cpp LDAPUserPlugin.h LDAPCache.cpp LDAPCache.h ldappasswords.cpp ldappasswords.h $(COMMON_PLUGIN_FILES)
ldapplugin_la_LDFLAGS = -module -avoid-version
ldapplugin_la_LIBADD = ${top_builddir}/common/libcommon_util.la $(LDAP_LIBS)
-
-if ! OSS_ONLY
-pkglib_LTLIBRARIES += ldapmsplugin.la
-ldapmsplugin_la_CXXFLAGS = $(ldapplugin_la_CXXFLAGS) -DWITH_MULTISERVER
-ldapmsplugin_la_SOURCES = $(ldapplugin_la_SOURCES)
-ldapmsplugin_la_LDFLAGS = $(ldapplugin_la_LDFLAGS)
-ldapmsplugin_la_LIBADD = $(ldapplugin_la_LIBADD)
-endif
-
endif
# default plugin
diff -uNr zarafa-7.0.0.orig//swig/Makefile.am zarafa-7.0.0/swig/Makefile.am
--- zarafa-7.0.0.orig//swig/Makefile.am 2011-07-26 02:33:33.835000103 +0200
+++ zarafa-7.0.0/swig/Makefile.am 2011-07-26 02:34:33.381000111 +0200
@@ -19,10 +19,6 @@
EXTRA_DIST = edkmdb.i mapi.i mapiutil.i mapidefs.i mapicode.i mapix.i mapinotifsink.i typemap.i helpers.i IECMultiStoreTable.i IECServiceAdmin.i IECSpooler.i IECTestProtocol.i IECLicense.i inetmapi.i icalmapi.i swig_iunknown.h ecdefs.i libcommon.i archiver.i licenseclient.i
-if ! OSS_ONLY
-EXTRA_DIST += licensereq.i
-endif
-
check-syntax:
$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) \
-fsyntax-only -fmessage-length=0 ${CHK_SOURCES} -Wall -Wformat=2
diff -uNr zarafa-7.0.0.orig//swig/python/Makefile.am zarafa-7.0.0/swig/python/Makefile.am
--- zarafa-7.0.0.orig//swig/python/Makefile.am 2011-07-26 02:33:33.828000103 +0200
+++ zarafa-7.0.0/swig/python/Makefile.am 2011-07-26 02:37:15.620000128 +0200
@@ -1,10 +1,6 @@
pythonexeclib_LTLIBRARIES = _MAPICore.la _inetmapi.la _icalmapi.la _licenseclient.la
noinst_LTLIBRARIES = _libcommon.la _archiver.la
-if ! OSS_ONLY
-pythonexeclib_LTLIBRARIES += _licensereq.la
-endif
-
# disable warnings since code is mostly generated
AM_CPPFLAGS = $(DEBUGFLAGS) -DLINUX -I$(top_srcdir)/mapi4linux/include -I$(top_srcdir)/provider/common -I${top_srcdir}/common $(PYTHON_INCLUDES) -I${top_srcdir}/swig -w -DSWIG_PYTHON_OUTPUT_TUPLE
@@ -50,14 +46,6 @@
${top_builddir}/mapi4linux/src/libmapi.la \
$(PROG_LIBS) $(PYTHON_LIBS) $(SSL_LIBS)
-if ! OSS_ONLY
-_licensereq_la_CXXFLAGS = -I${top_srcdir}/provider/common -I${top_builddir}/provider/soap -I${top_srcdir}/provider/soap -I${top_srcdir}/liblicense
-_licensereq_la_LDFLAGS = -module -avoid-version
-_licensereq_la_LIBADD = ${top_builddir}/liblicense/liblicense.la \
- ${top_builddir}/common/libcommon_mapi.la \
- ${top_builddir}/common/libcommon_util.la \
- $(PROG_LIBS) $(PYTHON_LIBS) $(SSL_LIBS)
-endif
# noinst_ and rpath will generate the _libcommon.so file
_libcommon_la_LDFLAGS = -module -avoid-version -rpath '$(libdir)'
@@ -76,10 +64,6 @@
libcommon_wrap.cxx \
licenseclient_wrap.cxx
-if ! OSS_ONLY
-BUILT_SOURCES += licensereq_wrap.cxx
-endif
-
CLEANFILES = $(BUILT_SOURCES) \
MAPICore.py \
inetmapi.py \
@@ -88,10 +72,6 @@
libcommon.py \
licenseclient.py
-if ! OSS_ONLY
-CLEANFILES += licensereq.py
-endif
-
# wait for full output of swig
MAPICore.py: $(BUILT_SOURCES)
inetmapi.py: $(BUILT_SOURCES)
@@ -100,10 +80,6 @@
libcommon.py: $(BUILT_SOURCES)
licenseclient.py: $(BUILT_SOURCES)
-if ! OSS_ONLY
-licensereq.py: $(BUILT_SOURCES)
-endif
-
_MAPICore_la_SOURCES = conversion.h conversion.cpp mapi_wrap.cxx mapi_wrap.h scl.h ../director_util.h ../director_util.cpp
_inetmapi_la_SOURCES = conversion.h conversion.cpp inetmapi_wrap.cxx
_icalmapi_la_SOURCES = conversion.h conversion.cpp icalmapi_wrap.cxx
@@ -111,20 +87,11 @@
_libcommon_la_SOURCES = libcommon_wrap.cxx
_licenseclient_la_SOURCES = licenseclient_wrap.cxx licenseclient_conv.cpp licenseclient_conv.h
-if ! OSS_ONLY
-_licensereq_la_SOURCES = licensereq_wrap.cxx
-endif
-
EXTRA_DIST = typemap_python.i helpers_python.i setup.py $(BUILT_SOURCES) MAPICore.py inetmapi.py icalmapi.py licenseclient.py MAPI/Defs.py MAPI/__init__.py MAPI/Struct.py MAPI/Tags.py MAPI/Time.py MAPI/Util/__init__.py MAPI/Util/Generators.py MAPI/Util/Iterators.py archiver_python.i
datadir = $(pythonexeclibdir)
data_DATA = MAPICore.py inetmapi.py icalmapi.py licenseclient.py
noinst_datadir = libcommon.py
-if ! OSS_ONLY
-EXTRA_DIST += licensereq.py
-data_DATA += licensereq.py
-endif
-
mapi_wrap.h: mapi_wrap.cxx
mapi_wrap.cxx: ../mapi.i ../mapiutil.i ../mapidefs.i ../mapicode.i ../mapix.i ../mapinotifsink.i ../mapiutil.i ../typemap.i ../helpers.i ../edkmdb.i ../IECServiceAdmin.i ../ecdefs.i typemap_python.i helpers_python.i
if test "x$(SWIG_EXEC)" = "x"; then echo "swig is required for 'make dist'"; exit 1; fi

View File

@ -0,0 +1,254 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="2"
PHP_EXT_NAME="mapi"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-3"
inherit php-ext-source-r2 eutils autotools rpm5 versionator
MY_PV=$(replace_version_separator 3 '-' )
MY_PVV=$(replace_version_separator 3 'beta' $MY_PV )
MY_PVM=$(get_version_component_range 1-2 )
MY_PVR=$(get_version_component_range 1-3 )
DESCRIPTION="Open Source Groupware Solution"
HOMEPAGE="http://zarafa.com/"
SRC_URI="http://download.zarafa.com/community/final/${MY_PVM}/${MY_PV}/sourcecode/zcp-${MY_PVR}.tar.gz
amd64? ( licensed? ( http://download.zarafa.com/community/final/${MY_PVM}/${MY_PV}/zcp-${MY_PV}-sles-11-x86_64-free.tar.gz ) )
x86? ( licensed? ( http://download.zarafa.com/community/final/${MY_PVM}/${MY_PV}/zcp-${MY_PV}-sles-11-i586-free.tar.gz ) )
bash-completion? ( http://community.zarafa.com/mod/community_plugins/download.php?release_guid=434 -> ${PN}-bash-completion-${PV}.zip )
smime? ( http://community.zarafa.com/mod/community_plugins/download.php?release_guid=554 -> ${PN}-webaccess-plugin-smime-${PV}.zip )
dspam? ( http://community.zarafa.com/mod/community_plugins/download.php?release_guid=125 -> ${PN}-webaccess-plugin-dspam-${PV}.tar.gz )
google-maps? ( http://community.zarafa.com/mod/community_plugins/download.php?release_guid=123 -> ${PN}-webaccess-plugin-google-maps-${PV}.zip )
mobile-device? ( http://community.zarafa.com/mod/community_plugins/download.php?release_guid=152 -> ${PN}-webaccess-plugin-mobile-device-${PV}.zip )
archive? ( http://community.zarafa.com/mod/community_plugins/download.php?release_guid=140 -> ${PN}-webaccess-plugin-z-merge-archive-${PV}.zip )
themes? (
http://community.zarafa.com/mod/community_plugins/download.php?release_guid=164 -> ${PN}-webaccess-theme-dark-${PV}.tar.gz
http://community.zarafa.com/mod/community_plugins/download.php?release_guid=162 -> ${PN}-webaccess-theme-orange-${PV}.tar.gz
)
"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86"
RESTRICT=""
IUSE="debug epoll ldap logrotate licensed static swig tcmalloc testtools perl pic profiling python kerberos sparsehash bash-completion smime dspam google-maps themes mobile-device archive"
RDEPEND=">=dev-libs/libical-0.44
dev-cpp/libvmime
app-text/catdoc
app-text/poppler
dev-cpp/clucene
dev-db/mysql
dev-libs/libxml2
dev-libs/openssl
net-misc/curl
sys-libs/e2fsprogs-libs
sys-libs/zlib
sys-libs/ncurses
sys-libs/pam
dev-libs/boost
sys-apps/util-linux
app-text/catdoc
kerberos? ( || ( app-crypt/mit-krb5 app-crypt/heimdal ) )
ldap? ( net-nds/openldap )
logrotate? ( app-admin/logrotate )
tcmalloc? ( dev-util/google-perftools )
sparsehash? ( dev-cpp/sparsehash )
perl? ( dev-lang/perl )
python? ( dev-lang/python )
swig? ( dev-lang/swig )
testtools? ( dev-python/testtools )
licensed? (
dev-libs/openssl:0.9.8
dev-libs/icu
>=sys-libs/zlib-1.2.4 )
bash-completion? ( app-shells/bash-completion )"
S="${WORKDIR}"/zarafa-${MY_PVR}/
DEPEND="${RDEPEND}
dev-util/pkgconfig
sys-devel/gettext
dev-lang/php
app-arch/unzip"
QA_PRESTRIPPED="
usr/bin/zarafa-restore
usr/bin/zarafa-report
usr/bin/zarafa-backup
usr/bin/zarafa-licensed
usr/lib/zarafa/ldapmsplugin.so
usr/lib64/zarafa/ldapmsplugin.so"
QA_DT_HASH="
usr/bin/zarafa-restore
usr/bin/zarafa-report
usr/bin/zarafa-backup
usr/bin/zarafa-licensed
usr/lib/zarafa/ldapmsplugin.so
usr/lib64/zarafa/ldapmsplugin.so"
src_unpack() {
unpack ${A}
if use licensed; then
cd "${WORKDIR}"
mkdir licensed
cd licensed
rpm5_unpack $(find ./../ -name "zarafa-licensed*.rpm")
cd "${S}"
fi
}
src_prepare() {
EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" epatch
edos2unix php-webclient-ajax/config.php.dist
AT_M4DIR="autoconf" eautoreconf
}
src_configure() {
econf \
--enable-oss \
--disable-testtools \
--enable-release \
--with-userscript-prefix=/etc/zarafa/userscripts \
--with-quotatemplate-prefix=/etc/zarafa/quotamails \
--with-indexerscripts-prefix=/etc/zarafa/indexerscripts \
$(use_with pic) \
$(use_enable perl) \
$(use_enable python) \
$(use_enable profiling) \
$(use_enable static) \
$(use_enable swig) \
$(use_enable sparsehash) \
$(use_enable tcmalloc) \
$(use_enable testtools) \
$(use_enable debug)
}
src_install() {
make DESTDIR="${D}" install || die "make install failed"
make DESTDIR="${D}" install-ajax-webaccess || die "make install-ajax-webaccess failed"
make DESTDIR="${D}" install-mobile-webaccess || die "make install-mobile-webaccess failed"
insinto /etc/apache2/modules.d
newins "${FILESDIR}/50_zarafa-webaccess-mobile.conf" 50_zarafa-webaccess-mobile.conf || die "Failed to install apache config files"
newins "${FILESDIR}/50_zarafa-webaccess.conf" 50_zarafa-webaccess.conf || die "Failed to install apache config files"
rm "${D}"/usr/share/zarafa-webaccess/*.conf || die "Failed to remove apache config files"
rm "${D}"/usr/share/zarafa-webaccess-mobile/*.conf || die "Failed to remove apache config files"
# Use only some parts of PHP eclass
php-ext-source-r2_buildinilist php${slot}
php-ext-source-r2_addextension "${PHP_EXT_NAME}.so"
# Symlink the <ext>.ini files from ext/ to ext-active/
for inifile in ${PHPINIFILELIST} ; do
inidir="${inifile/${PHP_EXT_NAME}.ini/}"
inidir="${inidir/ext/ext-active}"
dodir "/${inidir}"
dosym "/${inifile}" "/${inifile/ext/ext-active}"
done
# Install PHP module
php-ext-source-r2_addtoinifiles ";mapi.cache_max_sessions" "128"
php-ext-source-r2_addtoinifiles ";mapi.cache_lifetime" "300"
if use logrotate; then
insinto /etc/logrotate.d
newins "${FILESDIR}"/zarafa.logrotate zarafa || die "Failed to install logrotate"
fi
# install ldap files
if use ldap; then
insinto /etc/openldap/schema
doins installer/ldap/zarafa.* || die "Failed to install ldap schema files"
fi
insinto /etc/zarafa
doins installer/linux/*.cfg || die "Failed to install config files"
exeinto /etc/zarafa/userscripts/
newexe "${FILESDIR}"/junklearn.dspam junklearn
dodir /var/log/zarafa
keepdir /var/log/zarafa
if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]]; then
if use licensed; then
dobin "${WORKDIR}"/licensed/usr/bin/* || die "Failed to install licensed binaries"
# exeinto /usr/$(get_libdir)/zarafa/
# doexe "${WORKDIR}"/licensed/usr/$(get_libdir)/zarafa/*.so || die "Failed to install licensed lib"
doman "${WORKDIR}"/licensed/usr/share/man/*/*.gz || die "Failed to install man files"
exeinto /usr/share/zarafa/zarafa-backup-helpers/
doexe "${WORKDIR}"/licensed/usr/share/zarafa/zarafa-backup-helpers/* || die "Failed to install helper scripts"
dodoc "${WORKDIR}"/licensed/usr/share/doc/packages/zarafa-licensed/* || die "Failed to install docs"
insinto /etc/zarafa
doins -r "${WORKDIR}"/licensed/etc/zarafa/* || die "Failed to install config files"
insinto /etc/cron.d
doins "${WORKDIR}"/licensed/etc/cron.d/* || die "Failed to install cron files"
# insinto /usr/share/zarafa-webaccess/
# doins -r "${WORKDIR}"/licensed/usr/share/zarafa-webaccess/* || die "Failed to install webapp files"
newinitd "${FILESDIR}"/zarafa-licensed.rc6 zarafa-licensed || die "Failed to install init.d files"
fi
fi
if use bash-completion; then
insinto /usr/share/bash-completion
doins "${WORKDIR}"/zarafa
fi
if use smime; then
insinto /var/lib/zarafa-webaccess/plugins
doins -r "${WORKDIR}"/smime
dodoc "${WORKDIR}"/*.pdf
fi
if use dspam; then
newdoc "${WORKDIR}"/dspam/README README.dspam
newdoc "${WORKDIR}"/dspam/INSTALL INSTALL.dspam
newdoc "${WORKDIR}"/dspam/CHANGELOG CHANGELOG.dspam
rm "${WORKDIR}"/dspam/README "${WORKDIR}"/dspam/INSTALL "${WORKDIR}"/dspam/CHANGELOG
insinto /var/lib/zarafa-webaccess/plugins
doins -r "${WORKDIR}"/dspam
fi
if use google-maps; then
insinto /var/lib/zarafa-webaccess/plugins
doins -r "${WORKDIR}"/contactgmap
doins -r "${WORKDIR}"/gmap
fi
if use mobile-device; then
insinto /var/lib/zarafa-webaccess/plugins
doins -r "${WORKDIR}"/mdm
fi
if use archive; then
insinto /var/lib/zarafa-webaccess/plugins
doins -r "${WORKDIR}"/zma
fi
if use themes; then
insinto /usr/share/zarafa-webaccess/client/layout/themes
doins -r "${WORKDIR}"/dark
insinto /usr/share/zarafa-webaccess/client/layout/themes/orange
doins -r "${WORKDIR}"/zarafa-orange-theme/*
fi
newinitd "${FILESDIR}"/zarafa-gateway.rc6 zarafa-gateway || die "Failed to install init.d files"
newinitd "${FILESDIR}"/zarafa-ical.rc6 zarafa-ical || die "Failed to install init.d files"
newinitd "${FILESDIR}"/zarafa-indexer.rc6 zarafa-indexer || die "Failed to install init.d files"
newinitd "${FILESDIR}"/zarafa-monitor.rc6 zarafa-monitor || die "Failed to install init.d files"
newinitd "${FILESDIR}"/zarafa-server.rc6 zarafa-server || die "Failed to install init.d files"
newinitd "${FILESDIR}"/zarafa-spooler.rc6 zarafa-spooler || die "Failed to install init.d files"
newinitd "${FILESDIR}"/zarafa-dagent.rc6 zarafa-dagent || die "Failed to install init.d files"
}