packaging: support EDS 3.10, fix dependencies
Renaming the backends now needs to be done before calling make. This is used to include two versions of syncecal.so: - one for EDS >= 3.6 < 3.10 - one for EDS >= 3.10 with the libecal-1.2 soname patched The second flavor became necessary because EDS 3.10 accidentally changed the soname. The API and ABI actually is the same, so we don't need to compile twice. The package meta data must include additional alternatives for libecal and libebook when including extra backends. This must be passed in via EXTRA_BACKENDS_ECAL/EBOOK_REQUIRES; the makefile does not attempt to determine what those are.
This commit is contained in:
parent
daa4bc7d27
commit
a0de6e6720
14
Makefile.am
14
Makefile.am
|
@ -218,11 +218,11 @@ 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)'" \
|
||||
--conflicts=syncevolution-foobar \
|
||||
--replaces=syncevolution-foobar
|
||||
SYNCEVOLUTION_evolution_DEB_REQUIRES = \
|
||||
, libebook1.2-5 | libebook1.2-6 | libebook1.2-7 | libebook1.2-8 | libebook1.2-9 | libebook1.2-10 | libebook1.2-11 | libebook-1.2-11 | libebook-1.2-12 | libebook-1.2-13 \
|
||||
, libecal1.2-3 | libecal1.2-4 | libecal1.2-5 | libecal1.2-6 | libecal1.2-7 | libecal1.2-8 | libecal1.2-9 | libecal1.2-10 | libecal-1.2-10 | libecal-1.2-11
|
||||
, libebook1.2-5 | libebook1.2-6 | libebook1.2-7 | libebook1.2-8 | libebook1.2-9 | libebook1.2-10 | libebook1.2-11 | libebook-1.2-11 | libebook-1.2-12 | libebook-1.2-13 $(EXTRA_BACKENDS_EBOOK_REQUIRES) \
|
||||
, libecal1.2-3 | libecal1.2-4 | libecal1.2-5 | libecal1.2-6 | libecal1.2-7 | libecal1.2-8 | libecal1.2-9 | libecal1.2-10 | libecal-1.2-10 | libecal-1.2-11 $(EXTRA_BACKENDS_ECAL_REQUIRES)
|
||||
|
||||
syncevolution-%-deb: checkinstall/dist/$(distdir) checkinstall/dist/debian/control
|
||||
(echo "SyncEvolution - meta package for $*" && cat $(srcdir)/description) >checkinstall/description-pak
|
||||
|
@ -416,14 +416,16 @@ uninstall-hook: $(all_uninstall_hooks)
|
|||
# during concurrent distcheck (a backend was relinked against not yet installed
|
||||
# libsyncevolution.la).
|
||||
#
|
||||
# Also used to add additional backends.
|
||||
# Also used to add additional backends. EXTRA_BACKENDS must already contain
|
||||
# renamed files, by convention using -2.so, -3.so, etc as suffix instead of the
|
||||
# base file's .so.
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-data-am
|
||||
for i in $(EXTRA_BACKENDS); do $(INSTALL) $$i $(DESTDIR)/$(BACKENDS_DIRECTORY)/`basename $$i .so`-2.so; done
|
||||
for i in $(EXTRA_BACKENDS); do $(INSTALL) $$i $(DESTDIR)/$(BACKENDS_DIRECTORY)/; done
|
||||
|
||||
# Necessary for "make distcheck": must not leave files behind.
|
||||
uninstall-local:
|
||||
rm -f $(DESTDIR)/$(BACKENDS_DIRECTORY)/*-2.so
|
||||
rm -f $(DESTDIR)/$(BACKENDS_DIRECTORY)/*-[0-9].so
|
||||
|
||||
.DELETE_ON_ERROR:
|
||||
|
|
|
@ -194,7 +194,7 @@ extern "C" void EDSAbiWrapperInit()
|
|||
|
||||
# ifdef ENABLE_EBOOK
|
||||
static const int libebookMinVersion = 5,
|
||||
libebookMaxVersion = 13;
|
||||
libebookMaxVersion = 13; // EDS 3.4
|
||||
ebookhandle =
|
||||
findSymbols("libebook-1.2.so", libebookMinVersion, libebookMaxVersion,
|
||||
FIND_SYMBOLS_NEED_ALL, NULL,
|
||||
|
@ -319,7 +319,7 @@ extern "C" void EDSAbiWrapperInit()
|
|||
|
||||
# ifdef ENABLE_ECAL
|
||||
static const int libecalMinVersion = 3,
|
||||
libecalMaxVersion = 11;
|
||||
libecalMaxVersion = 11; // EDS 3.4
|
||||
ecalhandle =
|
||||
findSymbols("libecal-1.2.so", libecalMinVersion, libecalMaxVersion,
|
||||
FIND_SYMBOLS_NEED_ALL, NULL,
|
||||
|
|
Loading…
Reference in New Issue