Spec cleanup.

* Remove unneeded source file.
* Fix comment on excluded test suite to indicate that our libical is too
  old.
* Handle all excluded tests through the same mechanism, and comment them
  all.
This commit is contained in:
Jason Tibbitts 2017-07-05 12:54:04 -05:00
parent 00209423a5
commit 499b7bb11b
2 changed files with 20 additions and 37 deletions

View File

@ -1,17 +0,0 @@
/* This is used to build an LD_PRELOAD library to redirect syslog calls. */
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
void openlog(const char *ident, int option, int facility) { return; }
void closelog(void) { return; }
void syslog(int priority, const char *format, ...) {
va_list va;
va_start(va, format);
vfprintf(stderr, format, va);
va_end(va);
}

View File

@ -1,8 +1,8 @@
%define scmt(l:) %(c=%1; echo ${c:0:%{-l:%{-l*}}%{!-l:7}})
# Cassandane doesn't have releases often, but it receives constant development.
# This was fetched on 20170622
%global cmt1 6d33978ebb0055be41a5cb8e52958e100401bf26
# Cassandane commit hash. Cassandane doesn't have releases often, but it
# receives constant development. This was fetched on 20170622.
%global cocas 6d33978ebb0055be41a5cb8e52958e100401bf26
# Cassandane run by default. '--without cassandane' disables.
%bcond_without cassandane
@ -56,7 +56,7 @@ Source18: cyrus-imapd-init.service
Source19: cyrus-imapd.tmpfiles.conf
# Source files for running the Cassandane test suite at build time.
Source80: https://github.com/cyrusimap/cassandane/archive/%cmt1.tar.gz#/cassandane-%{scmt %cmt1}.tar.gz
Source80: https://github.com/cyrusimap/cassandane/archive/%cocas.tar.gz#/cassandane-%{scmt %cocas}.tar.gz
# The CPAN version, and hence the Fedora-packaged version, of Net::CalDAVTalk
# doesn't include the testdata directory. Cassandane can use it for testing
@ -69,10 +69,6 @@ Source81: cassandane-testdata-20170523.tar.gz
# A template config file for cassandane; we will substitute in varions values.
Source82: cassandane.ini
# Basically everything in the test suite wants to use syslog. That's not so
# easy in mock, so here's an LD_PRELOAD to redirect syslog calls to stderr.
Source83: cassandane-redirect-syslog.c
# These are source files and not patches because you can't use autosetup to
# apply patches to secondary unpacked source files.
@ -216,7 +212,7 @@ install -m 644 %SOURCE16 doc/
# Unpack and prepare cassandane
tar xf %SOURCE80
ln -s cassandane-%cmt1 cassandane
ln -s cassandane-%cocas cassandane
pushd cassandane
mkdir work
tar xf %SOURCE81
@ -230,7 +226,6 @@ sed -i \
-e "s!BUILDROOT!%buildroot!" \
cassandane.ini
cp %SOURCE83 redirect-syslog.c
popd
%build
@ -450,23 +445,28 @@ export CYRUS_USER=$USER
# Construct the set of excluded tests to pass to Cassandane
# ---------------------------------------------------------
# Note that Cassandane::Test::Core must always be excluded; it can't possibly
# work.
# Upstream says that the Metronome tests won't be reliable on shared hardware
# and are more for testing system performance than for testing Cyrus itself.
exclude=('!Cassandane::Test::Core' '!Metronome')
# The following tests fail on all architectures.
exclude=()
tests=(
# This is more a test of system performance and according to upstream won't
# be reliable on shared hardware like our builders.
Metronome
# This tests coredumping and won't work on a machine where systemd
# intercepts coredumps.
Cassandane::Test::Core
# Fails because our Xapian is too old for proper CJK support. 1.5 will be
# OK, but it is not yet released. The alternative is to bundle.
SearchFuzzy.cjk_words
# Needs a patch to libical, which should be in 2.1/3.0 when it releases.
# The alternative is to bundle.
# https://github.com/cyrusimap/cyrus-imapd/issues/2048
JMAPCalendars.setcalendarevents_alerts
# As of yet unexplained
# https://github.com/cyrusimap/cyrus-imapd/issues/2047
Admin.imap_admins
# https://github.com/cyrusimap/cyrus-imapd/issues/2048
JMAPCalendars.setcalendarevents_alerts
)
for i in ${tests[@]}; do exclude+=("!$i"); done