[kscd] drop needless build deps on libkcddb libkcompactdisc libtunepimp

Rex Dieter rdieter at fedoraproject.org
Sun Jul 15 03:00:51 UTC 2012


commit 34f870afdcc3ee31a2ecb6a34d40313fb929e991
Author: Rex Dieter <rdieter at fedoraproject.org>
Date:   Sat Jul 14 22:04:04 2012 -0500

    drop needless build deps on libkcddb libkcompactdisc libtunepimp

 ..._r260f116e1f5d497c92094abeab86d1da4b7f2f63.diff |   67 ++++++++++++++++++++
 kscd.spec                                          |   19 ++++--
 2 files changed, 79 insertions(+), 7 deletions(-)
---
diff --git a/changeset_r260f116e1f5d497c92094abeab86d1da4b7f2f63.diff b/changeset_r260f116e1f5d497c92094abeab86d1da4b7f2f63.diff
new file mode 100644
index 0000000..850c24e
--- /dev/null
+++ b/changeset_r260f116e1f5d497c92094abeab86d1da4b7f2f63.diff
@@ -0,0 +1,67 @@
+commit 260f116e1f5d497c92094abeab86d1da4b7f2f63
+Author: Michael Pyne <mpyne at kde.org>
+Date:   Sat Jul 14 19:27:42 2012 -0400
+
+    Remove references to non-required kde-mm libs.
+    
+    Bug 303447 claims that libkcddb and libkcompactdisc are both not
+    actually used by kscd, and should be removed from CMakeLists.txt.
+    
+    I've done what I can to prove the reporter wrong, including:
+    
+    - Code review (looking for usage of headers from classes exported by
+    libkcddb and libkcompactdisc)
+    - Building kscd without CMake references to either lib.
+    - Running ldd on the resulting executable to verify the report that the
+      libraries are not used by the binary.
+    - Actually *using* kscd (with an external CD player no less) after the
+      aforementioned changes. The track list even shows up so CDDB data is
+      being read from somewhere.
+    
+    I'm convinced now. kscd does not directly require either libkcompactdisc
+    (Solid appears to be used instead) or libkcddb (MusicBrainz3 is used).
+    It is possible that those two libs are indirectly used but kscd doesn't
+    care at this point.
+    
+    BUG:303447
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 76c8b64..8a2a8e5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -11,12 +11,6 @@ include_directories(${QT_INCLUDES} ${KDE4_INCLUDES})
+ find_package(Alsa)
+ alsa_configure_file(${CMAKE_CURRENT_BINARY_DIR}/config-alsa.h)
+ 
+-
+-# If these two fail, behavior falls back to pre-git-migration
+-# FIXME: After the git migration, we need the REQUIRED param
+-find_package(Libkcddb)
+-find_package(Libkcompactdisc)
+-
+ find_package(MusicBrainz3 REQUIRED)
+ 
+ include_directories(
+@@ -121,8 +115,7 @@ target_link_libraries(kscd
+     ${KDE4_SOLID_LIBS}
+     ${KDE4_PHONON_LIBS}
+     ${MUSICBRAINZ3_LIBRARIES}
+-    kcddb
+-    kcompactdisc)
++    )
+ 
+ ########### install files ###############
+ 
+diff --git a/kscd.kcfg b/kscd.kcfg
+index facec0b..ad01572 100644
+--- a/kscd.kcfg
++++ b/kscd.kcfg
+@@ -3,8 +3,6 @@
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
+       http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
+-    <!--<include>KGlobalSettings</include>-->
+-    <!--<include>kcompactdisc.h</include>-->
+ 	<include>KStandardDirs</include>
+     <kcfgfile name="kscdrc"/>
+     <group name="General">
diff --git a/kscd.spec b/kscd.spec
index b5f3f9e..21be1bc 100644
--- a/kscd.spec
+++ b/kscd.spec
@@ -2,7 +2,7 @@
 Name:    kscd 
 Summary: CD Player 
 Version: 4.8.97
-Release: 1%{?dist}
+Release: 2%{?dist}
 
 License: GPLv2+
 URL:      http://www.kde.org/applications/multimedia/kscd/
@@ -15,14 +15,14 @@ URL:      http://www.kde.org/applications/multimedia/kscd/
 %endif
 Source0: http://download.kde.org/%{stable}/%{version}/src/%{name}-%{version}.tar.xz
 
+## upstream patches
+# https://projects.kde.org/projects/kde/kdemultimedia/kscd/repository/revisions/260f116e1f5d497c92094abeab86d1da4b7f2f63
+Patch100: changeset_r260f116e1f5d497c92094abeab86d1da4b7f2f63.diff 
+
 BuildRequires: desktop-file-utils
 BuildRequires: kdelibs4-devel >= %{version}
-BuildRequires: libkcddb-devel >= %{version}
-BuildRequires: libkcompactdisc-devel >= %{version}
-BuildRequires: libtunepimp-devel
 BuildRequires: pkgconfig(libmusicbrainz3)
 
-
 Requires: kde-runtime%{?_kde4_version: >= %{_kde4_version}}
 Requires: audiocd-kio >= %{version}
 
@@ -37,6 +37,8 @@ KsCD is a small, fast, CDDB enabled audio CD player.
 %prep
 %setup -q
 
+%patch100 -p1 -b .reduced_deps
+
 
 %build
 mkdir -p %{_target_platform}
@@ -63,8 +65,8 @@ gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
 
 %postun
 if [ $1 -eq 0 ] ; then
-  touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
-  gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
+touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
+gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
 fi
 
 %files 
@@ -81,6 +83,9 @@ fi
 
 
 %changelog
+* Sat Jul 14 2012 Rex Dieter <rdieter at fedoraproject.org> - 4.8.97-2
+- drop needless build deps on libkcddb libkcompactdisc libtunepimp
+
 * Wed Jul 11 2012 Rex Dieter <rdieter at fedoraproject.org> - 4.8.97-1
 - 4.8.97
 


More information about the scm-commits mailing list