From c1d3558de63d6c3e6301f473bff4ecd7c0a09d45 Mon Sep 17 00:00:00 2001 From: Jean-Francois Dockes Date: Fri, 10 Nov 2017 09:22:01 +0100 Subject: [PATCH] Split package into cmd + gui + sync with debian sid package changes --- packaging/debian/debian/compat | 2 +- packaging/debian/debian/control | 62 +++++++++++------- packaging/debian/debian/copyright | 65 ++----------------- packaging/debian/debian/patches/series | 0 packaging/debian/debian/recoll.install | 12 ---- .../debian/debian/recoll.lintian-overrides | 2 + packaging/debian/debian/recollcmd.install | 8 +++ packaging/debian/debian/recollgui.install | 5 ++ packaging/debian/debian/rules | 41 +++++++----- packaging/debian/debian/watch | 3 +- 10 files changed, 88 insertions(+), 112 deletions(-) delete mode 100644 packaging/debian/debian/patches/series create mode 100644 packaging/debian/debian/recoll.lintian-overrides create mode 100644 packaging/debian/debian/recollcmd.install create mode 100644 packaging/debian/debian/recollgui.install diff --git a/packaging/debian/debian/compat b/packaging/debian/debian/compat index 7ed6ff82..ec635144 100644 --- a/packaging/debian/debian/compat +++ b/packaging/debian/debian/compat @@ -1 +1 @@ -5 +9 diff --git a/packaging/debian/debian/control b/packaging/debian/debian/control index 92496b92..5c2fb4ac 100644 --- a/packaging/debian/debian/control +++ b/packaging/debian/debian/control @@ -3,38 +3,28 @@ Section: x11 Priority: optional Maintainer: Jean-Francois Dockes Build-Depends: autotools-dev, - debhelper (>= 7), - dh-python, bison, - qt5-default, - qt5-qmake, - qtbase5-dev, + debhelper (>= 9), + dh-python, + dpkg-dev (>= 1.16.1~), libqt5webkit5-dev, libx11-dev, libxapian-dev (>= 1.2.0), libz-dev, - python-all-dev (>= 2.6.6-3~), + python-dev (>= 2.6.6-3~), python3-all-dev, -Standards-Version: 3.9.6 + qt5-default, + qt5-qmake, + qtbase5-dev X-Python-Version: >= 2.7 +Vcs-Git: https://anonscm.debian.org/cgit/collab-maint/recoll.git +Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/recoll.git Homepage: http://www.lesbonscomptes.com/recoll -Vcs-Git: git://anonscm.debian.org/collab-maint/recoll.git -Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/recoll.git;a=summary +Standards-Version: 3.9.8 Package: recoll Architecture: any -Depends: ${misc:Depends}, ${shlibs:Depends}, python -Recommends: python-recoll, aspell, xdg-utils, xsltproc, - python-libxml2, python-libxslt1 -Suggests: antiword, - ghostscript, - libimage-exiftool-perl, - poppler-utils, - pstotext, - python-chm, - python-mutagen, - unrtf, - untex +Depends: recollgui, recollcmd Description: Personal full text search package with a Qt GUI This package is a personal full text search package is based on a very strong backend (Xapian), for which it provides an easy to use and feature-rich @@ -58,10 +48,36 @@ Description: Personal full text search package with a Qt GUI * An indexer which runs either as a thread inside the GUI or as an external, cron'able program +Package: recollcmd +Architecture: any +Depends: python, ${misc:Depends}, ${shlibs:Depends} +Recommends: python-recoll, aspell, xdg-utils, xsltproc, + python-libxml2, python-libxslt1 +Suggests: antiword, + catdoc, + ghostscript, + libimage-exiftool-perl, + poppler-utils, + pstotext, + python-chm, + python-mutagen, + unrtf, + untex +Description: Command line programs for recoll + This package supports indexing and command line querying. + +Package: recollgui +Architecture: any +Depends: recollcmd (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: GUI program and elements for recoll + Main recoll GUI for configuring, controlling and querying recoll indexes. + Package: python-recoll Architecture: any Section: python -Depends: recoll (= ${binary:Version}), +Depends: recollcmd (= ${binary:Version}), ${misc:Depends}, ${python:Depends}, ${shlibs:Depends} @@ -75,7 +91,7 @@ Description: Python extension for recoll Package: python3-recoll Architecture: any Section: python -Depends: recoll (= ${binary:Version}), +Depends: recollcmd (= ${binary:Version}), ${misc:Depends}, ${python3:Depends}, ${shlibs:Depends} diff --git a/packaging/debian/debian/copyright b/packaging/debian/debian/copyright index 95e5bc31..36f0d7b1 100644 --- a/packaging/debian/debian/copyright +++ b/packaging/debian/debian/copyright @@ -4,14 +4,14 @@ Upstream-Contact: Jean-Francois Dockes Source: http://www.lesbonscomptes.com/recoll/ Files: * -Copyright: 2005-2012, Jean-Francois Dockes +Copyright: 2005-2014, Jean-Francois Dockes License: GPL-2+ -Files: Binc IMAP project (bincimapmime/*) +Files: bincimapmime/* Copyright: 2002-2005, Andreas Aardal Hanssen License: GPL-2+ -Files: filters/rcl* files index/csguess.cpp internfile/htmlparse.cpp +Files: filters/rcl* internfile/htmlparse.cpp Copyright: 2000-2004, Mikio Hirabayashi License: GPL-2+ @@ -20,7 +20,7 @@ Copyright: J\xfcrgen Hermann, Mike Brown, Christopher Arndt License: GPL-2+ -Files: internfile/htmlparse.cpp mh_html.cpp +Files: internfile/htmlparse.cpp internfile/mh_html.cpp Copyright: 1999-2001, BrightStation PLC, 2001, Ananova Ltd, 2002-2004, Olly Betts. @@ -35,7 +35,7 @@ Copyright: 2004-2005, J.F.Dockes License: GPL-2+ Files: debian/* -Copyright: 2007-2012, Kartik Mistry +Copyright: 2007-2014, Kartik Mistry License: GPL-2+ License: GPL-2+ @@ -60,10 +60,6 @@ Files: aspell/* Copyright: 2001-2002, by Kevin Atkinson License: LGPL-2+ -Files: images/text-x-python.png -Copyright: David Vignoni -License: LGPL-2+ - License: LGPL-2+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free @@ -124,7 +120,7 @@ Files: utils/md5.* Copyright: 1991-1992, RSA Data Security, Inc. All rights reserved. License: RSA -License:RSA +License: RSA MD5C.C - RSA Data Security, Inc., MD5 message-digest algorithm . License to copy and use this software is granted provided that it is @@ -143,52 +139,3 @@ License:RSA . These notices must be retained in any copies of any part of this documentation and/or software. - -Files: desktop/xdg-utils-1.0.1/* -Copyright: 2006, Kevin Krammer , - Jeremy White . -License: MIT - -License: MIT - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - . - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - . - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. - -Files: index/csguess.cpp -Copyright: 2000-2004, Mikio Hirabayashi -License: LGPL-2.1+ - -License: LGPL-2.1+ - This file is part of QDBM, Quick Database Manager. - . - QDBM is free software; you can redistribute it and/or modify it 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 any later - version. - . - QDBM is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public - License for more details. - . - You should have received a copy of the GNU Lesser General Public License - along with QDBM; if not, write to the Free Software Foundation, Inc., - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. - . - On Debian systems, the complete text of the GNU Lesser General Public License - can be found in `/usr/share/common-licenses/LGPL-2.1' and - `/usr/share/common-licenses/LGPL-3'. diff --git a/packaging/debian/debian/patches/series b/packaging/debian/debian/patches/series deleted file mode 100644 index e69de29b..00000000 diff --git a/packaging/debian/debian/recoll.install b/packaging/debian/debian/recoll.install index e423a69c..e69de29b 100644 --- a/packaging/debian/debian/recoll.install +++ b/packaging/debian/debian/recoll.install @@ -1,12 +0,0 @@ -usr/bin -usr/lib/recoll -usr/share/applications -usr/share/icons -usr/share/man -usr/share/pixmaps -usr/share/recoll/doc -usr/share/recoll/examples -usr/share/recoll/filters -usr/share/recoll/filters -usr/share/recoll/images -usr/share/recoll/translations diff --git a/packaging/debian/debian/recoll.lintian-overrides b/packaging/debian/debian/recoll.lintian-overrides new file mode 100644 index 00000000..bd226bce --- /dev/null +++ b/packaging/debian/debian/recoll.lintian-overrides @@ -0,0 +1,2 @@ +recoll: postinst-has-useless-call-to-ldconfig +recoll: postrm-has-useless-call-to-ldconfig diff --git a/packaging/debian/debian/recollcmd.install b/packaging/debian/debian/recollcmd.install new file mode 100644 index 00000000..76cca472 --- /dev/null +++ b/packaging/debian/debian/recollcmd.install @@ -0,0 +1,8 @@ +usr/bin/recollindex +usr/bin/recollq +usr/bin/xadump +usr/lib/recoll +usr/share/man +usr/share/recoll/doc +usr/share/recoll/examples +usr/share/recoll/filters diff --git a/packaging/debian/debian/recollgui.install b/packaging/debian/debian/recollgui.install new file mode 100644 index 00000000..ce719b7c --- /dev/null +++ b/packaging/debian/debian/recollgui.install @@ -0,0 +1,5 @@ +usr/bin/recoll +usr/share/applications +usr/share/icons +usr/share/recoll/images +usr/share/recoll/translations diff --git a/packaging/debian/debian/rules b/packaging/debian/debian/rules index 215f2215..cc8ef87d 100755 --- a/packaging/debian/debian/rules +++ b/packaging/debian/debian/rules @@ -3,16 +3,20 @@ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 -DPKG_EXPORT_BUILDFLAGS = 1 -include /usr/share/dpkg/buildflags.mk +export DEB_BUILD_MAINT_OPTIONS = hardening=+all DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -CFLAGS += -Wall -g -#LDFLAGS += -Wl,-z,defs +CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS) +CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS) +CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS) +LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS) -#export QMAKE=qmake-qt4 +build3vers := $(shell py3versions -sv) + +#build qt5 UI +export QT_SELECT := qt5 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 @@ -26,14 +30,16 @@ config.status: configure --host=$(DEB_HOST_GNU_TYPE) \ --build=$(DEB_BUILD_GNU_TYPE) \ --mandir=\$${prefix}/share/man \ - --prefix=/usr + --prefix=/usr \ + --enable-recollq \ + --enable-xadump build: build-arch build-indep build-arch: build-stamp build-indep: build-stamp build-stamp: config.status dh_testdir - $(MAKE) -j 5 + $(MAKE) touch $@ clean: @@ -48,18 +54,20 @@ install: dh_testroot dh_prep dh_installdirs - $(MAKE) prefix=$(CURDIR)/debian/tmp/usr install - chmod a+x $(CURDIR)/debian/tmp/usr/share/recoll/examples/rclmon.sh - chmod a-x $(CURDIR)/debian/tmp/usr/share/recoll/filters/rclxslt.py - chmod a-x $(CURDIR)/debian/tmp/usr/share/recoll/filters/rclexec1.py - chmod a-x $(CURDIR)/debian/tmp/usr/share/recoll/filters/rclexec1.py - rm -f $(CURDIR)/debian/tmp/usr/lib/recoll/librecoll.la + $(MAKE) STRIP=ls prefix=$(CURDIR)/debian/tmp/usr install + # Executable fixes + chmod +x $(CURDIR)/debian/tmp/usr/share/recoll/examples/rclmon.sh + chmod -x $(CURDIR)/debian/tmp/usr/share/recoll/filters/rclexec1.py + chmod -x $(CURDIR)/debian/tmp/usr/share/recoll/filters/rclxslt.py + find $(CURDIR) -type f -name '*.la' -exec rm -f '{}' \; (cd python/recoll; python setup.py install \ --install-layout=deb \ --prefix=$(CURDIR)/debian/tmp/usr ) - (cd python/recoll; python3 setup.py install \ + set -e && for i in $(build3vers); do \ + (cd python/recoll; python$$i ./setup.py install \ --install-layout=deb \ - --prefix=$(CURDIR)/debian/tmp/usr ) + --prefix=$(CURDIR)/debian/tmp/usr ) ; \ + done binary-arch: build install dh_testdir @@ -73,9 +81,10 @@ binary-arch: build install dh_python2 -p python-recoll dh_python3 -p python3-recoll dh_link - dh_strip + dh_strip --no-automatic-dbgsym dh_compress dh_fixperms + dh_lintian dh_installdeb dh_shlibdeps dh_gencontrol diff --git a/packaging/debian/debian/watch b/packaging/debian/debian/watch index e5daae09..3975397c 100644 --- a/packaging/debian/debian/watch +++ b/packaging/debian/debian/watch @@ -1,2 +1,3 @@ version=3 -http://www.lesbonscomptes.com/recoll/download.html recoll-(.*)\.tar\.gz +http://www.lesbonscomptes.com/recoll/download.html \ +(?:|.*/)recoll(?:[_\-]v?|)(\d[^\s/]*)\.(?:tar\.xz|txz|tar\.bz2|tbz2|tar\.gz|tgz)