diff options
author | 2015-03-29 19:56:29 +0200 | |
---|---|---|
committer | 2015-03-29 19:56:29 +0200 | |
commit | 233c147b4fa1230cbb4a89a40f92750ced4b996d (patch) | |
tree | a864857e2e7d816470826e16a0a90c505190bcb4 | |
parent | Add php-5.5.13 with patch for systemd (diff) | |
download | AzP-233c147b4fa1230cbb4a89a40f92750ced4b996d.tar.gz AzP-233c147b4fa1230cbb4a89a40f92750ced4b996d.tar.bz2 AzP-233c147b4fa1230cbb4a89a40f92750ced4b996d.zip |
Update with latest packages
Remove Mediatomb.
Add folks-0.11 to fix emerge issue with new eds
Alchemy ebuild? (not sure)
Add tuxguitar
-rw-r--r-- | dev-lang/php/Manifest | 2 | ||||
-rw-r--r-- | net-misc/mediatomb/Manifest | 9 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.0.confd | 28 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.0.config | 144 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.0.initd | 22 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.1-gcc46.patch | 13 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.1-libav7.patch | 64 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.1-libmp4v2_191_p479.patch | 187 | ||||
-rw-r--r-- | net-misc/mediatomb/files/mediatomb-0.12.1-mozjs185.patch | 605 | ||||
-rw-r--r-- | net-misc/mediatomb/mediatomb-0.12.1-r2.ebuild | 125 |
10 files changed, 2 insertions, 1197 deletions
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 27fa2c0..9b43465 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -18,6 +18,8 @@ AUX php-fpm_at.service 317 SHA256 6bbbbd7b6501305c17b7290bb2a83b0ebe492d421adaac AUX php5-ldvs 22 SHA256 b79d0e52b1b3b4543b31ad45525ae1c2814a27ea8e676772ab10bf6fb12dfe79 SHA512 689a0a12b3527741d2e47870c125e93be73a127e5e798c4b685ccb11653be5a8615faf3178c71a6346fe264d3c4ec76601bc05878fef67b9dbd2e45be59a344d WHIRLPOOL b24f193a1067f699c8efb199ba4e3f1fdd22c13dff98655206b30072ce8c8035fb4ed9288f694856f9978bd9935d3a5589cd968316920e712779c45b44897634 AUX stricter-libc-client-symlink-check.patch 786 SHA256 bc80d286ce3b2805ce41e46580f24c5ba8f613b670757f81e6b2b638aecbf0df SHA512 db94207a3fd883f78b20fd9261720c39ad097566ae4dd913fe33a12adcedaab943ca0975a4f6a4917d40f6fde61e9b5928378ad91f3afe62d84aba3c9351db03 WHIRLPOOL 1ee44c69658d844614b31d09b8ce945075c9491703c04cb57aceec2469a97db65bf80871e4cf2ba6c9d9fe19a4305906e09d0cc474a635c9a1a6001a4d8c982a DIST php-5.5.13.tar.bz2 13274145 SHA256 e58a4a754eb18d2d8b1a120cad5cce4ed24a7db5d49eca5830a40e4c8ca78b9c SHA512 0c82635d73b328c5798163dba2b293fc1ad976793a9fac21a36840594c4f26d5a6582ba437f54bfaacf1fde3df2d09366b106bb555cb42a29097e6ad33ac36d9 WHIRLPOOL 65c7e6e80f07e7738af78922103918b36eb65dcac06b8334911e82c2a3f1820dfb5e484804937a995c148b65568b3146081cfecd96efb669bfb9c1f36da72fa4 +DIST php-5.5.14.tar.bz2 13282773 SHA256 df5a057877f827549e0a60b43fb01e4bd440814bcf04fbd70bacbddf74482610 SHA512 344d65e2bb1dfb1e663782e6ee74818d8792790d7ebcde1ada84282430588c5649caa2d149fee93511e49446425500c91fcaafe046e0db722cb4f4fd52d74e7d WHIRLPOOL a462c334d98f621410989236aa348a25234770c3ee12a84a4e3128110c88e066e9eae773974b7a6e44670c7d05ce933a73863b6e39a89d352c0cf63ade36fcac EBUILD php-5.5.13-r1.ebuild 22224 SHA256 d6c2c9669526a582fd1b9f80f6b98a5b8eabe48e620bf1f6b19ba36a2e3c7470 SHA512 a258d3c585b232e28be4a770e29ed36984a60a21fdd12c6b8c1be2f7ecf15e013cc9dcb75b9b692da2b527ab44ae0a64452747759ad99efc85901ef1cfa949da WHIRLPOOL dce12c1ab12bb5c770675045b3a2d7258ceb56bfb47335bc47788143fc66e849fbeb2c94fa22172a84a13f296b55f1ec73c24af057f8ad1ec1b310988846ed69 +EBUILD php-5.5.14.ebuild 22210 SHA256 f40c0eebb71a023f204ced6733f3835296d7c30dbf42c15aaf3110d9eb45f804 SHA512 11f04f65e28bdd107ba6b17a2fc4cd2dd63ea5d105c524413f91e48a197a48dd28d651750c47f870a9bc160becb5935c3ebd2536ed9677933af37cd9ffa3f525 WHIRLPOOL 6e13c8481ba304df046a8c6d3544363a8cf6ac39a18c0770b68bd87b4b74da47d842ed87493fdef93bf1eae27a59e37ba6fc004814c2936f7ca8b42e0623d321 MISC ChangeLog 26366 SHA256 0d3da22656da0738526f66817220ad9432c07a13d602a368fceb6be0ee48af52 SHA512 786ecab7de7234ac9b2313982ba85a17c157721506b073c8a1753267d995145c3668b485573602b387398b4b364554db3af7e4d3ee4ccfa4c4fa959f7d31e305 WHIRLPOOL 5f45e96dfa420f2adac03d24a08129bc06b3132b0e7a6278d778d586a4a836789a341fa5470780754c6640fd2c2542ee47eece2580b7a9cec7cb6374b42ceb33 MISC metadata.xml 1547 SHA256 2ce287830b8238e330c0585ef3023f86a9e5d46204619c92588244c5d7fa2f77 SHA512 a3a1c2dfddb4d0d92eafa33d74dc0bb90f1a9976e1d2fe0d3717a0d94149d3023dfdc9e68d42d440873561b2e6c34969ae86cec24ac0f0bddcf9ba14103ba450 WHIRLPOOL d9d877b3ae1b304ff89f7b0dd3a1f23d78062280ee935eaaa02c44e8e1dc2fd78bf2c6336cfebb2d9e8dddc03414a7744114ecebee6e364e962c49ff5e2bdf57 diff --git a/net-misc/mediatomb/Manifest b/net-misc/mediatomb/Manifest deleted file mode 100644 index 63411be..0000000 --- a/net-misc/mediatomb/Manifest +++ /dev/null @@ -1,9 +0,0 @@ -AUX mediatomb-0.12.0.confd 805 RMD160 80b99ac5eb0a3cfdbe658084b6ba8a48c2b97dea SHA1 c3908aa800c4d6f3078760b5c32fbdf745f28239 SHA256 21b1b9d31a6db76c5c1ccfbf00e5cd553eecfeb0e2bb161ccc024eab2243293c -AUX mediatomb-0.12.0.config 6180 RMD160 ee51ad90cd9c4107376b80af19dfe076f06df8e7 SHA1 41376b8a161d8523846c5adb5375af5bc0c1a0d1 SHA256 cb43e92639e5e53908567c050c9a2fc0e5c349fd11a149414590c2c6a402b4d2 -AUX mediatomb-0.12.0.initd 541 RMD160 cb4ccfebbe98d38a9e4fdedc6f0fa9aa7ab18453 SHA1 e3c8ed51e118cc72a164b908fe4d629a1ebbf14b SHA256 8dfe99d619a3384b2fb9105051daae1fc6c88402364d4203b21344f766a6b696 -AUX mediatomb-0.12.1-gcc46.patch 297 RMD160 b0de22743402e27bffd8a868026f0003f9960b24 SHA1 db58b48202b3e2d2dee42b13f761994ed4e67796 SHA256 58379e733518bc5ef61fee9156d430ef283278eb3a69f6bdad4cad794df75146 -AUX mediatomb-0.12.1-libav7.patch 1983 RMD160 1ff1421bef0ec2cc4a56b5f649a4888a6a48e663 SHA1 8f8811d3879f4b8d2e1132fe2016a54b4fdf5b87 SHA256 c6523e8bf5e2da89b7475d6777ef9bffe7d089752ef2f7b27b5e39a4130fb0ff -AUX mediatomb-0.12.1-libmp4v2_191_p479.patch 5893 RMD160 712dab501782c241655a5290b784eef5444bcca0 SHA1 b570ab83c6f17bc6eae3288d7c66cced0933208a SHA256 d39c2f9aab051c5447461718fd0ec72cf5982f6c920a4a985a50831f34babe84 -AUX mediatomb-0.12.1-mozjs185.patch 22839 RMD160 6e47aff3a3d97d7d8a5359161b549699368a6bb8 SHA1 95d47ffd95b217100387844cbbbd854d0587f8dd SHA256 3960961f1fbe46baff3956ea2fa94b4dc193c0d278b8646cda1f4cee26812f59 -DIST mediatomb-0.12.1.tar.gz 1240612 RMD160 ecb61ca2483f76421beef1036ac442b8f805fa96 SHA1 86e880584cc9c8aaf3926d56048510d1d06e76b4 SHA256 31163c34a7b9d1c9735181737cb31306f29f1f2a0335fb4f53ecccf8f62f11cd -EBUILD mediatomb-0.12.1-r2.ebuild 3863 RMD160 3b184c780c2aa4e9e89624f9011ec70ab6614491 SHA1 99b7e4cae55889440288bf3feb398604c8e521e9 SHA256 a360bdc5aa5b5a33629aa4e3443fdebe0b20cff85ce34118423f8963ed4a173e diff --git a/net-misc/mediatomb/files/mediatomb-0.12.0.confd b/net-misc/mediatomb/files/mediatomb-0.12.0.confd deleted file mode 100644 index 7f5c008..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.0.confd +++ /dev/null @@ -1,28 +0,0 @@ -# /etc/conf.d/mediatomb: config file for /etc/init.d/mediatomb - -# See the mediatomb(1) manpage for more info. - -# MediaTomb Web UI port. -# NOTE: The minimum value allowed is 49152 -MEDIATOMB_PORT=49152 - -# Run MediaTomb as this user. -# NOTE: For security reasons do not run MediaTomb as root. -MEDIATOMB_USER="mediatomb" - -# Run MediaTomb as this group. -# NOTE: For security reasons do not run MediaTomb as root. -MEDIATOMB_GROUP="mediatomb" - -# Path to MediaTomb config file. -MEDIATOMB_CONFIG="/etc/mediatomb/config.xml" - -# Path to MediaTomb log file. -MEDIATOMB_LOGFILE="/var/log/mediatomb.log" - -# Path to MediaTomb pid file. -MEDIATOMB_PIDFILE="/var/run/mediatomb.pid" - -# Other options you want to pass to MediaTomb. -# Add "--interface ${MEDIATOMB_INTERFACE}" to bind to a named interface. -MEDIATOMB_OPTIONS="" diff --git a/net-misc/mediatomb/files/mediatomb-0.12.0.config b/net-misc/mediatomb/files/mediatomb-0.12.0.config deleted file mode 100644 index 0cd03b1..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.0.config +++ /dev/null @@ -1,144 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<config version="2" xmlns="http://mediatomb.cc/config/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mediatomb.cc/config/2 http://mediatomb.cc/config/2.xsd"> - <server> - <ui enabled="yes" show-tooltips="yes"> - <accounts enabled="no" session-timeout="30"> - <account user="mediatomb" password="mediatomb"/> - </accounts> - </ui> - <name>MediaTomb</name> - <udn></udn> - <home>/var/lib/mediatomb</home> - <webroot>/usr/share/mediatomb/web</webroot> - <storage> - <sqlite3 enabled="yes"> - <database-file>mediatomb.db</database-file> - </sqlite3> - <mysql enabled="no"> - <host>host</host> - <database>database</database> - <username>username</username> - <password>password</password> - </mysql> - </storage> - <protocolInfo extend="yes"/> - <pc-directory upnp-hide="no"/> - <extended-runtime-options> - <ffmpegthumbnailer enabled="no"> - <thumbnail-size>160</thumbnail-size> - <seek-percentage>10</seek-percentage> - <filmstrip-overlay>no</filmstrip-overlay> - <workaround-bugs>no</workaround-bugs> - <image-quality>8</image-quality> - </ffmpegthumbnailer> - <mark-played-items enabled="no" suppress-cds-updates="yes"> - <string mode="prepend">*</string> - <mark> - <content>video</content> - </mark> - </mark-played-items> - <lastfm enabled="no"> - <username>username</username> - <password>password</password> - </lastfm> - </extended-runtime-options> - </server> - <import hidden-files="no"> - <scripting script-charset="UTF-8"> - <common-script>/usr/share/mediatomb/js/common.js</common-script> - <playlist-script>/usr/share/mediatomb/js/playlists.js</playlist-script> - <virtual-layout type="builtin"> - <import-script>/usr/share/mediatomb/js/import.js</import-script> - </virtual-layout> - </scripting> - <mappings> - <extension-mimetype ignore-unknown="no"> - <map from="mp3" to="audio/mpeg"/> - <map from="ogx" to="application/ogg"/> - <map from="ogv" to="video/ogg"/> - <map from="oga" to="audio/ogg"/> - <map from="ogg" to="audio/ogg"/> - <map from="ogm" to="video/ogg"/> - <map from="asf" to="video/x-ms-asf"/> - <map from="asx" to="video/x-ms-asf"/> - <map from="wma" to="audio/x-ms-wma"/> - <map from="wax" to="audio/x-ms-wax"/> - <map from="wmv" to="video/x-ms-wmv"/> - <map from="wvx" to="video/x-ms-wvx"/> - <map from="wm" to="video/x-ms-wm"/> - <map from="wmx" to="video/x-ms-wmx"/> - <map from="m3u" to="audio/x-mpegurl"/> - <map from="pls" to="audio/x-scpls"/> - <map from="flv" to="video/x-flv"/> - <map from="mkv" to="video/x-matroska"/> - <map from="mka" to="audio/x-matroska"/> - <map from="avi" to="video/divx"/> - <map from="m2ts" to="video/avc"/> - <map from="cr2" to="image/raw"/> - <map from="nef" to="image/raw"/> - </extension-mimetype> - <mimetype-upnpclass> - <map from="audio/*" to="object.item.audioItem.musicTrack"/> - <map from="video/*" to="object.item.videoItem"/> - <map from="image/*" to="object.item.imageItem"/> - </mimetype-upnpclass> - <mimetype-contenttype> - <treat mimetype="audio/mpeg" as="mp3"/> - <treat mimetype="application/ogg" as="ogg"/> - <treat mimetype="video/ogg" as="ogg"/> - <treat mimetype="audio/ogg" as="ogg"/> - <treat mimetype="audio/x-flac" as="flac"/> - <treat mimetype="image/jpeg" as="jpg"/> - <treat mimetype="audio/x-mpegurl" as="playlist"/> - <treat mimetype="audio/x-scpls" as="playlist"/> - <treat mimetype="audio/x-wav" as="pcm"/> - <treat mimetype="audio/L16" as="pcm"/> - <treat mimetype="video/x-msvideo" as="avi"/> - <treat mimetype="video/mp4" as="mp4"/> - <treat mimetype="audio/mp4" as="mp4"/> - <treat mimetype="video/divx" as="avi"/> - </mimetype-contenttype> - </mappings> - <online-content> - <YouTube enabled="no" refresh="28800" update-at-start="yes" purge-after="604800" racy-content="exclude" format="mp4" hd="no"> - <favorites user="NationalGeographic"/> - <playlists user="PlayStation"/> - <uploads user="Google"/> - <standardfeed feed="most_viewed" time-range="today"/> - <standardfeed feed="recently_featured" time-range="today"/> - </YouTube> - </online-content> - </import> - <transcoding enabled="no"> - <mimetype-profile-mappings> - <transcode mimetype="audio/ogg" using="audio2pcm"/> - <transcode mimetype="audio/x-flac" using="audio2pcm"/> - <transcode mimetype="video/ogg" using="video2mpeg"/> - <transcode mimetype="video/x-flv" using="video2mpeg"/> - </mimetype-profile-mappings> - <profiles> - <profile name="audio2pcm" enabled="yes" type="external"> - <mimetype>audio/L16</mimetype> - <accept-url>no</accept-url> - <first-resource>yes</first-resource> - <hide-original-resource>yes</hide-original-resource> - <accept-ogg-theora>no</accept-ogg-theora> - <sample-frequency>44100</sample-frequency> - <audio-channels>2</audio-channels> - <agent command="ffmpeg" arguments="-i %in -acodec pcm_s16be -ab 192k -ar 44100 -ac 2 -f s16be -y %out"/> - <buffer size="1048576" chunk-size="131072" fill-size="262144"/> - </profile> - <profile name="video2mpeg" enabled="yes" type="external"> - <mimetype>video/mpeg</mimetype> - <accept-url>no</accept-url> - <first-resource>yes</first-resource> - <hide-original-resource>yes</hide-original-resource> - <accept-ogg-theora>yes</accept-ogg-theora> - <sample-frequency>48000</sample-frequency> - <audio-channels>2</audio-channels> - <agent command="ffmpeg" arguments="-i %in -vcodec mpeg2video -b 4096k -r 25 -acodec mp2 -ab 192k -ar 48000 -ac 2 -async 1 -f dvd -threads 2 -y %out"/> - <buffer size="10485760" chunk-size="262144" fill-size="524288"/> - </profile> - </profiles> - </transcoding> -</config> diff --git a/net-misc/mediatomb/files/mediatomb-0.12.0.initd b/net-misc/mediatomb/files/mediatomb-0.12.0.initd deleted file mode 100644 index 5f6112b..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.0.initd +++ /dev/null @@ -1,22 +0,0 @@ -#!/sbin/runscript - -depend() { - need net #MYSQL# -} - -start() { - ebegin "Starting MediaTomb" - start-stop-daemon --start --quiet --exec /usr/bin/mediatomb \ - --pidfile ${MEDIATOMB_PIDFILE} -- --daemon \ - --pidfile ${MEDIATOMB_PIDFILE} --user ${MEDIATOMB_USER} \ - --group ${MEDIATOMB_GROUP} --logfile ${MEDIATOMB_LOGFILE} \ - --config ${MEDIATOMB_CONFIG} --port ${MEDIATOMB_PORT} \ - ${MEDIATOMB_OPTIONS} - eend $? -} - -stop () { - ebegin "Stopping MediaTomb" - start-stop-daemon --stop --retry 10 --quiet --pidfile ${MEDIATOMB_PIDFILE} - eend $? -} diff --git a/net-misc/mediatomb/files/mediatomb-0.12.1-gcc46.patch b/net-misc/mediatomb/files/mediatomb-0.12.1-gcc46.patch deleted file mode 100644 index 40b8f51..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.1-gcc46.patch +++ /dev/null @@ -1,13 +0,0 @@ -https://sourceforge.net/tracker/?func=detail&aid=3173314&group_id=129766&atid=715782 -https://bugs.gentoo.org/353733 - ---- a/src/zmm/object.h -+++ b/src/zmm/object.h -@@ -33,6 +33,7 @@ - #define __ZMM_OBJECT_H__ - - #include <new> // for size_t -+#include <cstddef> - #include "atomic.h" - - namespace zmm diff --git a/net-misc/mediatomb/files/mediatomb-0.12.1-libav7.patch b/net-misc/mediatomb/files/mediatomb-0.12.1-libav7.patch deleted file mode 100644 index e25697c..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.1-libav7.patch +++ /dev/null @@ -1,64 +0,0 @@ -=== modified file 'src/metadata/ffmpeg_handler.cc' ---- old/src/metadata/ffmpeg_handler.cc 2010-08-25 17:07:03 +0000 -+++ new/src/metadata/ffmpeg_handler.cc 2011-05-19 04:33:32 +0000 -@@ -89,6 +89,33 @@ - - Ref<StringConverter> sc = StringConverter::m2i(); - -+ /* Tabs are 4 characters here */ -+ typedef struct {const char *avname; metadata_fields_t field;} mapping_t; -+ static const mapping_t mapping[] = -+ { -+ {"title", M_TITLE}, -+ {"artist", M_ARTIST}, -+ {"album", M_ALBUM}, -+ {"date", M_DATE}, -+ {"genre", M_GENRE}, -+ {"comment", M_DESCRIPTION}, -+ {"track", M_TRACKNUMBER}, -+ {NULL, M_MAX}, -+ }; -+ -+ if (!pFormatCtx->metadata) -+ return; -+ for (const mapping_t *m = mapping; m->avname != NULL; m++) -+ { -+ AVMetadataTag *tag = NULL; -+ tag = av_metadata_get(pFormatCtx->metadata, m->avname, NULL, 0); -+ if (tag && tag->value && tag->value[0]) -+ { -+ log_debug("Added metadata %s: %s\n", m->avname, tag->value); -+ item->setMetadata(MT_KEYS[m->field].upnp, sc->convert(tag->value)); -+ } -+ } -+ /* Old algorithm (doesn't work with libav >= 0.7) - if (strlen(pFormatCtx->title) > 0) - { - log_debug("Added metadata title: %s\n", pFormatCtx->title); -@@ -131,6 +158,7 @@ - item->setMetadata(MT_KEYS[M_TRACKNUMBER].upnp, - sc->convert(String::from(pFormatCtx->track))); - } -+ */ - } - - // ffmpeg library calls -@@ -178,7 +206,7 @@ - for(i=0; i<pFormatCtx->nb_streams; i++) - { - AVStream *st = pFormatCtx->streams[i]; -- if((st != NULL) && (videoset == false) && (st->codec->codec_type == CODEC_TYPE_VIDEO)) -+ if((st != NULL) && (videoset == false) && (st->codec->codec_type == AVMEDIA_TYPE_VIDEO)) - { - if (st->codec->codec_tag > 0) - { -@@ -209,7 +237,7 @@ - *y = st->codec->height; - } - } -- if(st->codec->codec_type == CODEC_TYPE_AUDIO) -+ if(st->codec->codec_type == AVMEDIA_TYPE_AUDIO) - { - // Increase number of audiochannels - audioch++; - diff --git a/net-misc/mediatomb/files/mediatomb-0.12.1-libmp4v2_191_p479.patch b/net-misc/mediatomb/files/mediatomb-0.12.1-libmp4v2_191_p479.patch deleted file mode 100644 index 6a6b51e..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.1-libmp4v2_191_p479.patch +++ /dev/null @@ -1,187 +0,0 @@ -diff -urN old/src/metadata/libmp4v2_handler.cc new/src/metadata/libmp4v2_handler.cc ---- old/src/metadata/libmp4v2_handler.cc 2012-04-05 01:46:26.000000000 +0200 -+++ new/src/metadata/libmp4v2_handler.cc 2012-04-05 02:01:24.000000000 +0200 -@@ -65,29 +65,28 @@ - static void addMetaField(metadata_fields_t field, MP4FileHandle mp4, Ref<CdsItem> item) - { - String value; -- char* mp4_retval = NULL; -- u_int16_t track; -- u_int16_t total_tracks; -- - Ref<StringConverter> sc = StringConverter::i2i(); - -+ const MP4Tags* new_tags = MP4TagsAlloc(); -+ -+ if (!MP4TagsFetch(new_tags, mp4)) -+ return; -+ - switch (field) - { - case M_TITLE: -- MP4GetMetadataName(mp4, &mp4_retval); -+ value = new_tags->name; - break; - case M_ARTIST: -- MP4GetMetadataArtist(mp4, &mp4_retval); -+ value = new_tags->artist; - break; - case M_ALBUM: -- MP4GetMetadataAlbum(mp4, &mp4_retval); -+ value = new_tags->album; - break; - case M_DATE: -- MP4GetMetadataYear(mp4, &mp4_retval); -- if (mp4_retval) -+ value = new_tags->releaseDate; -+ if (value.length() > 0) - { -- value = mp4_retval; -- free(mp4_retval); - if (string_ok(value)) - value = value + "-01-01"; - else -@@ -95,34 +94,31 @@ - } - break; - case M_GENRE: -- MP4GetMetadataGenre(mp4, &mp4_retval); -+ value = new_tags->genre; - break; - case M_DESCRIPTION: -- MP4GetMetadataComment(mp4, &mp4_retval); -+ value = new_tags->comments; - break; - case M_TRACKNUMBER: -- MP4GetMetadataTrack(mp4, &track, &total_tracks); -- if (track > 0) -+ if (new_tags->track) - { -- value = String::from(track); -- item->setTrackNumber((int)track); -+ value = String::from(new_tags->track->index); -+ item->setTrackNumber((int)new_tags->track->index); - } - else -+ { -+ MP4TagsFree( new_tags ); - return; -+ } - break; - default: -+ MP4TagsFree( new_tags ); - return; - } - -- if ((field != M_DATE) && (field != M_TRACKNUMBER) && -- (mp4_retval)) -- { -- value = mp4_retval; -- free(mp4_retval); -- } -- -+ MP4TagsFree( new_tags ); - value = trim_string(value); -- -+ - if (string_ok(value)) - { - item->setMetadata(MT_KEYS[field].upnp, sc->convert(value)); -@@ -190,14 +186,19 @@ - } - - #if defined(HAVE_MAGIC) -- u_int8_t *art_data; -- u_int32_t art_data_len; -+ void *art_data = 0; -+ u_int32_t art_data_len = 0; - String art_mimetype; -+ -+ const MP4Tags* new_tags = MP4TagsAlloc(); -+ MP4TagsFetch(new_tags, mp4); -+ if (new_tags->artworkCount) -+ { -+ art_data = new_tags->artwork->data; -+ art_data_len = new_tags->artwork->size; -+ } - #ifdef HAVE_MP4_GET_METADATA_COVER_ART_COUNT -- if (MP4GetMetadataCoverArtCount(mp4) && -- MP4GetMetadataCoverArt(mp4, &art_data, &art_data_len)) --#else -- MP4GetMetadataCoverArt(mp4, &art_data, &art_data_len); -+ if (new_tags->artworkCount && art_data_len > 0) - #endif - { - if (art_data) -@@ -211,11 +212,10 @@ - } - catch (Exception ex) - { -- free(art_data); -+ MP4TagsFree(new_tags); - throw ex; - } - -- free(art_data); - if (art_mimetype != _(MIMETYPE_DEFAULT)) - { - Ref<CdsResource> resource(new CdsResource(CH_MP4)); -@@ -225,6 +225,7 @@ - } - } - } -+ MP4TagsFree(new_tags); - #endif - MP4Close(mp4); - } -@@ -249,26 +250,35 @@ - - if (ctype != ID3_ALBUM_ART) - throw _Exception(_("LibMP4V2Handler: got unknown content type: ") + ctype); -+ -+ const MP4Tags* new_tags = MP4TagsAlloc(); -+ if (MP4TagsFetch(new_tags, mp4)) -+ { - #ifdef HAVE_MP4_GET_METADATA_COVER_ART_COUNT -- if (!MP4GetMetadataCoverArtCount(mp4)) -- throw _Exception(_("LibMP4V2Handler: resource has no album art information")); -+ if (!new_tags->artworkCount) -+ throw _Exception(_("LibMP4V2Handler: resource has no album art information")); - #endif -- u_int8_t *art_data; -- u_int32_t art_data_len; -- if (MP4GetMetadataCoverArt(mp4, &art_data, &art_data_len)) -- { -- if (art_data) -+ void *art_data = 0; -+ u_int32_t art_data_len; -+ -+ const MP4TagArtwork* art = new_tags->artwork; -+ art_data = art->data; -+ art_data_len = art->size; -+ if (art) - { -- *data_size = (off_t)art_data_len; -- Ref<IOHandler> h(new MemIOHandler((void *)art_data, art_data_len)); -- free(art_data); -- return h; -+ if (art_data) -+ { -+ *data_size = (off_t)art_data_len; -+ Ref<IOHandler> h(new MemIOHandler(art_data, art_data_len)); -+ MP4TagsFree(new_tags); -+ return h; -+ } - } -+ MP4TagsFree(new_tags); - } -- - throw _Exception(_("LibMP4V2Handler: could not serve album art " -- "for file") + item->getLocation() + -- " - embedded image not found"); -+ "for file") + item->getLocation() + -+ " - embedded image not found"); - } - - #endif // HAVE_LIBMP4V2 -De binära filerna old/src/metadata/.libmp4v2_handler.cc.swp och new/src/metadata/.libmp4v2_handler.cc.swp skiljer diff --git a/net-misc/mediatomb/files/mediatomb-0.12.1-mozjs185.patch b/net-misc/mediatomb/files/mediatomb-0.12.1-mozjs185.patch deleted file mode 100644 index eb67540..0000000 --- a/net-misc/mediatomb/files/mediatomb-0.12.1-mozjs185.patch +++ /dev/null @@ -1,605 +0,0 @@ ---- mediatomb-0.12.1/configure.ac 2010-04-07 18:38:51.000000000 -0400 -+++ mediatomb-0.12.1/configure.ac 2011-11-16 21:56:46.000000000 -0500 -@@ -1006,14 +1006,23 @@ - MOZLIB=smjs - ], - [ -- LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs $ADD_PTHREAD_CFLAGS" -- AC_CHECK_LIB(mozjs, JS_NewObject, -+ LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs185 $ADD_PTHREAD_CFLAGS" -+ AC_CHECK_LIB(mozjs185, JS_NewObject, - [ -- JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs" -- MOZLIB=mozjs -+ JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs185" -+ MOZLIB=mozjs185 - ], - [ -- AC_MSG_ERROR([Spidermonkey not found in requested location $JS_SEARCH_LIBS]) -+ LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs $ADD_PTHREAD_CFLAGS" -+ AC_CHECK_LIB(mozjs, JS_NewObject, -+ [ -+ JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs" -+ MOZLIB=mozjs -+ ], -+ [ -+ AC_MSG_ERROR([Spidermonkey not found in requested location $JS_SEARCH_LIBS]) -+ ] -+ ) - ] - ) - ] -@@ -1036,39 +1045,58 @@ - ], - [ - unset ac_cv_lib_smjs_JS_NewObject -- AC_CHECK_LIB(mozjs, JS_NewObject, -+ AC_CHECK_LIB(mozjs185, JS_NewObject, - [ -- MOZLIB=mozjs -- JS_LIBS="-lmozjs" -+ MOZLIB=mozjs185 -+ JS_LIBS="-lmozjs185" - ], - [ -- LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE $ADD_PTHREAD_CFLAGS" -- unset ac_cv_lib_js_JS_NewObject -- AC_CHECK_LIB(js, JS_NewObject, -- [ -- JS_LIBS="-L$SEARCH_DIR_LIBS -ljs" -- MOZLIB=js -- ], -- [ -- unset ac_cv_lib_smjs_JS_NewObject -- AC_CHECK_LIB(smjs, JS_NewObject, -- [ -- JS_LIBS="-L$SEARCH_DIR_LIBS -lsmjs" -- MOZLIB=smjs -- ], -- [ -- LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs" -- unset ac_cv_lib_mozjs_JS_NewObject -- AC_CHECK_LIB(mozjs, JS_NewObject, -- [ -- JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs" -- MOZLIB=mozjs -- ], -- [ -- JS_OK=missing -- AC_MSG_RESULT(libjs/libsmjs link failed, giving up) -- ] -- ) -+ unset ac_cv_lib_smjs_JS_NewObject -+ AC_CHECK_LIB(mozjs, JS_NewObject, -+ [ -+ MOZLIB=mozjs -+ JS_LIBS="-lmozjs" -+ ], -+ [ -+ LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE $ADD_PTHREAD_CFLAGS" -+ unset ac_cv_lib_js_JS_NewObject -+ AC_CHECK_LIB(js, JS_NewObject, -+ [ -+ JS_LIBS="-L$SEARCH_DIR_LIBS -ljs" -+ MOZLIB=js -+ ], -+ [ -+ unset ac_cv_lib_smjs_JS_NewObject -+ AC_CHECK_LIB(smjs, JS_NewObject, -+ [ -+ JS_LIBS="-L$SEARCH_DIR_LIBS -lsmjs" -+ MOZLIB=smjs -+ ], -+ [ -+ LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs185" -+ unset ac_cv_lib_mozjs_JS_NewObject -+ AC_CHECK_LIB(mozjs185, JS_NewObject, -+ [ -+ JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs185" -+ MOZLIB=mozjs185 -+ ], -+ [ -+ LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs" -+ unset ac_cv_lib_mozjs_JS_NewObject -+ AC_CHECK_LIB(mozjs, JS_NewObject, -+ [ -+ JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs" -+ MOZLIB=mozjs -+ ], -+ [ -+ JS_OK=missing -+ AC_MSG_RESULT(libjs/libsmjs link failed, giving up) -+ ] -+ ) -+ ] -+ ) -+ ] -+ ) - ] - ) - ] -diff -ur mediatomb-0.12.1.orig/build/Makefile.in mediatomb-0.12.1/build/Makefile.in ---- mediatomb-0.12.1.orig/build/Makefile.in 2010-04-07 18:40:15.000000000 -0400 -+++ mediatomb-0.12.1/build/Makefile.in 2011-11-16 22:28:06.000000000 -0500 -@@ -257,7 +257,7 @@ - CXX = @CXX@ - CXXCPP = @CXXCPP@ - CXXDEPMODE = @CXXDEPMODE@ --CXXFLAGS = @CXXFLAGS@ -+CXXFLAGS = -fpermissive @CXXFLAGS@ - CYGPATH_W = @CYGPATH_W@ - DB_AUTOCREATE_OPTION_ENABLED = @DB_AUTOCREATE_OPTION_ENABLED@ - DB_AUTOCREATE_OPTION_REQUESTED = @DB_AUTOCREATE_OPTION_REQUESTED@ -diff -ur mediatomb-0.12.1.orig/src/scripting/import_script.cc mediatomb-0.12.1/src/scripting/import_script.cc ---- mediatomb-0.12.1.orig/src/scripting/import_script.cc 2010-03-25 10:58:05.000000000 -0400 -+++ mediatomb-0.12.1/src/scripting/import_script.cc 2011-11-16 22:28:06.000000000 -0500 -@@ -53,8 +53,8 @@ - try - { - load(scriptPath); -- root = JS_NewScriptObject(cx, script); -- JS_AddNamedRoot(cx, &root, "ImportScript"); -+ root = JS_NewObject(cx, NULL, script, NULL); -+ JS_AddNamedObjectRoot(cx, &root, "ImportScript"); - } - catch (Exception ex) - { -@@ -117,7 +117,7 @@ - #endif - - if (root) -- JS_RemoveRoot(cx, &root); -+ JS_RemoveObjectRoot(cx, &root); - - #ifdef JS_THREADSAFE - JS_EndRequest(cx); -diff -ur mediatomb-0.12.1.orig/src/scripting/js_functions.cc mediatomb-0.12.1/src/scripting/js_functions.cc ---- mediatomb-0.12.1.orig/src/scripting/js_functions.cc 2010-03-25 10:58:05.000000000 -0400 -+++ mediatomb-0.12.1/src/scripting/js_functions.cc 2011-11-16 22:28:21.000000000 -0500 -@@ -49,30 +49,45 @@ - extern "C" { - - JSBool --js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_print(JSContext *cx, uintN argc, jsval *argv) - { -- uintN i; -+ uintN i, j; - JSString *str; - - for (i = 0; i < argc; i++) - { -- str = JS_ValueToString(cx, argv[i]); -+ String fmtStr; -+ for (j = 0; j < argc; j++) -+ { -+ if (j == i) -+ fmtStr = fmtStr + "S"; -+ else -+ fmtStr = fmtStr + "*"; -+ } -+ if(!JS_ConvertArguments(cx, 1, JS_ARGV(cx, argv), fmtStr.c_str(), &str)) -+ { -+ log_debug("Could not parse input arguments\n"); -+ return JS_TRUE; -+ } -+ - if (!str) - return JS_TRUE; -- argv[i] = STRING_TO_JSVAL(str); -- log_js("%s\n", JS_GetStringBytes(str)); -+ -+ char * log_str = JS_EncodeString(cx, str); -+ log_js("%s\n", log_str); -+ JS_free(cx, log_str); - } - return JS_TRUE; - } - - JSBool --js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_copyObject(JSContext *cx, uintN argc, jsval *argv) - { - jsval arg; - JSObject *js_cds_obj; - JSObject *js_cds_clone_obj; - -- Script *self = (Script *)JS_GetPrivate(cx, obj); -+ Script *self = (Script *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); - - try - { -@@ -91,7 +106,7 @@ - - self->cdsObject2jsObject(cds_obj, js_cds_clone_obj); - -- *rval = OBJECT_TO_JSVAL(js_cds_clone_obj); -+ JS_SET_RVAL(cx, argv, OBJECT_TO_JSVAL(js_cds_clone_obj)); - - return JS_TRUE; - -@@ -110,28 +125,58 @@ - } - - JSBool --js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_addCdsObject(JSContext *cx, uintN argc, jsval *argv) - { - try - { -- jsval arg; -- JSString *str; -- String path; -- String containerclass; -+ // Inputs from native code -+ JSObject *js_cds_obj = NULL; -+ JSString *str = NULL; -+ JSString *cont = NULL; - -- JSObject *js_cds_obj; -+ String path = nil; -+ String containerclass = nil; -+ -+ JSObject *obj = JS_THIS_OBJECT(cx, argv); - JSObject *js_orig_obj = NULL; - Ref<CdsObject> orig_object; - - Ref<StringConverter> p2i; - Ref<StringConverter> i2i; -+ switch (argc) -+ { -+ case 0: -+ log_debug("No input arguments given\n"); -+ return JS_FALSE; -+ case 1: -+ if(!JS_ConvertArguments(cx, 1, JS_ARGV(cx, argv), "o", &js_cds_obj)) -+ { -+ log_debug("Could not parse input arguments\n"); -+ return JS_TRUE; -+ } -+ break; -+ case 2: -+ if(!JS_ConvertArguments(cx, 2, JS_ARGV(cx, argv), "oS", &js_cds_obj, &str)) -+ { -+ log_debug("Could not parse input arguments\n"); -+ return JS_TRUE; -+ } -+ break; -+ default: -+ if(!JS_ConvertArguments(cx, 3, JS_ARGV(cx, argv), "oSS", &js_cds_obj, &str, &cont)) -+ { -+ log_debug("Could not parse input arguments\n"); -+ return JS_TRUE; -+ } -+ break; -+ } - - Script *self = (Script *)JS_GetPrivate(cx, obj); - - if (self == NULL) - { - log_debug("Could not retrieve class instance from global object\n"); -- return JS_FALSE; -+ return JS_TRUE; - } - - if (self->whoami() == S_PLAYLIST) -@@ -142,26 +187,17 @@ - { - i2i = StringConverter::i2i(); - } -- -- arg = argv[0]; -- if (!JSVAL_IS_OBJECT(arg)) -- return JS_TRUE; -- if (!JS_ValueToObject(cx, arg, &js_cds_obj)) -- return JS_TRUE; - -- // root it -- argv[0] = OBJECT_TO_JSVAL(js_cds_obj); - -- str = JS_ValueToString(cx, argv[1]); - if (!str) - path = _("/"); - else -- path = JS_GetStringBytes(str); -+ path = JS_EncodeString(cx, str); -+ - -- JSString *cont = JS_ValueToString(cx, argv[2]); - if (cont) - { -- containerclass = JS_GetStringBytes(cont); -+ containerclass = JS_EncodeString(cx, cont); - if (!string_ok(containerclass) || containerclass == "undefined") - containerclass = nil; - } -@@ -177,9 +213,6 @@ - return JS_TRUE; - } - -- // root it -- argv[1] = OBJECT_TO_JSVAL(js_orig_obj); -- - orig_object = self->jsObject2cdsObject(js_orig_obj, self->getProcessedObject()); - if (orig_object == nil) - return JS_TRUE; -@@ -285,8 +318,7 @@ - JSString *str2 = JS_NewStringCopyN(cx, tmp.c_str(), tmp.length()); - if (!str2) - return JS_TRUE; -- *rval = STRING_TO_JSVAL(str2); -- -+ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); - return JS_TRUE; - } - catch (ServerShutdownException se) -@@ -302,7 +334,7 @@ - return JS_TRUE; - } - --static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval, charset_convert_t chr) -+static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, charset_convert_t chr) - { - try - { -@@ -321,7 +353,7 @@ - { - str = JS_ValueToString(cx, argv[0]); - if (str) -- result = JS_GetStringBytes(str); -+ result = JS_EncodeString(cx, str); - } - - if (result != nil) -@@ -330,7 +362,7 @@ - JSString *str2 = JS_NewStringCopyN(cx, result.c_str(), result.length()); - if (!str2) - return JS_TRUE; -- *rval = STRING_TO_JSVAL(str2); -+ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); - } - } - catch (ServerShutdownException se) -@@ -347,24 +379,23 @@ - } - - --JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, F2I); -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, F2I); - } - --JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, M2I); --} -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, M2I); } - --JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, P2I); -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, P2I); - } - --JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, J2I); -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, J2I); - } - - } // extern "C" -diff -ur mediatomb-0.12.1.orig/src/scripting/js_functions.h mediatomb-0.12.1/src/scripting/js_functions.h ---- mediatomb-0.12.1.orig/src/scripting/js_functions.h 2010-03-25 10:58:05.000000000 -0400 -+++ mediatomb-0.12.1/src/scripting/js_functions.h 2011-11-16 22:28:06.000000000 -0500 -@@ -40,18 +40,18 @@ - extern "C" { - - /// \brief Log output. --JSBool js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_print(JSContext *cx, uintN argc, jsval *argv); - - /// \brief Adds an object to the database. --JSBool js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_addCdsObject(JSContext *cx, uintN argc, jsval *argv); - - /// \brief Makes a copy of an CDS object. --JSBool js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_copyObject(JSContext *cx, uintN argc, jsval *argv); - --JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); --JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); --JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); --JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv); -+JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv); -+JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv); -+JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv); - - } // extern "C" - -diff -ur mediatomb-0.12.1.orig/src/scripting/playlist_parser_script.cc mediatomb-0.12.1/src/scripting/playlist_parser_script.cc ---- mediatomb-0.12.1.orig/src/scripting/playlist_parser_script.cc 2010-03-25 10:58:05.000000000 -0400 -+++ mediatomb-0.12.1/src/scripting/playlist_parser_script.cc 2011-11-16 22:28:06.000000000 -0500 -@@ -46,9 +46,9 @@ - extern "C" { - - static JSBool --js_readln(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_readln(JSContext *cx, uintN argc, jsval *argv) - { -- PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, obj); -+ PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); - - String line; - -@@ -69,7 +69,7 @@ - - JSString *jsline = JS_NewStringCopyZ(cx, line.c_str()); - -- *rval = STRING_TO_JSVAL(jsline); -+ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(jsline)); - - return JS_TRUE; - } -@@ -93,8 +93,8 @@ - - String scriptPath = ConfigManager::getInstance()->getOption(CFG_IMPORT_SCRIPTING_PLAYLIST_SCRIPT); - load(scriptPath); -- root = JS_NewScriptObject(cx, script); -- JS_AddNamedRoot(cx, &root, "PlaylistScript"); -+ root = JS_NewObject(cx, NULL, script, NULL); -+ JS_AddNamedObjectRoot(cx, &root, "PlaylistScript"); - } - catch (Exception ex) - { -@@ -245,7 +245,7 @@ - #endif - - if (root) -- JS_RemoveRoot(cx, &root); -+ JS_RemoveObjectRoot(cx, &root); - - #ifdef JS_THREADSAFE - JS_EndRequest(cx); -diff -ur mediatomb-0.12.1.orig/src/scripting/script.cc mediatomb-0.12.1/src/scripting/script.cc ---- mediatomb-0.12.1.orig/src/scripting/script.cc 2010-03-25 10:58:05.000000000 -0400 -+++ mediatomb-0.12.1/src/scripting/script.cc 2011-11-16 22:28:06.000000000 -0500 -@@ -87,7 +87,7 @@ - str = JS_ValueToString(cx, val); - if (! str) - return nil; -- return JS_GetStringBytes(str); -+ return JS_EncodeString(cx, str); - } - - int Script::getBoolProperty(JSObject *obj, String name) -@@ -427,14 +427,14 @@ - try - { - common_script = _load(common_scr_path); -- common_root = JS_NewScriptObject(cx, common_script); -- JS_AddNamedRoot(cx, &common_root, "common-script"); -+ common_root = JS_NewObject(cx, NULL, common_script, NULL); -+ JS_AddNamedObjectRoot(cx, &common_root, "common-script"); - _execute(common_script); - } - catch (Exception e) - { - if (common_root) -- JS_RemoveRoot(cx, &common_root); -+ JS_RemoveObjectRoot(cx, &common_root); - - log_js("Unable to load %s: %s\n", common_scr_path.c_str(), - e.getMessage().c_str()); -@@ -460,7 +460,7 @@ - JS_BeginRequest(cx); - #endif - if (common_root) -- JS_RemoveRoot(cx, &common_root); -+ JS_RemoveObjectRoot(cx, &common_root); - - /* - * scripts are unrooted and will be cleaned up by GC -@@ -504,11 +504,11 @@ - static JSClass global_class = - { - "global", /* name */ -- JSCLASS_HAS_PRIVATE, /* flags */ -+ JSCLASS_HAS_PRIVATE | JSCLASS_GLOBAL_FLAGS,/* flags */ - JS_PropertyStub, /* add property */ - JS_PropertyStub, /* del property */ - JS_PropertyStub, /* get property */ -- JS_PropertyStub, /* set property */ -+ JS_StrictPropertyStub, /* set property */ - JS_EnumerateStandardClasses, /* enumerate */ - JS_ResolveStub, /* resolve */ - JS_ConvertStub, /* convert */ -@@ -517,7 +517,7 @@ - }; - - /* create the global object here */ -- glob = JS_NewObject(cx, &global_class, NULL, NULL); -+ glob = JS_NewCompartmentAndGlobalObject(cx, &global_class, NULL); - if (! glob) - throw _Exception(_("Scripting: could not initialize glboal class")); - -@@ -539,12 +539,12 @@ - throw _Exception(_("Scripting: JS_DefineFunctions failed")); - } - --JSScript *Script::_load(zmm::String scriptPath) -+JSObject *Script::_load(zmm::String scriptPath) - { - if (glob == NULL) - initGlobalObject(); - -- JSScript *scr; -+ JSObject *scr; - - String scriptText = read_text_file(scriptPath); - -@@ -571,14 +571,11 @@ - - void Script::load(zmm::String scriptPath) - { -- if (script) -- JS_DestroyScript(cx, script); -- - script = _load((scriptPath)); - } - - --void Script::_execute(JSScript *scr) -+void Script::_execute(JSObject *scr) - { - jsval ret_val; - -@@ -662,7 +659,7 @@ - JSObject *js_meta = getObjectProperty(js, _("meta")); - if (js_meta) - { -- JS_AddNamedRoot(cx, &js_meta, "meta"); -+ JS_AddNamedObjectRoot(cx, &js_meta, "meta"); - /// \todo: only metadata enumerated in MT_KEYS is taken - for (int i = 0; i < M_MAX; i++) - { -@@ -687,7 +684,7 @@ - } - } - } -- JS_RemoveRoot(cx, &js_meta); -+ JS_RemoveObjectRoot(cx, &js_meta); - } - - // stuff that has not been exported to js -diff -ur mediatomb-0.12.1.orig/src/scripting/script.h mediatomb-0.12.1/src/scripting/script.h ---- mediatomb-0.12.1.orig/src/scripting/script.h 2010-03-25 10:58:05.000000000 -0400 -+++ mediatomb-0.12.1/src/scripting/script.h 2011-11-16 22:28:06.000000000 -0500 -@@ -66,8 +66,8 @@ - JSRuntime *rt; - JSContext *cx; - JSObject *glob; -- JSScript *script; -- JSScript *common_script; -+ JSObject *script; -+ JSObject *common_script; - - public: - Script(zmm::Ref<Runtime> runtime); -@@ -115,8 +115,8 @@ - JSObject *common_root; - - void initGlobalObject(); -- JSScript *_load(zmm::String scriptPath); -- void _execute(JSScript *scr); -+ JSObject *_load(zmm::String scriptPath); -+ void _execute(JSObject *scr); - zmm::Ref<StringConverter> _p2i; - zmm::Ref<StringConverter> _j2i; - zmm::Ref<StringConverter> _f2i; diff --git a/net-misc/mediatomb/mediatomb-0.12.1-r2.ebuild b/net-misc/mediatomb/mediatomb-0.12.1-r2.ebuild deleted file mode 100644 index 1d289db..0000000 --- a/net-misc/mediatomb/mediatomb-0.12.1-r2.ebuild +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/mediatomb/mediatomb-0.12.1-r1.ebuild,v 1.2 2012/03/11 04:36:12 darkside Exp $ - -EAPI=2 -inherit autotools eutils linux-info - -DESCRIPTION="MediaTomb is an open source UPnP MediaServer" -HOMEPAGE="http://www.mediatomb.cc/" -SRC_URI="mirror://sourceforge/mediatomb/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 ~arm ~ppc x86" -IUSE="debug +exif +ffmpeg inotify +javascript lastfm libextractor +mp4 mysql +taglib thumbnail" - -DEPEND=" - mysql? ( virtual/mysql ) - !mysql? ( >=dev-db/sqlite-3 ) - javascript? ( dev-lang/spidermonkey ) - dev-libs/expat - taglib? ( media-libs/taglib ) - !taglib? ( media-libs/id3lib ) - lastfm? ( >=media-libs/lastfmlib-0.4 ) - exif? ( media-libs/libexif ) - libextractor? ( media-libs/libextractor ) - mp4? ( media-libs/libmp4v2 ) - ffmpeg? ( virtual/ffmpeg ) - thumbnail? ( media-video/ffmpegthumbnailer[jpeg] ) - net-misc/curl - sys-apps/file - sys-libs/zlib - virtual/libiconv" -RDEPEND="${DEPEND}" - -pkg_setup() { - if use inotify; then - if ! linux_config_exists \ - || ! linux_chkconfig_present INOTIFY_USER; then - ewarn "Please enable Inotify support in your kernel:" - ewarn - ewarn " File systems --->" - ewarn " [*] Inotify support for userspace" - ewarn - fi - fi - enewgroup mediatomb - enewuser mediatomb -1 -1 /dev/null mediatomb -} - -src_prepare() { - epatch "${FILESDIR}/${P}-gcc46.patch" - epatch "${FILESDIR}/${P}-libav7.patch" - if use mp4 ; then - epatch "${FILESDIR}/${P}-libmp4v2_191_p479.patch" - fi - if use javascript && has_version ">=dev-lang/spidermonkey-1.8.5" ; then - epatch "${FILESDIR}"/${P}-mozjs185.patch - eautoreconf - fi -} - -src_configure() { - if use thumbnail; then - elog "libextrator does not work with thumbnail, disabling libextrator" - myconf="${myconf} --enable-ffmpegthumbnailer --enable-ffmpeg --disable-libextractor" - elif ! use thumbnail && use ffmpeg && use libextractor; then - elog "libextrator does not work with ffmpeg, disabling libextrator" - myconf="${myconf} --disable-ffmpegthumbnailer --enable-ffmpeg --disable-libextractor" - else - myconf="${myconf} $(use_enable thumbnail ffmpegthumbnailer) $(use_enable ffmpeg) $(use_enable libextractor)" - fi - - econf \ - $(use_enable debug tombdebug) \ - $(use_enable exif libexif) \ - $(use_enable inotify) \ - $(use_enable javascript libjs) \ - $(use_enable lastfm lastfmlib) \ - $(use_enable mp4 libmp4v2) \ - $(use_enable mysql) $(use_enable !mysql sqlite3) \ - $(use_enable taglib) $(use_enable !taglib id3lib) \ - --enable-curl \ - --enable-external-transcoding \ - --enable-libmagic \ - --enable-protocolinfo-extension \ - --enable-youtube \ - --enable-zlib \ - ${myconf} -} - -src_install() { - emake DESTDIR="${D}" install || die "Install failed!" - - dodoc AUTHORS ChangeLog NEWS README TODO - - sed -e "s:#MYSQL#:$(use mysql && has_version dev-db/mysql[-minimal] && echo "mysql"):" \ - "${FILESDIR}/${PN}-0.12.0.initd" > "${T}/mediatomb.initd" || die - newinitd "${T}/mediatomb.initd" mediatomb || die - newconfd "${FILESDIR}/${PN}-0.12.0.confd" mediatomb || die - - insinto /etc/mediatomb - newins "${FILESDIR}/${PN}-0.12.0.config" config.xml || die - fperms 0600 /etc/mediatomb/config.xml - fowners mediatomb:mediatomb /etc/mediatomb/config.xml - - keepdir /var/lib/mediatomb - fowners mediatomb:mediatomb /var/lib/mediatomb -} - -pkg_postinst() { - if use mysql; then - elog "MediaTomb has been built with MySQL support and needs" - elog "to be configured before being started." - elog "For more information, please consult the MediaTomb" - elog "documentation: http://mediatomb.cc/pages/documentation" - elog - fi - - elog "To configure MediaTomb edit:" - elog "/etc/mediatomb/config.xml" - elog - elog "The MediaTomb web interface can be reached at (after the service is started):" - elog "http://localhost:49152/" -} |