From: Andreas Öman Date: Tue, 10 Apr 2012 19:15:57 +0000 (+0200) Subject: Cleanup the debian/ directory and make it use more dh scripts and add entry points... X-Git-Tag: 3.0~31 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=da053d7c29054d1de2d0290fef04baf4cb5df644;p=thirdparty%2Ftvheadend.git Cleanup the debian/ directory and make it use more dh scripts and add entry points for Autobuild system --- diff --git a/Autobuild.sh b/Autobuild.sh new file mode 100755 index 000000000..3593a02cd --- /dev/null +++ b/Autobuild.sh @@ -0,0 +1,74 @@ +#!/bin/bash +# +# Entry point for the Doozer autobuild system +# +# (c) Andreas Öman 2011. All rights reserved. +# +# + +set -eu + +BUILD_API_VERSION=2 +EXTRA_BUILD_NAME="" +JARGS="" +JOBSARGS="" +TARGET="" +RELEASE="--release" +WORKINGDIR="/var/tmp/showtime-autobuild" +UPLOAD_BUILD_ARTIFACTS=1 +while getopts "vht:e:j:w:R" OPTION +do + case $OPTION in + v) + echo $BUILD_API_VERSION + exit 0 + ;; + R) + UPLOAD_BUILD_ARTIFACTS=0 + ;; + h) + echo "This script is intended to be used by the autobuild system only" + exit 0 + ;; + t) + TARGET="$OPTARG" + ;; + e) + EXTRA_BUILD_NAME="$OPTARG" + ;; + j) + JOBSARGS="--jobs=$OPTARG" + JARGS="-j$OPTARG" + ;; + w) + WORKINGDIR="$OPTARG" + ;; + esac +done + + +if [[ -z $TARGET ]]; then + echo "target (-t) not specified" + exit 1 +fi + +# +# $1 = local file path +# $2 = type +# $3 = content-type +# $4 = filename +# +artifact() { + if [ $UPLOAD_BUILD_ARTIFACTS -eq 1 ]; then + echo "doozer-artifact:$PWD/$1:$2:$3:$4" + else + echo "Ignoring: $1:$2:$3:$4" + fi +} + +if [ -f Autobuild/${TARGET}.sh ]; then + source Autobuild/${TARGET}.sh +else + echo "target $TARGET not supported" + exit 1 +fi diff --git a/Autobuild/debian.sh b/Autobuild/debian.sh new file mode 100755 index 000000000..587eac693 --- /dev/null +++ b/Autobuild/debian.sh @@ -0,0 +1,26 @@ +CHANGELOG=debian/changelog +NOW=`date -R` +VER=`git describe | sed "s/\([0-9]*\)\.\([0-9]*\)-\([0-9]*\)-.*/\1.\2.\3/"` +echo >${CHANGELOG} "tvheadend (${VER}) unstable; urgency=low" +echo >>${CHANGELOG} +echo >>${CHANGELOG} " * The full changelog can be found at " +echo >>${CHANGELOG} " http://www.lonelycoder.com/tvheadend/download" +echo >>${CHANGELOG} +echo >>${CHANGELOG} " -- Andreas Öman ${NOW}" +cat ${CHANGELOG} +export JOBSARGS +export JARGS +dpkg-buildpackage -b -us -uc + +for a in ../tvheadend*${VER}*.deb; do + artifact $a deb application/x-deb `basename $a` + rm -f $a +done + +for a in ../tvheadend*${VER}*.changes; do + artifact $a changes text/plain `basename $a` + rm -f $a +done + +rm -f ${CHANGELOG} +dh_clean diff --git a/Autobuild/ubuntu-lucid-amd64.sh b/Autobuild/ubuntu-lucid-amd64.sh new file mode 100755 index 000000000..606932b39 --- /dev/null +++ b/Autobuild/ubuntu-lucid-amd64.sh @@ -0,0 +1 @@ +source Autobuild/debian.sh diff --git a/Autobuild/ubuntu-lucid-i386.sh b/Autobuild/ubuntu-lucid-i386.sh new file mode 100755 index 000000000..606932b39 --- /dev/null +++ b/Autobuild/ubuntu-lucid-i386.sh @@ -0,0 +1 @@ +source Autobuild/debian.sh diff --git a/debian/changelog b/debian/changelog deleted file mode 100644 index 86bc0ec15..000000000 --- a/debian/changelog +++ /dev/null @@ -1,472 +0,0 @@ -tvheadend (2.12.99) hts; urgency=low - - * Debian package has been renamed from hts-tvheadend to tvheadend - - * Add functionality to delete recordings - - * Better support for playing in web clients. - Temporary tickets are used instead of username/password authentication - - * Remove lock contention in CWC updates - - * Fix bug in IPTV PAT parser (Ticket #318) - - * Store EPG on disk so it can be reloaded on restart - - * Add support for Viaccess EMM - - * Add support for DRECrypt EMM - - * Depend on OpenSSL for cryptographic features - - * RTSP has been dropped. It was too buggy and noone wanted to maintain it - - * Fix bug in JSON encoder. Ticket #163 - - * Fix crash in HTTP service. Ticket #334 - - * Added http-streaming of services. Tested and working with mplayer. - - * Add support for building RPM packages - - -- Andreas Öman Sat, 19 Feb 2011 12:57:09 +0100 - -hts-tvheadend (2.12) hts; urgency=low - - * Add support for IPTV over IPv6 - - * Use a native matroska mutiplixer to get better support for metadata, etc - - * Add support for multiple DVR configurations (can be set per recording) - - * Add suport for teletext subtitles - - * Add support for E-AC3 - - * Workaround for ITV HD (which has incorrect PMT) - Ticket #215 - - * Keep track of video width and height and send it over HTSP in - subscriptionStart. - Ticket #208 - - * Add support for Logical Channel Number descriptor (0x83) - Ticket #138 - - * Maintain the order of PIDs as they appear in the PMT. - Ticket #218 - - * When there is no video pid (service type is Radio), - start the audio stream right away. - Ticket #59 - - * Add subscriptionChangeWeight HTSP method. - - * psi: Assume that elementary stream type 0x81 is AC3 without - relying on any further descriptors - Ticket #217 - - * Tvheadend no longer depends on FFmpeg so it's not externally updated - in svn, nor linked. - - * Added a native matroska muxer. - Correctly writes global headers. Ticket #61 - Add support for recording AAC audio. Ticket #160 - Improves metadata written to files. - - * Tvheadend no longer tries to fixup lack of PTS/DTS for packets - before sending them over HTSP. Rather, those fields will be left - out in the message. Currently, all HTSP clients known to mankind - handles this. - - * Make error detection in timestamp parsing much more robust. Avoid - extracting persistent data (such as video width*height) from - received data if we suspect that an error has occured (MPEG-TS TEI - or continuity counter errors). - - -- Andreas Öman Mon, 29 Nov 2010 20:06:52 +0100 - -hts-tvheadend (2.11) hts; urgency=low - - * Add support for filtering autorecordings based on weekdays. - - * Add circular 10.75 GHz LNB - - * Add a new DVB adapter option that allows the entire DVB Mux to be - written to disk as Tvheadend tunes to it. This should aid a lot when - it comes to debugging - - * Inject entries in DVR schedule as soon as we know about an EPG - entry that matches an autorecording rule. Previously Tvheadend - would scan the EPG continously and just grab shows as they neared - air time. The drawbacks of this approach was that it's a bit hard - to understand what is happening. It also makes (more) correct - wakeup from suspend hard to do. - - * Add parsing of episode information from XMLTV and display it in the - WebUI EPG - - * A bug caused the 'Automatic Recorder' tab grid not to reload - entries upon external change (Such as when a channel got deleted - or when a new auto recording was created from the EPG view). This - is now fixed. - - * Add support for storing recorded events in a directory named after - the event. Ticket #150 - - * Add support for appending season and episode numbers to filenames - during recording. - - * Prior to this release the color (i.e. connection status) of the - CWC entries were not correctly updated when a connection was established - or lost. This is now fixed. Ticket #144 - - * Add support for prioritized recordings. The user can chose among five - different priorities. - - * Fix various issues realted to the Recording Schedule user interface. - The UI now includes better visual feedback on what's going on and if - there are errors. Also recordings that do not complete successfully - are correctly reported as failed entries. Ticket #131 - - * Add support for Irdeto and Seca EMM - - -- Andreas Öman Sat, 27 Mar 2010 10:03:40 +0100 - -hts-tvheadend (2.10) hts; urgency=high - - * Fix a crash in HTSP server. - - -- Andreas Öman Thu, 04 Feb 2010 22:21:22 +0100 - -hts-tvheadend (2.9) hts; urgency=high - - * A last minute bug slipped in the 2.8 release, causing Tvheadend to read - settings and configuration from incorrect path when also switching user - during startup. This has now been fixed. - - -- Andreas Öman Mon, 25 Jan 2010 21:23:47 +0100 - -hts-tvheadend (2.8) hts; urgency=low - - * Added support for AAC audio - - * Added support for manual creation of DVR entries. Prior to this it - was only possible to schedule a recording based on EPG entries. - - * It's now possible to enable/disable the signal quality monitor per - adapter. This is now default off as it seem to mostly cause problems - for people and it's only useful if you have complex setups with - multiple adapters, etc. - - * Improve logging when subscriptions fail to start - - * More intelligent arbitration amongst all sources when a subscription - is about to start for a channel. If we cannot descramble or if no - input is detected, skip to next source. - Fixes ticket #89 - - * Add option for editing channel icon URL in the channel config tab. - - * Fix support for Irdeto ECM - - * Automatically detect if a connected USB DVB adapter is only Full speed - (ie 12Mbit/s), and if so, limit so Tvheadend only can stream one service - at the time from the tuned frequency. - - * Add support for extracting provider in the PMT for SECA/Mediaguard - - * Add support for NIT-other tables. - In particular useful for Ziggo DVB-C networks in the Netherlands. - - * Fix various bugs related to RTP encapsulated IPTV - - * Tvheadend now support placement of configurations and settings at any path. - Use the '-c' command line option for this. By default Tvheadend puts - configuration at $HOME/.hts/tvheadend - - * Make it possible to enable debug level log in the web interface. - Press the small top-right gear icon in the log console to enable/disable - debug log. - - -- Andreas Öman Mon, 25 Jan 2010 21:23:47 +0100 - -hts-tvheadend (2.7) hts; urgency=low - - * Added support for DVB subtitles. Currently only forwarded over HTSP - - * Add support for reception of RTP encapsulated IPTV - - * Fixed a crash caused by a race condition when starting a subscription - - * Increase maximum packet size for IPTV to 65536 bytes - - -- Andreas Öman Sun, 06 Dec 2009 20:40:41 +0100 - -hts-tvheadend (2.6) hts; urgency=low - - * Tvheadend's DVB service probe will now make the channel join tags based - on the service type and DVB provider name. - - * Add support for tuning on ATSC adapters - - * Add support for sattelite beams with circular polarisation - - * If a user changed the XMLTV source for a channel to 'None', tvheadend - would crash. This is now fixed. - - * Add support for copying a selection of muxes from one DVB adapter to - another in the web UI. - - * Support for DVB-S2 has been added - - * Default character encoding in DVB is ISO6937, not Latin-1. Ticket #96 - - * Add support for DiSEqC 1.1 / 2.1, configured on per-adapter basis. - Ticket #99 - - * Increase logging and include various stats to XMLTV grab - - * Add support for configuring a per-channel pre/post extra time for - scheduled recordings. Ticket #104 - - * Autodetect CPU capabilities and choose best mode for CSA descrambler. - Ticket #122 - - -- Andreas Öman Sun, 29 Nov 2009 14:02:36 +0100 - -hts-tvheadend (2.5) hts; urgency=low - - * If a previosly detected DVB adapter was not present during startup, - Tvheadend would crash. This is now fixed. - - * If XMLTV grabbing was disabled tvheadend would spin in a 100% CPU loop. - This is now fixed. - - * The HTSP service is now announced via AVAHI (mDNS service discovery) - - * Support for IPTV has been added. Only RAW TS in UDP is supported - at the moment. - - * Add support for setting default extra times to add before and after - a recording. Useful if your TV shows never start on time. - - * Use FFmpeg's av_interleaved_write_frame() or some players can't - play the recorded content (vlc is one) - - -- Andreas Öman Wed, 19 Aug 2009 22:28:02 +0200 - -hts-tvheadend (2.4) hts; urgency=low - - * Due to a bug, the polarisation of DVB-S muxes was not correctly - stored internally. This has now been fixed. - - * Fix compilation on 64bit systems - - * Make sure channel <> service mappings are saved when edited from - DVB service grid - - * Add support for merging one channel into another. - Useful if you have multiple providers offering the same DVB service - but with different names. - - * The embedded HTTP server now logs failed requests - - * Use absolute paths when serving static content (the web app itself) - This was only a problem when fork()ing a development build - - * Rework the CWC reconnection strategy. - If there are active subscription, Tvheadend will attempt to reconnect - immediately and then retry every three seconds. - If no subscription is active a reconnection attempt is performed - every minute. - Also, if any CWC configuration changes are made from the UI, Tvheadend - will try to reconnect directly. - - * If the EPG receives an updated description for an even that is shorter - than the current description it will be ignored. - This typically happens if the XMLTV and DVB EIT (Event Information Table) - differs. In other words, we assume that a longer description of an - event is better than a short. - - -- Andreas Öman Sun, 26 Jul 2009 13:27:32 +0200 - -hts-tvheadend (2.3) hts; urgency=low - - * A simple web interface has been added. To access it, visit - - http://host:9981/simple.html - - This web interface is designed to be really tiny with only - a simple search field and options to record found shows. - Preferably used from handheld devices. - - * All sensitive information (passwords, etc) are hidden from display - in the web ui. The text will still be displayed in cleartext when - editing. - - * Redesigned the DVB configuration tab in the web userinterface: - - Each adapter have three (or four) tabs - o General setup and information - o Grid of multiplexes - o Grid of services - o For sattelite adapters, a sattelite configuration tab. - - * Add support for disabling / enabling an entire DVB multiplex - - * Add support for multiple DiSEqC switchports on a single adapter - - * Add support for different sattelite LNBs - - * Graceful handling of DVB adapters that does not support many - table filters in hardware. Tvheadend will rotate among the available - ones. - - * Add support for enabling / disabling transports from the DVB configuration - - * Make it possible to remove DVB multiplexes from the web ui - - * Add 'Revert changes' button to all editable grids in the web ui - - * Make it possible to disable the idle scan on per-DVB adapter basis. - The idle scan is a process to cycles through all multiplex to check - the quality for each mux continously. - - * Hopefully fix some rounding errors in the EPG display. Ticket #69 - - * Use a ''livegrid'' (http://www.ext-livegrid.com/) for displaying EPG. - - * Remove configuration and settings (/home/hts/.hts/tvheadend) on a - deb package purge operation. Ticket #73 - - * If the Program Stream Information changes during a subscription, - react and send a subscriptionStop + subscriptionStart. - This happens on SVT (in sweden) when the transmission switches - from local to nationwide broadcast (AC3 audio is only present - in nationwide broadcast) - Ticket #78 - - * Channel editor has been reworked a bit. It uses an editorGrid, similar - to how other grids work in Tvheadend. Tags are mapped inline using - a list-of-values combobox (http://lovcombo.extjs.eu/) - - * Added a search IMDB direct link in the EPG window popup. - Ticket #79 - - * Add support for configuring DVB multiplexes by entering - all tuning parameters manually - Ticket #37 - - * Fix a bug causing channel <> tags mapping not to be restored on load. - - * Add exponential backoff for reconnect attempt in code word client. - Ticket #80 - - * Try to detect duplicate EPG entries from the DVB feed and adjust - EPG accordingly. The EPG code will search for events with the same - DVB event ID +- 2 events from the current one. If the event id is - equal, the prvious (old) entry will be removed in favor of the new one. - Reason for not blindingly trusting the event id is that some networks - seem to (incorrectly) reuse IDs. - Ticket #65 - - -- Andreas Öman Sat, 18 Jul 2009 23:19:18 +0200 - -hts-tvheadend (2.2) hts; urgency=low - - * Set $HOME so forked processes (XMLTV) will have correct environment - and to make the default storage of recorded videos to end up in the - correct place. - - * Update built-in DVB mux presets to dvb-apps:1275:9655c8cfeed8 - - * Add -h option to display usage. - - * Rewrite the internal streaming pipeline. - This is not externally visible, but needed for a future timeshifter. - - * Make it compile on gcc 4.4 - - * Send 'source' and 'network' information in HTSP.subscriptionStart message. - - * When deleting a channel any channel-bound autorecording would stay in - memory and, sooner or later, cause a crash. This has now been fixed. - - * Add extra scan for XMLTV grabbers in $PATH. Apart from $PATH we also - scan in /bin, /usr/bin, /usr/local/bin - - * Search for XMLTV grabbers in /usr/bin/perlbin/vendor (archlinux) - - * Fix a bug causing DVB card which does not implement the - FE_READ_UNCORRECTED_BLOCKS operation to report insane amount of - forward correction errors. - - -- Andreas Öman Sun, 07 Jun 2009 19:22:49 +0200 - -hts-tvheadend (2.1) hts; urgency=low - - * Add debconf setup scripts to create a superuser account. - - * HTSP server slightly modified. Now also supports the XBMC HTSP client. - - * tvheadend and showtime went separate ways. - - * tvheadend: Record post-processing added again, run command when a - recording is done. - - * tvheadend: Fix characterset translation bug introduced in r1902. - - -- Andreas Öman Thu, 28 May 2009 21:07:44 +0200 - -hts-tvheadend (2.0) unstable; urgency=low - - * tvheadend: All setup and configuration is done from the web user interface. - - * tvheadend: New web user interface based on ExtJS - - -- Andreas Öman Thu, 16 Oct 2008 19:47:23 +0200 - -hts-tvheadend (1.4) unstable; urgency=low - - * tvheadend: Add support for DVB-S (still in experimenal state) - - -- Andreas Öman Sat, 30 Mar 2008 18:00:00 +0100 - -hts-tvheadend (1.3) unstable; urgency=low - - * tvheadend: Add support for executing a post processing script after - recording is completed. - - * tvheadend: Mark I-frames as key-frames in recorder (should make seeking - work better). - - * tvheadend: Correctly set duration of packets in recorder. - - -- Andreas Öman Thu, 28 Mar 2008 18:00:00 +0100 - -hts-tvheadend (1.2) unstable; urgency=low - - * Tvheadend has been rewritten from scratch - - -- Andreas Öman Thu, 28 Feb 2008 17:30:00 +0100 - -hts-tvheadend (1.1) unstable; urgency=low - - * Bugfix: Tvheadend: Do not crash if event name is NULL - - * Rewrite tvheadend internals to fix many serious issues - - * tvheadend now correctly supports recording of h264 content - - * RTSP interface added to tvheadend that supports time shifting of live tv - - * Add web interface to tvheadend - - -- Andreas Öman Sat, 24 Nov 2007 08:11:00 +0100 - -hts-tvheadend (1.0) unstable; urgency=low - - * Initial release - - -- Andreas Öman Tue, 19 Sep 2007 19:20:00 +0200 - diff --git a/debian/rules b/debian/rules index 2bae8172d..9b6d17832 100755 --- a/debian/rules +++ b/debian/rules @@ -1,38 +1,18 @@ #!/usr/bin/make -f - -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - -DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +export DH_VERBOSE=1 %: dh $@ -override_dh_clean: - dh_testdir - dh_testroot - rm -rf build.* - dh_clean - -override_dh_auto_clean: - dh_clean - override_dh_auto_configure: - dh_testdir - ./configure --release --prefix=/usr + dh_auto_configure -- ${JOBSARGS} override_dh_auto_build: - $(MAKE) - -override_dh_install: - $(MAKE) DESTDIR=$(CURDIR)/debian/tvheadend install - -override_dh_installinit: - dh_installinit --name tvheadend + make ${JARGS} override_dh_strip: dh_strip --dbg-package=tvheadend-dbg -override_dh_autotest: - echo "skipped autotest" +override_dh_auto_install: + dh_auto_install --destdir=debian/tvheadend diff --git a/debian/tvheadend.tvheadend.init b/debian/tvheadend.tvheadend.init index 2e424b976..8f7818934 100644 --- a/debian/tvheadend.tvheadend.init +++ b/debian/tvheadend.tvheadend.init @@ -13,7 +13,7 @@ # PATH should only include /usr/* if it runs after the mountnfs.sh script PATH=/usr/sbin:/usr/bin:/sbin:/bin -DESC="HTS Tvheadend" +DESC="Tvheadend" NAME=tvheadend DAEMON=/usr/bin/$NAME DAEMON_ARGS="-f -u hts -g video" diff --git a/support/configure.inc b/support/configure.inc index bf821f7bf..048e74bd3 100644 --- a/support/configure.inc +++ b/support/configure.inc @@ -17,8 +17,6 @@ BUILDDIR=build.${PLATFORM} DEFAULT_THEME="new" RELEASE=no -RELEASENAME=`head -n1 ${TOPDIR}/ChangeLog | awk '{print $2}' | sed s/\(// | sed s/\)//` - CONFIG_LIST=" cwc avahi @@ -125,12 +123,6 @@ EOF finalize() { -if [ ${RELEASE} = yes ]; then - echo Release build: ${RELEASENAME} - echo >>${CONFIG_H} "#define TVHEADEND_RELEASE_TAG \"${RELEASENAME}\"" -fi - - cat >> ${CONFIG_MAK} << EOF OSENV=${OSENV} LDFLAGS_cfg += -lm