I am attaching a WIP debdiff for enchant2 as a new source package.
The current gnulib in Debian is too old to build this. the included bootstrap script from enchant pulls gnulib from git which works and builds but not really a suitable solution for packaging.
Either gnulib package needs to be updated or upstream could include a snapshot of gnulib in their tarballs?
diff -Nru enchant-2.1.2/debian/changelog enchant2-2.2.3/debian/changelog --- enchant-2.1.2/debian/changelog 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/changelog 2018-03-12 13:08:05.000000000 +1100 @@ -1,3 +1,22 @@ +enchant2 (2.2.3-1) UNRELEASED; urgency=medium + + * New upstream release + * debian/control: Create a new source package enchant2 and rename packages + to be parallel installable. Drop B/R's on enchant1 + * debian/*{.files, .dirs, .symbols} renamed and updated paths as required + * debian/enchant-lsmod.1: Dropped included in current release + * debian/enchant.ordering: myspell backend is now called hunspell + * debian/libenchant2.lintian-overrides: Dropped, not needed + * debian/rules: + - update GNULIB_MODULES to what is currently used + - Don't install .la file + - configure --enable-relocatable for parallel installable build + - configure --disable-zemerek option is gone + - make: set pkgdatadir to enchant-2 + - Other changes as required for new source package + + -- Tim Lunn <t...@feathertop.org> Mon, 12 Mar 2018 13:08:05 +1100 + enchant (2.1.2-1~exp1) experimental; urgency=medium [ Manuel A. Fernandez Montecelo ] diff -Nru enchant-2.1.2/debian/control enchant2-2.2.3/debian/control --- enchant-2.1.2/debian/control 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/control 2018-03-12 13:08:05.000000000 +1100 @@ -1,4 +1,4 @@ -Source: enchant +Source: enchant2 Section: devel Priority: optional Maintainer: Prach Pongpanich <pr...@debian.org> @@ -21,10 +21,10 @@ Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/enchant.git Homepage: http://www.abisource.com/projects/enchant/ -Package: libenchant-dev +Package: libenchant-2-dev Section: libdevel Architecture: any -Depends: libenchant2 (= ${binary:Version}), libglib2.0-dev, ${misc:Depends} +Depends: libenchant-2-2 (= ${binary:Version}), libglib2.0-dev, ${misc:Depends} Description: Wrapper library for various spell checker engines (development) Enchant is a generic spell checking library which uses existing spell checker engines such as ispell, aspell and myspell as its backends. @@ -35,7 +35,7 @@ . This package contains files needed for development with Enchant. -Package: libenchant2 +Package: libenchant-2-2 Section: libs Architecture: any Multi-Arch: same @@ -43,10 +43,9 @@ ${misc:Depends}, ${shlibs:Depends} Pre-Depends: ${misc:Pre-Depends} -Breaks: ispell (<< 3.3.02), libenchant1, libenchant1c2, libenchant1c2a +Breaks: ispell (<< 3.3.02) Recommends: enchant -Replaces: libenchant-dev (<< 1.1.1++cvs.2003.11.08), libenchant1, libenchant1c2, libenchant1c2a -Suggests: libenchant-voikko +Suggests: libenchant-2-voikko Description: Wrapper library for various spell checker engines (runtime libs) Enchant is a generic spell checking library which uses existing spell checker engines such as ispell, aspell and myspell as its backends. @@ -57,14 +56,12 @@ . This package contains the shared library and non-Voikko enchant plugins. -Package: libenchant-voikko +Package: libenchant-2-voikko Section: libs Architecture: any Multi-Arch: same Depends: ${misc:Depends}, ${shlibs:Depends} Pre-Depends: ${misc:Pre-Depends} -Breaks: libenchant1c2a (= 1.4.2-3) -Replaces: libenchant1c2a (= 1.4.2-3) Description: Voikko spell-checker libenchant plugin Voikko is a Finnish spell-checker and hyphenator based on Malaga and Suomi-Malaga. @@ -73,12 +70,10 @@ any application that uses enchant library for spell-checking, such as Abiword. -Package: enchant +Package: enchant2 Section: text Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} -Breaks: libenchant1c2a (<< 1.6.0-4) -Replaces: libenchant1c2a (<< 1.6.0-4) Description: Wrapper for various spell checker engines (binary programs) Enchant is a generic spell checking library which uses existing spell checker engines such as ispell, aspell and myspell as its backends. @@ -87,4 +82,4 @@ libraries, and implement certain features that may be lacking in any individual provider library. . - This package contains standalone runtime binary programs. + This package contains: standalone runtime binary programs. diff -Nru enchant-2.1.2/debian/enchant2.install enchant2-2.2.3/debian/enchant2.install --- enchant-2.1.2/debian/enchant2.install 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/enchant2.install 2017-11-14 04:02:43.000000000 +1100 @@ -0,0 +1 @@ +usr/bin diff -Nru enchant-2.1.2/debian/enchant.install enchant2-2.2.3/debian/enchant.install --- enchant-2.1.2/debian/enchant.install 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/enchant.install 1970-01-01 10:00:00.000000000 +1000 @@ -1 +0,0 @@ -usr/bin diff -Nru enchant-2.1.2/debian/enchant-lsmod.1 enchant2-2.2.3/debian/enchant-lsmod.1 --- enchant-2.1.2/debian/enchant-lsmod.1 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/enchant-lsmod.1 1970-01-01 10:00:00.000000000 +1000 @@ -1,30 +0,0 @@ -.TH ENCHANT-LSMOD "1" "October 2011" "enchant-lsmod" "User Commands" -.SH NAME -enchant-lsmod \- -Show information about available spell-checking modules and dictionaries. -.SH SYNOPSIS -enchant\-lsmod [\-lang [language_tag]] [\-list\-dicts] [\-h] [\-v] -.SH OPTIONS -.IP "\fB-lang [language_tag]\fP " 10. -Show dictionary to be used for given language_tag. -If language_tag is not given show default dictionary for current -language setting. -.IP "\fB-list-dicts\fP " 10 -List preferred dictionaries for language tags. -.IP "\fB-h\fP " 10 -Show help info and exit. -.IP "\fB-v\fP " 10 -Show version and exit. -.SH AUTHOR -\fBenchant-lsmod\fP was written by -Dom Lachowicz <domlachow...@gmail.com> and is distributed under -the terms of the GNU Lesser General Public License as published -by the Free Software Foundation; either version 2.1 of the License, -or (at your option) any later version. -See http://www.abisource.com/enchant/ for more info. -.PP -This manual page was written by Agustin Martin <agmar...@debian.org> -for the Debian project (but may be used by others). -It was generated with some help of help2man. -.SH "SEE ALSO" -enchant(1) diff -Nru enchant-2.1.2/debian/enchant.ordering enchant2-2.2.3/debian/enchant.ordering --- enchant-2.1.2/debian/enchant.ordering 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/enchant.ordering 2018-03-12 13:08:05.000000000 +1100 @@ -1,8 +1,8 @@ -*:myspell,aspell,ispell -fi:voikko,ispell,myspell,aspell -fi_FI:voikko,ispell,myspell,aspell -he:hspell,myspell -he_IL:hspell,myspell +*:hunspell,aspell,ispell +fi:voikko,ispell,hunspell,aspell +fi_FI:voikko,ispell,hunspell,aspell +he:hspell,hunspell +he_IL:hspell,hunspell yi:uspell tr:zemberek tr_TR:zemberek diff -Nru enchant-2.1.2/debian/libenchant-2-2.dirs enchant2-2.2.3/debian/libenchant-2-2.dirs --- enchant-2.1.2/debian/libenchant-2-2.dirs 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-2.dirs 2018-03-12 13:08:05.000000000 +1100 @@ -0,0 +1,2 @@ +usr/lib +usr/share/enchant-2 diff -Nru enchant-2.1.2/debian/libenchant-2-2.docs enchant2-2.2.3/debian/libenchant-2-2.docs --- enchant-2.1.2/debian/libenchant-2-2.docs 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-2.docs 2017-11-14 04:02:43.000000000 +1100 @@ -0,0 +1,2 @@ +README + diff -Nru enchant-2.1.2/debian/libenchant-2-2.files enchant2-2.2.3/debian/libenchant-2-2.files --- enchant-2.1.2/debian/libenchant-2-2.files 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-2.files 2018-03-12 13:08:05.000000000 +1100 @@ -0,0 +1,3 @@ +usr/lib/*/lib*.so.* +usr/lib/*/enchant-2/lib*.so +usr/lib/*/enchant-2/lib*.so.* diff -Nru enchant-2.1.2/debian/libenchant-2-2.symbols enchant2-2.2.3/debian/libenchant-2-2.symbols --- enchant-2.1.2/debian/libenchant-2-2.symbols 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-2.symbols 2018-03-12 13:08:05.000000000 +1100 @@ -0,0 +1,40 @@ +libenchant-2.so.2 libenchant-2 #MINVER# + enchant_broker_describe@Base 2.1.2 + enchant_broker_dict_exists@Base 2.1.2 + enchant_broker_free@Base 2.1.2 + enchant_broker_free_dict@Base 2.1.2 + enchant_broker_get_error@Base 2.1.2 + enchant_broker_init@Base 2.1.2 + enchant_broker_list_dicts@Base 2.1.2 + enchant_broker_request_dict@Base 2.1.2 + enchant_broker_request_pwl_dict@Base 2.1.2 + enchant_broker_set_ordering@Base 2.1.2 + enchant_dict_add@Base 2.1.2 + enchant_dict_add_to_session@Base 2.1.2 + enchant_dict_check@Base 2.1.2 + enchant_dict_describe@Base 2.1.2 + enchant_dict_free_string_list@Base 2.1.2 + enchant_dict_get_error@Base 2.1.2 + enchant_dict_get_extra_word_characters@Base 2.1.2 + enchant_dict_is_added@Base 2.1.2 + enchant_dict_is_removed@Base 2.1.2 + enchant_dict_is_word_character@Base 2.1.2 + enchant_dict_remove@Base 2.1.2 + enchant_dict_remove_from_session@Base 2.1.2 + enchant_dict_set_error@Base 2.1.2 + enchant_dict_store_replacement@Base 2.1.2 + enchant_dict_suggest@Base 2.1.2 + enchant_get_conf_dirs@Base 2.1.2 + enchant_get_prefix_dir@Base 2.1.2 + enchant_get_user_config_dir@Base 2.1.2 + enchant_get_user_language@Base 2.1.2 + enchant_get_version@Base 2.1.2 + enchant_provider_set_error@Base 2.1.2 + enchant_pwl_add@Base 2.1.2 + enchant_pwl_check@Base 2.1.2 + enchant_pwl_free@Base 2.1.2 + enchant_pwl_init@Base 2.1.2 + enchant_pwl_init_with_file@Base 2.1.2 + enchant_pwl_remove@Base 2.1.2 + enchant_pwl_suggest@Base 2.1.2 + enchant_set_prefix_dir@Base 2.1.2 diff -Nru enchant-2.1.2/debian/libenchant-2-dev.dirs enchant2-2.2.3/debian/libenchant-2-dev.dirs --- enchant-2.1.2/debian/libenchant-2-dev.dirs 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-dev.dirs 2017-11-14 04:02:43.000000000 +1100 @@ -0,0 +1,2 @@ +usr/lib +usr/include diff -Nru enchant-2.1.2/debian/libenchant-2-dev.files enchant2-2.2.3/debian/libenchant-2-dev.files --- enchant-2.1.2/debian/libenchant-2-dev.files 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-dev.files 2018-03-12 13:08:05.000000000 +1100 @@ -0,0 +1,5 @@ +usr/include/* +usr/lib/*/lib*.a +usr/lib/*/lib*.so +usr/lib/*/enchant-2/lib*.a +usr/lib/*/pkgconfig/* diff -Nru enchant-2.1.2/debian/libenchant2.dirs enchant2-2.2.3/debian/libenchant2.dirs --- enchant-2.1.2/debian/libenchant2.dirs 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant2.dirs 1970-01-01 10:00:00.000000000 +1000 @@ -1,5 +0,0 @@ -usr/lib -usr/share/doc/libenchant1c2a/aspell -usr/share/doc/libenchant1c2a/ispell -usr/share/doc/libenchant1c2a/uspell -usr/share/enchant diff -Nru enchant-2.1.2/debian/libenchant2.docs enchant2-2.2.3/debian/libenchant2.docs --- enchant-2.1.2/debian/libenchant2.docs 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant2.docs 1970-01-01 10:00:00.000000000 +1000 @@ -1,2 +0,0 @@ -README - diff -Nru enchant-2.1.2/debian/libenchant2.files enchant2-2.2.3/debian/libenchant2.files --- enchant-2.1.2/debian/libenchant2.files 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant2.files 1970-01-01 10:00:00.000000000 +1000 @@ -1,3 +0,0 @@ -usr/lib/*/lib*.so.* -usr/lib/*/enchant/lib*.so -usr/lib/*/enchant/lib*.so.* diff -Nru enchant-2.1.2/debian/libenchant2.lintian-overrides enchant2-2.2.3/debian/libenchant2.lintian-overrides --- enchant-2.1.2/debian/libenchant2.lintian-overrides 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant2.lintian-overrides 1970-01-01 10:00:00.000000000 +1000 @@ -1,2 +0,0 @@ -# Hardening compiler flags are correctly passed (bug #695319,#685299) -libenchant2: hardening-no-fortify-functions usr/lib/*/libenchant.so.2.1.2 diff -Nru enchant-2.1.2/debian/libenchant2.symbols enchant2-2.2.3/debian/libenchant2.symbols --- enchant-2.1.2/debian/libenchant2.symbols 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant2.symbols 1970-01-01 10:00:00.000000000 +1000 @@ -1,40 +0,0 @@ -libenchant.so.2 libenchant2 #MINVER# - enchant_broker_describe@Base 2.1.2 - enchant_broker_dict_exists@Base 2.1.2 - enchant_broker_free@Base 2.1.2 - enchant_broker_free_dict@Base 2.1.2 - enchant_broker_get_error@Base 2.1.2 - enchant_broker_init@Base 2.1.2 - enchant_broker_list_dicts@Base 2.1.2 - enchant_broker_request_dict@Base 2.1.2 - enchant_broker_request_pwl_dict@Base 2.1.2 - enchant_broker_set_ordering@Base 2.1.2 - enchant_dict_add@Base 2.1.2 - enchant_dict_add_to_session@Base 2.1.2 - enchant_dict_check@Base 2.1.2 - enchant_dict_describe@Base 2.1.2 - enchant_dict_free_string_list@Base 2.1.2 - enchant_dict_get_error@Base 2.1.2 - enchant_dict_get_extra_word_characters@Base 2.1.2 - enchant_dict_is_added@Base 2.1.2 - enchant_dict_is_removed@Base 2.1.2 - enchant_dict_is_word_character@Base 2.1.2 - enchant_dict_remove@Base 2.1.2 - enchant_dict_remove_from_session@Base 2.1.2 - enchant_dict_set_error@Base 2.1.2 - enchant_dict_store_replacement@Base 2.1.2 - enchant_dict_suggest@Base 2.1.2 - enchant_get_conf_dirs@Base 2.1.2 - enchant_get_prefix_dir@Base 2.1.2 - enchant_get_user_config_dir@Base 2.1.2 - enchant_get_user_language@Base 2.1.2 - enchant_get_version@Base 2.1.2 - enchant_provider_set_error@Base 2.1.2 - enchant_pwl_add@Base 2.1.2 - enchant_pwl_check@Base 2.1.2 - enchant_pwl_free@Base 2.1.2 - enchant_pwl_init@Base 2.1.2 - enchant_pwl_init_with_file@Base 2.1.2 - enchant_pwl_remove@Base 2.1.2 - enchant_pwl_suggest@Base 2.1.2 - enchant_set_prefix_dir@Base 2.1.2 diff -Nru enchant-2.1.2/debian/libenchant-2-voikko.files enchant2-2.2.3/debian/libenchant-2-voikko.files --- enchant-2.1.2/debian/libenchant-2-voikko.files 1970-01-01 10:00:00.000000000 +1000 +++ enchant2-2.2.3/debian/libenchant-2-voikko.files 2018-03-12 13:08:05.000000000 +1100 @@ -0,0 +1 @@ +usr/lib/*/enchant-2/enchant_voikko.so diff -Nru enchant-2.1.2/debian/libenchant-dev.dirs enchant2-2.2.3/debian/libenchant-dev.dirs --- enchant-2.1.2/debian/libenchant-dev.dirs 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant-dev.dirs 1970-01-01 10:00:00.000000000 +1000 @@ -1,2 +0,0 @@ -usr/lib -usr/include diff -Nru enchant-2.1.2/debian/libenchant-dev.files enchant2-2.2.3/debian/libenchant-dev.files --- enchant-2.1.2/debian/libenchant-dev.files 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant-dev.files 1970-01-01 10:00:00.000000000 +1000 @@ -1,7 +0,0 @@ -usr/include/* -usr/lib/*/lib*.a -usr/lib/*/lib*.so -usr/lib/*/enchant/lib*.a -usr/lib/*/pkgconfig/* -/usr/lib/*/*.la -/usr/lib/*/enchant/*.la diff -Nru enchant-2.1.2/debian/libenchant-voikko.files enchant2-2.2.3/debian/libenchant-voikko.files --- enchant-2.1.2/debian/libenchant-voikko.files 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/libenchant-voikko.files 1970-01-01 10:00:00.000000000 +1000 @@ -1 +0,0 @@ -usr/lib/*/enchant/enchant_voikko.so diff -Nru enchant-2.1.2/debian/rules enchant2-2.2.3/debian/rules --- enchant-2.1.2/debian/rules 2017-11-14 04:02:43.000000000 +1100 +++ enchant2-2.2.3/debian/rules 2018-03-12 13:08:05.000000000 +1100 @@ -11,8 +11,9 @@ # from having to guess our platform (since we know it already) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_DH_INSTALL_ARGS = --fail-missing -X.la -GNULIB_MODULES := "alloca bootstrap c99 configmake flock manywarnings relocatable-lib-lgpl snippet/unused-parameter strchrnul strdup-posix ssize_t valgrind-tests" +GNULIB_MODULES := "bootstrap c99 configmake flock gnu-make manywarnings relocatable-lib-lgpl snippet/unused-parameter strchrnul strdup-posix ssize_t valgrind-tests" ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) build_flags = --build=$(DEB_BUILD_GNU_TYPE) @@ -40,7 +41,7 @@ configure: dh_testdir - gnulib-tool --libtool --no-vc-files --import "$(GNULIB_MODULES)" + gnulib/gnulib-tool --libtool --makefile-name=Makefile.gnulib --no-vc-files --import "$(GNULIB_MODULES)" dh_autoreconf config.status: configure @@ -49,12 +50,13 @@ # Add here commands to configure the package. ./configure --host=$(DEB_HOST_GNU_TYPE) \ --build=$(DEB_BUILD_GNU_TYPE) \ + --enable-relocatable \ --prefix=/usr \ --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \ --mandir=\$${prefix}/share/man \ --infodir=\$${prefix}/share/info \ --with-hunspell-dir=/usr/share/hunspell \ - --disable-zemberek $(build_flags) + $(build_flags) build: build-arch build-indep @@ -64,7 +66,7 @@ dh_testdir # Add here commands to compile the package. - $(MAKE) + $(MAKE) pkgdatadir=\$${prefix}/share/enchant-2 touch build-stamp @@ -94,13 +96,7 @@ # remove bogus RPATHs on /usr/lib chrpath -d debian/tmp/usr/bin/* chrpath -d debian/tmp/usr/lib/*/*.so* - chrpath -d debian/tmp/usr/lib/*/enchant/*.so - # clean .la references out of dependency_libs, so libtool doesn't - # go walking the filesystem for irrelevant information on every - # build - for file in debian/tmp/usr/lib/*/*.la debian/tmp/usr/lib/*/enchant/*.la; do \ - sed -i "/dependency_libs/ s/'.*'/''/" $$file ; \ - done + chrpath -d debian/tmp/usr/lib/*/enchant-2/*.so # Build architecture-independent files here. binary-indep: build install @@ -110,14 +106,14 @@ binary-arch: build install dh_testdir dh_testroot - dh_movefiles -plibenchant-voikko - dh_movefiles -Nlibenchant-voikko + dh_movefiles -plibenchant-2-voikko + dh_movefiles -Nlibenchant-2-voikko dh_installchangelogs ChangeLog dh_installdocs - install -m 644 $(CURDIR)/debian/enchant.ordering $(CURDIR)/debian/libenchant2/usr/share/enchant/enchant.ordering + install -m 644 $(CURDIR)/debian/enchant.ordering $(CURDIR)/debian/libenchant-2-2/usr/share/enchant-2/enchant.ordering dh_installexamples dh_install - dh_installman -penchant src/enchant.1 src/enchant-lsmod.1 + dh_installman -penchant2 src/enchant-2.1 src/enchant-lsmod-2.1 dh_link dh_strip dh_lintian