Version bump, bug #376121 thank Alessandro Guido for report.
authorPeter Volkov <pva@gentoo.org>
Sun, 24 Jul 2011 08:54:10 +0000 (08:54 +0000)
committerPeter Volkov <pva@gentoo.org>
Sun, 24 Jul 2011 08:54:10 +0000 (08:54 +0000)
Package-Manager: portage-2.1.10.6/cvs/Linux x86_64

net-p2p/transmission/ChangeLog
net-p2p/transmission/Manifest
net-p2p/transmission/files/transmission-2.33-0001-configure.ac.patch [new file with mode: 0644]
net-p2p/transmission/files/transmission-2.33-0002-config.in-4-qt.pro.patch [new file with mode: 0644]
net-p2p/transmission/files/transmission-2.33-0003-system-miniupnpc.patch [new file with mode: 0644]
net-p2p/transmission/transmission-2.33.ebuild [new file with mode: 0644]

index 51e06ec7a4d1dd159bc80dc519592bea4c923f2c..3bfa46cf72dfec953270b53acdf1fc2a27e61b0e 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for net-p2p/transmission
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/ChangeLog,v 1.154 2011/06/16 09:30:23 pva Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/ChangeLog,v 1.155 2011/07/24 08:54:10 pva Exp $
+
+*transmission-2.33 (24 Jul 2011)
+
+  24 Jul 2011; Peter Volkov <pva@gentoo.org> +transmission-2.33.ebuild,
+  +files/transmission-2.33-0001-configure.ac.patch,
+  +files/transmission-2.33-0002-config.in-4-qt.pro.patch,
+  +files/transmission-2.33-0003-system-miniupnpc.patch:
+  Version bump, bug #376121 thank Alessandro Guido for report.
 
   16 Jun 2011; Peter Volkov <pva@gentoo.org>
   -files/0001-configure.ac-Drop-redudant-code-indentation.patch,
index 38f76ad2d6751bbce5fecc78cb1e6cb5228817a7..4fcdf891146c3d2053f587722aaf28f93f97c495 100644 (file)
@@ -3,14 +3,19 @@ AUX transmission-2.31-0002-config.in-4-qt.pro.patch 2434 RMD160 364eca9a6144e53a
 AUX transmission-2.31-0003-system-miniupnpc.patch 22326 RMD160 9042f531db97c5caec503ef8a560ad172d0fb922 SHA1 7fd5b162da193a1b4abd029756c676a40bd9c66d SHA256 79c2128a2e399d8cad19a885a7cc3c12b09d9cd3cdbff83c2aa07eb1d3e8ce10
 AUX transmission-2.31-no-tests.patch 504 RMD160 fd879a84f39348acb3700bd52f6bc08a9d8c0beb SHA1 8a18d36b406fb247a0b18a88f03f513e0ee594fa SHA256 eb344007d9da9e8060690df9bc50bc020ff6d749eab90707421af451b51b05bc
 AUX transmission-2.31-qt-libutp.patch 707 RMD160 cf81e7cd4361e09ef1d4cdfcb75e2e2c40d4582b SHA1 99dc8c8b0ab96c85ff6e0f42c2e31c40975d3f71 SHA256 475c085ef50fe4c0a1634530f57feca39d6285ed2cd63d13a7018a4f49caed12
+AUX transmission-2.33-0001-configure.ac.patch 1513 RMD160 c55d306b5657a07e71c88e703d4be86c47606bdf SHA1 e2c230117fb57ecddebb3798402cd1b36e45776c SHA256 aa269bb7ab69754a29399062b8abdab915a7172fa99a0747360584bcc9afaa25
+AUX transmission-2.33-0002-config.in-4-qt.pro.patch 2434 RMD160 eff545e8416f2bb92035717a35121ecaa0ba089f SHA1 e4470173150fe2b84583e295842e9ad13063ca75 SHA256 41d289f1701606eb337375ddcbc69f9c6b7e3e82d7212d8c3e4ecb4d034f7c46
+AUX transmission-2.33-0003-system-miniupnpc.patch 22323 RMD160 ce1add0c117667dc58f4a0ed2b38e06856fc6495 SHA1 bd3e551ea1b3fca99f3dd6ba24f396df0fe33201 SHA256 1f93c90bd7eef224a6702c5f633da23eb4df7f3c470f4caae8a0fbe122e63357
 AUX transmission-daemon.confd.3 703 RMD160 482953d2bd8e9c69300af3389615764649954a63 SHA1 a4d16dde4e2408b48620cc89c4a8759b042797f2 SHA256 4b47acf195a14a322550cfcaa735a59aac38410d1c2c63ffa824ff131c55ca70
 AUX transmission-daemon.initd.6 2209 RMD160 2ed6f67e83a04eef148b39204dc4a6281bff0680 SHA1 4c6c0ce20d71e398b7254332e3afef6349f1f8a0 SHA256 61ece2b8307b0ee7ce637428f6871176f03873eff1871f34baf8c2627982f36a
 AUX transmission-daemon.initd.7 2196 RMD160 e2a1aa4c2e39fe360d39fa72b16994aecd53485a SHA1 4d7b59f9540cd9045ac00013cd9abb7726f85984 SHA256 0e7268ac3b8ea74afeb1d39871b3e5ee675575c517ebccd1f3ba67340deed6df
 AUX transmission-daemon.initd.8 2235 RMD160 2848770ae93c597ea5cd6e8d22857bb99578b9e5 SHA1 683a27b11c84033de6efa831c6dabd1c487feb33 SHA256 370ec8a257a5bea28f9bb9d607e76676db94159def8be83932c7bda473f59012
 DIST transmission-2.22.tar.bz2 4802843 RMD160 e87b560f81fc8bc422dc7071a4b27bdcf2b2d6ac SHA1 ddd515bdcc201193b45f58b705f6e8fde9fcb5d1 SHA256 5a4079194f45260c143f21ea6f33ce2660d89fca02ad8f1e65169968d365e4d4
 DIST transmission-2.31.tar.xz 2558880 RMD160 e777e32e5d02e8a93a64e4821ea0f9ccd8724f2c SHA1 84cfbc4e6a8db437d3c5b7eb983ce763b2879b62 SHA256 82cd04c93c65df818d38dcec154f5864520ab3147fac372e11d8e9d12506deba
