[SM-Commit] GIT changes to master grimoire by Andraž Levstik (b5bc1a3522b970f9616a692dfd6c8db0ca7be7ce)

Andraž Levstik scm at sourcemage.org
Wed Mar 31 01:44:32 EDT 2010


GIT changes to master grimoire by Andraž Levstik <ruskie+2054d253 at codemages.net>:

 audio-soft/mediatomb/DEPENDS          |   10 +-
 audio-soft/mediatomb/HISTORY          |    8 +
 audio-soft/mediatomb/PRE_BUILD        |   13 ++-
 audio-soft/mediatomb/curl-7.18.patch  |   13 +++
 audio-soft/mediatomb/glibc-2.10.patch |   24 +++++
 audio-soft/mediatomb/newffmpeg.patch  |   77 ++++++++++++++++++
 audio-soft/mediatomb/ps3-pcm.patch    |  139 ++++++++++++++++++++++++++++++++++
 video/miro/DETAILS                    |    4 
 video/miro/HISTORY                    |    8 +
 video/miro/INSTALL                    |    2 
 video/miro/PRE_BUILD                  |    4 
 video/miro/boost_function.diff        |   11 ++
 12 files changed, 298 insertions(+), 15 deletions(-)

New commits:
commit b5bc1a3522b970f9616a692dfd6c8db0ca7be7ce
Author: Andraž Levstik <ruskie+2054d253 at codemages.net>
Commit: Andraž Levstik <ruskie+2054d253 at codemages.net>

    miro: updated to 2.5.4

commit da1e1919f4ae9b3606e90df5f2c82fd749edda4f
Author: Andraž Levstik <ruskie+2054d253 at codemages.net>
Commit: Andraž Levstik <ruskie+2054d253 at codemages.net>

    mediatomb: added some patches and a few tweaks

diff --git a/audio-soft/mediatomb/DEPENDS b/audio-soft/mediatomb/DEPENDS
index 62d96f0..8a3ae35 100755
--- a/audio-soft/mediatomb/DEPENDS
+++ b/audio-soft/mediatomb/DEPENDS
@@ -1,7 +1,7 @@
 message "MediaTomb requires either sqlite or mysql to store it's db"
 optional_depends sqlite \
-                 "--enable-sqlite" \
-                 "--disable-sqlite" \
+                 "--enable-sqlite3" \
+                 "--disable-sqlite3" \
                  "to store the media db in sqlite" &&
 optional_depends mysql \
                  "--enable-mysql" \
@@ -12,8 +12,8 @@ optional_depends expat \
                  "--disable-expat" \
                  "use the expat XML parser" &&
 optional_depends zlib \
-                 "" \
-                 "" \
+                 "--enable-db-autocreate" \
+                 "--disable-db-autocreate" \
                  "for auto creation of the media db" &&
 optional_depends file \
                  "--enable-libmagic" \
@@ -45,6 +45,6 @@ optional_depends libextractor \
                  "--disable-libextractor" \
                  "to gather metadata from various files (NOT recommended)" &&
 optional_depends LIBAVCODEC \
-                 "--enable-ffmpeg --with-ffmpeg-h=/usr/include/libavformat" \
+                 "--enable-ffmpeg" \
                  "--disable-ffmpeg" \
                  "to gather metadata from video files" 
