Control: tags -1 + patch pending Dear maintainer,
I've prepared an NMU for gnash (versioned as 0.8.11~git20120629-1.1) and uploaded it to DELAYED/2. Please feel free to tell me if I should delay it longer. Regards. -- Sebastian Ramacher
diff -Nru gnash-0.8.11~git20120629/debian/changelog gnash-0.8.11~git20120629/debian/changelog --- gnash-0.8.11~git20120629/debian/changelog 2012-06-30 02:35:58.000000000 +0200 +++ gnash-0.8.11~git20120629/debian/changelog 2013-09-03 02:39:07.000000000 +0200 @@ -1,3 +1,16 @@ +gnash (0.8.11~git20120629-1.1) unstable; urgency=low + + * Non-maintainer upload. + * debian/patches: + - 02python-config: Call python-config --includes instead of --include. + (patch taken from Ubuntu, Closes: #713276) + - 03link-boost-system: Link with -lboost-system to fix build failure with + Boost 1.54. (patch from Ubuntu) + - 04libav9: Fix build failure with libav 9. (upstream patch) + * debian/control: Add libboost-system-dev to Build-Depends. + + -- Sebastian Ramacher <sramac...@debian.org> Tue, 03 Sep 2013 02:39:06 +0200 + gnash (0.8.11~git20120629-1) unstable; urgency=low * Git snapshot. diff -Nru gnash-0.8.11~git20120629/debian/control gnash-0.8.11~git20120629/debian/control --- gnash-0.8.11~git20120629/debian/control 2012-06-30 02:35:58.000000000 +0200 +++ gnash-0.8.11~git20120629/debian/control 2013-09-03 02:38:20.000000000 +0200 @@ -27,6 +27,7 @@ libboost-dev, libboost-iostreams-dev, libboost-program-options-dev, + libboost-system-dev, libboost-thread-dev, libcurl4-gnutls-dev | libcurl3-gnutls-dev | libcurl4-openssl-dev | libcurl3-openssl-dev, libgconf2-dev, diff -Nru gnash-0.8.11~git20120629/debian/patches/02python-config gnash-0.8.11~git20120629/debian/patches/02python-config --- gnash-0.8.11~git20120629/debian/patches/02python-config 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.11~git20120629/debian/patches/02python-config 2013-09-03 01:55:07.000000000 +0200 @@ -0,0 +1,16 @@ +Bug: https://savannah.gnu.org/patch/index.php?7995 +Author: Robie Basak <robie.ba...@canonical.com> +Description: python-config --include is not defined and no longer works +Last-Update: 2013-04-04 + +--- a/macros/python.m4 ++++ b/macros/python.m4 +@@ -54,7 +54,7 @@ + dnl If the path hasn't been specified, go look for it. + if test x"${ac_cv_path_python_incl}" = x; then + if test x"${pythonconfig}" != "x"; then +- ac_cv_path_python_incl="`${pythonconfig} --include`" ++ ac_cv_path_python_incl="`${pythonconfig} --includes`" + else + for i in $incllist; do + for j in `ls -dr $i/python2.* 2>/dev/null`;do diff -Nru gnash-0.8.11~git20120629/debian/patches/03link-boost-system gnash-0.8.11~git20120629/debian/patches/03link-boost-system --- gnash-0.8.11~git20120629/debian/patches/03link-boost-system 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.11~git20120629/debian/patches/03link-boost-system 2013-09-03 01:55:07.000000000 +0200 @@ -0,0 +1,66 @@ +Description: Link against libboost_system. +Author: Dmitrijs Ledkovs <dmitrij.led...@ubuntu.com> + +--- a/macros/boost.m4 ++++ b/macros/boost.m4 +@@ -37,7 +37,7 @@ + boost_headers="detail/lightweight_mutex.hpp thread/thread.hpp multi_index_container.hpp multi_index/key_extractors.hpp thread/mutex.hpp program_options/options_description.hpp iostreams/stream.hpp" + dnl this is a list of *required* libraries. If any of these are missing, this + dnl test will return a failure, and Gnash won't build. +- boost_libs="thread program_options iostreams" ++ boost_libs="thread program_options iostreams system" + + dnl this is a list of *recommended* libraries. If any of these are missing, this + dnl test will return a warning, and Gnash will build, but testing won't work. +--- a/utilities/Makefile.am ++++ b/utilities/Makefile.am +@@ -92,10 +92,10 @@ + $(NULL) + + soldumper_SOURCES = soldumper.cpp +-soldumper_LDADD = $(GNASH_LIBS) $(CYGNAL_LIBS) $(AM_LDFLAGS) ++soldumper_LDADD = $(GNASH_LIBS) $(CYGNAL_LIBS) $(BOOST_LIBS) $(AM_LDFLAGS) + + flvdumper_SOURCES = flvdumper.cpp +-flvdumper_LDADD = $(GNASH_LIBS) $(CYGNAL_LIBS) $(AM_LDFLAGS) ++flvdumper_LDADD = $(GNASH_LIBS) $(CYGNAL_LIBS) $(BOOST_LIBS) $(AM_LDFLAGS) + + endif + +@@ -112,10 +112,10 @@ + gprocessor_SOURCES = processor.cpp + # export our symbols so they can be used by Gnash plugins + gprocessor_LDFLAGS = -export-dynamic +-gprocessor_LDADD = $(GNASH_LIBS) $(AM_LDFLAGS) ++gprocessor_LDADD = $(GNASH_LIBS) $(BOOST_LIBS) $(AM_LDFLAGS) + + rtmpget_SOURCES = rtmpget.cpp +-rtmpget_LDADD = $(top_builddir)/libbase/libgnashbase.la $(AM_LDFLAGS) ++rtmpget_LDADD = $(top_builddir)/libbase/libgnashbase.la $(BOOST_LIBS) $(AM_LDFLAGS) + + #dumpshm_SOURCES = dumpshm.cpp + #dumpshm_LDADD = $(GNASH_LIBS) $(AM_LDFLAGS) +--- a/libdevice/Makefile.am ++++ b/libdevice/Makefile.am +@@ -71,7 +71,8 @@ + $(LIBVA_GLX_LIBS) \ + $(TS_LIBS) \ + $(LTDL_LIBS) \ +- $(GNASH_LIBS) ++ $(GNASH_LIBS) \ ++ $(BOOST_LIBS) + libgnashdevice_la_LDFLAGS = -release $(VERSION) + libgnashdevice_la_SOURCES = \ + GnashDevice.h \ +--- a/librender/Makefile.am ++++ b/librender/Makefile.am +@@ -78,7 +78,8 @@ + $(LIBVA_LIBS) \ + $(LIBVA_X11_LIBS) \ + $(LIBVA_GLX_LIBS) \ +- $(GNASH_LIBS) ++ $(GNASH_LIBS) \ ++ $(BOOST_LIBS) + libgnashrender_la_LDFLAGS = -release $(VERSION) + libgnashrender_la_SOURCES = + diff -Nru gnash-0.8.11~git20120629/debian/patches/04libav9 gnash-0.8.11~git20120629/debian/patches/04libav9 --- gnash-0.8.11~git20120629/debian/patches/04libav9 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.11~git20120629/debian/patches/04libav9 2013-09-03 02:36:15.000000000 +0200 @@ -0,0 +1,306 @@ +Description: Fix build with libav 9 +Origin: upstream, + http://git.savannah.gnu.org/cgit/gnash.git/commit/?id=4b3dae970549d42723c2528c250a1f95248145c7, + http://git.savannah.gnu.org/cgit/gnash.git/commit/?id=dfba5258dc230669a7e1ad309e25ef190c77e854 +Last-Update: 2013-09-03 + +--- gnash-0.8.11~git20120629.orig/libmedia/ffmpeg/AudioDecoderFfmpeg.cpp ++++ gnash-0.8.11~git20120629/libmedia/ffmpeg/AudioDecoderFfmpeg.cpp +@@ -84,8 +84,10 @@ AudioDecoderFfmpeg::~AudioDecoderFfmpeg( + + void AudioDecoderFfmpeg::setup(SoundInfo& info) + { +- // Init the avdecoder-decoder ++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(52,6,2) ++ // Starting from this version avcodec_register calls avcodec_init + avcodec_init(); ++#endif + avcodec_register_all();// change this to only register need codec? + + enum CodecID codec_id; +@@ -131,12 +133,20 @@ void AudioDecoderFfmpeg::setup(SoundInfo + } + } + ++#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(53,8,0) ++ _audioCodecCtx = avcodec_alloc_context3(_audioCodec); ++#else + _audioCodecCtx = avcodec_alloc_context(); ++#endif + if (!_audioCodecCtx) { + throw MediaException(_("libavcodec couldn't allocate context")); + } + ++#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(53,8,0) ++ int ret = avcodec_open2(_audioCodecCtx, _audioCodec, NULL); ++#else + int ret = avcodec_open(_audioCodecCtx, _audioCodec); ++#endif + if (ret < 0) { + av_free(_audioCodecCtx); + _audioCodecCtx=0; +@@ -158,14 +168,14 @@ void AudioDecoderFfmpeg::setup(SoundInfo + case CODEC_ID_PCM_U16LE: + _audioCodecCtx->channels = (info.isStereo() ? 2 : 1); + _audioCodecCtx->sample_rate = info.getSampleRate(); +- _audioCodecCtx->sample_fmt = SAMPLE_FMT_S16; // ?! arbitrary ? ++ _audioCodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; // ?! arbitrary ? + _audioCodecCtx->frame_size = 1; + break; + + default: + _audioCodecCtx->channels = (info.isStereo() ? 2 : 1); + _audioCodecCtx->sample_rate = info.getSampleRate(); +- _audioCodecCtx->sample_fmt = SAMPLE_FMT_S16; // ?! arbitrary ? ++ _audioCodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; // ?! arbitrary ? + break; + } + } +@@ -173,7 +183,10 @@ void AudioDecoderFfmpeg::setup(SoundInfo + void AudioDecoderFfmpeg::setup(const AudioInfo& info) + { + // Init the avdecoder-decoder ++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(52,6,2) ++ // Starting from this version avcodec_register calls avcodec_init + avcodec_init(); ++#endif + avcodec_register_all();// change this to only register need codec? + + enum CodecID codec_id = CODEC_ID_NONE; +@@ -254,7 +267,11 @@ void AudioDecoderFfmpeg::setup(const Aud + _needsParsing = (_parser != NULL); + + // Create an audioCodecCtx from the ffmpeg parser if exists/possible ++#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(53,8,0) ++ _audioCodecCtx = avcodec_alloc_context3(_audioCodec); ++#else + _audioCodecCtx = avcodec_alloc_context(); ++#endif + if (!_audioCodecCtx) { + throw MediaException(_("AudioDecoderFfmpeg: libavcodec couldn't " + "allocate context")); +@@ -297,7 +314,7 @@ void AudioDecoderFfmpeg::setup(const Aud + _audioCodecCtx->channels = (info.stereo ? 2 : 1); + _audioCodecCtx->sample_rate = info.sampleRate; + // was commented out (why?): +- _audioCodecCtx->sample_fmt = SAMPLE_FMT_S16; ++ _audioCodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; + break; + } + +@@ -305,7 +322,11 @@ void AudioDecoderFfmpeg::setup(const Aud + #ifdef GNASH_DEBUG_AUDIO_DECODING + log_debug(" Opening codec"); + #endif // GNASH_DEBUG_AUDIO_DECODING ++#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(53,8,0) ++ int ret = avcodec_open2(_audioCodecCtx, _audioCodec, NULL); ++#else + int ret = avcodec_open(_audioCodecCtx, _audioCodec); ++#endif + if (ret < 0) { + //avcodec_close(_audioCodecCtx); + av_free(_audioCodecCtx); +--- gnash-0.8.11~git20120629.orig/libmedia/ffmpeg/MediaParserFfmpeg.cpp ++++ gnash-0.8.11~git20120629/libmedia/ffmpeg/MediaParserFfmpeg.cpp +@@ -344,8 +344,10 @@ MediaParserFfmpeg::initializeParser() + { + av_register_all(); // TODO: needs to be invoked only once ? + ++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(52,107,0) + _byteIOCxt.buffer = NULL; +- ++#endif ++ + _inputFmt = probeStream(); + + #ifdef GNASH_ALLOW_VCODEC_ENV +@@ -366,7 +368,11 @@ MediaParserFfmpeg::initializeParser() + // which isn't needed. + _byteIOBuffer.reset(new unsigned char[byteIOBufferSize]); + ++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(52,107,0) + init_put_byte(&_byteIOCxt, ++#else ++ _avIOCxt = avio_alloc_context( ++#endif + _byteIOBuffer.get(), // buffer + byteIOBufferSize, // buffer size + 0, // write flags +@@ -376,7 +382,11 @@ MediaParserFfmpeg::initializeParser() + MediaParserFfmpeg::seekMediaWrapper // seeker callback + ); + ++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(52,107,0) + _byteIOCxt.is_streamed = 1; ++#else ++ _avIOCxt->seekable = 0; ++#endif + + #if !defined(LIBAVCODEC_VERSION_MAJOR) || LIBAVCODEC_VERSION_MAJOR < 52 + // Needed for Lenny. +@@ -387,12 +397,19 @@ MediaParserFfmpeg::initializeParser() + + assert(_formatCtx); + ++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(52,107,0) + // Otherwise av_open_input_stream will reallocate the context. + AVFormatParameters ap; + std::memset(&ap, 0, sizeof ap); + ap.prealloced_context = 1; + + if (av_open_input_stream(&_formatCtx, &_byteIOCxt, "", _inputFmt, &ap) < 0) ++#else ++ ++ _formatCtx->pb = _avIOCxt; ++ ++ if (avformat_open_input(&_formatCtx, "", _inputFmt, NULL) < 0) ++#endif + { + throw IOException("MediaParserFfmpeg couldn't open input stream"); + } +@@ -400,10 +417,17 @@ MediaParserFfmpeg::initializeParser() + #if defined(LIBAVCODEC_VERSION_MAJOR) && LIBAVCODEC_VERSION_MAJOR >= 52 + // Note: in at least some versions of ffmpeg, av_open_input_stream does + // not parse metadata; not sure why. ++#if LIBAVUTIL_VERSION_INT < AV_VERSION_INT(51,5,0) + AVMetadata* md = _formatCtx->metadata; + if (md) { + AVMetadataTag* tag = av_metadata_get(md, "album", 0, + AV_METADATA_MATCH_CASE); ++#else ++ AVDictionary* md = _formatCtx->metadata; ++ if (md) { ++ AVDictionaryEntry* tag = av_dict_get(md, "album", 0, ++ AV_DICT_MATCH_CASE); ++#endif + if (tag && tag->value) { + setId3Info(&Id3Info::album, std::string(tag->value), + _id3Object); +@@ -620,27 +644,27 @@ MediaParserFfmpeg::seekMedia(boost::int6 + } + + boost::uint16_t +-MediaParserFfmpeg::SampleFormatToSampleSize(SampleFormat fmt) ++MediaParserFfmpeg::SampleFormatToSampleSize(AVSampleFormat fmt) + { + switch (fmt) + { +- case SAMPLE_FMT_U8: // unsigned 8 bits ++ case AV_SAMPLE_FMT_U8: // unsigned 8 bits + return 1; + +- case SAMPLE_FMT_S16: // signed 16 bits +- case SAMPLE_FMT_FLT: // float ++ case AV_SAMPLE_FMT_S16: // signed 16 bits ++ case AV_SAMPLE_FMT_FLT: // float + return 2; + + #if !defined (LIBAVCODEC_VERSION_MAJOR) || LIBAVCODEC_VERSION_MAJOR < 52 + // Was dropped for version 52.0.0 +- case SAMPLE_FMT_S24: // signed 24 bits ++ case AV_SAMPLE_FMT_S24: // signed 24 bits + return 3; + #endif + +- case SAMPLE_FMT_S32: // signed 32 bits ++ case AV_SAMPLE_FMT_S32: // signed 32 bits + return 4; + +- case SAMPLE_FMT_NONE: ++ case AV_SAMPLE_FMT_NONE: + default: + return 8; // arbitrary value + } +--- gnash-0.8.11~git20120629.orig/libmedia/ffmpeg/MediaParserFfmpeg.h ++++ gnash-0.8.11~git20120629/libmedia/ffmpeg/MediaParserFfmpeg.h +@@ -154,7 +154,13 @@ private: + AVStream* _audioStream; + + /// ? +- ByteIOContext _byteIOCxt; ++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(52,107,0) ++// AVIOContext was introduced a bit earlier but without version bump, so let's ++// be safe ++ ByteIOContext _byteIOCxt; ++#else ++ AVIOContext* _avIOCxt; ++#endif + + /// Size of the ByteIO context buffer + // +@@ -172,7 +178,7 @@ private: + // + /// TODO: move somewhere in ffmpeg utils.. + /// +- boost::uint16_t SampleFormatToSampleSize(SampleFormat fmt); ++ boost::uint16_t SampleFormatToSampleSize(AVSampleFormat fmt); + + /// Make an EncodedVideoFrame from an AVPacket and push to buffer + // +--- gnash-0.8.11~git20120629.orig/libmedia/ffmpeg/VideoDecoderFfmpeg.cpp ++++ gnash-0.8.11~git20120629/libmedia/ffmpeg/VideoDecoderFfmpeg.cpp +@@ -171,7 +171,10 @@ VideoDecoderFfmpeg::init(enum CodecID co + boost::uint8_t* extradata, int extradataSize) + { + // Init the avdecoder-decoder ++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(52,6,2) ++ // Starting from this version avcodec_register calls avcodec_init + avcodec_init(); ++#endif + avcodec_register_all();// change this to only register need codec? + + _videoCodec = avcodec_find_decoder(codecId); +@@ -180,7 +183,11 @@ VideoDecoderFfmpeg::init(enum CodecID co + throw MediaException(_("libavcodec can't decode this video format")); + } + ++#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(53,8,0) ++ _videoCodecCtx.reset(new CodecContextWrapper(avcodec_alloc_context3(_videoCodec))); ++#else + _videoCodecCtx.reset(new CodecContextWrapper(avcodec_alloc_context())); ++#endif + if (!_videoCodecCtx->getContext()) { + throw MediaException(_("libavcodec couldn't allocate context")); + } +@@ -203,7 +210,11 @@ VideoDecoderFfmpeg::init(enum CodecID co + } + #endif + ++#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(53,8,0) ++ int ret = avcodec_open2(ctx, _videoCodec, NULL); ++#else + int ret = avcodec_open(ctx, _videoCodec); ++#endif + if (ret < 0) { + boost::format msg = boost::format(_("libavcodec " + "failed to initialize FFMPEG " +@@ -529,7 +540,11 @@ get_buffer(AVCodecContext* avctx, AVFram + + static unsigned int pic_num = 0; + pic->type = FF_BUFFER_TYPE_USER; ++#if LIBAVCODEC_VERSION_MAJOR < 54 ++ // This field has been unused for longer but has been removed with ++ // libavcodec 54. + pic->age = ++pic_num - surface->getPicNum(); ++#endif + surface->setPicNum(pic_num); + return 0; + #endif +--- gnash-0.8.11~git20120629.orig/libmedia/ffmpeg/ffmpegHeaders.h ++++ gnash-0.8.11~git20120629/libmedia/ffmpeg/ffmpegHeaders.h +@@ -83,5 +83,15 @@ extern "C" { + #define HAVE_SWSCALE_H 1 + #endif + ++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(52,94,1) ++#define AV_SAMPLE_FMT_NONE SAMPLE_FMT_NONE ++#define AV_SAMPLE_FMT_U8 SAMPLE_FMT_U8 ++#define AV_SAMPLE_FMT_S16 SAMPLE_FMT_S16 ++#define AV_SAMPLE_FMT_S32 SAMPLE_FMT_S32 ++#define AV_SAMPLE_FMT_FLT SAMPLE_FMT_FLT ++#define AV_SAMPLE_FMT_DBL SAMPLE_FMT_DBL ++ ++#define AVSampleFormat SampleFormat ++#endif + + #endif // GNASH_MEDIA_FFMPEG_HEADERS_H diff -Nru gnash-0.8.11~git20120629/debian/patches/series gnash-0.8.11~git20120629/debian/patches/series --- gnash-0.8.11~git20120629/debian/patches/series 2012-06-30 02:35:58.000000000 +0200 +++ gnash-0.8.11~git20120629/debian/patches/series 2013-09-03 02:25:11.000000000 +0200 @@ -1,2 +1,5 @@ 00sensible 01gprocessor +02python-config +03link-boost-system +04libav9
signature.asc
Description: Digital signature