if waitAfterConfig:
raw_input('Configuration done. Hit "Enter" to build the project. ')
# run compilation
- subprocess.check_call(self.config['buildCmdPrefix'] + ['make', '-j'+str(self.config['jobs'])])
+ subprocess.check_call(self.config.get('buildCmdPrefix', []) + ['make', '-j'+str(self.config['jobs'])])
# run installation
- subprocess.check_call(self.config['installCmdPrefix'] + ['make', 'install'])
+ subprocess.check_call(self.config.get('installCmdPrefix', []) + ['make', 'install'])
# if auto-debuild is available, provide a wrapper for it
try:
# global configuration
installDir = '/opt/kde'
+buildSystem = 'cmake'
buildDir = 'build'
buildType = 'Debug'
jobs = 2
buildCmdPrefix = ['nice']
installCmdPrefix = []
-# helper function for the KDE modules - per default, they assume an SC module
-defaultGitVersion = 'origin/master' # or 'origin/KDE/4.8' or 'v4.8.4'
-defaultSvnVersion = 'trunk/KDE' # or 'branches/KDE/4.8' or 'tags/KDE/4.8.4'
-def KDEGitModule(name, version=defaultGitVersion, **module):
+# helper function for the modules
+def KDEGitModule(name, **module):
module['name'] = name
- module['build-system'] = 'cmake'
module['vcs'] = 'git'
- module['url'] = 'kde:'+name # relies on the kde: prefix being set up for git
- module['version'] = version
+ if 'url' not in module: module['url'] = 'kde:'+name
return module
-def KDESvnModule(name, svnPath=defaultSvnVersion, **module):
+def KDESCSvnModule(name, svnPath='trunk/KDE', **module):
module['name'] = name
- module['build-system'] = 'cmake'
module['vcs'] = 'svn'
- module['url'] = 'svn://svn.kde.org/home/kde/'+svnPath+'/'+name
+ if 'url' not in module: module['url'] = 'svn://svn.kde.org/home/kde/'+svnPath+'/'+name
return module
# the modules we are interested in
projects = [
# KDE support
- {'folder': 'kdesupport', 'projects': [
+ {'name': 'kdesupport',
+ 'projects': [
]},
# KDE SC
- {'folder': 'kde-sc', 'projects': [
+ {'name': 'kde-sc',
+ 'version': 'origin/master',
+ 'projects': [
# KDE core
- KDESvnModule('oxygen-icons', '/trunk/kdesupport'), # released within the SC, but located in kdesupport...
+ KDESCSvnModule('oxygen-icons', '/trunk/kdesupport'), # released within the SC, but located in kdesupport...
KDEGitModule('kdelibs'),
+ KDEGitModule('nepomuk-core'),
KDEGitModule('kactivities'),
KDEGitModule('kdepimlibs'),
KDEGitModule('kde-runtime'),
KDEGitModule('kde-baseapps'),
KDEGitModule('kdepim-runtime'),
# KDE applications
- KDESvnModule('kde-wallpapers'),
KDEGitModule('konsole'),
KDEGitModule('kate'),
KDEGitModule('kwallet'),
]},
# Extragear
- {'folder': 'extragear', 'projects': [
- KDEGitModule('networkmanagement', 'v0.9.0.4')
+ {'name': 'extragear',
+ 'projects': [
+ KDEGitModule('networkmanagement', version='v0.9.0.4')
]},
]
if forceVersion: subprocess.check_call(['svn', 'revert', '-R', '.'])
subprocess.check_call(['svn', 'switch', self.url]) # and update to the URL we got
else:
+ os.makedirs(self.folder) # if even the parent folder does not exist, svn fails
subprocess.check_call(['svn', 'co', self.url, self.folder]) # just download it