Gentoo Archives: gentoo-commits

From: "André Erdmann" <dywi@×××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/R_overlay:master commit in: roverlay/setupscript/, /, files/
Date: Tue, 01 Apr 2014 16:39:11
Message-Id: 1396370196.7559946e31712f46dbaa3959a93a35a2afa257bd.dywi@gentoo
1 commit: 7559946e31712f46dbaa3959a93a35a2afa257bd
2 Author: André Erdmann <dywi <AT> mailerd <DOT> de>
3 AuthorDate: Mon Mar 31 18:30:35 2014 +0000
4 Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
5 CommitDate: Tue Apr 1 16:36:36 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=7559946e
7
8 roverlay-setup: load parser defaults file
9
10 ---
11 Makefile | 5 ++++-
12 files/setup.defaults | 6 ++++++
13 files/setup.defaults.others | 6 ++++++
14 roverlay/setupscript/runtime.py | 13 ++++++++++---
15 4 files changed, 26 insertions(+), 4 deletions(-)
16
17 diff --git a/Makefile b/Makefile
18 index 06933f8..d5e21cd 100644
19 --- a/Makefile
20 +++ b/Makefile
21 @@ -207,7 +207,10 @@ install-data:
22 $(DATADIR)/roverlay/shlib $(DATADIR)/roverlay/hooks \
23 $(DATADIR)/roverlay/eclass $(DATADIR)/roverlay/mako_templates
24
25 -ifneq ($(ROVERLAY_TARGET_TYPE),gentoo)
26 +ifeq ($(ROVERLAY_TARGET_TYPE),gentoo)
27 + install -m 0644 -- files/setup.defaults $(DATADIR)/setup.defaults
28 +else
29 + install -m 0644 -- files/setup.defaults.others $(DATADIR)/setup.defaults
30 install -m 0644 -- $(LICENSES_FILE) $(DATADIR)/roverlay/licenses
31 endif
32 install -m 0644 -t $(DATADIR)/roverlay/hooks files/hooks/*.sh
33
34 diff --git a/files/setup.defaults b/files/setup.defaults
35 new file mode 100644
36 index 0000000..b9e06d7
37 --- /dev/null
38 +++ b/files/setup.defaults
39 @@ -0,0 +1,6 @@
40 +# site-specific defaults for roverlay-setup
41 +# each line lists one "<key> = <value>" pair,
42 +# where <key> is the dest of a parser option
43 +# (see roverlay.setupscript.runtime)
44 +#
45 +target_type = gentoo
46
47 diff --git a/files/setup.defaults.others b/files/setup.defaults.others
48 new file mode 100644
49 index 0000000..4e4c173
50 --- /dev/null
51 +++ b/files/setup.defaults.others
52 @@ -0,0 +1,6 @@
53 +# site-specific defaults for roverlay-setup
54 +# each line lists one "<key> = <value>" pair,
55 +# where <key> is the dest of a parser option
56 +# (see roverlay.setupscript.runtime)
57 +#
58 +target_type = foreign
59
60 diff --git a/roverlay/setupscript/runtime.py b/roverlay/setupscript/runtime.py
61 index b9b7ed0..5576f1d 100644
62 --- a/roverlay/setupscript/runtime.py
63 +++ b/roverlay/setupscript/runtime.py
64 @@ -23,6 +23,7 @@ import roverlay.setupscript.initenv
65 import roverlay.setupscript.hookenv
66
67 import roverlay.static.targetenv
68 +import roverlay.util.mapreader
69
70
71 if sys.hexversion >= 0x3000000:
72 @@ -389,9 +390,6 @@ class SetupEnvironment ( roverlay.runtime.IndependentRuntimeEnvironment ):
73 def get_parser_defaults ( self ):
74 defaults = {}
75
76 - if 'ROVERLAY_TARGET_TYPE' in os.environ:
77 - defaults ['target_type'] = os.environ ['ROVERLAY_TARGET_TYPE']
78 -
79 if self.is_installed():
80 instinfo = self.INSTALLINFO
81 defaults.update ({
82 @@ -417,6 +415,15 @@ class SetupEnvironment ( roverlay.runtime.IndependentRuntimeEnvironment ):
83 })
84 # -- end if
85
86 + defaults_file = defaults['data_root'] + os.sep + 'setup.defaults'
87 + if os.path.isfile ( defaults_file ):
88 + dparser = roverlay.util.mapreader.DictFileParser ( r'\s*=\s*' )
89 + dparser.read_file ( defaults_file )
90 + defaults.update ( dparser.make_result() )
91 +
92 + if 'ROVERLAY_TARGET_TYPE' in os.environ:
93 + defaults ['target_type'] = os.environ ['ROVERLAY_TARGET_TYPE']
94 +
95 return defaults
96 # --- end of get_parser_defaults (...) ---