* Jason L Tibbitts III <tibbs@xxxxxxxxxxx> [2018-04-17 12:58 -0400]:
"DJW" == David J Weller-Fahy <l.info-cyrus@xxxxxxxxxxxxxxxx> writes:DJW> Greetings again, I've made it a bit further in my attempt to DJW> install cyrus-imapd, but am getting failures when executing `make`. DJW> The failure is shown below. You should look at what the Fedora specfile does to build the package. ... https://src.fedoraproject.org/rpms/cyrus-imapd/blob/master/f/cyrus-imapd.spec Look down at what is currently line 288 for how I specifically handle the perl/annotator directory.
Thank you! I've never dealt with RPM files before (always been on Debian/Arch/Gentoo/Slack variants before), so it never occurred to me to look for a specfile or other arcana. Based on that file I made some changes (removed xapian/jmap, allowed clamav, etc) and ended up with the attached patch to your specfile. While this is probably more complicated than needed, it accomplishes what I needed, and I figured it might be useful to you as well. Please let me know if you see any glaring problems with the patch, now on to my next task: actually installing and configuring cyrus-imapd! Regards, -- dave [ please don't CC me ]
diff --git a/cyrus-imapd.spec b/cyrus-imapd.spec index af2d3cf..4709a69 100644 --- a/cyrus-imapd.spec +++ b/cyrus-imapd.spec @@ -8,6 +8,8 @@ # Cassandane run by default. '--without cassandane' disables. %bcond_without cassandane +%bcond_without xapian +%bcond_without jmap Name: cyrus-imapd Version: 3.0.5 @@ -70,6 +72,7 @@ Source17: cyrus-imapd.service Source18: cyrus-imapd-init.service Source19: cyrus-imapd.tmpfiles.conf +%if %{with cassandane} # Source files for running the Cassandane test suite at build time. Source80: https://github.com/cyrusimap/cassandane/archive/%cocas.tar.gz#/cassandane-%{scmt %cocas}.tar.gz @@ -95,6 +98,7 @@ Source91: patch-cassandane-no-syslog # Tell the annotator script to run as the current user/group # Upstream ticket https://github.com/cyrusimap/cyrus-imapd/issues/1995 Source92: patch-cassandane-fix-annotator +%endif BuildRequires: autoconf automake bison flex gcc gcc-c++ git groff libtool BuildRequires: pkgconfig systemd transfig @@ -106,7 +110,10 @@ BuildRequires: CUnit-devel clamav-devel cyrus-sasl-devel glib2-devel BuildRequires: jansson-devel krb5-devel libical-devel libnghttp2-devel BuildRequires: libxml2-devel mariadb-devel net-snmp-devel openldap-devel BuildRequires: openssl-devel postgresql-devel shapelib-devel sqlite-devel +BuildRequires: libicu-devel +%if %{with xapian} BuildRequires: xapian-core-devel +%endif # Miscellaneous modules needed for 'make check' to function: BuildRequires: cyrus-sasl-plain cyrus-sasl-md5 @@ -134,7 +141,11 @@ Requires(postun): /sbin/ldconfig %{?systemd_requires} Requires: %name-utils = %version-%release +%if 0%{?_fedora} Recommends: %name-vzic = %version-%release +%else +Requires: %name-vzic = %version-%release +%endif Requires: file libdb-utils sscg Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) @@ -221,6 +232,7 @@ echo %version > VERSION # Install the Fedora-specific documentation file install -m 644 %SOURCE16 doc/ +%if %{with cassandane} # Unpack and prepare cassandane tar xf %SOURCE80 ln -s cassandane-%cocas cassandane @@ -239,6 +251,7 @@ sed -i \ cassandane.ini popd +%endif %build # This is the test suite, which doesn't build much but does verify its dependencies. @@ -278,13 +291,18 @@ autoreconf -vi --enable-calalarmd \ --enable-http \ --enable-idled \ +%if %{with xapian} + %if %{with jmap} --enable-jmap \ + %endif +%endif --enable-murder \ --enable-nntp \ --enable-replication \ --enable-unit-tests \ +%if %{with xapian} --enable-xapian \ - --without-clamav \ +%endif # # The configure script will set up the Perl makefiles, but not in the way
Attachment:
signature.asc
Description: PGP signature
---- Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/ To Unsubscribe: https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus