From e2313b85d7f0d10c0995ea9887bee00c2763290a Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Tue, 3 Nov 2015 03:03:54 +0200 Subject: Refactored builtin options to a dictionary and created a new default library target type. --- mesonconf.py | 60 ++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 32 insertions(+), 28 deletions(-) (limited to 'mesonconf.py') diff --git a/mesonconf.py b/mesonconf.py index 963585a..6fb45ae 100755 --- a/mesonconf.py +++ b/mesonconf.py @@ -72,52 +72,55 @@ class Conf: if k == 'buildtype': if v not in build_types: raise ConfException('Invalid build type %s.' % v) - self.coredata.buildtype = v + self.coredata.set_builtin_option('buildtype', v) elif k == 'layout': if v not in layouts: raise ConfException('Invalid layout type %s.' % v) - self.coredata.layout = v + self.coredata.set_builtin_option('layout', v) elif k == 'warnlevel': if not v in warning_levels: raise ConfException('Invalid warning level %s.' % v) - self.coredata.warning_level = v + self.coredata.set_builtin_option('warning_level', v) elif k == 'strip': - self.coredata.strip = self.tobool(v) + self.coredata.set_builtin_option('strip', self.tobool(v)) elif k == 'coverage': - v = self.tobool(v) - self.coredata.coverage = self.tobool(v) + self.coredata.set_builtin_option('coverage', self.tobool(v)) elif k == 'pch': - self.coredata.use_pch = self.tobool(v) + self.coredata.set_builtin_option('use_pch', self.tobool(v)) elif k == 'unity': - self.coredata.unity = self.tobool(v) + self.coredata.set_builtin_option('unity', self.tobool(v)) + elif k == 'default_library': + if v != 'shared' and v != 'static': + raise ConfException('Invalid value for default_library') + self.coredata.set_builtin_option('default_library', v) elif k == 'prefix': if not os.path.isabs(v): raise ConfException('Install prefix %s is not an absolute path.' % v) - self.coredata.prefix = v + self.coredata.set_builtin_option('prefix', v) elif k == 'libdir': if os.path.isabs(v): raise ConfException('Library dir %s must not be an absolute path.' % v) - self.coredata.libdir = v + self.coredata.set_builtin_option('libdir', v) elif k == 'bindir': if os.path.isabs(v): raise ConfException('Binary dir %s must not be an absolute path.' % v) - self.coredata.bindir = v + self.coredata.set_builtin_option('bindir',v) elif k == 'includedir': if os.path.isabs(v): raise ConfException('Include dir %s must not be an absolute path.' % v) - self.coredata.includedir = v + self.coredata.set_builtin_option('includedir', v) elif k == 'datadir': if os.path.isabs(v): raise ConfException('Data dir %s must not be an absolute path.' % v) - self.coredata.datadir = v + self.coredata.set_builtin_option('datadir', v) elif k == 'mandir': if os.path.isabs(v): raise ConfException('Man dir %s must not be an absolute path.' % v) - self.coredata.mandir = v + self.coredata.set_builtin_option('mandir', v) elif k == 'localedir': if os.path.isabs(v): raise ConfException('Locale dir %s must not be an absolute path.' % v) - self.coredata.localedir = v + self.coredata.set_builtin_option('localedir', v) elif k in self.coredata.user_options: tgt = self.coredata.user_options[k] tgt.set_value(v) @@ -150,12 +153,13 @@ class Conf: print('') print('Core options\n') carr = [] - carr.append(['buildtype', 'Build type', self.coredata.buildtype]) - carr.append(['warnlevel', 'Warning level', self.coredata.warning_level]) - carr.append(['strip', 'Strip on install', self.coredata.strip]) - carr.append(['coverage', 'Coverage report', self.coredata.coverage]) - carr.append(['pch', 'Precompiled headers', self.coredata.use_pch]) - carr.append(['unity', 'Unity build', self.coredata.unity]) + carr.append(['buildtype', 'Build type', self.coredata.get_builtin_option('buildtype')]) + carr.append(['warnlevel', 'Warning level', self.coredata.get_builtin_option('warning_level')]) + carr.append(['strip', 'Strip on install', self.coredata.get_builtin_option('strip')]) + carr.append(['coverage', 'Coverage report', self.coredata.get_builtin_option('coverage')]) + carr.append(['pch', 'Precompiled headers', self.coredata.get_builtin_option('use_pch')]) + carr.append(['unity', 'Unity build', self.coredata.get_builtin_option('unity')]) + carr.append(['default_library', 'Default library type', self.coredata.get_builtin_option('default_library')]) self.print_aligned(carr) print('') print('Compiler arguments\n') @@ -179,13 +183,13 @@ class Conf: print('') print('Directories\n') parr = [] - parr.append(['prefix', 'Install prefix', self.coredata.prefix]) - parr.append(['libdir', 'Library directory', self.coredata.libdir]) - parr.append(['bindir', 'Binary directory', self.coredata.bindir]) - parr.append(['includedir', 'Header directory', self.coredata.includedir]) - parr.append(['datadir', 'Data directory', self.coredata.datadir]) - parr.append(['mandir', 'Man page directory', self.coredata.mandir]) - parr.append(['localedir', 'Locale file directory', self.coredata.localedir]) + parr.append(['prefix', 'Install prefix', self.coredata.get_builtin_option('prefix')]) + parr.append(['libdir', 'Library directory', self.coredata.get_builtin_option('libdir')]) + parr.append(['bindir', 'Binary directory', self.coredata.get_builtin_option('bindir')]) + parr.append(['includedir', 'Header directory', self.coredata.get_builtin_option('includedir')]) + parr.append(['datadir', 'Data directory', self.coredata.get_builtin_option('datadir')]) + parr.append(['mandir', 'Man page directory', self.coredata.get_builtin_option('mandir')]) + parr.append(['localedir', 'Locale file directory', self.coredata.get_builtin_option('localedir')]) self.print_aligned(parr) print('') if len(self.coredata.user_options) == 0: -- cgit v1.1