diff --git a/audio-soft/mediatomb/HISTORY b/audio-soft/mediatomb/HISTORY
index 80226bb..39e2249 100644
--- a/audio-soft/mediatomb/HISTORY
+++ b/audio-soft/mediatomb/HISTORY
@@ -1,3 +1,11 @@
+2010-03-31 Andraž "ruskie" Levstik <ruskie+f03a580f at codemages.net>
+	* DEPENDS: a few tweaks
+	* PRE_BUILD: use proper headers
+	* curl-7.18.patch: curl 7.18, gentoo patch
+	* glibc-2.10.patch: glibc 2.10, gentoo patch
+	* newffmpeg.patch: improved configure, gentoo patch
+	* ps3-pcm.patch: proper PCM streaming to PS3, gentoo patch
+
 2009-09-04 Arjan Bouter <abouter at sourcemage.org>
 	* init.d/*: added init scripts
 	* INSTALL: create mediatomb homedir
diff --git a/audio-soft/mediatomb/PRE_BUILD b/audio-soft/mediatomb/PRE_BUILD
index 4a5537a..ad371f7 100755
--- a/audio-soft/mediatomb/PRE_BUILD
+++ b/audio-soft/mediatomb/PRE_BUILD
@@ -2,7 +2,12 @@ default_pre_build &&
 create_account mediatomb &&
 cd $SOURCE_DIRECTORY &&
 sedit 's#FFMPEG_SEARCH_HEADERS/ffmpeg#FFMPEG_SEARCH_HEADERS#g' configure &&
-sedit 's#ffmpeg/avformat.h#avformat.h#g' configure &&
-sedit 's#ffmpeg/avformat.h#avformat.h#g' src/metadata/ffmpeg_handler.cc &&
-#next line can prolly be removed for versions > 0.11.0, fixed in svn
-sedit 's#CURLOPT_NOBODY)#CURLOPT_NOBODY, 1)#' src/url.cc
+sedit 's#ffmpeg/avformat.h#libavformat/avformat.h#g' configure &&
+sedit 's#ffmpeg/avformat.h#libavformat/avformat.h#g' src/metadata/ffmpeg_handler.cc &&
+##next line can prolly be removed for versions > 0.11.0, fixed in svn
+#sedit 's#CURLOPT_NOBODY)#CURLOPT_NOBODY, 1)#' src/url.cc
+
+patch -p1 < $SPELL_DIRECTORY/curl-7.18.patch &&
+patch -p0 < $SPELL_DIRECTORY/glibc-2.10.patch &&
+patch -p1 < $SPELL_DIRECTORY/newffmpeg.patch &&
+patch -p1 < $SPELL_DIRECTORY/ps3-pcm.patch
diff --git a/audio-soft/mediatomb/curl-7.18.patch b/audio-soft/mediatomb/curl-7.18.patch
new file mode 100644
index 0000000..5d0d4b2
--- /dev/null
+++ b/audio-soft/mediatomb/curl-7.18.patch
@@ -0,0 +1,13 @@
+Index: mediatomb-0.11.0/src/url.cc
+===================================================================
+--- mediatomb-0.11.0.orig/src/url.cc
++++ mediatomb-0.11.0/src/url.cc
+@@ -75,7 +75,7 @@
+ 
+     if (only_header)
+     {
+-        curl_easy_setopt(curl_handle, CURLOPT_NOBODY);
++        curl_easy_setopt(curl_handle, CURLOPT_NOBODY, TRUE);
+         curl_easy_setopt(curl_handle, CURLOPT_HEADERFUNCTION, URL::dl);
+         curl_easy_setopt(curl_handle, CURLOPT_HEADERDATA, 
+                          (void *)buffer.getPtr());
diff --git a/audio-soft/mediatomb/glibc-2.10.patch b/audio-soft/mediatomb/glibc-2.10.patch
new file mode 100644
index 0000000..ff207b7
--- /dev/null
+++ b/audio-soft/mediatomb/glibc-2.10.patch
@@ -0,0 +1,24 @@
+Index: src/tools.cc
+===================================================================
+--- src/tools.cc	(revisione 2018)
++++ src/tools.cc	(copia locale)
+@@ -303,8 +303,8 @@
+     Ref<StringBuffer> buf(new StringBuffer(len / 2));
+     for (int i = 0; i < len; i += 2)
+     {
+-        char *chi = strchr(HEX_CHARS, ptr[i]);
+-        char *clo = strchr(HEX_CHARS, ptr[i + 1]);
++        const char *chi = strchr(HEX_CHARS, ptr[i]);
++        const char *clo = strchr(HEX_CHARS, ptr[i + 1]);
+         int hi, lo;
+         
+         if (chi)
+@@ -397,7 +397,7 @@
+             char clo = data[i++];
+             int hi, lo;
+ 
+-            char *pos;
++            const char *pos;
+ 
+             pos = strchr(hex, chi);
+             if (!pos)
diff --git a/audio-soft/mediatomb/newffmpeg.patch b/audio-soft/mediatomb/newffmpeg.patch
new file mode 100644
index 0000000..e18a161
--- /dev/null
+++ b/audio-soft/mediatomb/newffmpeg.patch
@@ -0,0 +1,77 @@
+Index: mediatomb-0.11.0/configure.ac
+===================================================================
+--- mediatomb-0.11.0.orig/configure.ac
++++ mediatomb-0.11.0/configure.ac
+@@ -2340,9 +2340,14 @@ if test "x$FFMPEG_OK" = xyes; then
+                 ]
+         )
+     else 
+-        AC_CHECK_HEADER(ffmpeg/avformat.h,
+-            [],
++        AC_CHECK_HEADERS([ffmpeg/avformat.h libavformat/avformat.h],
++            [ffmpeg_found=yes; break;], [],
+             [
++                #define __STDC_CONSTANT_MACROS
++                #include <stdint.h>
++            ]
++        )
++	if test "x$ffmpeg_found" != "xyes"; then
+                 CPPFLAGS="-I$SEARCH_DIR_HEADERS"
+                 unset ac_cv_header_ffmpeg_avformat_h
+                 AC_CHECK_HEADER($SEARCH_DIR_HEADERS/ffmpeg/avformat.h,
+@@ -2357,12 +2362,7 @@ if test "x$FFMPEG_OK" = xyes; then
+                         #include <stdint.h>
+                     ]
+                 )
+-            ],
+-            [
+-                #define __STDC_CONSTANT_MACROS
+-                #include <stdint.h>
+-            ]
+-        )
++	fi
+     fi
+ fi
+  
+@@ -2447,7 +2447,11 @@ if test "x$FFMPEG_OK" = xyes; then
+             [
+                 #define __STDC_CONSTANT_MACROS
+                 #include <stdint.h>
++		#ifdef HAVE_LIBAVFORMAT_AVFORMAT_H
++		#include <libavformat/avformat.h>
++		#else
+                 #include <ffmpeg/avformat.h>
++		#endif
+             ],
+             [
+                 av_register_all();
+@@ -2462,7 +2466,11 @@ if test "x$FFMPEG_OK" = xyes; then
+                     #define __STDC_CONSTANT_MACROS
+                     #include <stdint.h>
+                     extern "C" {
+-                        #include <ffmpeg/avformat.h>
++                        #ifdef HAVE_LIBAVFORMAT_AVFORMAT_H
++			#include <libavformat/avformat.h>
++			#else
++                	#include <ffmpeg/avformat.h>
++			#endif
+                     }
+                 ],
+                 [
+Index: mediatomb-0.11.0/src/metadata/ffmpeg_handler.cc
+===================================================================
+--- mediatomb-0.11.0.orig/src/metadata/ffmpeg_handler.cc
++++ mediatomb-0.11.0/src/metadata/ffmpeg_handler.cc
+@@ -56,7 +56,11 @@ extern "C" 
+ {
+ #endif
+ 
+-#include <ffmpeg/avformat.h>
++#ifdef HAVE_LIBAVFORMAT_AVFORMAT_H
++# include <libavformat/avformat.h>
++#else
++# include <ffmpeg/avformat.h>
++#endif
+ 
+ #ifdef FFMPEG_NEEDS_EXTERN_C
+ } // extern "C"
diff --git a/audio-soft/mediatomb/ps3-pcm.patch b/audio-soft/mediatomb/ps3-pcm.patch
new file mode 100644
index 0000000..11657f0
--- /dev/null
+++ b/audio-soft/mediatomb/ps3-pcm.patch
@@ -0,0 +1,139 @@
+diff -urpN mediatomb-0.11.0.orig/src/cds_resource_manager.cc mediatomb-0.11.0/src/cds_resource_manager.cc
+--- mediatomb-0.11.0.orig/src/cds_resource_manager.cc	2008-05-26 23:14:56.000000000 +1000
++++ mediatomb-0.11.0/src/cds_resource_manager.cc	2008-05-26 23:14:56.000000000 +1000
+@@ -184,6 +184,30 @@ void CdsResourceManager::addResources(Re
+                 t_res->addAttribute(MetadataHandler::getResAttrName(R_DURATION),
+                         duration);
+ 
++            int freq = tp->getSampleFreq();
++            if (freq == SOURCE)
++            {
++                String frequency = item->getResource(0)->getAttribute(MetadataHandler::getResAttrName(R_SAMPLEFREQUENCY));
++                if (string_ok(frequency))
++                     t_res->addAttribute(MetadataHandler::getResAttrName(R_SAMPLEFREQUENCY), frequency);
++            }
++            else if (freq != OFF)
++            {
++                t_res->addAttribute(MetadataHandler::getResAttrName(R_SAMPLEFREQUENCY), String::from(freq));
++            }
++
++            int chan = tp->getNumChannels();
++            if (chan == SOURCE)
++            {
++                String nchannels = item->getResource(0)->getAttribute(MetadataHandler::getResAttrName(R_NRAUDIOCHANNELS));
++                if (string_ok(nchannels))
++                     t_res->addAttribute(MetadataHandler::getResAttrName(R_NRAUDIOCHANNELS), nchannels);
++            }
++            else if (chan != OFF)
++            {
++                t_res->addAttribute(MetadataHandler::getResAttrName(R_NRAUDIOCHANNELS), String::from(chan));
++            }
++
+             if (tp->isThumbnail())
+                 t_res->addOption(_(RESOURCE_CONTENT_TYPE), _(EXIF_THUMBNAIL));
+ 
+diff -urpN mediatomb-0.11.0.orig/src/config_manager.cc mediatomb-0.11.0/src/config_manager.cc
+--- mediatomb-0.11.0.orig/src/config_manager.cc	2008-05-26 23:14:56.000000000 +1000
++++ mediatomb-0.11.0/src/config_manager.cc	2008-05-26 23:14:56.000000000 +1000
+@@ -2092,6 +2092,43 @@ Ref<TranscodingProfileList> ConfigManage
+                 prof->setAcceptURL(false);
+         }
+ 
++        if (child->getChildByName(_("sample-frequency")) != nil)
++        {
++            param = child->getChildText(_("sample-frequency"));
++            if (param == "source")
++                prof->setSampleFreq(SOURCE);
++            else if (param == "off")
++                prof->setSampleFreq(OFF);
++            else
++            {
++                int freq = param.toInt();
++                if (freq <= 0)
++                    throw _Exception(_("Error in config file: incorrect "
++                                       "parameter for <sample-frequency> "
++                                       "tag"));
++
++                prof->setSampleFreq(freq);
++            }
++        }
++
++        if (child->getChildByName(_("audio-channels")) != nil)
++        {
++            param = child->getChildText(_("audio-channels"));
++            if (param == "source")
++                prof->setNumChannels(SOURCE);
++            else if (param == "off")
++                prof->setNumChannels(OFF);
++            else
++            {
++                int chan = param.toInt();
++                if (chan <= 0)
++                    throw _Exception(_("Error in config file: incorrect "
++                                       "parameter for <number-of-channels> "
++                                       "tag"));
++                prof->setNumChannels(chan);
++            }
++        }
++
+         if (child->getChildByName(_("hide-original-resource")) != nil)
+         {
+             param = child->getChildText(_("hide-original-resource"));
+diff -urpN mediatomb-0.11.0.orig/src/transcoding/transcoding.cc mediatomb-0.11.0/src/transcoding/transcoding.cc
+--- mediatomb-0.11.0.orig/src/transcoding/transcoding.cc	2008-05-26 23:14:56.000000000 +1000
++++ mediatomb-0.11.0/src/transcoding/transcoding.cc	2008-05-26 23:14:56.000000000 +1000
+@@ -52,6 +52,8 @@ TranscodingProfile::TranscodingProfile()
+     accept_url = true;
+     hide_orig_res = false;
+     thumbnail = false;
++    sample_frequency = SOURCE; // keep original
++    number_of_channels = SOURCE;
+     attributes = Ref<Dictionary>(new Dictionary());
+     fourcc_list = Ref<Array<StringBase> >(new Array<StringBase>());
+     fourcc_mode = FCC_None;
+@@ -66,6 +68,8 @@ TranscodingProfile::TranscodingProfile(t
+     accept_url = true;
+     hide_orig_res = false;
+     thumbnail = false;
++    sample_frequency = SOURCE; // keep original
++    number_of_channels = SOURCE;
+     buffer_size = 0;
+     chunk_size = 0;
+     initial_fill_size = 0;
+diff -urpN mediatomb-0.11.0.orig/src/transcoding/transcoding.h mediatomb-0.11.0/src/transcoding/transcoding.h
+--- mediatomb-0.11.0.orig/src/transcoding/transcoding.h	2008-05-26 23:14:56.000000000 +1000
++++ mediatomb-0.11.0/src/transcoding/transcoding.h	2008-05-26 23:14:56.000000000 +1000
+@@ -39,6 +39,9 @@
+ #include "dictionary.h"
+ #include "object_dictionary.h"
+ 
++#define SOURCE  (-1)
++#define OFF       0
++
+ typedef enum transcoding_type_t
+ {
+     TR_None,
+@@ -164,6 +167,14 @@ public:
+     /// \brief Provides information on the mode of the list
+     avi_fourcc_listmode_t getAVIFourCCListMode() { return fourcc_mode; }
+ 
++    /// \brief Sample frequency handling
++    void setSampleFreq(int freq) { sample_frequency = freq; }
++    int getSampleFreq() { return sample_frequency; }
++
++    /// \brief Number of channels
++    void setNumChannels(int chans) { number_of_channels = chans; }
++    int getNumChannels() { return number_of_channels; }
++
+ protected:
+     zmm::String name;
+     zmm::String tm;
+@@ -178,6 +189,8 @@ protected:
+     size_t chunk_size;
+     size_t initial_fill_size;
+     transcoding_type_t tr_type;
++    int number_of_channels;
++    int sample_frequency;
+     zmm::Ref<Dictionary> attributes;
+     zmm::Ref<zmm::Array<zmm::StringBase> > fourcc_list;
+     avi_fourcc_listmode_t fourcc_mode;
diff --git a/video/miro/DETAILS b/video/miro/DETAILS
index 1818ee1..751bdae 100755
--- a/video/miro/DETAILS
+++ b/video/miro/DETAILS
@@ -1,9 +1,9 @@
            SPELL=miro
-         VERSION=3.0
+         VERSION=2.5.4
           SOURCE=$SPELL-$VERSION.tar.gz
 SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"
    SOURCE_URL[0]=http://ftp.osuosl.org/pub/pculture.org/miro/src/$SOURCE
-     SOURCE_HASH=sha512:fc4f6ec5603624eb6c7fdaab266bedd553822325b1179e591280c3e2ccc074fdc805aad54b2ed7cdd44a740ca1dc65d4558ccbeada0dae05d85a517d827f3892
+     SOURCE_HASH=sha512:7045fab826673a49ace27b2e4c2d2f711f37af1d8525b56c1a53fed41a6661ab5b02d7161915f3b644272435b46c101aca2fa96b78ae9b243fe9c0d5cca7c25f
         WEB_SITE=http://www.getmiro.com/
          ENTERED=20090804
       LICENSE[0]=GPL
diff --git a/video/miro/HISTORY b/video/miro/HISTORY
index 47cd594..b3bec89 100644
--- a/video/miro/HISTORY
+++ b/video/miro/HISTORY
@@ -1,6 +1,8 @@
-2010-03-28 Ladislav Hagara <hgr at vabo.cz>
-	* DETAILS: 3.0
-	* PRE_BUILD, run.sh.diff, boost_function.diff: removed
+2010-03-31 Andraž "ruskie" Levstik <ruskie+f03a580f at codemages.net>
+	* DETAILS: updated spell to 2.5.4
+	* PRE_BUILD: fixes for boost
+	* INSTALL: hmm why did I change this not sure
+	* boost_function.diff: patch for boost stuff
 
 2009-11-30 Finn Haedicke <finn at sourcemage.org>
 	* DEPENDS: use external rb-libtorrent
diff --git a/video/miro/INSTALL b/video/miro/INSTALL
index f5f02b3..c8b42d7 100755
--- a/video/miro/INSTALL
+++ b/video/miro/INSTALL
@@ -1,2 +1,2 @@
 cd ${SOURCE_DIRECTORY}/platform/gtk-x11 &&
-python setup.py install
+./setup.py install
diff --git a/video/miro/PRE_BUILD b/video/miro/PRE_BUILD
new file mode 100755
index 0000000..24d2074
--- /dev/null
+++ b/video/miro/PRE_BUILD
@@ -0,0 +1,4 @@
+default_pre_build &&
+cd $SOURCE_DIRECTORY &&
+
+patch  -p1 < $SPELL_DIRECTORY/boost_function.diff
diff --git a/video/miro/boost_function.diff b/video/miro/boost_function.diff
new file mode 100644
index 0000000..4773f4e
--- /dev/null
+++ b/video/miro/boost_function.diff
@@ -0,0 +1,11 @@
+diff -ru Miro-2.5.2/portable/libtorrent/include/libtorrent/storage.hpp Miro-2.5.2-patched/portable/libtorrent/include/libtorrent/storage.hpp
+--- Miro-2.5.2/portable/libtorrent/include/libtorrent/storage.hpp	2009-07-31 11:56:04.000000000 +0900
++++ Miro-2.5.2-patched/portable/libtorrent/include/libtorrent/storage.hpp	2009-10-02 22:10:11.869173280 +0900
+@@ -42,6 +42,7 @@
+ 
+ #include <boost/limits.hpp>
+ #include <boost/thread.hpp>
++#include <boost/function.hpp>
+ #include <boost/shared_ptr.hpp>
+ #include <boost/intrusive_ptr.hpp>
+ #include <boost/filesystem/path.hpp>



More information about the SM-Commit mailing list