diff options
author | Patrick Ohly <patrick.ohly@intel.com> | 2012-07-10 07:12:27 +0000 |
---|---|---|
committer | Patrick Ohly <patrick.ohly@intel.com> | 2012-07-10 09:37:24 +0000 |
commit | 7feed6634a8d5472131baaac9b1cf062f3246528 (patch) | |
tree | 5fc677834ab04572b4a17712429110f4c47727f2 /Makefile.am | |
parent | af9ec74339e6e8d999a6f65258e7f8c3738da1be (diff) |
EDS: updated syncevolution.org packages, incompatible with EDS 3.6
The EDS backend in the syncevolution.org packages are compiled
for the API in EDS <= 3.4. With some tricks (dynamically
loading libs) it works across a range of libecal and libebook
releases.
Now the syncevolution-evolution meta package declares that
it depends on one of these libecal/ebook libraries (was missing
earlier), to ensure that the libs get installed on a system
which did not have them already.
The dynamic loading will no longer attempt to work with
EDS 3.6. For EDS 3.6 it will be necessary to update the EClient
variant of the EDS backend and compile the syncevolution.org
binaries differently.
Diffstat (limited to 'Makefile.am')
-rw-r--r-- | Makefile.am | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/Makefile.am b/Makefile.am index 04ed25d9..4d022a08 100644 --- a/Makefile.am +++ b/Makefile.am @@ -197,9 +197,24 @@ endif PLATFORM_FILES_evolution = platformgnome syncecal syncebook PLATFORM_FILES_kde = platformkde syncakonadi +# Additional parameters for syncevolution-kde/evolution.deb. # Fake conflicts/replaces works around a bug in CheckInstall, # which creates empty, invalid entries for those unless -# something is given. +# something is given. For Evolution we hard-code dependencies +# (because with EDS compatibility turned on, several +# alternatives will work at runtime) and conflict with +# EDS 3.6, because that breaks the API and does not work for us +# at the moment. +SYNCEVOLUTION_kde_DEB_ARGS = \ + --conflicts=syncevolution-foobar \ + --replaces=syncevolution-foobar +SYNCEVOLUTION_evolution_DEB_ARGS = \ + --conflicts="'evolution-data-server (>= 3.6), libebook-1.2-14 (>= 3.6), libecal-1.2.12 (>= 3.6)'" \ + --replaces=syncevolution-foobar +SYNCEVOLUTION_evolution_DEB_REQUIRES = \ + , libebook-1.2-5 | libebook-1.2-6 | libebook-1.2-7 | libebook-1.2-8 | libebook-1.2-9 | libebook-1.2-10 | libebook-1.2-11 | libebook-1.2-12 \ + , libecal-1.2-3 | libecal-1.2-4 | libecal-1.2-5 | libecal-1.2-6 | libecal-1.2-7 | libecal-1.2-8 | libecal-1.2-9 | libecal-1.2-10 | libecal-1.2-11 + syncevolution-%-deb: checkinstall/dist/$(distdir) checkinstall/dist/debian/control (echo "SyncEvolution - meta package for $*" && cat $(srcdir)/description) >checkinstall/description-pak tmpdir=`mktemp -d $$HOME/syncevolution.XXXXXXXXXX` && \ @@ -212,11 +227,10 @@ syncevolution-%-deb: checkinstall/dist/$(distdir) checkinstall/dist/debian/contr --nodoc \ --pkgversion=$(PLATFORM_DEB_VERSION) \ --pkgrelease=$(PLATFORM_DEB_RELEASE) \ + $(SYNCEVOLUTION_$*_DEB_ARGS) \ --pkgname=syncevolution-$* \ --pkgarch=all \ - --requires="'$(shell set -x; cd checkinstall/dist; LD_LIBRARY_PATH=$(distdir)/usr/lib:$(distdir)/usr/lib/syncevolution dpkg-shlibdeps -L$(srcdir)/src/shlibs.local --ignore-missing-info -O $$(for i in $(patsubst %,$(distdir)/usr/lib/syncevolution/backends/%.so,$(PLATFORM_FILES_$*)); do if file $$i | grep ELF >/dev/null; then echo $$i; fi; done) | sed $(REQUIRES_SED_KDE) -e 's/[^=]*=//'), $(PKGNAME) (= $(VERSION_deb)-$(RELEASE))'" \ - --conflicts=syncevolution-foobar \ - --replaces=syncevolution-foobar \ + --requires="'$(shell set -x; cd checkinstall/dist; LD_LIBRARY_PATH=$(distdir)/usr/lib:$(distdir)/usr/lib/syncevolution dpkg-shlibdeps -L$(srcdir)/src/shlibs.local --ignore-missing-info -O $$(for i in $(patsubst %,$(distdir)/usr/lib/syncevolution/backends/%.so,$(PLATFORM_FILES_$*)); do if file $$i | grep ELF >/dev/null; then echo $$i; fi; done) | sed $(REQUIRES_SED_KDE) -e 's/[^=]*=//'), $(PKGNAME) (= $(VERSION_deb)-$(RELEASE))$(SYNCEVOLUTION_$*_DEB_REQUIRES)'" \ --maintainer="'Patrick Ohly <patrick.ohly@gmx.de>'" \ --pkgsource='http://syncevolution.org' \ --pkggroup='$*' \ |