+DIST transmission-2.33.tar.xz 2583032 RMD160 8b8228a2fad55a64d46314f1bf879a8b89fa150d SHA1 a5502723e9b8fdc982cc4d3c052e4839cb45b1a8 SHA256 c15a7f9d82743fb329ee12e41bf242070ddbaa8c6741da7ce0bb91d8d399a072
 EBUILD transmission-2.22.ebuild 3905 RMD160 fa3fb412e80762df5ea9f586e306d3d78f7940a2 SHA1 c8abfcb6c950ebe7946b912fc5246d6f950f7bd1 SHA256 bc88d99b145cd04958b0b7c34533e2e730a247d3b87423010886178e542b0a4d
 EBUILD transmission-2.31-r1.ebuild 4186 RMD160 b73a2ad82fc17b03adf6f622cf984f0616d467f9 SHA1 34e11a0f03e0d1623f2e8d2a5ff1fd5d51f748fe SHA256 988da632a1b272360ba679091dc9b7764e8033cd4b765ae7fa36b6e17589c9c4
 EBUILD transmission-2.31.ebuild 3614 RMD160 6aea3b61e03e52aa67dc93a3fad133e9b4804aa1 SHA1 1efec7a48458a81996572e4e18eb9c336a37b66f SHA256 46928432ead81af791d9f5f258d34ec8cfbc767f91dd7b6e458713dfa765fd2f
-MISC ChangeLog 26331 RMD160 39c113180a63312c73d8fcf2ec65c00754b9c9a6 SHA1 59e578e882fd5e4ca0e75529b33f788a26c8a429 SHA256 741bac81f7ea0b28bc7bf59d6624ef6080358775205329a4294af83acebcabf5
+EBUILD transmission-2.33.ebuild 4356 RMD160 f04825ed475243c6a5673ce8e0055665f5c083d3 SHA1 a02e5d5c44f08bbf4a31893a8f5b08516ea061b9 SHA256 30e201d4880d55e6562ed348b5a2a240b0387248a83ee4ee0ad90e62eac5909e
+MISC ChangeLog 26667 RMD160 4e50934f2ca8cbee417ac4a4c1a69f650cffa40a SHA1 5c5f132ae7527a9e314b7d6c7333aca47173340f SHA256 24979bb9200e1a536cd7dd48dd2a4c029974a2aba906e91afbb50dc751057482
 MISC metadata.xml 444 RMD160 eb5aae9bdea645819e40b675f8372ded120d5783 SHA1 4b0f30908cea35a0fc8aca9cbe29599a0f833ab4 SHA256 ae66598063f3fa803005a3daf431d4dc4171e6988c38c128e6565910855dfaa9
