KDE 4.2.0

This commit is contained in:
Lukas Tinkl 2009-01-26 10:39:58 +00:00
parent f83c982774
commit b4e064e9e9
15 changed files with 520 additions and 442 deletions

View File

@ -1 +0,0 @@
kdelibs-4.1.4.tar.bz2

View File

@ -10,9 +10,16 @@ if ( -f /etc/sysconfig/prelink ) then
if ( "$PRELINKING" == "yes" ) then
if ( ! $?KDE_IS_PRELINKED ) setenv KDE_IS_PRELINKED 1
endif
unset PRELINKING
endif
if ( ! $?QT_PLUGIN_PATH ) then
set KDE4_LIBDIR = `/bin/rpm --eval %\{\?_kde4_libdir\}%\{\!\?_kde4_libdir:%\{_libdir\}\}`
setenv QT_PLUGIN_PATH ${KDE4_LIBDIR}/kde4/plugins
# handled in startkde, but this sets for other DE's too
set KDE4_QTPLUGINS=`kde4-config --path qtplugins`
if ( $?QT_PLUGIN_PATH ) then
if ( "$QT_PLUGIN_PATH" !~ *"${KDE4_QTPLUGINS}"* ) then
setenv QT_PLUGIN_PATH ${QT_PLUGIN_PATH}:${KDE4_QTPLUGINS}
endif
else
setenv QT_PLUGIN_PATH ${KDE4_QTPLUGINS}
endif
unset KDE4_QTPLUGINS

20
kde4.sh
View File

@ -5,13 +5,19 @@
[ -z "$KDEDIRS" ] && KDEDIRS="/usr" && export KDEDIRS
## When/if using prelinking, avoids (some) use of kdeinit
if [ -f /etc/sysconfig/prelink ]; then
if [ `grep '^PRELINKING=yes' /etc/sysconfig/prelink` ] ; then
[ -z "$KDE_IS_PRELINKED" ] && KDE_IS_PRELINKED=1 && export KDE_IS_PRELINKED
fi
if [ -z "$KDE_IS_PRELINKED" ] ; then
grep -qs '^PRELINKING=yes' /etc/sysconfig/prelink && \
KDE_IS_PRELINKED=1 && export KDE_IS_PRELINKED
fi
if [ -z "$QT_PLUGIN_PATH" ]; then
KDE4_LIBDIR=`/bin/rpm --eval '%{?_kde4_libdir}%{!?_kde4_libdir:%{_libdir}}' 2>/dev/null`
QT_PLUGIN_PATH=${KDE4_LIBDIR}/kde4/plugins && export QT_PLUGIN_PATH
# handled in startkde, but this sets for other DE's too
if [ -n "$QT_PLUGIN_PATH" ] ; then
if ! echo "$QT_PLUGIN_PATH" | grep -qw `kde4-config --path qtplugins` ; then
QT_PLUGIN_PATH="$QT_PLUGIN_PATH:`kde4-config --path qtplugins`"
fi
else
QT_PLUGIN_PATH="`kde4-config --path qtplugins`"
fi
export QT_PLUGIN_PATH

View File

