[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [emerge/kde-4.14] /: add a minimal build for runtime
From:       Patrick Spendrin <ps_ml () gmx ! de>
Date:       2015-08-27 22:22:30
Message-ID: E1ZV5Z0-00016L-5S () scm ! kde ! org
[Download RAW message or body]

Git commit 01aeede642da9912bcd0a1dfcefa984846c17385 by Patrick Spendrin.
Committed on 27/08/2015 at 22:20.
Pushed by sengels into branch 'kde-4.14'.

add a minimal build for runtime

This only gives you kcmshell and some oxygen parts in kde-runtime
and restricts other packages like kde-workspace as well

M  +3    -0    bin/options.py
M  +9    -5    portage/kde/kde-runtime/kde-runtime-20110130.py
A  +138  -0    portage/kde/kde-runtime/minimal-kde-runtime.diff
M  +6    -3    portage/kde/kde-workspace/kde-workspace-20110130.py
A  +169  -0    portage/kde/kde-workspace/oxygen-only.diff
M  +6    -2    portage/kde/kdelibs/kdelibs-20110130.py
M  +4    -3    portage/kde/kdepim-runtime/kdepim-runtime-20101222.py

http://commits.kde.org/emerge/01aeede642da9912bcd0a1dfcefa984846c17385

diff --git a/bin/options.py b/bin/options.py
index 04f861a..79fbfe0 100644
--- a/bin/options.py
+++ b/bin/options.py
@@ -70,6 +70,9 @@ class OptionsFeatures(OptionsBase):
         ## do not use mysql
         self.nomysql = False
 
+        ## build a minimal kde-runtime and a restricted kdepim-runtime build
+        self.runtimeMinimal = False
+
 ## options for the fetch action
 class OptionsFetch(OptionsBase):
     def __init__(self):
diff --git a/portage/kde/kde-runtime/kde-runtime-20110130.py \
b/portage/kde/kde-runtime/kde-runtime-20110130.py index 5aaef69..a60a4db 100644
--- a/portage/kde/kde-runtime/kde-runtime-20110130.py
+++ b/portage/kde/kde-runtime/kde-runtime-20110130.py
@@ -8,17 +8,20 @@ class subinfo(info.infoclass):
             self.targets[kd.kdeversion + ver] = "http://download.kde.org/stable/" + \
                kd.kdeversion + ver + "/src/" + self.package + "-" + kd.kdeversion + \
                ver + ".tar.xz"
             self.targetInstSrc[kd.kdeversion + ver] = self.package + '-' + \
kd.kdeversion + ver  self.targetDigestUrls[ kd.kdeversion + ver  ] = \
'http://download.kde.org/stable/' + kd.kdeversion + ver + '/src/' + self.package + \
                '-' + kd.kdeversion + ver + '.tar.xz.sha1'
-        self.patchToApply["4.12.0"] = ("kde-runtime-4.12.0-20131219.diff", 1)
+        self.patchToApply["4.12.0"] = [("kde-runtime-4.12.0-20131219.diff", 1)]
+        if self.options.features.runtimeMinimal:
+            self.patchToApply['gitHEAD'] = [("minimal-kde-runtime.diff", 1)]
 
         self.shortDescription = 'Components for KDE applications required at \
runtime'  self.defaultTarget = 'gitHEAD'
 
     def setDependencies( self ):
         self.dependencies['kde/kdelibs'] = 'default'
-        self.dependencies['kde/kactivities'] = 'default'
         self.dependencies['kde/oxygen-icons'] = 'default'
-        self.dependencies['win32libs/libssh'] = 'default'
-        self.dependencies['win32libs/gcrypt'] = 'default'
+        if not self.options.features.runtimeMinimal:
+            self.dependencies['kde/kactivities'] = 'default'
+            self.dependencies['win32libs/libssh'] = 'default'
+            self.dependencies['win32libs/gcrypt'] = 'default'
         self.dependencies['kde/kdepimlibs'] = 'default'
         if compiler.isMinGW_WXX():
             self.dependencies['win32libs/libbfd'] = 'default'
@@ -29,7 +32,8 @@ class Package(CMakePackageBase):
     def __init__( self ):
         self.subinfo = subinfo()
         CMakePackageBase.__init__( self )
-        self.subinfo.options.configure.defines = "-DWITH_NepomukCore=OFF"
+        if not self.subinfo.options.features.nepomuk:
+            self.subinfo.options.configure.defines = "-DWITH_NepomukCore=OFF"
 
 if __name__ == '__main__':
     Package().execute()
diff --git a/portage/kde/kde-runtime/minimal-kde-runtime.diff \
b/portage/kde/kde-runtime/minimal-kde-runtime.diff new file mode 100644
index 0000000..11fb90b
--- /dev/null
+++ b/portage/kde/kde-runtime/minimal-kde-runtime.diff
@@ -0,0 +1,138 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1967a29..974e5d2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -51,12 +51,12 @@ set_package_properties(QCA2 PROPERTIES DESCRIPTION "Support for \
remote plasma wi +                        TYPE OPTIONAL
+                       )
+ 
+-find_package(LibGcrypt 1.5.0 REQUIRED QUIET)
+-set_package_properties(LibGcrypt PROPERTIES DESCRIPTION "Libgcrypt is a general \
purpose cryptographic library based on the code from GnuPG." +-                       \
URL "http://www.gnu.org/software/libgcrypt/" +-                       TYPE REQUIRED
+-                       PURPOSE "kwalletd needs libgcrypt to perform PBKDF2-SHA512 \
hashing" +-                      )
++#find_package(LibGcrypt 1.5.0 REQUIRED QUIET)
++#set_package_properties(LibGcrypt PROPERTIES DESCRIPTION "Libgcrypt is a general \
purpose cryptographic library based on the code from GnuPG." ++#                      \
URL "http://www.gnu.org/software/libgcrypt/" ++#                       TYPE REQUIRED
++#                       PURPOSE "kwalletd needs libgcrypt to perform PBKDF2-SHA512 \
hashing" ++#                      )
+ # Build options
+ option(KDERUNTIME_BUILD_NEPOMUK "Build the Nepomuk KCM and kioslaves" FALSE)
+ 
+@@ -74,16 +74,16 @@ include_directories (${CMAKE_SOURCE_DIR} \
${CMAKE_CURRENT_BINARY_DIR} ${KDE4_INCL + add_subdirectory(cmake)
+ 
+ # Background processes
+-add_subdirectory(kpasswdserver)
+-add_subdirectory(kdontchangethehostname)
+-add_subdirectory(kglobalaccel)
+-add_subdirectory(knotify)
+-add_subdirectory(ktimezoned)
++#add_subdirectory(kpasswdserver)
++#add_subdirectory(kdontchangethehostname)
++#add_subdirectory(kglobalaccel)
++#add_subdirectory(knotify)
++#add_subdirectory(ktimezoned)
+ 
+ if(NOT WINCE)
+-add_subdirectory(kuiserver)
++#add_subdirectory(kuiserver)
+ endif(NOT WINCE)
+-add_subdirectory(kwalletd)
++#add_subdirectory(kwalletd)
+ 
+ if ( UNIX )
+    add_subdirectory(soliduiserver)
+@@ -98,22 +98,22 @@ endif()
+ 
+ # Plugins/components required for basic utility
+ if ( NOT WINCE )
+-    add_subdirectory(kcontrol)
++#    add_subdirectory(kcontrol)
+ endif ( NOT WINCE )
+-add_subdirectory(kioslave)
+-add_subdirectory(kurifilter-plugins)
+-add_subdirectory(phonon)
+-add_subdirectory(kimgio)
+-macro_optional_add_subdirectory(renamedlgplugins)
++#add_subdirectory(kioslave)
++#add_subdirectory(kurifilter-plugins)
++#add_subdirectory(phonon)
++#add_subdirectory(kimgio)
++#macro_optional_add_subdirectory(renamedlgplugins)
+ 
+ # UI Helper applications
+-add_subdirectory(drkonqi)
++#add_subdirectory(drkonqi)
+ add_subdirectory(kcmshell)
+ add_subdirectory(kdebugdialog)
+-add_subdirectory(khelpcenter)
+-add_subdirectory(knetattach)
+-add_subdirectory(knewstuff)
+-macro_optional_add_subdirectory(keditfiletype)
++#add_subdirectory(khelpcenter)
++#add_subdirectory(knetattach)
++#add_subdirectory(knewstuff)
++#macro_optional_add_subdirectory(keditfiletype)
+ if ( UNIX )
+    add_subdirectory(kdesu)
+ endif ( UNIX )
+@@ -122,32 +122,32 @@ endif ( UNIX )
+ if ( UNIX )
+    add_subdirectory(kdeeject)
+ endif ( UNIX )
+-add_subdirectory(kfile)
+-add_subdirectory(kiconfinder)
+-add_subdirectory(kioclient)
+-add_subdirectory(kioexec)
+-add_subdirectory(ktraderclient)
+-add_subdirectory(kreadconfig)
+-add_subdirectory(kmimetypefinder)
++#add_subdirectory(kfile)
++#add_subdirectory(kiconfinder)
++#add_subdirectory(kioclient)
++#add_subdirectory(kioexec)
++#add_subdirectory(ktraderclient)
++#add_subdirectory(kreadconfig)
++#add_subdirectory(kmimetypefinder)
+ if (Q_WS_X11)
+   add_subdirectory(kstart)
+ endif (Q_WS_X11)
+ add_subdirectory(kquitapp)
+-add_subdirectory(menu)
++#add_subdirectory(menu)
+ if ( NOT WINCE )
+-    add_subdirectory(plasma)
++#    add_subdirectory(plasma)
+ endif ( NOT WINCE )
+-add_subdirectory(solid-hardware)
++#add_subdirectory(solid-hardware)
+ 
+ # Platform-specific integration
+-add_subdirectory(platforms)
++#add_subdirectory(platforms)
+ 
+ # Default settings, content and config
+-add_subdirectory(l10n)
+-add_subdirectory(localization)
++#add_subdirectory(l10n)
++#add_subdirectory(localization)
+ if(NOT WINCE)
+-  add_subdirectory(kde-menu)
+-macro_optional_add_subdirectory(doc)
++#  add_subdirectory(kde-menu)
++#macro_optional_add_subdirectory(doc)
+ endif(NOT WINCE)
+ 
+ # Artwork
+@@ -158,7 +158,7 @@ endif ( NOT WINCE )
+ 
+ # KDE integration for attica
+ if(LIBATTICA_FOUND)
+-  macro_optional_add_subdirectory(attica)
++#  macro_optional_add_subdirectory(attica)
+ endif(LIBATTICA_FOUND)
+ 
+ feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
diff --git a/portage/kde/kde-workspace/kde-workspace-20110130.py \
b/portage/kde/kde-workspace/kde-workspace-20110130.py index 426c9c5..f3df024 100644
--- a/portage/kde/kde-workspace/kde-workspace-20110130.py
+++ b/portage/kde/kde-workspace/kde-workspace-20110130.py
@@ -9,15 +9,18 @@ class subinfo(info.infoclass):
             self.targets[kd.kdeversion + ver] = "http://download.kde.org/stable/" + \
                kd.kdeversion + ver + "/src/" + self.package + "-" + kd.kdeversion + \
                ver + ".tar.xz"
             self.targetInstSrc[kd.kdeversion + ver] = self.package + '-' + \
kd.kdeversion + ver  self.targetDigestUrls[ kd.kdeversion + ver  ] = \
'http://download.kde.org/stable/' + kd.kdeversion + ver + '/src/' + self.package + \
'-' + kd.kdeversion + ver + '.tar.xz.sha1' +        if \
self.options.features.runtimeMinimal: +            self.patchToApply['gitHEAD'] = \
[("oxygen-only.diff", 1)]  
         self.shortDescription = 'the KDE workspace including the oxygen style'
         self.defaultTarget = 'gitHEAD'
 
     def setDependencies( self ):
         self.dependencies['kde/kde-runtime'] = 'default'
-        self.dependencies['win32libs/freetype'] = 'default'
-        self.dependencies['win32libs/boost'] = 'default'
-        self.dependencies['kdesupport/akonadi'] = 'default'
+        if not self.options.features.runtimeMinimal:
+            self.dependencies['win32libs/freetype'] = 'default'
+            self.dependencies['win32libs/boost'] = 'default'
+            self.dependencies['kdesupport/akonadi'] = 'default'
 
 from Package.CMakePackageBase import *
 
diff --git a/portage/kde/kde-workspace/oxygen-only.diff \
b/portage/kde/kde-workspace/oxygen-only.diff new file mode 100644
index 0000000..e4be7d5
--- /dev/null
+++ b/portage/kde/kde-workspace/oxygen-only.diff
@@ -0,0 +1,169 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 92e8b45..b779095 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,12 +20,12 @@ include(KDE4Defaults)
+ 
+ option(WITH_XINERAMA "Xinerama support for multi-headed X displays" ON)
+ 
+-find_package(Strigi)
++#find_package(Strigi)
+ 
+-set_package_properties(Strigi PROPERTIES DESCRIPTION "Desktop indexing and search \
support" +-                       URL "http://strigi.sourceforge.net"
+-                       TYPE REQUIRED
+-                      )
++#set_package_properties(Strigi PROPERTIES DESCRIPTION "Desktop indexing and search \
support" ++#                       URL "http://strigi.sourceforge.net"
++#                       TYPE REQUIRED
++#                      )
+ 
+ find_package(ZLIB)
+ set_package_properties(ZLIB PROPERTIES DESCRIPTION "Support for gzip compressed \
files and data streams" +@@ -33,30 +33,30 @@ set_package_properties(ZLIB PROPERTIES \
DESCRIPTION "Support for gzip compressed +                        TYPE REQUIRED
+                       )
+ 
+-find_package(KActivities 6.0.0 CONFIG)
+-set_package_properties(KActivities PROPERTIES DESCRIPTION "Interface library for \
the activity manager" +-                       URL \
"https://projects.kde.org/kactivities" +-                       TYPE REQUIRED
+-                      )
+-
+-find_package(DBusMenuQt 0.6.0)
+-set_package_properties(DBusMenuQt PROPERTIES DESCRIPTION "Support for notification \
area menus via the DBusMenu protocol" +-                       URL \
"https://launchpad.net/libdbusmenu-qt" +-                       TYPE REQUIRED
+-                      )
+-
+-find_package(QImageBlitz)
+-set_package_properties(QImageBlitz PROPERTIES DESCRIPTION "An image effects \
library" +-                       URL "http://sourceforge.net/projects/qimageblitz"
+-                       TYPE REQUIRED
+-                      )
+-
+-find_package(KDeclarative QUIET CONFIG)
+-set_package_properties(KDeclarative PROPERTIES DESCRIPTION "KDE Declarative (QML) \
support from kdelibs" +-                       URL "http://www.kde.org"
+-                       TYPE REQUIRED
+-                       PURPOSE "Required for building ksmserver"
+-                      )
++#find_package(KActivities 6.0.0 CONFIG)
++#set_package_properties(KActivities PROPERTIES DESCRIPTION "Interface library for \
the activity manager" ++#                       URL \
"https://projects.kde.org/kactivities" ++#                       TYPE REQUIRED
++#                      )
++
++#find_package(DBusMenuQt 0.6.0)
++#set_package_properties(DBusMenuQt PROPERTIES DESCRIPTION "Support for notification \
area menus via the DBusMenu protocol" ++#                       URL \
"https://launchpad.net/libdbusmenu-qt" ++#                       TYPE REQUIRED
++#                      )
++
++#find_package(QImageBlitz)
++#set_package_properties(QImageBlitz PROPERTIES DESCRIPTION "An image effects \
library" ++#                       URL "http://sourceforge.net/projects/qimageblitz"
++#                       TYPE REQUIRED
++#                      )
++
++#find_package(KDeclarative QUIET CONFIG)
++#set_package_properties(KDeclarative PROPERTIES DESCRIPTION "KDE Declarative (QML) \
support from kdelibs" ++#                       URL "http://www.kde.org"
++#                       TYPE REQUIRED
++#                       PURPOSE "Required for building ksmserver"
++#                      )
+ 
+ macro_optional_find_package(OpenGL)
+ set_package_properties(OpenGL PROPERTIES DESCRIPTION "The OpenGL libraries"
+@@ -216,7 +216,7 @@ add_subdirectory(libs)
+ 
+ # system settings (kcontrol replacement)
+ if(${KDE_PLATFORM_PROFILE} STREQUAL "Desktop")
+-   macro_optional_add_subdirectory( systemsettings )
++#   macro_optional_add_subdirectory( systemsettings )
+ endif(${KDE_PLATFORM_PROFILE} STREQUAL "Desktop")
+ 
+ # core apps
+@@ -237,21 +237,21 @@ if(NOT WIN32)
+ endif(NOT WIN32)
+ 
+ if(${KDE_PLATFORM_PROFILE} STREQUAL "Desktop")
+-   macro_optional_add_subdirectory(kcontrol)
+-   macro_optional_add_subdirectory(klipper)
+-   macro_optional_add_subdirectory(kmenuedit)
+-   macro_optional_add_subdirectory(krunner)
+-   macro_optional_add_subdirectory(solid-actions-kcm)
+-   macro_optional_add_subdirectory(kstartupconfig)
+-   macro_optional_add_subdirectory(freespacenotifier)
+-   macro_optional_add_subdirectory(kscreensaver)
+-   macro_optional_add_subdirectory(kinfocenter)
++#   macro_optional_add_subdirectory(kcontrol)
++#   macro_optional_add_subdirectory(klipper)
++#   macro_optional_add_subdirectory(kmenuedit)
++#   macro_optional_add_subdirectory(krunner)
++#   macro_optional_add_subdirectory(solid-actions-kcm)
++#   macro_optional_add_subdirectory(kstartupconfig)
++#   macro_optional_add_subdirectory(freespacenotifier)
++#   macro_optional_add_subdirectory(kscreensaver)
++#   macro_optional_add_subdirectory(kinfocenter)
+ 
+    # data
+-   macro_optional_add_subdirectory(doc)
++#   macro_optional_add_subdirectory(doc)
+ 
+    if (Q_WS_X11)
+-      macro_optional_add_subdirectory(ktouchpadenabler)
++#      macro_optional_add_subdirectory(ktouchpadenabler)
+    endif (Q_WS_X11)
+ 
+    if(NOT WIN32)
+@@ -271,11 +271,11 @@ endif(${KDE_PLATFORM_PROFILE} STREQUAL "Desktop")
+ 
+ if(NOT WIN32)
+     # data
+-    macro_optional_add_subdirectory(cursors)
++#    macro_optional_add_subdirectory(cursors)
+ endif(NOT WIN32)
+ 
+-macro_optional_add_subdirectory(plasma)
+-macro_optional_add_subdirectory(statusnotifierwatcher)
++#macro_optional_add_subdirectory(plasma)
++#macro_optional_add_subdirectory(statusnotifierwatcher)
+ macro_optional_add_subdirectory(kstyles)
+ 
+ ########### install files ###############
+@@ -352,9 +352,9 @@ install(FILES \
${CMAKE_CURRENT_BINARY_DIR}/KDE4WorkspaceConfig.cmake +               \
${CMAKE_CURRENT_BINARY_DIR}/KDE4WorkspaceConfigVersion.cmake +         DESTINATION \
${_KDE4WorkspaceConfig_INSTALL_DIR}) + 
+-install(EXPORT kdeworkspaceLibraryTargets 
+-        NAMESPACE ${KDE4WORKSPACE_TARGET_PREFIX}
+-        DESTINATION ${_KDE4WorkspaceConfig_INSTALL_DIR}
+-        FILE KDE4WorkspaceLibraryTargets.cmake )
++#install(EXPORT kdeworkspaceLibraryTargets 
++#        NAMESPACE ${KDE4WORKSPACE_TARGET_PREFIX}
++#        DESTINATION ${_KDE4WorkspaceConfig_INSTALL_DIR}
++#        FILE KDE4WorkspaceLibraryTargets.cmake )
+ 
+ 
+diff --git a/libs/CMakeLists.txt b/libs/CMakeLists.txt
+index c0576fe..da72cc7 100644
+--- a/libs/CMakeLists.txt
++++ b/libs/CMakeLists.txt
+@@ -1,11 +1,11 @@
+-add_subdirectory(kephal)
+-add_subdirectory(kworkspace)
++#add_subdirectory(kephal)
++#add_subdirectory(kworkspace)
+ add_subdirectory(oxygen)
+-add_subdirectory(plasmaclock)
++#add_subdirectory(plasmaclock)
+ 
+ if(${KDE_PLATFORM_PROFILE} STREQUAL "Desktop")
+-   add_subdirectory(kdm)
+-   add_subdirectory(plasmagenericshell)
++#   add_subdirectory(kdm)
++#   add_subdirectory(plasmagenericshell)
+    if(NOT WIN32)
+         add_subdirectory(taskmanager)
+    endif(NOT WIN32)
diff --git a/portage/kde/kdelibs/kdelibs-20110130.py \
b/portage/kde/kdelibs/kdelibs-20110130.py index f1e48df..7de2fe1 100644
--- a/portage/kde/kdelibs/kdelibs-20110130.py
+++ b/portage/kde/kdelibs/kdelibs-20110130.py
@@ -30,7 +30,9 @@ class subinfo(info.infoclass):
         self.dependencies['kdesupport/qca'] = 'default'
         self.dependencies['kdesupport/qimageblitz'] = 'default'
         self.dependencies['data/docbook-xsl'] = 'default'
-        self.dependencies['data/shared-desktop-ontologies'] = 'default'
+        if self.options.features.nepomuk:
+            self.dependencies['kdesupport/soprano'] = 'default'
+            self.dependencies['data/shared-desktop-ontologies'] = 'default'
         if self.options.features.phononBackend.vlc:
             self.runtimeDependencies['kdesupport/phonon-vlc'] = 'default'
         elif self.options.features.phononBackend.ds9:
@@ -64,7 +66,9 @@ class Package(CMakePackageBase):
         if compiler.isMinGW():
           self.subinfo.options.configure.defines += " \
-DKDE_DISTRIBUTION_TEXT=\"MinGW %s\" " % compiler.getMinGWVersion()  elif \
                compiler.isMSVC():
-          self.subinfo.options.configure.defines = " -DKDE_DISTRIBUTION_TEXT=\"%s\" \
" % compiler.getVersion() +          self.subinfo.options.configure.defines += " \
-DKDE_DISTRIBUTION_TEXT=\"%s\" " % compiler.getVersion() +        if not \
self.subinfo.options.features.nepomuk: +            \
self.subinfo.options.configure.defines += ""  
     def install( self ):
         if not CMakePackageBase.install( self ):
diff --git a/portage/kde/kdepim-runtime/kdepim-runtime-20101222.py \
b/portage/kde/kdepim-runtime/kdepim-runtime-20101222.py index 63af952..987fbd8 100644
--- a/portage/kde/kdepim-runtime/kdepim-runtime-20101222.py
+++ b/portage/kde/kdepim-runtime/kdepim-runtime-20101222.py
@@ -24,9 +24,10 @@ class subinfo(info.infoclass):
         self.dependencies['kde/kdepimlibs'] = 'default'
         self.dependencies['kdesupport/grantlee'] = 'default'
         self.dependencies['win32libs/sqlite'] = 'default'
-        self.dependencies['extragear/libkolab'] = 'default'
-        self.dependencies['extragear/libkgapi'] = 'default'
-        self.dependencies['extragear/libkfbapi'] = 'default'
+        if not self.options.features.runtimeMinimal:
+            self.dependencies['extragear/libkolab'] = 'default'
+            self.dependencies['extragear/libkgapi'] = 'default'
+            self.dependencies['extragear/libkfbapi'] = 'default'
         self.shortDescription = "Extends the functionality of kdepim"
 
 from Package.CMakePackageBase import *


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic