Package: dvbstreamer
Severity: normal
Tags: patch

The dependency readline5 is orphaned (#737301). dvbstreamer cannot
upgrade to the current readline which has an incompatible license.

The patches enclosed build dvbstreamer with libedit instead.
From 5e86d53ca7589f0bd33a151e6980ff2017725a76 Mon Sep 17 00:00:00 2001
From: Bastian Germann <bastiangerm...@fishpost.de>
Date: Thu, 23 Jul 2020 19:32:38 +0200
Subject: [PATCH 1/2] Build with libedit instead of readline

---
 debian/control               |  2 +-
 debian/patches/editline.diff | 94 ++++++++++++++++++++++++++++++++++++
 debian/patches/libedit.diff  | 71 +++++++++++++++++++++++++++
 debian/patches/series        |  2 +
 4 files changed, 168 insertions(+), 1 deletion(-)
 create mode 100644 debian/patches/editline.diff
 create mode 100644 debian/patches/libedit.diff

diff --git a/debian/control b/debian/control
index 908a6eb..bbab827 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,7 @@ Priority: extra
 Maintainer: A Mennucc1 <mennu...@debian.org>
 Build-Depends: dpkg-dev (>= 1.14.27), debhelper (>= 7), quilt (>= 0.46-4.1),
  autoconf, autotools-dev, automake, libtool, cdbs, libev-dev,
- libreadline-gplv2-dev, sqlite3, libsqlite3-dev, libyaml-dev, libltdl-dev,
+ libedit-dev, sqlite3, libsqlite3-dev, libyaml-dev, libltdl-dev,
  zlib1g-dev, dh-autoreconf
 Standards-Version: 3.9.3.0
 Section: video
diff --git a/debian/patches/editline.diff b/debian/patches/editline.diff
new file mode 100644
index 0000000..366a55e
--- /dev/null
+++ b/debian/patches/editline.diff
@@ -0,0 +1,94 @@
+From: Bastian Germann <bastiangerm...@fishpost.de>
+Date: Thu, 23 Jul 2020 19:29:40 +0200
+Subject: import editline header
+---
+diff --git a/src/commands.c b/src/commands.c
+index 8600c03..b2fe15d 100644
+--- a/src/commands.c
++++ b/src/commands.c
+@@ -30,8 +30,8 @@ Command Processing and command functions.
+ #include <ctype.h>
+ #include <time.h>
+ #include <errno.h>
+-#include <readline/readline.h>
+-#include <readline/history.h>
++#include <editline/readline.h>
++#include <editline/history.h>
+ 
+ #include "commands.h"
+ #include "multiplexes.h"
+diff --git a/src/commands/cmd_info.c b/src/commands/cmd_info.c
+index 5053a07..a952708 100755
+--- a/src/commands/cmd_info.c
++++ b/src/commands/cmd_info.c
+@@ -30,8 +30,8 @@ Command functions to supply the user with information about the system.
+ #include <ctype.h>
+ #include <time.h>
+ #include <errno.h>
+-#include <readline/readline.h>
+-#include <readline/history.h>
++#include <editline/readline.h>
++#include <editline/history.h>
+ 
+ #include "commands.h"
+ #include "multiplexes.h"
+diff --git a/src/commands/cmd_scanning.c b/src/commands/cmd_scanning.c
+index 8449632..57b326b 100755
+--- a/src/commands/cmd_scanning.c
++++ b/src/commands/cmd_scanning.c
+@@ -30,8 +30,8 @@ Command functions related to scanning multiplex and frequency bands.
+ #include <ctype.h>
+ #include <time.h>
+ #include <errno.h>
+-#include <readline/readline.h>
+-#include <readline/history.h>
++#include <editline/readline.h>
++#include <editline/history.h>
+ #include <linux/dvb/frontend.h>
+ 
+ #include "commands.h"
+diff --git a/src/commands/cmd_servicefilter.c b/src/commands/cmd_servicefilter.c
+index cfe9402..8fc8916 100755
+--- a/src/commands/cmd_servicefilter.c
++++ b/src/commands/cmd_servicefilter.c
+@@ -30,8 +30,8 @@ Command functions for service filter related tasks
+ #include <ctype.h>
+ #include <time.h>
+ #include <errno.h>
+-#include <readline/readline.h>
+-#include <readline/history.h>
++#include <editline/readline.h>
++#include <editline/history.h>
+ 
+ #include "commands.h"
+ #include "multiplexes.h"
+diff --git a/src/dvbctrl.c b/src/dvbctrl.c
+index 9bef66a..2992e38 100644
+--- a/src/dvbctrl.c
++++ b/src/dvbctrl.c
+@@ -35,8 +35,8 @@ Application to control dvbstreamer in daemon mode.
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <linux/dvb/frontend.h>
+-#include <readline/readline.h>
+-#include <readline/history.h>
++#include <editline/readline.h>
++#include <editline/history.h>
+ 
+ #include "types.h"
+ #include "logging.h"
+diff --git a/src/main.c b/src/main.c
+index f57cfd1..89b19eb 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -33,8 +33,8 @@ Entry point to the application.
+ #include <sys/unistd.h>
+ #include <sys/stat.h>
+ #include <malloc.h>
+-#include <readline/readline.h>
+-#include <readline/history.h>
++#include <editline/readline.h>
++#include <editline/history.h>
+ 
+ 
+ #include "parsezap.h"
diff --git a/debian/patches/libedit.diff b/debian/patches/libedit.diff
new file mode 100644
index 0000000..e2a7836
--- /dev/null
+++ b/debian/patches/libedit.diff
@@ -0,0 +1,71 @@
+From: Bastian Germann <bastiangerm...@fishpost.de>
+Date: Thu, 23 Jul 2020 19:40:56 +0200
+Subject: link with libedit
+
+---
+ src/Makefile.am | 6 +++---
+ src/Makefile.in | 6 +++---
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 82094c9..add59db 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -75,7 +75,7 @@ dvbstreamer_SOURCES = \
+ dvbstreamer_LDFLAGS = -rdynamic -Wl,-whole-archive -Wl,dvbpsi/libdvbpsi.a -Wl,-no-whole-archive
+ 
+ dvbstreamer_LDADD = \
+-	  -lpthread -lsqlite3 -lreadline -lev -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
++	  -lpthread -lsqlite3 -ledit -lev -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
+ 
+ 
+ if ENABLE_FSTREAMER
+@@ -92,7 +92,7 @@ fdvbstreamer_SOURCES = \
+ fdvbstreamer_LDFLAGS = -rdynamic -Wl,-whole-archive -Wl,dvbpsi/libdvbpsi.a -Wl,-no-whole-archive
+ 
+ fdvbstreamer_LDADD = \
+-	  -lpthread -lsqlite3 -lreadline -lev  -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
++	  -lpthread -lsqlite3 -ledit -lev  -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
+ else
+ fstreamer_app =
+ endif
+@@ -106,7 +106,7 @@ dvbctrl_SOURCES = \
+ 
+ dvbctrl_LDFLAGS =
+ 
+-dvbctrl_LDADD = -lreadline @READLINE_TERMCAP@ 
++dvbctrl_LDADD = -ledit @READLINE_TERMCAP@ 
+ 
+ 
+ #
+diff --git a/src/Makefile.in b/src/Makefile.in
+index 5637e59..97385a9 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -343,7 +343,7 @@ dvbstreamer_SOURCES = \
+ 
+ dvbstreamer_LDFLAGS = -rdynamic -Wl,-whole-archive -Wl,dvbpsi/libdvbpsi.a -Wl,-no-whole-archive
+ dvbstreamer_LDADD = \
+-	  -lpthread -lsqlite3 -lreadline -lev -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
++	  -lpthread -lsqlite3 -ledit -lev -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
+ 
+ @ENABLE_FSTREAMER_FALSE@fstreamer_app = 
+ @ENABLE_FSTREAMER_TRUE@fstreamer_app = fdvbstreamer
+@@ -358,7 +358,7 @@ dvbstreamer_LDADD = \
+ 
+ @ENABLE_FSTREAMER_TRUE@fdvbstreamer_LDFLAGS = -rdynamic -Wl,-whole-archive -Wl,dvbpsi/libdvbpsi.a -Wl,-no-whole-archive
+ @ENABLE_FSTREAMER_TRUE@fdvbstreamer_LDADD = \
+-@ENABLE_FSTREAMER_TRUE@	  -lpthread -lsqlite3 -lreadline -lev  -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
++@ENABLE_FSTREAMER_TRUE@	  -lpthread -lsqlite3 -ledit -lev  -lyaml @GETTIME_LIB@ @ICONV_LIB@ @READLINE_TERMCAP@ -lltdl
+ 
+ 
+ #
+@@ -369,7 +369,7 @@ dvbctrl_SOURCES = \
+     logging.c
+ 
+ dvbctrl_LDFLAGS = 
+-dvbctrl_LDADD = -lreadline @READLINE_TERMCAP@ 
++dvbctrl_LDADD = -ledit @READLINE_TERMCAP@ 
+ 
+ #
+ # setupdvbstreamer
diff --git a/debian/patches/series b/debian/patches/series
index a6e8bac..e871525 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -5,6 +5,8 @@ usr_share_doc_in.patch
 ##libev.patch
 ##no_ncurses.patch
 pkgincludedir.patch
+editline.diff
+libedit.diff
 
 svn_803.diff
 svn_804.diff
-- 
2.27.0

From db851ed1a4818c14542482ff467eaf2a16dc9259 Mon Sep 17 00:00:00 2001
From: Bastian Germann <bastiangerm...@fishpost.de>
Date: Thu, 23 Jul 2020 19:33:40 +0200
Subject: [PATCH 2/2] Update svn_814 patch to prefer editline

---
 debian/patches/svn_814.diff | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/debian/patches/svn_814.diff b/debian/patches/svn_814.diff
index c7c6897..931b60d 100644
--- a/debian/patches/svn_814.diff
+++ b/debian/patches/svn_814.diff
@@ -2,21 +2,25 @@
 # r814 | charrea6 | 2012-02-19 15:06:29 +0100(dom, 19 feb 2012) | 1 line
 # 
 # Remove requirement on ncurses/termcap
+# Debian addition: Use editline over readline
 # ------------------------------------------------------------------------
 Index: trunk/configure.in
 ===================================================================
 --- trunk/configure.in	(revisione 813)
 +++ trunk/configure.in	(revisione 814)
-@@ -149,11 +149,7 @@
+@@ -147,13 +147,9 @@ LIBS=""
  dnl ---------------------------------------------------------------------------
- AC_CHECK_HEADER([readline/readline.h], [], [AC_MSG_FAILURE([readline header file not found])])
+ dnl Check for libreadline
+ dnl ---------------------------------------------------------------------------
+-AC_CHECK_HEADER([readline/readline.h], [], [AC_MSG_FAILURE([readline header file not found])])
++AC_CHECK_HEADER([editline/readline.h], [], [AC_MSG_FAILURE([readline header file not found])])
  
 -AC_CHECK_LIB([readline], [readline], [READLINE_TERMCAP="-lncurses"],
 -    [AC_CHECK_LIB([readline], [readline], [READLINE_TERMCAP="-ltermcap"],
 -        [AC_MSG_FAILURE([readline not found])],
 -        [-ltermcap])],
 -    [-lncurses])
-+AC_CHECK_LIB([readline], [readline], [], [])
++AC_CHECK_LIB([edit], [edit], [], [])
  
  AC_SUBST(READLINE_TERMCAP)
  
-- 
2.27.0

Reply via email to