@ -1,39 +0,0 @@
diff -up kdelibs-3.95.0/kutils/kdeglobals.kcfg.kde149705 kdelibs-3.95.0/kutils/kdeglobals.kcfg
--- kdelibs-3.95.0/kutils/kdeglobals.kcfg.kde149705 2007-10-03 05:50:18.000000000 -0500
+++ kdelibs-3.95.0/kutils/kdeglobals.kcfg 2007-11-04 15:08:14.000000000 -0600
@@ -24,6 +24,10 @@
<whatsthis>The name of the widget style, for example &quot;keramik&quot; or &quot;plastik&quot;. Without quotes.</whatsthis>
<default>keramik</default>
</entry>
+ <entry key="widgetStyle4" type="String" >
+ <label>Widget style to use for KDE 4</label>
+ <whatsthis>The name of the widget style, for example &quot;oxygen&quot;. Without quotes. Defaults to widgetStyle.</whatsthis>
+ </entry>
<entry key="windowBackground" type="String" />
<entry key="windowForeground" type="String" />
<entry key="UseSystemBell" type="Bool" >
diff -up kdelibs-3.95.0/kdeui/kernel/kglobalsettings.cpp.kde149705 kdelibs-3.95.0/kdeui/kernel/kglobalsettings.cpp
--- kdelibs-3.95.0/kdeui/kernel/kglobalsettings.cpp.kde149705 2007-10-26 04:05:41.000000000 -0500
+++ kdelibs-3.95.0/kdeui/kernel/kglobalsettings.cpp 2007-11-04 15:09:11.000000000 -0600
@@ -835,7 +835,8 @@ void KGlobalSettings::Private::applyGUIS
QString defaultStyle; // Mac, Windows: no change for style by default
#endif
KConfigGroup pConfig (KGlobal::config(), "General");
- QString styleStr = pConfig.readEntry("widgetStyle", defaultStyle);
+ QString styleStr = pConfig.readEntry("widgetStyle4", pConfig.readEntry("widgetStyle", defaultStyle));
+
if (kde_overrideStyle.isEmpty()) {
if (styleStr.isEmpty())
diff -up kdelibs-3.95.0/kdeui/icons/kicontheme.cpp.kde149705 kdelibs-3.95.0/kdeui/icons/kicontheme.cpp
--- kdelibs-3.95.0/kdeui/icons/kicontheme.cpp.kde149705 2007-10-25 04:34:48.000000000 -0500
+++ kdelibs-3.95.0/kdeui/icons/kicontheme.cpp 2007-11-04 15:08:14.000000000 -0600
@@ -515,7 +515,7 @@ QString KIconTheme::current()
return *_theme;
KConfigGroup cg(KGlobal::config(), "Icons");
- *_theme = cg.readEntry("Theme", defaultThemeName());
+ *_theme = cg.readEntry("Theme4", cg.readEntry("Theme", defaultThemeName()));
if ( *_theme == QLatin1String("hicolor") ) *_theme = defaultThemeName();
/* if (_theme->isEmpty())
{

View File

@ -1,281 +0,0 @@
diff -up kdelibs-4.1.0/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdelibs-4.1.0/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.1.0/cmake/modules/FindKDE4Internal.cmake.parallel_devel 2008-07-23 10:26:30.000000000 +0200
+++ kdelibs-4.1.0/cmake/modules/FindKDE4Internal.cmake 2008-07-23 18:11:28.000000000 +0200
@@ -15,10 +15,10 @@
# The following variables are defined for the various tools required to
# compile KDE software:
#
-# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable
+# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler4 executable
# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable, deprecated, use AUTOMOC4_EXECUTABLE instead
# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable
-# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable
+# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets4 executable
#
# The following variables point to the location of the KDE libraries,
# but shouldn't be used directly:
@@ -124,7 +124,7 @@
# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files.
#
# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets)
-# Use this to add widget description files for the makekdewidgets code generator
+# Use this to add widget description files for the makekdewidgets4 code generator
# for Qt Designer plugins.
#
# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN)
@@ -307,23 +307,23 @@ if (_kdeBootStrapping)
if (WIN32)
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} )
# CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 )
- set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets )
+ set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets4 )
else (WIN32)
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib )
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell )
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4.shell )
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell )
- set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell )
+ set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets4.shell )
endif (WIN32)
set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR})
# when building kdelibs, make the kcfg rules depend on the binaries...
- set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler)
- set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets)
+ set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler4)
+ set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets4)
set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4)
set(KDE4_INSTALLED_VERSION_OK TRUE)
@@ -372,69 +372,69 @@ else (_kdeBootStrapping)
include(${kde_cmake_module_dir}/KDELibsDependencies.cmake)
if (UNIX)
- find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KDEFAKES_LIBRARY NAMES kdefakes PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KDEFAKES_LIBS ${kdefakes_LIB_DEPENDS} ${KDE4_KDEFAKES_LIBRARY} )
endif (UNIX)
- find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KDECORE_LIBRARY NAMES kdecore PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KDECORE_LIBS ${kdecore_LIB_DEPENDS} ${KDE4_KDECORE_LIBRARY} )
- find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KDEUI_LIBRARY NAMES kdeui PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KDEUI_LIBS ${kdeui_LIB_DEPENDS} ${KDE4_KDEUI_LIBRARY} )
- find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KIO_LIBRARY NAMES kio PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KIO_LIBS ${kio_LIB_DEPENDS} ${KDE4_KIO_LIBRARY} )
- find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KPARTS_LIBRARY NAMES kparts PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KPARTS_LIBS ${kparts_LIB_DEPENDS} ${KDE4_KPARTS_LIBRARY} )
- find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KUTILS_LIBRARY NAMES kutils PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KUTILS_LIBS ${kutils_LIB_DEPENDS} ${KDE4_KUTILS_LIBRARY} )
- find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KDE3SUPPORT_LIBRARY NAMES kde3support PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KDE3SUPPORT_LIBS ${kde3support_LIB_DEPENDS} ${KDE4_KDE3SUPPORT_LIBRARY} )
- find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KFILE_LIBRARY NAMES kfile PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KFILE_LIBS ${kfile_LIB_DEPENDS} ${KDE4_KFILE_LIBRARY} )
- find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KHTML_LIBRARY NAMES khtml PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KHTML_LIBS ${khtml_LIB_DEPENDS} ${KDE4_KHTML_LIBRARY} )
- find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KJS_LIBRARY NAMES kjs PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KJS_LIBS ${kjs_LIB_DEPENDS} ${KDE4_KJS_LIBRARY} )
- find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KJSAPI_LIBRARY NAMES kjsapi PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KJSAPI_LIBS ${kjsapi_LIB_DEPENDS} ${KDE4_KJSAPI_LIBRARY} )
- find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KNEWSTUFF2_LIBRARY NAMES knewstuff2 PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KNEWSTUFF2_LIBS ${knewstuff2_LIB_DEPENDS} ${KDE4_KNEWSTUFF2_LIBRARY} )
if (UNIX)
- find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KPTY_LIBRARY NAMES kpty PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KPTY_LIBS ${kpty_LIB_DEPENDS} ${KDE4_KPTY_LIBRARY} )
- find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KDESU_LIBRARY NAMES kdesu PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KDESU_LIBS ${kdesu_LIB_DEPENDS} ${KDE4_KDESU_LIBRARY} )
endif (UNIX)
- find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KDNSSD_LIBRARY NAMES kdnssd PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KDNSSD_LIBS ${kdnssd_LIB_DEPENDS} ${KDE4_KDNSSD_LIBRARY} )
- find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_SOLID_LIBRARY NAMES solid PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_SOLID_LIBS ${solid_LIB_DEPENDS} ${KDE4_SOLID_LIBRARY} )
- find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_THREADWEAVER_LIBRARY NAMES threadweaver PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_THREADWEAVER_LIBRARIES ${threadweaver_LIB_DEPENDS} ${KDE4_THREADWEAVER_LIBRARY} )
- find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KNOTIFYCONFIG_LIBRARY NAMES knotifyconfig PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KNOTIFYCONFIG_LIBS ${knotifyconfig_LIB_DEPENDS} ${KDE4_KNOTIFYCONFIG_LIBRARY} )
- find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KROSSCORE_LIBRARY NAMES krosscore PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KROSSCORE_LIBS ${krosscore_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBRARY} )
- find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KROSSUI_LIBRARY NAMES krossui PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KROSSUI_LIBS ${krossui_LIB_DEPENDS} ${KDE4_KROSSCORE_LIBS} ${KDE4_KROSSUI_LIBRARY} )
- find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_library(KDE4_KTEXTEDITOR_LIBRARY NAMES ktexteditor PATHS ${KDE4_LIB_INSTALL_DIR}/kde4/devel NO_DEFAULT_PATH )
set(KDE4_KTEXTEDITOR_LIBS ${ktexteditor_LIB_DEPENDS} ${KDE4_KTEXTEDITOR_LIBRARY} )
# Can't do that, it's not always compiled.
@@ -453,14 +453,14 @@ else (_kdeBootStrapping)
# at first look in LIBEXEC_INSTALL_DIR and no default paths,
# if this didn't succeed, the second call makes cmake search again, but in the standard paths
- find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH )
- find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler )
+ find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_program(KDE4_KCFGC_EXECUTABLE NAME kconfig_compiler4 )
find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH )
find_program(KDE4_MEINPROC_EXECUTABLE NAME meinproc4 )
- find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH )
- find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets )
+ find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets4 PATHS ${KDE4_BIN_INSTALL_DIR} NO_DEFAULT_PATH )
+ find_program(KDE4_MAKEKDEWIDGETS_EXECUTABLE NAME makekdewidgets4 )
# allow searching cmake modules in all given kde install locations (KDEDIRS based)
execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -708,7 +708,8 @@ set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SY
"${_CMAKE_INSTALL_DIR}/bin"
"${CMAKE_INSTALL_PREFIX}/bin" )
-set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH}
+set(CMAKE_SYSTEM_LIBRARY_PATH "${KDE4_LIB_INSTALL_DIR}/kde4/devel"
+ ${CMAKE_SYSTEM_LIBRARY_PATH}
"${KDE4_LIB_INSTALL_DIR}"
"${_CMAKE_INSTALL_DIR}/lib"
"${CMAKE_INSTALL_PREFIX}/lib" )
@@ -1108,9 +1109,9 @@ macro (KDE4_PRINT_RESULTS)
endif (NOT _kdeBootStrapping)
if(KDE4_KCFGC_EXECUTABLE)
- message(STATUS "Found KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}")
+ message(STATUS "Found KDE4 kconfig_compiler4 preprocessor: ${KDE4_KCFGC_EXECUTABLE}")
else(KDE4_KCFGC_EXECUTABLE)
- message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor")
+ message(STATUS "Didn't find the KDE4 kconfig_compiler4 preprocessor")
endif(KDE4_KCFGC_EXECUTABLE)
if(AUTOMOC4_EXECUTABLE)
diff -up kdelibs-4.1.0/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel kdelibs-4.1.0/doc/api/doxygen-preprocess-kcfg.sh
--- kdelibs-4.1.0/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel 2008-05-21 13:07:26.000000000 +0200
+++ kdelibs-4.1.0/doc/api/doxygen-preprocess-kcfg.sh 2008-07-23 18:01:48.000000000 +0200
@@ -2,9 +2,9 @@
# Generates and cleans KConfigXT source code during a API dox build
#
-kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler"
+kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler4"
if test -z "$kcfg_compiler"; then
- echo "kconfig_compiler not found!"
+ echo "kconfig_compiler4 not found!"
exit 1;
fi
diff -up kdelibs-4.1.0/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel kdelibs-4.1.0/kdecore/kconfig_compiler/checkkcfg.pl
--- kdelibs-4.1.0/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel 2008-05-21 13:09:13.000000000 +0200
+++ kdelibs-4.1.0/kdecore/kconfig_compiler/checkkcfg.pl 2008-07-23 18:01:48.000000000 +0200
@@ -15,12 +15,12 @@ $file_cpp = "$filebase.cpp";
$kcfgc = $file . "c";
-$cmd = "./kconfig_compiler $file $kcfgc";
+$cmd = "./kconfig_compiler4 $file $kcfgc";
#print "CMD $cmd\n";
if ( system( $cmd ) != 0 ) {
- print STDERR "Unable to run kconfig_compiler\n";
+ print STDERR "Unable to run kconfig_compiler4\n";
exit 1;
}
diff -up kdelibs-4.1.0/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.1.0/kdecore/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.1.0/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel 2008-05-21 13:09:13.000000000 +0200
+++ kdelibs-4.1.0/kdecore/kconfig_compiler/CMakeLists.txt 2008-07-23 18:01:48.000000000 +0200
@@ -8,11 +8,11 @@ add_subdirectory( example )
set(kconfig_compiler_SRCS kconfig_compiler.cpp)
-kde4_add_executable(kconfig_compiler NOGUI RUN_UNINSTALLED ${kconfig_compiler_SRCS})
+kde4_add_executable(kconfig_compiler4 NOGUI RUN_UNINSTALLED ${kconfig_compiler_SRCS})
-target_link_libraries(kconfig_compiler ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
+target_link_libraries(kconfig_compiler4 ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
-install(TARGETS kconfig_compiler DESTINATION ${BIN_INSTALL_DIR} )
+install(TARGETS kconfig_compiler4 DESTINATION ${BIN_INSTALL_DIR} )
########### install files ###############
diff -up kdelibs-4.1.0/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.1.0/kdeui/tests/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.1.0/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel 2008-05-21 13:08:30.000000000 +0200
+++ kdelibs-4.1.0/kdeui/tests/kconfig_compiler/CMakeLists.txt 2008-07-23 18:01:48.000000000 +0200
@@ -9,7 +9,7 @@ macro(GEN_KCFG_TEST_SOURCE _testName _sr
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.cpp ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h
COMMAND ${KDE4_KCFGC_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler)
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler4)
# set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h PROPERTIES GENERATED TRUE)
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.moc )
diff -up kdelibs-4.1.0/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.1.0/kdewidgets/CMakeLists.txt
--- kdelibs-4.1.0/kdewidgets/CMakeLists.txt.parallel_devel 2008-05-21 13:08:17.000000000 +0200
+++ kdelibs-4.1.0/kdewidgets/CMakeLists.txt 2008-07-23 18:01:48.000000000 +0200
@@ -16,22 +16,22 @@ include_directories(
set(makekdewidgets_SRCS makekdewidgets.cpp )
-kde4_add_executable(makekdewidgets NOGUI RUN_UNINSTALLED ${makekdewidgets_SRCS})
+kde4_add_executable(makekdewidgets4 NOGUI RUN_UNINSTALLED ${makekdewidgets_SRCS})
-target_link_libraries(makekdewidgets ${KDE4_KDECORE_LIBS} )
+target_link_libraries(makekdewidgets4 ${KDE4_KDECORE_LIBS} )
-install(TARGETS makekdewidgets DESTINATION ${BIN_INSTALL_DIR} )
+install(TARGETS makekdewidgets4 DESTINATION ${BIN_INSTALL_DIR} )
########### next target ###############
# get the name of the generated wrapper script (which sets up LD_LIBRARY_PATH)
-get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets WRAPPER_SCRIPT)
+get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets4 WRAPPER_SCRIPT)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kde.widgets
- MAIN_DEPENDENCY kde.widgets DEPENDS makekdewidgets)
+ MAIN_DEPENDENCY kde.widgets DEPENDS makekdewidgets4)
set(kdewidgets_PART_SRCS
classpreviews.cpp

View File

@ -1,34 +0,0 @@
diff -up kdelibs-4.1.1/cmake/modules/FindKDE4Internal.cmake.orig kdelibs-4.1.1/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.1.1/cmake/modules/FindKDE4Internal.cmake.orig 2008-09-12 23:54:36.000000000 +0200
+++ kdelibs-4.1.1/cmake/modules/FindKDE4Internal.cmake 2008-09-13 00:02:50.000000000 +0200
@@ -745,6 +745,7 @@ endif(WIN32)
# CMake generators if no build type is set.
if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo)
+ set(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE})
endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
@@ -953,10 +954,6 @@ endif(MSVC)
if (CMAKE_COMPILER_IS_GNUCXX)
- if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5)
- set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull")
- endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5)
-
set (KDE4_ENABLE_EXCEPTIONS -fexceptions)
# Select flags.
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
@@ -1063,11 +1060,6 @@ endif (CMAKE_COMPILER_IS_GNUCXX)
if (CMAKE_C_COMPILER MATCHES "icc")
-
- if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5)
- set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull")
- endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5)
-
set (KDE4_ENABLE_EXCEPTIONS -fexceptions)
# Select flags.
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")

View File

@ -0,0 +1,11 @@
diff -Naur kdelibs-4.1.70/cmake/modules/FindKDE4Internal.cmake kdelibs-4.1.70.cmake/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.1.70/cmake/modules/FindKDE4Internal.cmake 2008-10-19 16:56:45.000000000 +0200
+++ kdelibs-4.1.70.cmake/cmake/modules/FindKDE4Internal.cmake 2008-10-19 17:06:14.000000000 +0200
@@ -817,6 +817,7 @@
# CMake generators if no build type is set.
if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo)
+ set(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE})
endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)

View File

@ -1,7 +1,7 @@
diff -ur kdelibs-4.1.0/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.0-kstandarddirs/kdecore/kernel/kstandarddirs.cpp
--- kdelibs-4.1.0/kdecore/kernel/kstandarddirs.cpp 2008-07-09 15:28:22.000000000 +0200
+++ kdelibs-4.1.0-kstandarddirs/kdecore/kernel/kstandarddirs.cpp 2008-08-29 00:07:51.000000000 +0200
@@ -996,7 +996,9 @@
diff -Naur kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.72.kstandarddirs/kdecore/kernel/kstandarddirs.cpp
--- kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp 2008-11-12 18:31:44.000000000 +0100
+++ kdelibs-4.1.72.kstandarddirs/kdecore/kernel/kstandarddirs.cpp 2008-11-12 18:38:40.000000000 +0100
@@ -1002,7 +1002,9 @@
pit != prefixList->end();
++pit)
{
@ -10,9 +10,9 @@ diff -ur kdelibs-4.1.0/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.0-kstandardd
+ // a false positive due to the libexecdir patch
+ if((*pit)!=installprefix||installdir.isEmpty()||!strcmp("exe", type))
{
for (QStringList::ConstIterator it = dirs.begin();
it != dirs.end(); ++it)
@@ -1010,6 +1012,11 @@
for (QStringList::ConstIterator it = dirs.constBegin();
it != dirs.constEnd(); ++it)
@@ -1016,6 +1018,11 @@
if ((local || testdir.exists()) && !candidates.contains(path))
candidates.append(path);
}

View File

@ -1,7 +1,7 @@
diff -ur kdelibs-4.0.2/kdecore/config/kconfig.cpp kdelibs-4.0.2-no-cache-kdeglobals-paths/kdecore/config/kconfig.cpp
--- kdelibs-4.0.2/kdecore/config/kconfig.cpp 2008-01-05 01:00:39.000000000 +0100
+++ kdelibs-4.0.2-no-cache-kdeglobals-paths/kdecore/config/kconfig.cpp 2008-03-09 23:58:41.000000000 +0100
@@ -60,12 +60,6 @@
diff -Naur kdelibs-4.1.72/kdecore/config/kconfig.cpp kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig.cpp
--- kdelibs-4.1.72/kdecore/config/kconfig.cpp 2008-10-23 01:05:09.000000000 +0200
+++ kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig.cpp 2008-11-10 17:38:33.000000000 +0100
@@ -61,12 +61,6 @@
{
sGlobalFileName = componentData.dirs()->saveLocation("config") +
QString::fromLatin1("kdeglobals");
@ -13,8 +13,8 @@ diff -ur kdelibs-4.0.2/kdecore/config/kconfig.cpp kdelibs-4.0.2-no-cache-kdeglob
- }
const QString etc_kderc =
#ifdef Q_WS_WIN
QFile::decodeName( QByteArray(::getenv("WINDIR")) + "\\kde4rc" );
@@ -75,15 +69,11 @@
QFile::decodeName( qgetenv("WINDIR") + "/kde4rc" );
@@ -76,15 +70,11 @@
KEntryMap tmp;
// first entry is always /etc/kderc or empty if cannot read
if (KStandardDirs::checkAccess(etc_kderc, R_OK)) {
@ -30,7 +30,7 @@ diff -ur kdelibs-4.0.2/kdecore/config/kconfig.cpp kdelibs-4.0.2-no-cache-kdeglob
mappingsRegistered = true;
}
@@ -372,10 +362,31 @@
@@ -461,10 +451,31 @@
void KConfigPrivate::parseGlobalFiles()
{
@ -64,10 +64,10 @@ diff -ur kdelibs-4.0.2/kdecore/config/kconfig.cpp kdelibs-4.0.2-no-cache-kdeglob
const QByteArray utf8Locale = locale.toUtf8();
foreach(const QString& file, globalFiles) {
KConfigBackend::ParseOptions parseOpts = KConfigBackend::ParseGlobal|KConfigBackend::ParseExpansions;
diff -ur kdelibs-4.0.2/kdecore/config/kconfig_p.h kdelibs-4.0.2-no-cache-kdeglobals-paths/kdecore/config/kconfig_p.h
--- kdelibs-4.0.2/kdecore/config/kconfig_p.h 2008-01-05 01:00:39.000000000 +0100
+++ kdelibs-4.0.2-no-cache-kdeglobals-paths/kdecore/config/kconfig_p.h 2008-03-09 23:50:26.000000000 +0100
@@ -82,7 +82,6 @@
diff -Naur kdelibs-4.1.72/kdecore/config/kconfig_p.h kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig_p.h
--- kdelibs-4.1.72/kdecore/config/kconfig_p.h 2008-06-03 11:34:54.000000000 +0200
+++ kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig_p.h 2008-11-10 17:38:33.000000000 +0100
@@ -86,7 +86,6 @@
KEntryMap entryMap;
QString backendType;

View File

@ -1,7 +1,7 @@
diff -ur kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.1.4-policykit-workaround/solid/solid/backends/hal/halstorageaccess.cpp
--- kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.cpp 2009-01-07 00:34:55.000000000 +0100
+++ kdelibs-4.1.4-policykit-workaround/solid/solid/backends/hal/halstorageaccess.cpp 2009-01-08 05:56:56.000000000 +0100
@@ -17,10 +17,13 @@
diff -Naur kdelibs-4.1.72.policykit/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.1.72/solid/solid/backends/hal/halstorageaccess.cpp
--- kdelibs-4.1.72.policykit/solid/solid/backends/hal/halstorageaccess.cpp 2008-11-04 18:13:11.000000000 +0100
+++ kdelibs-4.1.72/solid/solid/backends/hal/halstorageaccess.cpp 2008-11-10 18:45:41.000000000 +0100
@@ -17,6 +17,8 @@
*/
@ -9,17 +9,12 @@ diff -ur kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.1
+
#include "halstorageaccess.h"
#include <QtCore/QLocale>
#include <QtCore/QDebug>
+#include <QtCore/QProcess>
#include <QtDBus/QDBusConnection>
#include <QtDBus/QDBusInterface>
#include <QtDBus/QDBusReply>
@@ -137,11 +140,21 @@
#include "halfstabhandling.h"
@@ -172,11 +174,21 @@
{
// TODO: Better error reporting here
if (m_setupInProgress) {
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
+ if (callPrivilegedMount())
+ return;
+ // if we fail to run kdesu, fall through and emit the original PermissionDeniedByPolicy error
@ -29,7 +24,7 @@ diff -ur kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.1
error.name()+": "+error.message(),
m_device->udi());
} else if (m_teardownInProgress) {
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
+ if (callPrivilegedUnmount())
+ return;
+ // if we fail to run kdesu, fall through and emit the original PermissionDeniedByPolicy error
@ -37,17 +32,19 @@ diff -ur kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.1
m_teardownInProgress = false;
emit teardownDone(Solid::UnauthorizedOperation,
error.name()+": "+error.message(),
@@ -259,7 +272,8 @@
@@ -294,8 +306,9 @@
#else
QString uid="uid=";
#endif
- if (halOptions.contains(uid)) {
+ if (halOptions.contains(uid)
+ && (fstype == "vfat" || fstype == "iso9660" || fstype == "hfs" || fstype == "udf")) {
options << uid+QString::number(::getuid());
- options << uid+QString::number(::getuid());
+ if (halOptions.contains(uid) &&
+ (fstype == "vfat" || fstype == "iso9660" || fstype == "hfs" || fstype == "udf")) {
+ options << uid+QString::number(::getuid());
}
@@ -314,6 +328,59 @@
#ifdef Q_OS_FREEBSD
@@ -333,6 +346,59 @@
SLOT(slotDBusError(const QDBusError &)));
}
@ -104,12 +101,12 @@ diff -ur kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.1
+ }
+}
+
bool Solid::Backends::Hal::StorageAccess::callSystemMount()
bool StorageAccess::callHalVolumeUnmount()
{
const QString device = m_device->property("block.device").toString();
diff -ur kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.h kdelibs-4.1.4-policykit-workaround/solid/solid/backends/hal/halstorageaccess.h
--- kdelibs-4.1.4/solid/solid/backends/hal/halstorageaccess.h 2009-01-07 00:34:55.000000000 +0100
+++ kdelibs-4.1.4-policykit-workaround/solid/solid/backends/hal/halstorageaccess.h 2009-01-08 05:37:59.000000000 +0100
QDBusConnection c = QDBusConnection::systemBus();
diff -Naur kdelibs-4.1.72.policykit/solid/solid/backends/hal/halstorageaccess.h kdelibs-4.1.72/solid/solid/backends/hal/halstorageaccess.h
--- kdelibs-4.1.72.policykit/solid/solid/backends/hal/halstorageaccess.h 2008-05-21 13:07:38.000000000 +0200
+++ kdelibs-4.1.72/solid/solid/backends/hal/halstorageaccess.h 2008-11-10 18:45:01.000000000 +0100
@@ -69,6 +69,9 @@
bool callSystemMount();
bool callSystemUnmount();

View File

@ -0,0 +1,38 @@
diff -Naurw kdelibs-4.1.82/kdeui/icons/kicontheme.cpp kdelibs-4.1.82.kde149705/kdeui/icons/kicontheme.cpp
--- kdelibs-4.1.82/kdeui/icons/kicontheme.cpp 2008-10-23 01:05:04.000000000 +0200
+++ kdelibs-4.1.82.kde149705/kdeui/icons/kicontheme.cpp 2008-12-09 14:15:14.000000000 +0100
@@ -516,7 +516,7 @@
return *_theme;
KConfigGroup cg(KGlobal::config(), "Icons");
- *_theme = cg.readEntry("Theme", defaultThemeName());
+ *_theme = cg.readEntry("Theme4", cg.readEntry("Theme", defaultThemeName()));
if ( *_theme == QLatin1String("hicolor") ) *_theme = defaultThemeName();
/* if (_theme->isEmpty())
{
diff -Naurw kdelibs-4.1.82/kdeui/kernel/kglobalsettings.cpp kdelibs-4.1.82.kde149705/kdeui/kernel/kglobalsettings.cpp
--- kdelibs-4.1.82/kdeui/kernel/kglobalsettings.cpp 2008-11-28 16:40:11.000000000 +0100
+++ kdelibs-4.1.82.kde149705/kdeui/kernel/kglobalsettings.cpp 2008-12-09 14:17:51.000000000 +0100
@@ -831,7 +831,7 @@
if (kde_overrideStyle.isEmpty()) {
const QString &defaultStyle = KStyle::defaultStyle();
const KConfigGroup pConfig(KGlobal::config(), "General");
- const QString &styleStr = pConfig.readEntry("widgetStyle", defaultStyle);
+ const QString &styleStr = pConfig.readEntry("widgetStyle4", pConfig.readEntry("widgetStyle", defaultStyle));
if (styleStr.isEmpty() ||
// check whether we already use the correct style to return then
diff -Naurw kdelibs-4.1.82/kutils/kdeglobals.kcfg kdelibs-4.1.82.kde149705/kutils/kdeglobals.kcfg
--- kdelibs-4.1.82/kutils/kdeglobals.kcfg 2008-05-21 13:08:56.000000000 +0200
+++ kdelibs-4.1.82.kde149705/kutils/kdeglobals.kcfg 2008-12-09 14:15:14.000000000 +0100
@@ -24,6 +24,10 @@
<whatsthis>The name of the widget style, for example &quot;keramik&quot; or &quot;plastik&quot;. Without quotes.</whatsthis>
<default>keramik</default>
</entry>
+ <entry key="widgetStyle4" type="String" >
+ <label>Widget style to use for KDE 4</label>
+ <whatsthis>The name of the widget style, for example &quot;oxygen&quot;. Without quotes. Defaults to widgetStyle.</whatsthis>
+ </entry>
<entry key="windowBackground" type="String" />
<entry key="windowForeground" type="String" />
<entry key="UseSystemBell" type="Bool" >

View File

@ -0,0 +1,117 @@
diff -up kdelibs-4.1.96/plasma/package.cpp.orig kdelibs-4.1.96/plasma/package.cpp
--- kdelibs-4.1.96/plasma/package.cpp.orig 2009-01-06 18:27:56.000000000 +0100
+++ kdelibs-4.1.96/plasma/package.cpp 2009-01-16 14:42:39.000000000 +0100
@@ -139,6 +139,10 @@ QString Package::filePath(const char *fi
}
if (QFile::exists(path)) {
+ if (d->structure->allowExternalPaths()) {
+ return path;
+ }
+
// ensure that we don't return files outside of our base path
// due to symlink or ../ games
QDir dir(path);
@@ -171,6 +175,10 @@ QStringList Package::entryList(const cha
QDir dir(d->basePath + d->structure->contentsPrefix() + path);
if (dir.exists()) {
+ if (d->structure->allowExternalPaths()) {
+ return dir.entryList(QDir::Files | QDir::Readable);
+ }
+
// ensure that we don't return files outside of our base path
// due to symlink or ../ games
QString canonicalized = dir.canonicalPath();
diff -up kdelibs-4.1.96/plasma/packagestructure.cpp.orig kdelibs-4.1.96/plasma/packagestructure.cpp
--- kdelibs-4.1.96/plasma/packagestructure.cpp.orig 2009-01-16 14:41:56.000000000 +0100
+++ kdelibs-4.1.96/plasma/packagestructure.cpp 2009-01-16 14:42:39.000000000 +0100
@@ -58,17 +58,19 @@ class ContentStructure
QString path;
QString name;
QStringList mimetypes;
- bool directory;
- bool required;
+ bool directory : 1;
+ bool required : 1;
};
class PackageStructurePrivate
{
public:
PackageStructurePrivate()
- : metadata(0)
+ : metadata(0),
+ externalPaths(false)
{
}
+
~PackageStructurePrivate()
{
delete metadata;
@@ -76,6 +78,8 @@ public:
void createPackageMetadata(const QString &path);
+ static QHash<QString, PackageStructure::Ptr> structures;
+
QString type;
QString path;
QString contentsPrefix;
@@ -83,8 +87,8 @@ public:
QString servicePrefix;
QMap<QByteArray, ContentStructure> contents;
QStringList mimetypes;
- static QHash<QString, PackageStructure::Ptr> structures;
PackageMetadata *metadata;
+ bool externalPaths;
};
QHash<QString, PackageStructure::Ptr> PackageStructurePrivate::structures;
@@ -487,6 +491,16 @@ PackageMetadata PackageStructure::metada
return *d->metadata;
}
+bool PackageStructure::allowExternalPaths() const
+{
+ return d->externalPaths;
+}
+
+void PackageStructure::setAllowExternalPaths(bool allow)
+{
+ d->externalPaths = allow;
+}
+
} // Plasma namespace
#include "packagestructure.moc"
diff -up kdelibs-4.1.96/plasma/packagestructure.h.orig kdelibs-4.1.96/plasma/packagestructure.h
--- kdelibs-4.1.96/plasma/packagestructure.h.orig 2009-01-16 14:19:12.000000000 +0100
+++ kdelibs-4.1.96/plasma/packagestructure.h 2009-01-16 14:42:39.000000000 +0100
@@ -278,6 +278,12 @@ public:
*/
virtual PackageMetadata metadata();
+ /**
+ * @return true if paths/symlinks outside the package itself should be followed.
+ * By default this is set to false for security reasons.
+ */
+ bool allowExternalPaths() const;
+
Q_SIGNALS:
/**
* Emitted when the new widget browser process completes.
@@ -286,6 +292,13 @@ Q_SIGNALS:
protected:
/**
+ * Sets whether or not external paths/symlinks can be followed by a package
+ * @arg allow true if paths/symlinks outside of the package should be followed,
+ * false if they should be rejected.
+ */
+ void setAllowExternalPaths(bool allow);
+
+ /**
* Sets the prefix that all the contents in this package should
* appear under. This defaults to "contents/" and is added automatically
* between the base path and the entries as defined by the package

View File

@ -0,0 +1,38 @@
diff -up kdelibs-4.1.96/cmake/modules/FindKdepimLibs.cmake.orig kdelibs-4.1.96/cmake/modules/FindKdepimLibs.cmake
--- kdelibs-4.1.96/cmake/modules/FindKdepimLibs.cmake.orig 2009-01-08 22:14:13.000000000 +0100
+++ kdelibs-4.1.96/cmake/modules/FindKdepimLibs.cmake 2009-01-08 22:14:59.000000000 +0100
@@ -64,9 +64,13 @@
# See kdepimlibs/CMakeLists.txt and kdepimlibs/KdepimLibsConfig.cmake.in
# for details. Alex
-
+set(KDEPIMLIBS_VERSION 4.2.0)
+set(_KdepimLibsConfig_INSTALL_DIR ${LIB_INSTALL_DIR}/KdepimLibs-${KDEPIMLIBS_VERSION}/cmake)
+if(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR)
+ set(_KdepimLibsConfig_INSTALL_DIR ${LIB_INSTALL_DIR}/cmake/KdepimLibs-${KDEPIMLIBS_VERSION} )
+endif(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR)
set(_KdepimLibs_FIND_QUIETLY ${KdepimLibs_FIND_QUIETLY})
-find_package(KdepimLibs ${KdepimLibs_FIND_VERSION} QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KdepimLibs/cmake )
+find_package(KdepimLibs ${KdepimLibs_FIND_VERSION} QUIET NO_MODULE PATHS ${_KdepimLibsConfig_INSTALL_DIR} )
set(KdepimLibs_FIND_QUIETLY ${_KdepimLibs_FIND_QUIETLY})
include(FindPackageHandleStandardArgs)
diff -up kdelibs-4.1.96/cmake/modules/FindKDE4Workspace.cmake.orig kdelibs-4.1.96/cmake/modules/FindKDE4Workspace.cmake
--- kdelibs-4.1.96/cmake/modules/FindKDE4Workspace.cmake.orig 2009-01-10 21:53:41.000000000 +0100
+++ kdelibs-4.1.96/cmake/modules/FindKDE4Workspace.cmake 2009-01-10 21:54:03.000000000 +0100
@@ -62,8 +62,14 @@
# for details. Alex
+set(KDE4WORKSPACE_VERSION 4.2.0)
+set(_KdeWorkspaceConfig_INSTALL_DIR ${LIB_INSTALL_DIR}/KDE4Workspace-${KDE4WORKSPACE_VERSION}/cmake)
+if(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR)
+ set(_KdeWorkspaceConfig_INSTALL_DIR ${LIB_INSTALL_DIR}/cmake/KDE4Workspace-${KDE4WORKSPACE_VERSION} )
+endif(KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR)
+
set(_KDE4Workspace_FIND_QUIETLY ${KDE4Workspace_FIND_QUIETLY})
-find_package(KDE4Workspace QUIET NO_MODULE PATHS ${KDE4_LIB_DIR}/KDE4Workspace/cmake )
+find_package(KDE4Workspace QUIET NO_MODULE PATHS ${_KdeWorkspaceConfig_INSTALL_DIR} )
set(KDE4Workspace_FIND_QUIETLY ${_KDE4Workspace_FIND_QUIETLY})
include(FindPackageHandleStandardArgs)

View File

@ -0,0 +1,210 @@
diff -up kdelibs-4.1.96/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdelibs-4.1.96/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.1.96/cmake/modules/FindKDE4Internal.cmake.parallel_devel 2009-01-07 01:13:55.000000000 +0100
+++ kdelibs-4.1.96/cmake/modules/FindKDE4Internal.cmake 2009-01-07 22:42:22.000000000 +0100
@@ -15,10 +15,10 @@
# The following variables are defined for the various tools required to
# compile KDE software:
#
-# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable
+# KDE4_KCFGC_EXECUTABLE - the kconfig_compiler4 executable
# KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable, deprecated, use AUTOMOC4_EXECUTABLE instead
# KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable
-# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable
+# KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets4 executable
#
# The following variables point to the location of the KDE libraries,
# but shouldn't be used directly:
@@ -131,7 +131,7 @@
# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files.
#
# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets)
-# Use this to add widget description files for the makekdewidgets code generator
+# Use this to add widget description files for the makekdewidgets4 code generator
# for Qt Designer plugins.
#
# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN)
@@ -370,23 +370,23 @@ if (_kdeBootStrapping)
if (WIN32)
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} )
# CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 )
- set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets )
+ set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets4 )
else (WIN32)
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib )
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler.shell )
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4.shell )
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4.shell )
- set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets.shell )
+ set(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/makekdewidgets4.shell )
endif (WIN32)
set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR})
# when building kdelibs, make the kcfg rules depend on the binaries...
- set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler)
- set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets)
+ set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler4)
+ set( _KDE4_MAKEKDEWIDGETS_DEP makekdewidgets4)
set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4)
set(KDE4_INSTALLED_VERSION_OK TRUE)
@@ -488,7 +488,8 @@ else (_kdeBootStrapping)
# KDE4_LIB_INSTALL_DIR and KDE4_INCLUDE_INSTALL_DIR are set in KDELibsDependencies.cmake,
# use them to set the KDE4_LIB_DIR and KDE4_INCLUDE_DIR "public interface" variables
- set(KDE4_LIB_DIR ${KDE4_LIB_INSTALL_DIR} )
+ set(KDE4_LIB_DIR ${KDE4_LIB_INSTALL_DIR}/kde4/devel )
+ link_directories("${KDE4_LIB_DIR}")
set(KDE4_INCLUDE_DIR ${KDE4_INCLUDE_INSTALL_DIR} )
@@ -501,12 +502,12 @@ else (_kdeBootStrapping)
# get the build CONFIGURATIONS which were exported in this file, and use just the first
# of them to get the location of the installed executables
- get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS )
+ get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler4 IMPORTED_CONFIGURATIONS )
list(GET _importedConfigurations 0 _firstConfig)
- get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${firstConfig})
+ get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler4 LOCATION_${firstConfig})
get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${firstConfig})
- get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${firstConfig})
+ get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets4 LOCATION_${firstConfig})
# allow searching cmake modules in all given kde install locations (KDEDIRS based)
execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -738,7 +739,8 @@ set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SY
set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH}
"${KDE4_BIN_INSTALL_DIR}" )
-set(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH}
+set(CMAKE_SYSTEM_LIBRARY_PATH "${KDE4_LIB_INSTALL_DIR}/kde4/devel"
+ ${CMAKE_SYSTEM_LIBRARY_PATH}
"${KDE4_LIB_INSTALL_DIR}" )
# under Windows dlls may be also installed in bin/
@@ -1121,9 +1123,9 @@ macro (KDE4_PRINT_RESULTS)
endif (NOT _kdeBootStrapping)
if(KDE4_KCFGC_EXECUTABLE)
- message(STATUS "Found the KDE4 kconfig_compiler preprocessor: ${KDE4_KCFGC_EXECUTABLE}")
+ message(STATUS "Found the KDE4 kconfig_compiler4 preprocessor: ${KDE4_KCFGC_EXECUTABLE}")
else(KDE4_KCFGC_EXECUTABLE)
- message(STATUS "Didn't find the KDE4 kconfig_compiler preprocessor")
+ message(STATUS "Didn't find the KDE4 kconfig_compiler4 preprocessor")
endif(KDE4_KCFGC_EXECUTABLE)
if(AUTOMOC4_EXECUTABLE)
@@ -1142,7 +1145,7 @@ if (KDE4Internal_FIND_REQUIRED AND NOT K
endif (NOT KDE4_INSTALLED_VERSION_OK)
if (NOT KDE4_KCFGC_EXECUTABLE)
- message(FATAL_ERROR "ERROR: could not detect a usable kconfig_compiler")
+ message(FATAL_ERROR "ERROR: could not detect a usable kconfig_compiler4")
endif (NOT KDE4_KCFGC_EXECUTABLE)
message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs")
diff -up kdelibs-4.1.96/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel kdelibs-4.1.96/doc/api/doxygen-preprocess-kcfg.sh
--- kdelibs-4.1.96/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel 2008-05-21 13:07:26.000000000 +0200
+++ kdelibs-4.1.96/doc/api/doxygen-preprocess-kcfg.sh 2009-01-07 22:04:13.000000000 +0100
@@ -2,9 +2,9 @@
# Generates and cleans KConfigXT source code during a API dox build
#
-kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler"
+kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler4"
if test -z "$kcfg_compiler"; then
- echo "kconfig_compiler not found!"
+ echo "kconfig_compiler4 not found!"
exit 1;
fi
diff -up kdelibs-4.1.96/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel kdelibs-4.1.96/kdecore/kconfig_compiler/checkkcfg.pl
--- kdelibs-4.1.96/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel 2008-05-21 13:09:13.000000000 +0200
+++ kdelibs-4.1.96/kdecore/kconfig_compiler/checkkcfg.pl 2009-01-07 22:04:13.000000000 +0100
@@ -15,12 +15,12 @@ $file_cpp = "$filebase.cpp";
$kcfgc = $file . "c";
-$cmd = "./kconfig_compiler $file $kcfgc";
+$cmd = "./kconfig_compiler4 $file $kcfgc";
#print "CMD $cmd\n";
if ( system( $cmd ) != 0 ) {
- print STDERR "Unable to run kconfig_compiler\n";
+ print STDERR "Unable to run kconfig_compiler4\n";
exit 1;
}
diff -up kdelibs-4.1.96/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.1.96/kdecore/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.1.96/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel 2009-01-06 18:27:49.000000000 +0100
+++ kdelibs-4.1.96/kdecore/kconfig_compiler/CMakeLists.txt 2009-01-07 22:44:57.000000000 +0100
@@ -8,13 +8,13 @@ add_subdirectory( example )
set(kconfig_compiler_SRCS kconfig_compiler.cpp)
-kde4_add_executable(kconfig_compiler NOGUI RUN_UNINSTALLED ${kconfig_compiler_SRCS})
+kde4_add_executable(kconfig_compiler4 NOGUI RUN_UNINSTALLED ${kconfig_compiler_SRCS})
-target_link_libraries(kconfig_compiler ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
+target_link_libraries(kconfig_compiler4 ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
# "export" this target too so we can use the LOCATION property of the imported target in
# FindKDE4Internal.cmake to get the full path to the installed executable instead of using FIND_PROGRAM(), Alex
-install(TARGETS kconfig_compiler EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
+install(TARGETS kconfig_compiler4 EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
########### install files ###############
diff -up kdelibs-4.1.96/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.1.96/kdeui/tests/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.1.96/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel 2008-05-21 13:08:30.000000000 +0200
+++ kdelibs-4.1.96/kdeui/tests/kconfig_compiler/CMakeLists.txt 2009-01-07 22:04:13.000000000 +0100
@@ -9,7 +9,7 @@ macro(GEN_KCFG_TEST_SOURCE _testName _sr
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.cpp ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h
COMMAND ${KDE4_KCFGC_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler)
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler4)
# set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h PROPERTIES GENERATED TRUE)
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.moc )
diff -up kdelibs-4.1.96/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.1.96/kdewidgets/CMakeLists.txt
--- kdelibs-4.1.96/kdewidgets/CMakeLists.txt.parallel_devel 2009-01-06 18:27:44.000000000 +0100
+++ kdelibs-4.1.96/kdewidgets/CMakeLists.txt 2009-01-07 22:46:30.000000000 +0100
@@ -14,24 +14,24 @@ include_directories(
set(makekdewidgets_SRCS makekdewidgets.cpp )
-kde4_add_executable(makekdewidgets NOGUI RUN_UNINSTALLED ${makekdewidgets_SRCS})
+kde4_add_executable(makekdewidgets4 NOGUI RUN_UNINSTALLED ${makekdewidgets_SRCS})
-target_link_libraries(makekdewidgets ${KDE4_KDECORE_LIBS} )
+target_link_libraries(makekdewidgets4 ${KDE4_KDECORE_LIBS} )
# "export" this target too so we can use the LOCATION property of the imported target in
# FindKDE4Internal.cmake to get the full path to the installed executable instead of using FIND_PROGRAM(), Alex
-install(TARGETS makekdewidgets EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
+install(TARGETS makekdewidgets4 EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
########### next target ###############
# get the name of the generated wrapper script (which sets up LD_LIBRARY_PATH)
-get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets WRAPPER_SCRIPT)
+get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets4 WRAPPER_SCRIPT)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kde.widgets
- MAIN_DEPENDENCY kde.widgets DEPENDS makekdewidgets)
+ MAIN_DEPENDENCY kde.widgets DEPENDS makekdewidgets4)
set(kdewidgets_PART_SRCS
classpreviews.cpp

View File

@ -1,8 +1,6 @@
%define _default_patch_fuzz 2
Summary: K Desktop Environment 4 - Libraries
Version: 4.1.4
Release: 2%{?dist}
Version: 4.2.0
Release: 1%{?dist}
%if 0%{?fedora} > 8
Name: kdelibs
@ -29,13 +27,14 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%endif
BuildRequires: kde4-macros(api) >= 2
BuildRequires: kde-filesystem >= 4
BuildRequires: kde-filesystem >= 4-23
# used in kde.(sh|csh)
Requires: coreutils grep
# dbus-launch needed here? don't think so, but be safe and keep
# for now -- Rex
Requires: dbus-x11
Requires: hicolor-icon-theme
# kdebase-runtime not *strictly* required here, but how better to pull
# it in? comps only?
#Requires: kdebase-runtime
Requires: kde-filesystem >= 4
Requires: kde-filesystem >= 4-23
Requires: kde-settings
%{?_kde4_macros_api:Requires: kde4-macros(api) = %{_kde4_macros_api} }
Requires: shared-mime-info
@ -45,15 +44,16 @@ Requires: kdelibs-common
%if 0%{?fedora} >= 9
Requires: hunspell
%endif
Requires: soprano >= 2.1
Requires: phonon >= 4.2.96
Requires: soprano >= 2.1.64
Source1: kde4.sh
Source2: kde4.csh
# make -devel packages parallel-installable
Patch0: kdelibs-4.1.0-parallel_devel.patch
Patch0: kdelibs-4.1.96-parallel_devel.patch
# fix kde#149705
Patch2: kdelibs-3.95.0-kde149705.patch
Patch2: kdelibs-4.1.82-kde149705.patch
# Hunspell support for K3Spell
# http://fedoraproject.org/wiki/Releases/FeatureDictionary
# http://bugs.kde.org/show_bug.cgi?id=154561
@ -67,20 +67,23 @@ Patch8: kdelibs-4.0.2-install-all-css.patch
Patch9: kdelibs-4.0.2-branding.patch
# don't cache kdeglobals paths because they change after profile directories
# are loaded from kde4rc
Patch10: kdelibs-4.0.2-no-cache-kdeglobals-paths.patch
# workarounds for policykit and NTFS
Patch11: kdelibs-4.1.4-policykit-workaround.patch
Patch10: kdelibs-4.1.72-no-cache-kdeglobals-paths.patch
# workaround for policykit
Patch11: kdelibs-4.1.72-policykit-workaround.patch
Patch12: kdelibs-4.1.0-xdg-menu.patch
# patch KStandardDirs to use %{_libexecdir}/kde4 instead of %{_libdir}/kde4/libexec
Patch14: kdelibs-4.0.85-libexecdir.patch
# kstandarddirs changes: search /etc/kde, find /usr/libexec/kde4
Patch18: kdelibs-4.1.0-kstandarddirs.patch
Patch20: kdelibs-4.1.1-cmake.patch
Patch18: kdelibs-4.1.72-kstandarddirs.patch
Patch20: kdelibs-4.1.70-cmake.patch
Patch22: kdelibs-4.1.96-cmake.patch
## upstream patches
# upstream
# 4.3 branch
Patch101: kdelibs-4.1.96-AllowExternalPaths.patch
BuildRequires: qt4-devel >= 4.4.0
Requires: qt4 >= %{_qt4_version}
Requires: qt4 >= %{_qt4_version}
Requires: xdg-utils
Requires(post): /sbin/ldconfig xdg-utils
Requires(postun): /sbin/ldconfig xdg-utils
@ -93,7 +96,7 @@ BuildRequires: aspell-devel
BuildRequires: automoc
BuildRequires: avahi-devel
BuildRequires: bzip2-devel
BuildRequires: cmake
BuildRequires: cmake >= 2.6.2-3
BuildRequires: cups-devel cups
BuildRequires: enchant-devel
BuildRequires: gamin-devel
@ -111,15 +114,13 @@ BuildRequires: libxslt-devel libxml2-devel
BuildRequires: OpenEXR-devel
BuildRequires: openssl-devel
BuildRequires: pcre-devel
# work around circular dependency from phonon-devel pulling in phonon-backend-xine
BuildRequires: phonon-backend-gstreamer
BuildRequires: phonon-devel >= 4.2
BuildRequires: phonon-devel >= 4.2.96
BuildRequires: shared-mime-info
BuildRequires: soprano-devel >= 2.1
BuildRequires: strigi-devel >= 0.5.7
BuildRequires: soprano-devel >= 2.1.64
BuildRequires: strigi-devel >= 0.6.3
BuildRequires: zlib-devel
BuildRequires: libutempter-devel
# extra X deps (seemingly needed and/or checked-for by most kde4 buildscripts)
# extra X deps (seemingly needed and/or checked-for by most kde4 buildscripts)
%define x_deps libXcomposite-devel libXdamage-devel libxkbfile-devel libXpm-devel libXScrnSaver-devel libXtst-devel libXv-devel libXxf86misc-devel
%{?x_deps:BuildRequires: %{x_deps}}
BuildRequires: openssh-clients
@ -145,16 +146,18 @@ This package includes the common files for the KDE 3 and KDE 4 libraries.
%package devel
Group: Development/Libraries
Summary: Header files for compiling KDE 4 applications
Provides: plasma-devel = %{version}-%{release}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
%if "%{name}" != "kdelibs4"
Obsoletes: kdelibs4-devel < %{version}-%{release}
Provides: kdelibs4-devel = %{version}-%{release}
%endif
Requires: cmake >= 2.6.2-3
Requires: automoc
Requires: qt4-devel
Requires: openssl-devel
Requires: phonon-devel >= 4.2
Requires: strigi-devel
Requires: phonon-devel >= 4.2.96
Requires: strigi-devel >= 0.6.3
Requires: bzip2-devel gamin-devel libacl-devel zlib-devel libutempter-devel
%{?x_deps:Requires: %{x_deps}}
%description devel
@ -196,18 +199,20 @@ format for easy browsing.
%patch9 -p1 -b .branding
sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanager.cpp
%patch10 -p1 -b .no-cache-kdeglobals-paths
%patch11 -p1 -b .policykit
#%patch11 -p1 -b .policykit
%patch12 -p1 -b .Administration-menu
%patch14 -p1 -b .libexecdir
%patch18 -p1 -b .kstandarddirs
%patch20 -p1 -b .cmake
## upstream patches
%patch20 -p1 -b .xxcmake
%patch22 -p1 -b .kdepimlibs-cmake
# upstream patches
%patch101 -p1 -b .AllowExternalPaths
%build
mkdir -p %{_target_platform}
pushd %{_target_platform}
pushd %{_target_platform}
%{cmake_kde4} -DKDE_DISTRIBUTION_TEXT="%{version}-%{release} Fedora" ..
popd
@ -226,7 +231,7 @@ doc/api/doxygen.sh .
rm -rf %{buildroot}
%if 0%{?rest}
make install DESTDIR=%{buildroot} -C %{_target_platform}
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
# see also use-of/patching of XDG_MENU_PREFIX in kdebase/kde-settings
mv %{buildroot}%{_kde4_sysconfdir}/xdg/menus/applications.menu \
@ -283,7 +288,7 @@ cp -prf kdelibs-%{version}-apidocs %{buildroot}%{_kde4_docdir}/HTML/en/kdelibs4-
xdg-icon-resource forceupdate --theme hicolor 2> /dev/null || :
xdg-desktop-menu forceupdate 2> /dev/null || :
%postun
%postun
/sbin/ldconfig ||:
xdg-icon-resource forceupdate --theme hicolor 2> /dev/null || :
xdg-desktop-menu forceupdate 2> /dev/null || :
@ -313,8 +318,9 @@ rm -rf %{buildroot}
%{_kde4_datadir}/mime/packages/*
%{_kde4_sharedir}/kde4/services/*
%{_kde4_sharedir}/kde4/servicetypes/*
%{_kde4_sharedir}/icons/hicolor/*/actions/presence_*
%{_kde4_sharedir}/icons/hicolor/*/actions/*
%{_kde4_docdir}/HTML/en/sonnet/
%{_kde4_docdir}/HTML/en/kioslave/
%{_kde4_libdir}/lib*.so.*
%{_kde4_libdir}/libkdeinit4_*.so
%dir %{_kde4_libdir}/kde4/
@ -363,6 +369,9 @@ rm -rf %{buildroot}
%changelog
* Mon Jan 26 2009 Lukáš Tinkl <ltinkl@redhat.com> 4.2.0-1
- KDE 4.2.0
* Thu Jan 08 2009 Kevin Kofler <Kevin@tigcc.ticalc.org> 4.1.4-2
- restore AWOL NTFS workaround yet again