diff --git a/net-p2p/transmission/files/transmission-2.33-0001-configure.ac.patch b/net-p2p/transmission/files/transmission-2.33-0001-configure.ac.patch
new file mode 100644 (file)
index 0000000..75e6594
--- /dev/null
@@ -0,0 +1,47 @@
+From fc34254a20735efaeb903365e0960d4a009463b3 Mon Sep 17 00:00:00 2001
+From: Peter Volkov <pva@gentoo.org>
+Date: Thu, 16 Jun 2011 12:46:48 +0400
+Subject: [PATCH 1/3] configure.ac: Drop redudant code/indentation.
+
+---
+ configure.ac |   16 ++++------------
+ 1 files changed, 4 insertions(+), 12 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 7dcbcf0..421946f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -214,26 +214,18 @@ AC_CHECK_LIB([rt],
+ 
+ AC_MSG_CHECKING([µTP])
+ build_utp="no"
+-if test "x$CXX" = "x" ; then
+-    have_utp="no"
+-else
+-    have_utp="yes"
+-fi
+ AC_ARG_ENABLE([utp],
+               AS_HELP_STRING([--enable-utp],[build µTP support]),
+               [want_utp=${enableval}],
+-              [want_utp=${have_utp}])
++              [want_utp="yes"])
+ if test "x$want_utp" = "xyes" ; then
+-    if test "x$have_utp" = "xyes"; then 
++    if test "x$CXX" != "x" ; then
+         LIBUTP_CFLAGS="-I\$(top_srcdir)/third-party/"
+-        LIBUTP_LIBS="\$(top_builddir)/third-party/libutp/libutp.a"
+-      if test "x$libutp_extra_libs" != "x" ; then
+-         LIBUTP_LIBS="$LIBUTP_LIBS $libutp_extra_libs"
+-      fi
++        LIBUTP_LIBS="\$(top_builddir)/third-party/libutp/libutp.a $libutp_extra_libs"
+         AC_DEFINE([WITH_UTP],[1])
+         build_utp="yes"
+     else 
+-      AC_MSG_ERROR("Unable to build uTP support -- C++ compiler not found") 
++        AC_MSG_ERROR("Unable to build uTP support -- C++ compiler not found; consider --disable-utp") 
+     fi 
+ fi 
+ AC_SUBST(LIBUTP_CFLAGS)
+-- 
+1.7.3.4
+
diff --git a/net-p2p/transmission/files/transmission-2.33-0002-config.in-4-qt.pro.patch b/net-p2p/transmission/files/transmission-2.33-0002-config.in-4-qt.pro.patch
new file mode 100644 (file)
index 0000000..1060795
--- /dev/null
@@ -0,0 +1,72 @@
+From 9b55e6ce1a98b4c2f32349982d4172d0971601c6 Mon Sep 17 00:00:00 2001
+From: Peter Volkov <pva@gentoo.org>
+Date: Thu, 16 Jun 2011 12:48:11 +0400
+Subject: [PATCH 2/3] Add qt/config to make qmake aware about ./configure results. This simplifies use of system third-party tools. Fixes build issue caused by ordering of make/qmake run: bugs.gentoo.org/368523.
+
+---
+ configure.ac |    5 ++++-
+ qt/config.in |    1 +
+ qt/qtr.pro   |    6 +++---
+ 3 files changed, 8 insertions(+), 4 deletions(-)
+ create mode 100644 qt/config.in
+
+diff --git a/configure.ac b/configure.ac
+index 421946f..bf0622b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -222,6 +222,7 @@ if test "x$want_utp" = "xyes" ; then
+     if test "x$CXX" != "x" ; then
+         LIBUTP_CFLAGS="-I\$(top_srcdir)/third-party/"
+         LIBUTP_LIBS="\$(top_builddir)/third-party/libutp/libutp.a $libutp_extra_libs"
++        LIBUTP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/libutp/libutp.a $libutp_extra_libs"
+         AC_DEFINE([WITH_UTP],[1])
+         build_utp="yes"
+     else 
+@@ -230,6 +231,7 @@ if test "x$want_utp" = "xyes" ; then
+ fi 
+ AC_SUBST(LIBUTP_CFLAGS)
+ AC_SUBST(LIBUTP_LIBS)
++AC_SUBST(LIBUTP_LIBS_QT)
+ AM_CONDITIONAL([BUILD_UTP],[test "x$build_utp" = "xyes"])
+ AC_MSG_RESULT([$build_utp])
+ 
+@@ -484,7 +486,8 @@ AC_CONFIG_FILES([Makefile
+                  web/javascript/Makefile
+                  web/javascript/jquery/Makefile
+                  web/stylesheets/Makefile
+-                 po/Makefile.in])
++                 po/Makefile.in
++               qt/config])
+ 
+ AC_OUTPUT
+ 
+diff --git a/qt/config.in b/qt/config.in
+new file mode 100644
+index 0000000..3340d1a
+--- /dev/null
++++ b/qt/config.in
+@@ -0,0 +1 @@
++LIBUTP_LIBS = @LIBUTP_LIBS_QT@
+diff --git a/qt/qtr.pro b/qt/qtr.pro
+index ce138a2..4e28e98 100644
+--- a/qt/qtr.pro
++++ b/qt/qtr.pro
+@@ -16,12 +16,12 @@ QT += network
+ PKGCONFIG = fontconfig libcurl openssl libevent
+ 
+ TRANSMISSION_TOP = ..
++include(config)
++
+ INCLUDEPATH = $${EVENT_TOP}/include $${INCLUDEPATH}
+ INCLUDEPATH += $${TRANSMISSION_TOP}
+ LIBS += $${TRANSMISSION_TOP}/libtransmission/libtransmission.a
+-exists( $${TRANSMISSION_TOP}/third-party/libutp/libutp.a ) { 
+-    LIBS += $${TRANSMISSION_TOP}/third-party/libutp/libutp.a
+-}
++LIBS += $${LIBUTP_LIBS}
+ LIBS += $${TRANSMISSION_TOP}/third-party/dht/libdht.a
+ LIBS += $${TRANSMISSION_TOP}/third-party/miniupnp/libminiupnp.a
+ LIBS += $${TRANSMISSION_TOP}/third-party/libnatpmp/libnatpmp.a
+-- 
+1.7.3.4
+
diff --git a/net-p2p/transmission/files/transmission-2.33-0003-system-miniupnpc.patch b/net-p2p/transmission/files/transmission-2.33-0003-system-miniupnpc.patch
new file mode 100644 (file)
index 0000000..9a8965f
--- /dev/null
@@ -0,0 +1,290 @@
+From 3cb229fd65588cd3c68bb05e4f49483a6a540ffc Mon Sep 17 00:00:00 2001
+From: Peter Volkov <pva@gentoo.org>
+Date: Thu, 16 Jun 2011 12:58:04 +0400
+Subject: [PATCH 3/3] Allow usage of system miniupnp. Rename miniupnp -> miniupnpc since upstream suggests miniupnpc name for headers.
+
+---
+ Transmission.xcodeproj/project.pbxproj |   50 ++++++++++++++++----------------
+ cli/Makefile.am                        |    2 +-
+ configure.ac                           |   27 ++++++++++++++++-
+ daemon/Makefile.am                     |    2 +-
+ gtk/Makefile.am                        |    2 +-
+ libtransmission/Makefile.am            |    3 +-
+ libtransmission/upnp.c                 |    4 +-
+ qt/config.in                           |    2 +
+ qt/qtr.pro                             |    2 +-
+ third-party/Makefile.am                |    5 ++-
+ utils/Makefile.am                      |    2 +-
+ 11 files changed, 66 insertions(+), 35 deletions(-)
+
+diff --git a/Transmission.xcodeproj/project.pbxproj b/Transmission.xcodeproj/project.pbxproj
+index 29a994b..f4e6be1 100644
+--- a/Transmission.xcodeproj/project.pbxproj
++++ b/Transmission.xcodeproj/project.pbxproj
+@@ -623,8 +623,8 @@
+               A223AA830D220CEB00840069 /* nl */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = nl; path = macosx/nl.lproj/PrefsWindow.xib; sourceTree = "<group>"; };
+               A2265F3F0B5EF5F40093DDA5 /* FileNameCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = FileNameCell.h; path = macosx/FileNameCell.h; sourceTree = "<group>"; };
+               A2265F400B5EF5F40093DDA5 /* FileNameCell.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = FileNameCell.m; path = macosx/FileNameCell.m; sourceTree = "<group>"; };
+-              A22B00AE116A9E90003315FC /* connecthostport.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = connecthostport.c; path = "third-party/miniupnp/connecthostport.c"; sourceTree = "<group>"; };
+-              A22B00AF116A9E90003315FC /* connecthostport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = connecthostport.h; path = "third-party/miniupnp/connecthostport.h"; sourceTree = "<group>"; };
++              A22B00AE116A9E90003315FC /* connecthostport.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = connecthostport.c; path = "third-party/miniupnpc/connecthostport.c"; sourceTree = "<group>"; };
++              A22B00AF116A9E90003315FC /* connecthostport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = connecthostport.h; path = "third-party/miniupnpc/connecthostport.h"; sourceTree = "<group>"; };
+               A22CF7AC0FA3505F0009BD3E /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = macosx/it.lproj/GroupRules.xib; sourceTree = "<group>"; };
+               A22CF7B90FA352740009BD3E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = macosx/fr.lproj/GroupRules.xib; sourceTree = "<group>"; };
+               A22CF7C90FA5D3F90009BD3E /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = macosx/es.lproj/GroupRules.xib; sourceTree = "<group>"; };
+@@ -668,7 +668,7 @@
+               A251A65D0F9E8FD5004F5973 /* pt */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = pt; path = macosx/pt.lproj/PrefsWindow.xib; sourceTree = "<group>"; };
+               A251A65E0F9E8FDA004F5973 /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = macosx/pt.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+               A251A6620F9E8FED004F5973 /* pt */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = pt; path = macosx/pt.lproj/Localizable.strings; sourceTree = "<group>"; };
+-              A25485390EB66CBB004539DA /* codelength.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = codelength.h; path = "third-party/miniupnp/codelength.h"; sourceTree = "<group>"; };
++              A25485390EB66CBB004539DA /* codelength.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = codelength.h; path = "third-party/miniupnpc/codelength.h"; sourceTree = "<group>"; };
+               A256588A0A9A695400E8A03B /* MessageWindowController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageWindowController.h; path = macosx/MessageWindowController.h; sourceTree = "<group>"; };
+               A256588B0A9A695400E8A03B /* MessageWindowController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = MessageWindowController.m; path = macosx/MessageWindowController.m; sourceTree = "<group>"; };
+               A257C17F0CAD3003004E121C /* PeerTableView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = PeerTableView.h; path = macosx/PeerTableView.h; sourceTree = "<group>"; };
+@@ -901,31 +901,31 @@
+               A2F7CF5D13035FFD0016FF10 /* URLSheetWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = URLSheetWindowController.h; path = macosx/URLSheetWindowController.h; sourceTree = "<group>"; };
+               A2F7CF5E13035FFD0016FF10 /* URLSheetWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = URLSheetWindowController.m; path = macosx/URLSheetWindowController.m; sourceTree = "<group>"; };
+               A2F8951E0A2D4BA500ED2127 /* Credits.rtf */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = Credits.rtf; path = macosx/Credits.rtf; sourceTree = "<group>"; };
+-              A2F8CD420F3D0F4A00DB356A /* miniupnpcstrings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = miniupnpcstrings.h; path = "third-party/miniupnp/miniupnpcstrings.h"; sourceTree = "<group>"; };
++              A2F8CD420F3D0F4A00DB356A /* miniupnpcstrings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = miniupnpcstrings.h; path = "third-party/miniupnpc/miniupnpcstrings.h"; sourceTree = "<group>"; };
+               A2FB057C0BFEB6800095564D /* DragOverlayView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = DragOverlayView.h; path = macosx/DragOverlayView.h; sourceTree = "<group>"; };
+               A2FB057D0BFEB6800095564D /* DragOverlayView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = DragOverlayView.m; path = macosx/DragOverlayView.m; sourceTree = "<group>"; };
+               A2FB06950BFF484A0095564D /* Globe.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Globe.png; path = macosx/Images/Globe.png; sourceTree = "<group>"; };
+               A2FB701A0D95CAEA0001F331 /* GroupsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GroupsController.h; path = macosx/GroupsController.h; sourceTree = "<group>"; };
+               A2FB701B0D95CAEA0001F331 /* GroupsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GroupsController.m; path = macosx/GroupsController.m; sourceTree = "<group>"; };
+               BE1183480CE160960002D0F3 /* libminiupnp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libminiupnp.a; sourceTree = BUILT_PRODUCTS_DIR; };
+-              BE11834D0CE160C50002D0F3 /* bsdqueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bsdqueue.h; path = "third-party/miniupnp/bsdqueue.h"; sourceTree = "<group>"; };
+-              BE11834E0CE160C50002D0F3 /* declspec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = declspec.h; path = "third-party/miniupnp/declspec.h"; sourceTree = "<group>"; };
+-              BE11834F0CE160C50002D0F3 /* igd_desc_parse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = igd_desc_parse.h; path = "third-party/miniupnp/igd_desc_parse.h"; sourceTree = "<group>"; };
+-              BE1183500CE160C50002D0F3 /* minixml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minixml.h; path = "third-party/miniupnp/minixml.h"; sourceTree = "<group>"; };
+-              BE1183510CE160C50002D0F3 /* miniwget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = miniwget.h; path = "third-party/miniupnp/miniwget.h"; sourceTree = "<group>"; };
+-              BE1183520CE160C50002D0F3 /* minisoap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minisoap.h; path = "third-party/miniupnp/minisoap.h"; sourceTree = "<group>"; };
+-              BE1183530CE160C50002D0F3 /* upnpreplyparse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = upnpreplyparse.h; path = "third-party/miniupnp/upnpreplyparse.h"; sourceTree = "<group>"; };
+-              BE1183540CE160C50002D0F3 /* upnpcommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = upnpcommands.h; path = "third-party/miniupnp/upnpcommands.h"; sourceTree = "<group>"; };
+-              BE1183550CE160C50002D0F3 /* miniupnpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = miniupnpc.h; path = "third-party/miniupnp/miniupnpc.h"; sourceTree = "<group>"; };
+-              BE1183560CE160C50002D0F3 /* minissdpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minissdpc.h; path = "third-party/miniupnp/minissdpc.h"; sourceTree = "<group>"; };
+-              BE1183610CE160D50002D0F3 /* igd_desc_parse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = igd_desc_parse.c; path = "third-party/miniupnp/igd_desc_parse.c"; sourceTree = "<group>"; };
+-              BE1183620CE160D50002D0F3 /* minixml.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = minixml.c; path = "third-party/miniupnp/minixml.c"; sourceTree = "<group>"; };
+-              BE1183630CE160D50002D0F3 /* miniwget.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = miniwget.c; path = "third-party/miniupnp/miniwget.c"; sourceTree = "<group>"; };
+-              BE1183640CE160D50002D0F3 /* minissdpc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = minissdpc.c; path = "third-party/miniupnp/minissdpc.c"; sourceTree = "<group>"; };
+-              BE1183650CE160D50002D0F3 /* minisoap.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = minisoap.c; path = "third-party/miniupnp/minisoap.c"; sourceTree = "<group>"; };
+-              BE1183660CE160D50002D0F3 /* upnpreplyparse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = upnpreplyparse.c; path = "third-party/miniupnp/upnpreplyparse.c"; sourceTree = "<group>"; };
+-              BE1183670CE160D50002D0F3 /* upnpcommands.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = upnpcommands.c; path = "third-party/miniupnp/upnpcommands.c"; sourceTree = "<group>"; };
+-              BE1183680CE160D50002D0F3 /* miniupnpc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = miniupnpc.c; path = "third-party/miniupnp/miniupnpc.c"; sourceTree = "<group>"; };
++              BE11834D0CE160C50002D0F3 /* bsdqueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bsdqueue.h; path = "third-party/miniupnpc/bsdqueue.h"; sourceTree = "<group>"; };
++              BE11834E0CE160C50002D0F3 /* declspec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = declspec.h; path = "third-party/miniupnpc/declspec.h"; sourceTree = "<group>"; };
++              BE11834F0CE160C50002D0F3 /* igd_desc_parse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = igd_desc_parse.h; path = "third-party/miniupnpc/igd_desc_parse.h"; sourceTree = "<group>"; };
++              BE1183500CE160C50002D0F3 /* minixml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minixml.h; path = "third-party/miniupnpc/minixml.h"; sourceTree = "<group>"; };
++              BE1183510CE160C50002D0F3 /* miniwget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = miniwget.h; path = "third-party/miniupnpc/miniwget.h"; sourceTree = "<group>"; };
++              BE1183520CE160C50002D0F3 /* minisoap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minisoap.h; path = "third-party/miniupnpc/minisoap.h"; sourceTree = "<group>"; };
++              BE1183530CE160C50002D0F3 /* upnpreplyparse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = upnpreplyparse.h; path = "third-party/miniupnpc/upnpreplyparse.h"; sourceTree = "<group>"; };
++              BE1183540CE160C50002D0F3 /* upnpcommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = upnpcommands.h; path = "third-party/miniupnpc/upnpcommands.h"; sourceTree = "<group>"; };
++              BE1183550CE160C50002D0F3 /* miniupnpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = miniupnpc.h; path = "third-party/miniupnpc/miniupnpc.h"; sourceTree = "<group>"; };
++              BE1183560CE160C50002D0F3 /* minissdpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minissdpc.h; path = "third-party/miniupnpc/minissdpc.h"; sourceTree = "<group>"; };
++              BE1183610CE160D50002D0F3 /* igd_desc_parse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = igd_desc_parse.c; path = "third-party/miniupnpc/igd_desc_parse.c"; sourceTree = "<group>"; };
++              BE1183620CE160D50002D0F3 /* minixml.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = minixml.c; path = "third-party/miniupnpc/minixml.c"; sourceTree = "<group>"; };
++              BE1183630CE160D50002D0F3 /* miniwget.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = miniwget.c; path = "third-party/miniupnpc/miniwget.c"; sourceTree = "<group>"; };
++              BE1183640CE160D50002D0F3 /* minissdpc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = minissdpc.c; path = "third-party/miniupnpc/minissdpc.c"; sourceTree = "<group>"; };
++              BE1183650CE160D50002D0F3 /* minisoap.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = minisoap.c; path = "third-party/miniupnpc/minisoap.c"; sourceTree = "<group>"; };
++              BE1183660CE160D50002D0F3 /* upnpreplyparse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = upnpreplyparse.c; path = "third-party/miniupnpc/upnpreplyparse.c"; sourceTree = "<group>"; };
++              BE1183670CE160D50002D0F3 /* upnpcommands.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = upnpcommands.c; path = "third-party/miniupnpc/upnpcommands.c"; sourceTree = "<group>"; };
++              BE1183680CE160D50002D0F3 /* miniupnpc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = miniupnpc.c; path = "third-party/miniupnpc/miniupnpc.c"; sourceTree = "<group>"; };
+               BE75C3490C729E9500DBEFE0 /* libevent.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libevent.a; sourceTree = BUILT_PRODUCTS_DIR; };
+               BEFC1C000C07750000B0BB3C /* transmission-daemon */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "transmission-daemon"; sourceTree = BUILT_PRODUCTS_DIR; };
+               BEFC1C0E0C07756200B0BB3C /* daemon.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = daemon.c; path = daemon/daemon.c; sourceTree = "<group>"; };
+@@ -2140,14 +2140,14 @@
+                       files = (
+                       );
+                       inputPaths = (
+-                              "$(SRCROOT)/third-party/miniupnp/miniupnpcstrings.h.in",
++                              "$(SRCROOT)/third-party/miniupnpc/miniupnpcstrings.h.in",
+                       );
+                       outputPaths = (
+-                              "$(SRCROOT)/third-party/miniupnp/miniupnpcstrings.h",
++                              "$(SRCROOT)/third-party/miniupnpc/miniupnpcstrings.h",
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+-                      shellScript = "sh third-party/miniupnp/updateminiupnpcstrings.sh \"$SCRIPT_INPUT_FILE_0\" \"$SCRIPT_OUTPUT_FILE_0\"";
++                      shellScript = "sh third-party/miniupnpc/updateminiupnpcstrings.sh \"$SCRIPT_INPUT_FILE_0\" \"$SCRIPT_OUTPUT_FILE_0\"";
+               };
+               BE75C3510C729EE100DBEFE0 /* ShellScript */ = {
+                       isa = PBXShellScriptBuildPhase;
+diff --git a/cli/Makefile.am b/cli/Makefile.am
+index 9d618f2..8af71e6 100644
+--- a/cli/Makefile.am
++++ b/cli/Makefile.am
+@@ -18,8 +18,8 @@ transmission_cli_SOURCES = cli.c
+ 
+ transmission_cli_LDADD = \
+     $(top_builddir)/libtransmission/libtransmission.a \
++    @LIBUPNP_LIBS@ \
+     $(top_builddir)/third-party/libnatpmp/libnatpmp.a \
+-    $(top_builddir)/third-party/miniupnp/libminiupnp.a \
+     @DHT_LIBS@ \
+     @LIBUTP_LIBS@ \
+     @LIBEVENT_LIBS@ \
+diff --git a/configure.ac b/configure.ac
+index bf0622b..eef3d74 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -238,6 +238,31 @@ AC_MSG_RESULT([$build_utp])
+ 
+ dnl ----------------------------------------------------------------------------
+ dnl
++dnl  Allow usage of system miniupnp library
++LIBUPNP_CFLAGS="-I\$(top_srcdir)/third-party/"
++LIBUPNP_LIBS="\$(top_builddir)/third-party/miniupnp/libminiupnp.a"
++LIBUPNP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/miniupnp/libminiupnp.a"
++build_bundled_miniupnp="yes"
++AC_ARG_ENABLE([external-miniupnp],
++              AS_HELP_STRING([--enable-external-miniupnp],[Use system external-miniupnp]),
++              [want_external_miniupnp=${enableval}],
++              [want_external_miniupnp=no])
++if test "x$want_external_utp" != "xno" ; then
++    AC_CHECK_LIB([miniupnpc],
++                 [upnpDiscover],
++                 [LIBUPNP_CFLAGS=""
++                  LIBUPNP_LIBS="-lminiupnpc"
++                  LIBUPNP_LIBS_QT="-lminiupnpc"
++                build_bundled_miniupnp="no"],
++                 AC_MSG_ERROR("Requested system libminiupnp but it is not found")
++                )
++fi
++AM_CONDITIONAL([BUILD_MINIUPNP],[test "x$build_bundled_miniupnp" = "xyes"])
++AC_SUBST(LIBUPNP_CFLAGS)
++AC_SUBST(LIBUPNP_LIBS)
++AC_SUBST(LIBUPNP_LIBS_QT)
++dnl ----------------------------------------------------------------------------
++dnl
+ dnl  detection for the GTK+ client
+ 
+ PKG_CHECK_MODULES(GTK,
+@@ -471,7 +496,7 @@ AC_CONFIG_FILES([Makefile
+                  libtransmission/Makefile
+                  utils/Makefile
+                  third-party/Makefile
+-                 third-party/miniupnp/Makefile
++                 third-party/miniupnpc/Makefile
+                  third-party/libnatpmp/Makefile
+                  third-party/libutp/Makefile
+                  third-party/dht/Makefile
+diff --git a/daemon/Makefile.am b/daemon/Makefile.am
+index 9e2a10a..7a5e085 100644
+--- a/daemon/Makefile.am
++++ b/daemon/Makefile.am
+@@ -20,7 +20,7 @@ bin_PROGRAMS = \
+ 
+ LDADD = \
+     $(top_builddir)/libtransmission/libtransmission.a \
+-    $(top_builddir)/third-party/miniupnp/libminiupnp.a \
++    @LIBUPNP_LIBS@ \
+     $(top_builddir)/third-party/libnatpmp/libnatpmp.a \
+     @DHT_LIBS@ \
+     @LIBUTP_LIBS@ \
+diff --git a/gtk/Makefile.am b/gtk/Makefile.am
+index 2d17272..b245aa7 100644
+--- a/gtk/Makefile.am
++++ b/gtk/Makefile.am
+@@ -92,7 +92,7 @@ dist_man_MANS = transmission-gtk.1
+ 
+ transmission_gtk_LDADD = \
+     $(top_builddir)/libtransmission/libtransmission.a \
+-    $(top_builddir)/third-party/miniupnp/libminiupnp.a \
++    @LIBUPNP_LIBS@ \
+     $(top_builddir)/third-party/libnatpmp/libnatpmp.a \
+     @LIBCANBERRA_LIBS@ \
+     @DHT_LIBS@ \
+diff --git a/libtransmission/Makefile.am b/libtransmission/Makefile.am
+index 0dd244a..a68349b 100644
+--- a/libtransmission/Makefile.am
++++ b/libtransmission/Makefile.am
+@@ -8,6 +8,7 @@ AM_CPPFLAGS = \
+ AM_CFLAGS = \
+     @DHT_CFLAGS@ \
+     @LIBUTP_CFLAGS@ \
++    @LIBUPNP_CFLAGS@ \
+     @LIBEVENT_CFLAGS@ \
+     @LIBCURL_CFLAGS@ \
+     @OPENSSL_CFLAGS@ \
+@@ -139,7 +140,7 @@ apps_ldflags = \
+ 
+ apps_ldadd = \
+     ./libtransmission.a  \
+-    $(top_builddir)/third-party/miniupnp/libminiupnp.a \
++    @LIBUPNP_LIBS@ \
+     $(top_builddir)/third-party/libnatpmp/libnatpmp.a \
+     @INTLLIBS@ \
+     @DHT_LIBS@ \
+diff --git a/libtransmission/upnp.c b/libtransmission/upnp.c
+index 2059864..8f43d2a 100644
+--- a/libtransmission/upnp.c
++++ b/libtransmission/upnp.c
+@@ -13,8 +13,8 @@
+ #include <assert.h>
+ #include <errno.h>
+ 
+-#include <miniupnp/miniupnpc.h>
+-#include <miniupnp/upnpcommands.h>
++#include <miniupnpc/miniupnpc.h>
++#include <miniupnpc/upnpcommands.h>
+ 
+ #include "transmission.h"
+ #include "port-forwarding.h"
+diff --git a/qt/config.in b/qt/config.in
+index 3340d1a..25851ea 100644
+--- a/qt/config.in
++++ b/qt/config.in
+@@ -1 +1,3 @@
+ LIBUTP_LIBS = @LIBUTP_LIBS_QT@
++MINIUPNP_LIBS = @LIBUPNP_LIBS_QT@
++
+diff --git a/qt/qtr.pro b/qt/qtr.pro
+index 4e28e98..8f6e659 100644
+--- a/qt/qtr.pro
++++ b/qt/qtr.pro
+@@ -23,7 +23,7 @@ INCLUDEPATH += $${TRANSMISSION_TOP}
+ LIBS += $${TRANSMISSION_TOP}/libtransmission/libtransmission.a
+ LIBS += $${LIBUTP_LIBS}
+ LIBS += $${TRANSMISSION_TOP}/third-party/dht/libdht.a
+-LIBS += $${TRANSMISSION_TOP}/third-party/miniupnp/libminiupnp.a
++LIBS += $${MINIUPNP_LIBS}
+ LIBS += $${TRANSMISSION_TOP}/third-party/libnatpmp/libnatpmp.a
+ unix: LIBS += -L$${EVENT_TOP}/lib -lz -lrt
+ win32:DEFINES += QT_DBUS
+diff --git a/third-party/Makefile.am b/third-party/Makefile.am
+index 39eb5ee..ea2acaa 100644
+--- a/third-party/Makefile.am
++++ b/third-party/Makefile.am
+@@ -1,11 +1,14 @@
+ if BUILD_UTP
+   UTP_DIR = libutp
+ endif
++if BUILD_MINIUPNP
++  MINIUPNP = miniupnpc
++endif
+ 
+ SUBDIRS = \
+   dht \
+   libnatpmp \
+-  miniupnp \
++  $(MINIUPNP_DIR) \
+   $(UTP_DIR)
+ 
+ EXTRA_DIST = \
+diff --git a/utils/Makefile.am b/utils/Makefile.am
+index 896cb2b..1f687ed 100644
+--- a/utils/Makefile.am
++++ b/utils/Makefile.am
+@@ -26,7 +26,7 @@ dist_man_MANS = \
+ 
+ transmission_create_LDADD = \
+     $(top_builddir)/libtransmission/libtransmission.a \
+-    $(top_builddir)/third-party/miniupnp/libminiupnp.a \
++    @LIBUPNP_LIBS@ \
+     $(top_builddir)/third-party/libnatpmp/libnatpmp.a \
+     @INTLLIBS@ \
+     @DHT_LIBS@ \
+-- 
+1.7.3.4
+
diff --git a/net-p2p/transmission/transmission-2.33.ebuild b/net-p2p/transmission/transmission-2.33.ebuild
new file mode 100644 (file)
index 0000000..4e730eb
--- /dev/null
@@ -0,0 +1,158 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/transmission-2.33.ebuild,v 1.1 2011/07/24 08:54:10 pva Exp $
+
+EAPI=4
+inherit eutils fdo-mime gnome2-utils qt4-r2 autotools
+
+MY_P="${P/_beta/b}"
+
+DESCRIPTION="A Fast, Easy and Free BitTorrent client"
+HOMEPAGE="http://www.transmissionbt.com/"
+SRC_URI="http://download.transmissionbt.com/${PN}/files/${MY_P}.tar.xz"
+
+LICENSE="MIT GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gtk kde libnotify libcanberra nls qt4 utp"
+
+# >=dev-libs/glib-2.28 is required for updated mime support. This makes gconf
+# unnecessary for handling magnet links
+RDEPEND="
+       sys-libs/zlib
+       >=dev-libs/libevent-2.0.10
+       >=dev-libs/openssl-0.9.4
+       || ( >=net-misc/curl-7.16.3[ssl]
+               >=net-misc/curl-7.16.3[gnutls] )
+       net-libs/miniupnpc
+       gtk? ( >=dev-libs/glib-2.28:2
+               >=x11-libs/gtk+-2.12:2
+               >=dev-libs/dbus-glib-0.70
+               libnotify? ( >=x11-libs/libnotify-0.4.3 )
+               libcanberra? ( >=media-libs/libcanberra-0.10 ) )
+       qt4? ( x11-libs/qt-gui:4[dbus] )"
+DEPEND="${RDEPEND}
+       >=sys-devel/libtool-2.2.6b
+       nls? ( sys-devel/gettext
+               >=dev-util/intltool-0.40 )
+       dev-util/pkgconfig
+       sys-apps/sed"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="gtk? ( nls )"
+
+pkg_setup() {
+       enewgroup transmission
+       enewuser transmission -1 -1 -1 transmission
+}
+
+src_prepare() {
+       # https://trac.transmissionbt.com/ticket/4323
+       epatch "${FILESDIR}/${P}-0001-configure.ac.patch"
+       epatch "${FILESDIR}/${P}-0002-config.in-4-qt.pro.patch"
+       epatch "${FILESDIR}/${P}-0003-system-miniupnpc.patch"
+
+       # Upstream is not interested in this: https://trac.transmissionbt.com/ticket/4324
+       sed -e 's|noinst\(_PROGRAMS = $(TESTS)\)|check\1|' -i libtransmission/Makefile.am || die
+
+       mv third-party/miniupnp{,c} || die
+       eautoreconf
+
+       sed -i -e 's:-ggdb3::g' configure || die
+       # Magnet link support
+       if use kde; then
+               cat > qt/transmission-magnet.protocol <<-EOF
+               [Protocol]
+               exec=transmission-qt '%u'
+               protocol=magnet
+               Icon=transmission
+               input=none
+               output=none
+               helper=true
+               listing=
+               reading=false
+               writing=false
+               makedir=false
+               deleting=false
+               EOF
+       fi
+}
+
+src_configure() {
+       # cli and daemon doesn't have external deps and are enabled by default
+       econf \
+               $(use_enable nls) \
+               $(use_enable gtk) \
+               $(use_enable utp) \
+               $(use gtk && use_enable libnotify) \
+               $(use gtk && use_enable libcanberra) \
+               --enable-external-miniupnp
+
+       use qt4 && cd qt && eqmake4 qtr.pro
+}
+
+src_compile() {
+       emake
+       use qt4 && cd qt && emake
+}
+
+src_install() {
+       emake DESTDIR="${D}" install
+
+       dodoc AUTHORS NEWS qt/README.txt
+       rm -f "${ED}"/usr/share/${PN}/web/LICENSE
+
+       newinitd "${FILESDIR}"/${PN}-daemon.initd.8 ${PN}-daemon
+       newconfd "${FILESDIR}"/${PN}-daemon.confd.3 ${PN}-daemon
+
+       keepdir /var/{transmission/{config,downloads},log/transmission}
+       fowners -R transmission:transmission /var/{transmission/{,config,downloads},log/transmission}
+
+       if use qt4; then
+               cd qt
+               emake INSTALL_ROOT="${D}/usr" install
+               insinto /usr/share/applications/
+               doins transmission-qt.desktop
+               mv icons/transmission{,-qt}.png
+               doicon icons/transmission-qt.png
+               if use kde; then
+                       insinto /usr/share/kde4/services/
+                       doins transmission-magnet.protocol
+               fi
+       fi
+}
+
+pkg_preinst() {
+       gnome2_icon_savelist
+}
+
+pkg_postinst() {
+       fdo-mime_desktop_database_update
+       gnome2_icon_cache_update
+
+       # Keep default permissions on default dirs
+       einfo "Seting owners of /var/{transmission/{,config,downloads},log/transmission}"
+       chown -R transmission:transmission /var/{transmission/{,config,downloads},log/transmission}
+
+       ewarn "If you use transmission-daemon, please, set 'rpc-username' and"
+       ewarn "'rpc-password' (in plain text, transmission-daemon will hash it on"
+       ewarn "start) in settings.json file located at /var/transmission/config or"
+       ewarn "any other appropriate config directory."
+       ewarn
+       ewarn "You must change download location after you change a user daemon"
+       ewarn "starts as, or it'll refuse to start, see bug #349867 for details."
+       if use utp; then
+               ewarn
+               ewarn "Since uTP is enabled ${PN} needs large kernel buffers for the UDP socket."
+               ewarn "Please, add into /etc/sysctl.conf following lines:"
+               ewarn " net.core.rmem_max = 4194304"
+               ewarn " net.core.wmem_max = 1048576"
+               ewarn "and run sysctl -p"
+       fi
+}
+
+pkg_postrm() {
+       fdo-mime_desktop_database_update
+       gnome2_icon_cache_update
+}